Python bindings for the NEST noble element simulations
Project description
nestpy (alpha status)
These are the Python bindings for the NEST library. You do not have to have NEST already installed to use this package.
Installing from PyPI
For 64-bit Linux systems, instally 'nestpy' should just require running:
pip install nestpy
You can then test that it works by running the example above.
Installing from source
Requirements: You must have CMake>=2.8.12 and a C++11 compatible compiler (GCC>=4.8) to build.
First, you must check out this repository then simply run the installer:
git checkout https://github.com/NESTCollaboration/nestpy
cd nestpy
python setup.py install
Usage
Python bindings to the NEST library:
import nestpy
# This is same as C++ NEST with naming
nc = nestpy.NESTcalc()
A = 131.293
Z = 54.
density = 2.9 # g/cm^3
interaction = nestpy.INTERACTION_TYPE(0) # NR
E = 10 # keV
print('For an %s keV %s' % (E, interaction))
# Get particle yields
y = nc.GetYields(interaction,
E,
density,
124, # Drift field, V/cm
A,
Z,
(1,1))
print('The photon yield is:', y.PhotonYield)
print('With statistical fluctuations', nc.GetQuanta(y, density).photons)
For more examples on possible calls, please see the tests folder.
Technical implementation
This package is a pybind11 wrapper of NEST that uses (TravisCI)[https://travis-ci.org] to build binaries using the (manylinux)[https://github.com/pypa/python-manylinux-demo] (Docker image)[https://www.docker.com].
- Help from Henry Schreiner (https://indico.cern.ch/event/694818/contributions/2985778/attachments/1682465/2703470/PyHEPTalk.pdf)
- Implementation also based on http://www.benjack.io/2018/02/02/python-cpp-revisited.html
See AUTHORS.md for information on the developers.
Citation
When you use nestpy
, please say so in your slides or publications (for publications, see Zenodo link above). You can mention this in addition to how you cite NEST. This is important for us being able to get funding to support this project.
History
1.0.0 (2018-08-18)
NESTv2.0.0
- First release intended for general public.
- Mac OSX support (#10)
- Complete tests and various bug fixes (#13)
- Documentation, citation, and technical detail writing
0.2.3 (2018-08-14)
NESTv2.0.0
- Still working on PyPI
0.2.2 (2018-08-14)
NESTv2.0.0
- Fix lack of deploy of release to PyPI
0.2.1 (2018-08-14)
NESTv2.0.0
- Fix tests that were breaking only in deploys
0.2.0 (2018-08-14)
NESTv2.0.0
- Fully wrapped NEST (PR #5)
0.1.1 (2018-08-14)
NESTv2.0.0
- First release that deploys on PyPI. Limited functionality. (PR #2)
0.1.0 (2018-08-14)
NESTv2.0.0
- Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for nestpy-1.0.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4697183cfc7279f14c92cb003bc5bae463150a804dd92324e7a84ceefc31bb89 |
|
MD5 | 6ab0096c27256a5d92611da6d374f6b8 |
|
BLAKE2b-256 | 8b361ddd4976335dd90d3055783bb51d287b360ad8c210c4fd915171c152fc4a |
Hashes for nestpy-1.0.0-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ea3d21b169f7e6cdd19a13594f9d473ea5340befe1ece40b22fbca2b6354aff |
|
MD5 | 899f8c264be356629508c193aa59c547 |
|
BLAKE2b-256 | 8f243bbdcde2a6a8fca7c5c935ae9b67da8525112595c0a697f4f652281556d4 |
Hashes for nestpy-1.0.0-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cabefbdcf591007882b787b7423a01fdb6d5f7bd0fd2a64d31e9ee8a2fcd7a9d |
|
MD5 | 6fa1ed381654b85d3e17cf3fc142f575 |
|
BLAKE2b-256 | 6ae6bf436b2c1701aec34527d84493761f9e4c0293c494fba801f472b00e5f86 |
Hashes for nestpy-1.0.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f19f4555e3c2f26fd3da71e18af000070c7ca3c23377be7afd6dbe94e0dc67da |
|
MD5 | b3a08f631159d297aefff1f8ce384670 |
|
BLAKE2b-256 | 323ac1275a97dd0dfefb20e53dbe18e98750f8ac1a1a3807a1d0c8567362d2ed |
Hashes for nestpy-1.0.0-cp36-cp36m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a72902ad112b30f21322acb078bd653a1e680e96d915d645c2f320529328576a |
|
MD5 | ab002962f5ff977759c6363280d32af8 |
|
BLAKE2b-256 | ab7b790b2bf3a679a458885c72a5766547132cd895d31768d121dc241b148006 |
Hashes for nestpy-1.0.0-cp36-cp36m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c04f88f8c180777dea3be907e080d581806b7db0d799785ea2bfc1624b3bcc71 |
|
MD5 | b93602e9f3c86449d13eba9138783910 |
|
BLAKE2b-256 | 8d0f9a2a3633c6888743a13ced6fe22a99e8941297307208e5a6e8a8d68a6458 |
Hashes for nestpy-1.0.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c34471b40e9c8bd578f1a9733c7c4df96c7a8ea6e50ece5706a8a24ccaca5d7b |
|
MD5 | 5a9b00d5accb3cc37b481112d3d20c0f |
|
BLAKE2b-256 | d6f5b69fc804537923403a5a70ad73ba90b4b5e4293994eba22d957dc735789a |
Hashes for nestpy-1.0.0-cp35-cp35m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bcd96ecfb570daf69254eb4a99641fb0be6523aa8f9bbfeb41c7edc0bdda47a |
|
MD5 | 4ec4c6c83c4761bf12755b7056e2bc08 |
|
BLAKE2b-256 | 5b524475983c63ed98b2c4294a381bb9cfc4632da51923757a8702cc41784e58 |
Hashes for nestpy-1.0.0-cp35-cp35m-macosx_10_6_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 406d9a4ff8f4e6ad525d525eec880658c3db93179512137cf7c60e25c4b81314 |
|
MD5 | 62465a6e7465995be35044c4241ec3f3 |
|
BLAKE2b-256 | 2f13f82ff93a0ec1ec10614603baa63270e0a0c71901c5b7fd7987517cc9d645 |
Hashes for nestpy-1.0.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88ee4b4332020d61b6281f2a6d3c5772e00812dbe227754ed21f6853388ff02e |
|
MD5 | 1c084005b03ca79e87af3c777e3d2203 |
|
BLAKE2b-256 | a1e3d1f03d3f88b07822d860c54099f876fd71a6253f29ca6c30a1cc74cbaa0b |
Hashes for nestpy-1.0.0-cp34-cp34m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c2f108c3758a483155ced329727e960e24d2eb54ab9b89cc93976f5c41c6573 |
|
MD5 | 6e42fe4dd22c50d331aa6251ae039122 |
|
BLAKE2b-256 | 73b26915958deda69996f3eabb83a77fd9ab3b75da800711e3dc6e83f17766af |
Hashes for nestpy-1.0.0-cp34-cp34m-macosx_10_6_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4654b302d1c3ceeae05b4d2e909e3201c56baf1473ce9ac0bdc923b3299b1d9 |
|
MD5 | 643a0026990c0d0c0cbe14ff8c9f4865 |
|
BLAKE2b-256 | 7af961eb75feb3f5fc9fa34148a4b588d60fcf5a4e619ce1f499451eba18bc30 |
Hashes for nestpy-1.0.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36906436d0c5f482aead2329497fee3fb47bf2c53886f52837425ce93c8f368b |
|
MD5 | 653d72246c3477313a5006e3ec0fc32d |
|
BLAKE2b-256 | c386bc8f7d15efeac6bcfa6e4a138a7da5ac43b3db0e86493e20fdd38be81375 |
Hashes for nestpy-1.0.0-cp27-cp27mu-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd6ec75ef0da2049de12ee919782c7ebfc8d2e4db1ce19e42808dcbd7ed88097 |
|
MD5 | 462b2e287bbec01e93812c463cb01466 |
|
BLAKE2b-256 | a430303c7ba6d877ef0321497470255059348343fbe71fdb3ed0e52310825998 |
Hashes for nestpy-1.0.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e32531daf5386323504f3459d387a92ad981f9616c441b26e6ae5c69abff24a6 |
|
MD5 | e01db259644dc9934384aa0bd739b63d |
|
BLAKE2b-256 | 275f230576a0d871debaaa28c7fabd42422c97562dbf2bc546542152cbaadd11 |
Hashes for nestpy-1.0.0-cp27-cp27m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4751e39760793adb65f8ea861ab27a61ce016f65bafb09e24334ad131c6ecb8a |
|
MD5 | 4d665713f06fb9abb26bbf6f479ec683 |
|
BLAKE2b-256 | 890f5dd052ea2f1c6347d2282108d85f0b712419517b164ae19482accf3439a5 |
Hashes for nestpy-1.0.0-cp27-cp27m-macosx_10_6_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf97928e21df527f7a08f21a4e07272aa29b643f7d4caf5c94c693cb9d333cf8 |
|
MD5 | 57f672fd1b325d471c770b6cfc9bb56c |
|
BLAKE2b-256 | 4faaa22926e74b89ef0f20018d99fdfa90d41d41206f13719574298925c79641 |