{ "info": { "author": "Dallas R. Trinkle", "author_email": "dtrinkle@illinois.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Scientific/Engineering :: Physics" ], "description": "Onsager\n=======\n\n[![PyPI version](https://img.shields.io/pypi/v/onsager.svg)](http://pypi.python.org/pypi/onsager)\n\nDocumentation now available at the [Onsager github page](http://dallastrinkle.github.io/Onsager/). Please cite as [![DOI](https://zenodo.org/badge/14172/DallasTrinkle/Onsager.svg)](https://zenodo.org/badge/latestdoi/14172/DallasTrinkle/Onsager) or see `Onsager github `_ for current version doi information.\n\nThe Onsager package provides routines for the general calculation of transport coefficients in vacancy-mediated diffusion and interstitial diffusion. It does this using a Green function approach, combined with point group symmetry reduction for maximum efficiency.\n\nTypical usage can be seen in the ipython notebooks in `examples`; the usual import will be::\n\n #!/usr/bin/env python\n\n\tfrom onsager import crystal\n\tfrom onsager import OnsagerCalc\n\n ...\n\nMany of the subpackages within Onsager are support for the main attraction, which is in OnsagerCalc. Interstitial calculation examples are available in `bin`, including three YAML input files, as well as a interstitial diffuser. An example of vacancy-mediated diffusion is shown in `bin/fivefreq.py`, which computes the well-known five-frequency model for substitutional solute transport in an FCC lattice. The script `CLdiffuser` is a command-line diffuser calculator that is designed to read in an HDF5 file of a diffuser, along with a JSON file that includes the thermal/kinetic data, and computes diffusivity components for different temperatures.\n\nThe tests for the package are include in `test`; `tests.py` will run all of the tests in the directory with verbosity level 2. This can be time-consuming (on the order of several of minutes) to run all tests; coverage is currently >90%.\n\nThe code uses YAML format for input/output of crystal structures, and diffusion data for the interstitial calculator. The vacancy-mediated calculator requires much more data, and uses HDF5 format to save/reload as needed. The vacancy-mediated calculator uses tags (unique human-readable-ish strings) to identify all (symmetry-unique) vacancy, solute, and complex states, and transitions between them.\nThe vacancy-mediated diffuser can be stored as an HDF5 file (which internally stores the crystal structure in YAML format). The thermal/kinetic data is most easily serialized as JSON, but any dictionary-compatible format will do, by making use of tags.\n\n\nReleases\n--------\n\n* 0.9. Full release of Interstitial calculator, along with theory paper (see References below).\n* 0.9.1. Added spin degrees of freedom to `crystal` for symmetry purposes; added `supercell` class to aid in automated setup of calculation.\n* 1.0 Now including automator for supercell calculations.\n* 1.1 Automator update with Makefile; corrections for possible overflow error when omega2 gets very large.\n* 1.2 Combined \"large omega2\" and \"non-zero bias\" algorithms; notebook for Fe-C added to documentation; cleanup of code and improved testing.\n* 1.2.1 Additional notebooks added for vacancy-mediated diffuser.\n* 1.2.2 New internal friction calculator for interstitial diffuser; improvement in `Crystal` class symmetry to handle larger error in unit cell.\n* 1.3 Two-dimensional lattice support added; new notebooks for variational calculations.\n* 1.3.1 Bug fix in `crystal.Crystal.jumpnetwork` for search range.\n* 1.3.2 Bug fix in `OnsagerCalc.VacancyMediated` for cases with non-zero bias vector (caused unusual occasional test failures).\n\n\nReferences\n----------\n\n* Dallas R. Trinkle, \"Diffusivity and derivatives for interstitial solutes: Activation energy, volume, and elastodiffusion tensors.\" Philos. Mag. (2016) [doi:10.1080/14786435.2016.1212175](http://dx.doi.org/10.1080/14786435.2016.1212175); [arXiv:1605.03623](http://arxiv.org/abs/1605.03623)\n* Dallas R. Trinkle, \"Automatic numerical evaluation of vacancy-mediated transport for arbitrary crystals: Onsager coefficients in the dilute limit using a Green function approach.\" Philos. Mag. (2017) [doi:10.1080/14786435.2017.1340685](http://dx.doi.org/10.1080/14786435.2017.1340685); [arXiv:1608.01252](http://arxiv.org/abs/1608.01252)\n* Dallas R. Trinkle, \"A variational principle for mass transport.\" *submitted* (2018); [arXiv:1805.11618](http://arxiv.org/abs/1805.11618)\n\n\nContributors\n------------\n\n* Dallas R. Trinkle, initial design, derivation, and implementation.\n* Ravi Agarwal, testing of HCP interstitial calculations; testing of HCP vacancy-mediated diffusion calculations\n* Abhinav Jain, testing of HCP vacancy-mediated diffusion calculations.\n\nThanks to discussions with Maylise Nastar (CEA, Saclay), Thomas Garnier (CEA, Saclay and UIUC), Thomas Schuler (CEA, Saclay), and Pascal Bellon (UIUC).\n\nSupport\n-------\n\nThis work has been supported in part by\n\n* DOE/BES grant DE-FG02-05ER46217,\n* ONR grant N000141210752,\n* NSF/CDSE grant 1411106.\n* Dallas R. Trinkle began the theoretical work for this code during the long program on Material Defects at the [Institute for Pure and Applied Mathematics](https://www.ipam.ucla.edu/) at UCLA, Fall 2012, and again during the long program on Complex Energy Landscapes, Fall 2017. IPAM is supported by the National Science Foundation.", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/DallasTrinkle/onsager/tarball/v1.3.3", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/DallasTrinkle/onsager", "keywords": "diffusion,elastodiffusion,mass transport,Onsager coefficients,transport coefficieints", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "onsager", "package_url": "https://pypi.org/project/onsager/", "platform": "", "project_url": "https://pypi.org/project/onsager/", "project_urls": { "Download": "https://github.com/DallasTrinkle/onsager/tarball/v1.3.3", "Homepage": "https://github.com/DallasTrinkle/onsager" }, "release_url": "https://pypi.org/project/onsager/1.3.3/", "requires_dist": null, "requires_python": "", "summary": "A package to compute Onsager coefficients for vacancy-mediated diffusion and interstitial elastodiffusion tensors", "version": "1.3.3" }, "last_serial": 5610337, "releases": { "1.2.2": [ { "comment_text": "", "digests": { "md5": "976bc045a63c19cf0727122d9c1ae7ad", "sha256": "b17293a84351e8f9fa29f63fff8b0253e724812cb45a786502448cba916a0b74" }, "downloads": -1, "filename": "onsager-1.2.2.tar.gz", "has_sig": false, "md5_digest": "976bc045a63c19cf0727122d9c1ae7ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 898184, "upload_time": "2017-06-07T21:43:08", "url": "https://files.pythonhosted.org/packages/b2/8a/3afe8ac4df4216b2c41a3bbee59add502b2b991d249bfc394020ab35f557/onsager-1.2.2.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "9fdf7cd0e5e08e1104ca0a3b24cb2f96", "sha256": "607b1b9e4cc2fa3ecf30d11fb4d3d0cf644208414f0192a39e3e7ecd04c9612a" }, "downloads": -1, "filename": "onsager-1.2.3.tar.gz", "has_sig": false, "md5_digest": "9fdf7cd0e5e08e1104ca0a3b24cb2f96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 898174, "upload_time": "2017-06-23T18:42:22", "url": "https://files.pythonhosted.org/packages/ec/32/a0e561df4f5ef84e4d3ab20581e1bf2a3e26337407aeadb3e6661242065b/onsager-1.2.3.tar.gz" } ], "1.2.4": [ { "comment_text": "", "digests": { "md5": "912b24581fea3d1257d28258e5fb79db", "sha256": "5845fd681cd90223cb0028822ba291336e245d9ee1e52016753afc6ad17174dd" }, "downloads": -1, "filename": "onsager-1.2.4.tar.gz", "has_sig": false, "md5_digest": "912b24581fea3d1257d28258e5fb79db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 971790, "upload_time": "2017-07-12T03:39:25", "url": "https://files.pythonhosted.org/packages/1d/f8/155e7eebf94c6c19e3be7b7ae583f53a6aa47f3f627ba01d7cfbda43a7a4/onsager-1.2.4.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "0bdd8cdd8d65cd98bde81fe7c338043e", "sha256": "4173b08dfa966b6598d7aea909949c1d8cf8295dc0b55b7bc184d1f273350a84" }, "downloads": -1, "filename": "onsager-1.3.tar.gz", "has_sig": false, "md5_digest": "0bdd8cdd8d65cd98bde81fe7c338043e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1247044, "upload_time": "2018-05-30T17:55:57", "url": "https://files.pythonhosted.org/packages/e6/b2/0a785b18403811ce3c2d5b91229bdfc1c33b95b6273556a28b8227c620a0/onsager-1.3.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "55a5837748162578d05b7936c0d332ea", "sha256": "25a423e58582b29ccd555ac7da5eb10e9cc24231bbb3581ce23dc3b3db5357bb" }, "downloads": -1, "filename": "onsager-1.3.1.tar.gz", "has_sig": false, "md5_digest": "55a5837748162578d05b7936c0d332ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1247362, "upload_time": "2018-07-05T16:20:21", "url": "https://files.pythonhosted.org/packages/39/a8/b0ba885b5c05b8610f36ddbea95af3e4c7b333d243d79d41cc1cc0d3583c/onsager-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "82ca4cc97c8fae81087ebd0da5a53ad5", "sha256": "eed19c67c2ef015734dfa9fda5b5d624ad4c7c553ee909b3bca9198f34d46aab" }, "downloads": -1, "filename": "onsager-1.3.2.tar.gz", "has_sig": false, "md5_digest": "82ca4cc97c8fae81087ebd0da5a53ad5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1250069, "upload_time": "2019-04-02T21:35:09", "url": "https://files.pythonhosted.org/packages/f9/53/4218a50e3a529851da1cc10c8833e237ec84b5991541ab106b8467090507/onsager-1.3.2.tar.gz" } ], "1.3.3": [ { "comment_text": "", "digests": { "md5": "c048285bb2077f38d5ea0bfe4c31a8b7", "sha256": "ae9dcde3de7d8458e33436e0377c9dd1bc82fa2c1f0749aac5ec8ac679480d94" }, "downloads": -1, "filename": "onsager-1.3.3.tar.gz", "has_sig": false, "md5_digest": "c048285bb2077f38d5ea0bfe4c31a8b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1278774, "upload_time": "2019-07-30T22:04:34", "url": "https://files.pythonhosted.org/packages/c5/40/5dfc2b716c20de3faf7e5c63233651c44a23ea4417fd139e1df64e9f7a05/onsager-1.3.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c048285bb2077f38d5ea0bfe4c31a8b7", "sha256": "ae9dcde3de7d8458e33436e0377c9dd1bc82fa2c1f0749aac5ec8ac679480d94" }, "downloads": -1, "filename": "onsager-1.3.3.tar.gz", "has_sig": false, "md5_digest": "c048285bb2077f38d5ea0bfe4c31a8b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1278774, "upload_time": "2019-07-30T22:04:34", "url": "https://files.pythonhosted.org/packages/c5/40/5dfc2b716c20de3faf7e5c63233651c44a23ea4417fd139e1df64e9f7a05/onsager-1.3.3.tar.gz" } ] }