NCrystal : A library for thermal neutron transport in crystals and other materials
The ncrystal-python package provides the Python API and command-line scripts
for NCrystal. To function it needs to acess NCrystal shared library behind the
scenes, and as such it requires the ncrystal-core package to function.
In conda and Python environments, it is recommended that most users simply
install and depend on the package named ncrystal which itself depends on both
ncrystal-core and ncrystal-python.
Note that to support some esoteric installations, the ncrystal-python package
does not itself depend on the ncrystal-core package, which is another reason
that most users are recommended to simply install or depend only on the package
named ncrystal.
Installation of the ncrystal-python package more specifically provides (in
addition to what is found in the ncrystal-core package):
- The NCrystal python module.
- This allows you to do
import NCrystaland use the Python API of NCrystal.
- This allows you to do
- Command-line utilities.
- These commands (e.g.
nctool,ncrystal_cif2ncmat, ...) are actually themselves written in Python, and can also be accessed from the Python API itself via theNCrystal.climodule. - Note that the special command
ncrystal-configis provided by thencrystal-corepackage, not thencrystal-pythonpackage.
- These commands (e.g.
- Note that the
ncrystal-pythonpackage can only be installed via Python installation tools like pip. - For convenience, the
ncrystal-corepackage has a dependency onnumpy.
Referencing NCrystal in scientific work
A very substantial effort went into developing NCrystal. If you use it for your work, we would appreciate it if you would use the following primary reference in your work:
X.-X. Cai and T. Kittelmann, NCrystal: A library for thermal neutron transport, Computer Physics Communications 246 (2020) 106851, https://doi.org/10.1016/j.cpc.2019.07.015
For work benefitting from elastic physics (e.g. Bragg diffraction), we furthermore request that you additionally also use the following reference in your work:
T. Kittelmann and X.-X. Cai, Elastic neutron scattering models for NCrystal, Computer Physics Communications 267 (2021) 108082, https://doi.org/10.1016/j.cpc.2021.108082
For work benefitting from our inelastic physics, we furthermore request that you additionally also use the following reference in your work:
X.-X. Cai, T. Kittelmann, et. al., "Rejection-based sampling of inelastic neutron scattering", Journal of Computational Physics 380 (2019) 400-407, https://doi.org/10.1016/j.jcp.2018.11.043
Metadata
Release files for ncrystal-python 4.4.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ncrystal_python-4.4.6.tar.gz | 294.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ncrystal_python-4.4.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 630.9 kB
Release files / ncrystal_python-4.4.6.tar.gz
| Download URL | ncrystal_python-4.4.6.tar.gz |
|---|---|
| Size | 294.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
500c430fe2fabca0a3d0e6f2c2f8ce8464b40f10f494486836739ae78d2b53d4
|
|
BLAKE2b-256 checksum How to use checksums |
9dc3dc59fc6e4d36e6fe2396682e61c90476047502fdebbacfec945e4caa9dad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 30, 2026.
Transparency logRelease files / ncrystal_python-4.4.6-py3-none-any.whl
| Download URL | ncrystal_python-4.4.6-py3-none-any.whl |
|---|---|
| Size | 336.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d600c6ab1569c0725d6e050ea08a48e4a71e4bec6276f0455a25abaeefbbbf65
|
|
BLAKE2b-256 checksum How to use checksums |
9ee8dfc87792b49d58c9a1ad181b17916642b4c027eb53eb238462d146a4987a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 30, 2026.
Transparency log