
Nuctools is a python package which was initially intended to assist with reduction
of data taken at the RPI linear accelerator, and was significantly influenced by
technical expertise and advice from Yaron Danon and other RPI research staff. It
includes functions to dead-time correct [^1], group counts data, convert to cps,
and convert neutron time-of-flight (TOF) to neutron energy.
Module `agl_tools.py` has the capability to read list-mode data produced at GELINA.
This capability was developed to make data-reduction of GELINA data easier and relied
on verification with the original Analysis of Geel List-mode (AGL) code.
The module `trans_tools.py` was originally designed to reduce data generated by the
Comtec MCS6A Multi-stop TDC TOF clock, but will be generalized to accept other
formats of raw TOF data. `trans_tools.py` is designed to reduce all the data
necessary to calculate transmission and propagate the associated covariance.
Module `sam_tools.py` has been made to assist in reading and writing files that
are used in the i/o for the code SAMMY. The package `nuctools` also contains
functions to assist in plotting with different styles commonly used at RPI.
Module `endf_tools.py` provides functions to read and write ENDF/B-VI format
pointwise cross section data.
--------------
## To Install
--------------
`nuctools` can now be installed with `pip`! Simply type:
```bash
python -m pip install nuctools
```
<p>
<details>
<summary>If you'd rather install from the source found in GitHub</summary>:
Note: not recommended! Set version in `setup.py`, open a terminal and type:
```console
cd ~/
git clone https://github.com/brownjm1968/nuctools.git
cd nuctools
python -m pip install .
```
</details>
</p>
---------------
## To Document
---------------
Make sure you have numpydoc and sphinx installed, with `pip` installer:
```bash
python -m pip install numpydoc
python -m pip install sphinx
```
At the sphinx website http://www.sphinx-doc.org/en/master/usage/quickstart.html,
there is a brief walkthrough for first time sphinx users. This is a good place
find info on sphinx, however you shouldn't have to create the documentation, it
should be good to go when the nuctools is downloaded. The sphinx-quickstart will
write a "conf.py" for you, but you should have the properly designed conf.py
already. To use the theme I've used for the docs, you need to run
`python -m pip install sphinx-rtd-theme`.
In the terminal navigate to the top nuctools folder and type:
```bash
sphinx-apidoc --force -o docs/ nuctools/
```
where "docs/" is the output directory and "nuctools/" is where the documented
modules live. Then navigate inside the terminal to the "docs/" folder where you
just generated .rst files and type:
```bash
make html
```
Note:
- To build the equations properly you must have LaTeX installed
- Some packages are required for html, and can be installed with `pip` (e.g. `python -m pip install sphinx`)
-----------------
## To Test
-----------------
Make sure you have pytest, with `pip`:
```bash
python -m pip install pytest
```
Then inside the top nuctools folder type:
```bash
pytest
```
Pytest should automatically go into the "tests/" folder and find python files that start
with "test".
[^1]: Danon, Yaron. "Design and Construction of the RPI Enhanced Thermal Neutron Target and Thermal Cross Section Measurements of Rare Earth Isotopes.", Doctoral Thesis, RPI, (1993).
Raw data
{
"_id": null,
"home_page": "https://github.com/brownjm1968/nuctools",
"name": "nuctools",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Jesse Brown",
"author_email": "brownjm1968@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/c2/34/1e12fbade131066d5e91f40ae86e911aa32c1002286637b1b0ca44490d70/nuctools-1.5.0.tar.gz",
"platform": null,
"description": "\n\nNuctools is a python package which was initially intended to assist with reduction\nof data taken at the RPI linear accelerator, and was significantly influenced by \ntechnical expertise and advice from Yaron Danon and other RPI research staff. It \nincludes functions to dead-time correct [^1], group counts data, convert to cps, \nand convert neutron time-of-flight (TOF) to neutron energy.\n\nModule `agl_tools.py` has the capability to read list-mode data produced at GELINA. \nThis capability was developed to make data-reduction of GELINA data easier and relied \non verification with the original Analysis of Geel List-mode (AGL) code. \n\nThe module `trans_tools.py` was originally designed to reduce data generated by the \nComtec MCS6A Multi-stop TDC TOF clock, but will be generalized to accept other \nformats of raw TOF data. `trans_tools.py` is designed to reduce all the data \nnecessary to calculate transmission and propagate the associated covariance.\n\nModule `sam_tools.py` has been made to assist in reading and writing files that \nare used in the i/o for the code SAMMY. The package `nuctools` also contains \nfunctions to assist in plotting with different styles commonly used at RPI.\n\nModule `endf_tools.py` provides functions to read and write ENDF/B-VI format \npointwise cross section data.\n\n--------------\n## To Install\n--------------\n\n`nuctools` can now be installed with `pip`! Simply type:\n\n```bash\npython -m pip install nuctools\n```\n\n<p>\n<details>\n<summary>If you'd rather install from the source found in GitHub</summary>: \n\nNote: not recommended! Set version in `setup.py`, open a terminal and type: \n\n```console\ncd ~/\ngit clone https://github.com/brownjm1968/nuctools.git\ncd nuctools\npython -m pip install .\n```\n</details>\n</p>\n\n---------------\n## To Document\n---------------\n\nMake sure you have numpydoc and sphinx installed, with `pip` installer:\n\n```bash\npython -m pip install numpydoc\npython -m pip install sphinx\n```\n\nAt the sphinx website http://www.sphinx-doc.org/en/master/usage/quickstart.html,\nthere is a brief walkthrough for first time sphinx users. This is a good place \nfind info on sphinx, however you shouldn't have to create the documentation, it\nshould be good to go when the nuctools is downloaded. The sphinx-quickstart will\nwrite a \"conf.py\" for you, but you should have the properly designed conf.py \nalready. To use the theme I've used for the docs, you need to run \n`python -m pip install sphinx-rtd-theme`.\n\nIn the terminal navigate to the top nuctools folder and type:\n\n```bash\nsphinx-apidoc --force -o docs/ nuctools/\n```\n\nwhere \"docs/\" is the output directory and \"nuctools/\" is where the documented\nmodules live. Then navigate inside the terminal to the \"docs/\" folder where you\njust generated .rst files and type:\n\n```bash\nmake html\n```\n\nNote: \n- To build the equations properly you must have LaTeX installed\n- Some packages are required for html, and can be installed with `pip` (e.g. `python -m pip install sphinx`)\n\n-----------------\n## To Test \n-----------------\n\nMake sure you have pytest, with `pip`:\n\n```bash\npython -m pip install pytest\n```\n\nThen inside the top nuctools folder type:\n\n```bash\npytest\n```\n\nPytest should automatically go into the \"tests/\" folder and find python files that start\nwith \"test\".\n\n\n[^1]: Danon, Yaron. \"Design and Construction of the RPI Enhanced Thermal Neutron Target and Thermal Cross Section Measurements of Rare Earth Isotopes.\", Doctoral Thesis, RPI, (1993).\n\n",
"bugtrack_url": null,
"license": "BSD 3-clause",
"summary": "nuclear data reduction tools",
"version": "1.5.0",
"project_urls": {
"Homepage": "https://github.com/brownjm1968/nuctools"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "6b816889c3153ce0cb803848a1ce4df7e7fe470a88f0690fbd3861487e8896ce",
"md5": "44758bf199745699ef3b784ba3f73b04",
"sha256": "f0b154f9e1ff101568abc308cc935c97272ac1140664f69077029ffe13475d3d"
},
"downloads": -1,
"filename": "nuctools-1.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "44758bf199745699ef3b784ba3f73b04",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 84620,
"upload_time": "2025-01-28T21:28:55",
"upload_time_iso_8601": "2025-01-28T21:28:55.511319Z",
"url": "https://files.pythonhosted.org/packages/6b/81/6889c3153ce0cb803848a1ce4df7e7fe470a88f0690fbd3861487e8896ce/nuctools-1.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c2341e12fbade131066d5e91f40ae86e911aa32c1002286637b1b0ca44490d70",
"md5": "206de730f5f007e8b7dcb21aef4a448e",
"sha256": "a5f45672db9c69490aa5800abf923278a13b165eee58f20e473044cf2dfae6b6"
},
"downloads": -1,
"filename": "nuctools-1.5.0.tar.gz",
"has_sig": false,
"md5_digest": "206de730f5f007e8b7dcb21aef4a448e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 83351,
"upload_time": "2025-01-28T21:28:57",
"upload_time_iso_8601": "2025-01-28T21:28:57.386309Z",
"url": "https://files.pythonhosted.org/packages/c2/34/1e12fbade131066d5e91f40ae86e911aa32c1002286637b1b0ca44490d70/nuctools-1.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-28 21:28:57",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "brownjm1968",
"github_project": "nuctools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "nuctools"
}