Installation

SaltProc has the following dependencies:

  1. Python (>=3.5)

  2. Serpent (>=2.1.31)

  3. PyNE (>=0.5.11)

  4. NumPy (>=1.14.0)

  5. PyTables

  6. NetworkX

  7. PyDotPlus

Optional Depenendencies:

Most of the dependencies are readily available through package managers. Once all the dependencies are installed, SaltProc can be installed. Clone the source from the SaltProc repository from GitHub. Then run the following commands from the directory above cloned repository:

git clone https://github.com/arfc/saltproc.git
cd saltproc/
python setup.py install --user

Please let us know if you run into trouble.

Cross Section Configuration

SaltProc can use any cross section library that Serpent can. See this page on the Serpent wiki for information on how to configure the libraries.

Testing

The SaltProc test suite has two types of tests: unit tests and regression tests. The unit tests check that the individual functions and classes of the saltproc module return the correct type of variables and correct values, where applicable. The regression tests run a full SaltProc simulation and check the final result with a precalculated result. The integration tests require the JEFF 3.1.2 cross section library as well as neutron induces and spontaneous fission product yield data from JEFF 3.3. The publicly available versions of JEFF 3.1.2 cannot be used with Serpent right out of the box due to Serpent’s notation for isomeric states. The scripts in scripts/xsdata download all necessary libraries and perform all the necessary processing on them for use in Serpent 2. We recommend using them for your convenience. See the README for more information.

To run the tests, execute:

pytest saltproc/

from the root directory of SaltProc. If you just want to run the unit tests, execute

pytest --ignore saltproc/tests/integration_tests saltproc/