{ "info": { "author": "ERGS", "author_email": "ergsonomic@googlegroups.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved", "Programming Language :: Python" ], "description": "# Transmutagen\n\nTransmutation SymPy Code Generator\n\n[![Build Status](https://travis-ci.org/ergs/transmutagen.svg?branch=master)](https://travis-ci.org/ergs/transmutagen)\n\n# Usage\n\nFirst, get the git master version of SymPy and set `PYTHONPATH` to point to\nit.\n\nTransmutagen also depends on\n\n - mpmath\n - sympy >= 1.1\n - matplotlib\n - numpy\n - scipy\n - pyne\n - jinja2\n - gmpy2\n - Cython\n\n## Generating the CRAM approximation to exp(-x) on [0, oo)\n\nRun\n\n python -m transmutagen.cram D N\n\nwhere `D` is the degree of the approximation and `N` is the number of digits.\nA typical run would be something like\n\n python -m transmutagen.cram 14 200\n\nNote that the digits returned are not necessarily all accurate. To compute `N`\ncorrect digits one generally needs to many more working digits in the\ncomputation. Furthermore, when roots are taken, the precision may decrease\neven further. So it is recommend to always compute the CRAM expression with a\nvery high number of digits.\n\nThere are many options, but it is not recommending changing them unless you\nknow what you are doing. See `python -m transmutagen --help`. To\nincrease/reduce the verbosity of the output, use the `--log-level` flag.\n\nIf you use iTerm2, install `iterm2-tools` (from conda-forge) to get plots in\nthe terminal.\n\nNote: all output and plots are logged to the `logs` and `plots` directories.\n\n## Generating solver code\n\nTo generate solver code, use\n\n python -m transmutagen.gensolve\n\nThis will generate ``solve.c`` and ``solve.h``. Use\n\n python -m transmutagen.gensolve --help\n\nto see various options, such as how to change the degrees that are generated,\nand the namespace of the generated functions.\n\nThis will use a default list of nuclides and sparsity pattern. To add or\nremove nuclides, modify the JSON file, and pass it in with\n\n python -m transmutagen.gensolve --json-file gensolve.json\n\nThe format of the JSON file is\n\n``` json\n{\n \"nucs\": [\"H1\", \"H2\", ...],\n \"fromto\": [[\"H1\", \"H1\"], [\"H1\", \"H2\"], ...]\n}\n```\n\nWhere ``\"nucs\"`` is a list of nuclides and ``\"fromto\"`` is a list of lists of\nevery possible reaction product pair. Every nuclide should be listed as a\nreaction with itself.\n\nTo generate a JSON file from ORIGEN libraries, run\n\n python -m transmutagen.generate_json /path/to/origen/libs/ --outfile gensolve.json\n\nThis will save the JSON to ``gensolve.json``. Note that transmutagen comes\nwith a a JSON file generated from ORIGEN in\n``transmutagen/data/gensolve_origen.json`` as well as one generated from PyNE\nin ``transmutagen/data/gensolve.json``.\n\nThe resulting solve.c will have functions\n``{namespace}_expm_multiply{N}(double* A, double* b, double* x)``, where\n``{namespace}`` is the namespace specified by the ``--namespace`` flag to\n``python -m transmutagen.gensolve`` (the default is ``transmutagen``), and\n``{N}`` is the degree of the approximation used in the solve, specified by the\n``--degree`` flag (the default is ``14``). The function computes ``exp(A)*b``\nand stores the result in ``x``. ``A`` should be in a flattened format,\naccording to the sparsity pattern the solver was generated from.\n\n## Converting ORIGEN libraries to a sparse matrix representation\n\nIf you'd like to convert an origen file to a matrix representation, please\nuse something like:\n\n python -m transmutagen.tape9sparse ~/origen22/libs/pwru50.lib --decay ~/origen22/libs/decay.lib\n\nSee `--help` and the `transmutagen.tape9utils` docs for more details.\n\n## Running tests against ORIGEN\n\nPut `ORIGEN.zip` in the `docker/` directory. Then run\n\n ./docker/origen_all/build_and_run.sh\n\nThis requires the docker daemon to be running, and may require `sudo`. There\nare various options, which you can see with\n\n ./docker/origen_all/build_and_run.sh --help\n\nThis will run both ORIGEN and transmutagen (CRAM) on a suite of ORIGEN\nlibraries, starting nuclides, and times, writing the results to\n`data/results.hdf5`. The output will also be logged to `logs/origen_all.log`.\nBe warned total suite takes over 24 hours to run.\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/ergs/transmutagen/zipball/1.1.0", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ergs/transmutagen", "keywords": "", "license": "BSD 3-clause", "maintainer": "", "maintainer_email": "", "name": "transmutagen", "package_url": "https://pypi.org/project/transmutagen/", "platform": "", "project_url": "https://pypi.org/project/transmutagen/", "project_urls": { "Download": "https://github.com/ergs/transmutagen/zipball/1.1.0", "Homepage": "https://github.com/ergs/transmutagen" }, "release_url": "https://pypi.org/project/transmutagen/1.1.0/", "requires_dist": null, "requires_python": "", "summary": "Code geneartion tools for transmutation solvers", "version": "1.1.0" }, "last_serial": 3375607, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "7d063b7096d8a2f28e5ee04ad241d49d", "sha256": "22387c38433e37179ba843ad3b36caa761b7f06b9fbc61714224e90ca947d528" }, "downloads": -1, "filename": "transmutagen-1.0.tar.gz", "has_sig": false, "md5_digest": "7d063b7096d8a2f28e5ee04ad241d49d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 193941, "upload_time": "2017-05-02T18:44:38", "url": "https://files.pythonhosted.org/packages/28/d1/182d934fbaa6213d419a5074930857fb5792f20e3594ef0228571641890a/transmutagen-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "b439da28c1bf616fa3f5001e7e1715ab", "sha256": "4e3da3d37bd0efa28faa70d75ce6eb743b3c63d919613fc34d030f2afd6f97a9" }, "downloads": -1, "filename": "transmutagen-1.0.1.tar.gz", "has_sig": false, "md5_digest": "b439da28c1bf616fa3f5001e7e1715ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 194073, "upload_time": "2017-05-02T19:54:12", "url": "https://files.pythonhosted.org/packages/0a/9f/19d5da7c1e37f47698469d110dbb6c8854da685f8ef79ee890101ecf9eab/transmutagen-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "74c21a342dd991968beba9a3ab75637f", "sha256": "0b5d7385aad2520345b35a62c40337a261cb99f541bd594f340e0d082476e426" }, "downloads": -1, "filename": "transmutagen-1.0.2.tar.gz", "has_sig": false, "md5_digest": "74c21a342dd991968beba9a3ab75637f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 225536, "upload_time": "2017-11-29T22:29:50", "url": "https://files.pythonhosted.org/packages/6f/a0/c85fc60505e5cf44b7973f91e12b13bbef4d5cb6fb9a0f32c94a1f51eea8/transmutagen-1.0.2.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "d6fa9e8aaf9d9d87a13cc72ac436ebb5", "sha256": "24b8afc20f416711dc917e8fcdcfbf434fb2c355a6481ad8eb50ce9c098590de" }, "downloads": -1, "filename": "transmutagen-1.1.0.tar.gz", "has_sig": false, "md5_digest": "d6fa9e8aaf9d9d87a13cc72ac436ebb5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 225544, "upload_time": "2017-11-29T22:35:09", "url": "https://files.pythonhosted.org/packages/90/0e/139bd00ad233be150b283919001b1d3d6f5509e4fedb5565d5ed3e0746f5/transmutagen-1.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d6fa9e8aaf9d9d87a13cc72ac436ebb5", "sha256": "24b8afc20f416711dc917e8fcdcfbf434fb2c355a6481ad8eb50ce9c098590de" }, "downloads": -1, "filename": "transmutagen-1.1.0.tar.gz", "has_sig": false, "md5_digest": "d6fa9e8aaf9d9d87a13cc72ac436ebb5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 225544, "upload_time": "2017-11-29T22:35:09", "url": "https://files.pythonhosted.org/packages/90/0e/139bd00ad233be150b283919001b1d3d6f5509e4fedb5565d5ed3e0746f5/transmutagen-1.1.0.tar.gz" } ] }