Accelerator Toolbox
Project description
pyAT is a Python interface to the pass methods defined in Accelerator Toolbox, implemented by compiling the C code used in the AT ‘integrators’ plus a Python extension.
It supports Python 2.7 and 3.4 to 3.7.
Installation preparation (Windows)
Download Microsoft Visual C++ Compiler for Python 2.7 (here), and use the Visual C++ Command Prompt of the correct architecture to build pyat.
For newer versions of Python you need the appropriate version of Visual C++.
Installation (all platforms)
All the binaries should be built when building the Python extension.
It is easiest to do this using a virtualenv, inside pyat:
virtualenv --no-site-packages venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
python setup.py develop
Finally, you should be able to run the tests:
py.test test
Comparing results with Matlab
There is a second set of tests that require a Matlab licence and allows comparing results directly with a Matlab session. See test_matlab/README for information.
Debugging
Print statements in the C code will work once the integrators are recompiled. To force recompilation, remove the build directory:
rm -rf build
Any changes to .py files are automatically reinstalled in the build, but to ensure any changes to .c files are reinstalled rerun:
python setup.py develop
If you get strange behaviour even after running setup.py develop again, then running the following, inside pyat, should fix it:
rm -rf build
find at -name "*.pyc" -exec rm '{}' \;
find at -name "*.so" -exec rm '{}' \;
python setup.py develop
N.B. setup.py develop needs to be run with the same version of Python (and numpy) that you are using to run pyAT.
Releasing a version to PyPI
Because pyAT compiles C code, releasing a version is not simple. The code must be compiled for different operating systems and Python versions.
To do this, we use the continuous integration services Travis CI (for Linux and Mac) and Appveyor (for Windows). When a tag of the form pyat-x.y.z is pushed to Github, wheels for each of the different platforms will be built and automatically uploaded to https://test.pypi.org/project/accelerator-toolbox/. Once there, someone should manually test that the wheels are working correctly, then they can manually download the files and upload them to PyPI itself.
For Travis to be authenticated to Test PyPI, someone must set the variables TWINE_USERNAME and TWINE_PASSWORD in the Travis CI project settings. These are not public so it is possible to use personal details; it may be best not to use the same password for PyPI.
A similar process is necessary for the Appveyor settings. You can click the little lock to keep the variable values private.
Because there are complications putting special characters into these environment variables it may be simpler to ensure your Test PyPI password contains only alphanumeric characters.
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 Distribution
Built Distributions
Hashes for accelerator-toolbox-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4e8151677bb127d8819042e3be911bcca8a0afef27d97684f909f45f11e8a4d |
|
MD5 | 0a30d4190608f8051358d07b554eaabf |
|
BLAKE2b-256 | 6d78c7c17bc1326b5f713213ea894b1475799f066cd3207e135de8061c23a74e |
Hashes for accelerator_toolbox-0.0.3-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23e5218f12fbfdfd9759e9c62e0da86ef9b20004e608dd0216ffb67ccaa7ff04 |
|
MD5 | e8c70d449de42f1e8f562fb135284df1 |
|
BLAKE2b-256 | 8a3e43dc7421c08a499c8d9aa0e0f9b1805cb19d241ced174a64a02505de1ee6 |
Hashes for accelerator_toolbox-0.0.3-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa6b50cf41fecfcdcf60a77b3cac72eab60ed8d8dd52bfd086fe367febed459e |
|
MD5 | 7109a82bd8b3945e9867199e47b2bb47 |
|
BLAKE2b-256 | cce0631ced5368a75c999bdba8ae44529d32ec26a4b1cd293f8c5b55e4179266 |
Hashes for accelerator_toolbox-0.0.3-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5cf566ddd8fe0a713c07484f59039ead89a4258efddcae01c43f1d852c2c541a |
|
MD5 | 69ad6e4223ab24914e8dc1c654171397 |
|
BLAKE2b-256 | 57648b975bb857bb3afc2c47eadc64aff33a17d09e71de8690ad537f54938581 |
Hashes for accelerator_toolbox-0.0.3-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14cc95da8cea3a3f983b0f6f3d0ec7f5114ee38cac61bce01c67ed529599fb43 |
|
MD5 | 856f86ebd395a35181c89b30ccc351d2 |
|
BLAKE2b-256 | f919526defe890b9f4d68287d8b2e028611868242f39c2151f20b85613423406 |
Hashes for accelerator_toolbox-0.0.3-cp37-cp37m-macosx_10_6_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 772cd21e07ecbfce55b98a12c4be8de159731b635bd5e4fc6e8553b82eaae521 |
|
MD5 | 55dbddcb8eee5eee26094a72ab2dce39 |
|
BLAKE2b-256 | 2b26e49ed627dc49c904a03e36a8af4459784faa80cbb57118c9a9d69009e223 |
Hashes for accelerator_toolbox-0.0.3-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4cf799d93eae7d5268b4902ca83b72c558f8501bb9f4a1b6e77a7849053a21b8 |
|
MD5 | e4a582f5eea325050a46e58cc6169ca7 |
|
BLAKE2b-256 | eed7ae32d866a0804728cd04c2387324e41e1e2d9d92de442982db815f9b0ef9 |
Hashes for accelerator_toolbox-0.0.3-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c92a361b26a76c157a55276180db7867f13bddbfc5e9b3000ee1a0541878644 |
|
MD5 | 1638cf6300252f1dbc0a18d8349c5782 |
|
BLAKE2b-256 | 6cf334d959788da22f6d593c37f758c98749fc6ef6132c8b8cb1cae46fa4fd0a |
Hashes for accelerator_toolbox-0.0.3-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb9eeab1fa300343297dd72bcf11fa07d9087de138d6a9ad1dff239a573c19d1 |
|
MD5 | 64779c3ef89bfe6f1692c02c52f44f0b |
|
BLAKE2b-256 | 5bff7fa569f02c28b1cbe072fc2ae3383bf8508021c29537b2081bd99c8ec510 |
Hashes for accelerator_toolbox-0.0.3-cp36-cp36m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3233702f62642040410b73adbd53b3ba6c516d53d15cdf8ba4a8d4bee048587 |
|
MD5 | fd41b559c2bebe60dc39f2d18d48407c |
|
BLAKE2b-256 | db6cc6c030a2a435dcfca0612bc1de98c42690b7a4eec85a4a4380fe2211816a |
Hashes for accelerator_toolbox-0.0.3-cp36-cp36m-macosx_10_6_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b105299e195e58b15ed1214ae902a2f1c3cec070f8015f61d48d363f52503804 |
|
MD5 | b79172a264adcd45afec6746762adde7 |
|
BLAKE2b-256 | cf9eb499e63963bbe6b1e463e958922e5c3a61496c814df42b232d52e8116ef4 |
Hashes for accelerator_toolbox-0.0.3-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 901196aaef99915d8cb9e7765d143e3854291ba4adb94e68bf1d0f72e8bb7de0 |
|
MD5 | 28a9c1ab525b680c44b60c15f477a4af |
|
BLAKE2b-256 | afa31ff35a84a1807aaa3ecd9d5e181f839be262d6e8ce6e826a77e4e5f07b9c |
Hashes for accelerator_toolbox-0.0.3-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 047b9c40e62bec883b151da11f04913ca6cea41ddafe90fffe16dc21b5781d9b |
|
MD5 | d003a1a07bccc682cabf16b705e8d63c |
|
BLAKE2b-256 | c34193a04ce5ed3f7843941ee3462502b22551a1902959366b504d6594609bfb |
Hashes for accelerator_toolbox-0.0.3-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab9fc0cc93dc757b7af041d2657d4bc533eb94c7f7b634c4e63f2cf944023a05 |
|
MD5 | 10b4f9751f49d5bba93d476c526ddb47 |
|
BLAKE2b-256 | 1b0a237392d05eab704e06594786fde5e0733d1265d52eb60765c9a59eb226de |
Hashes for accelerator_toolbox-0.0.3-cp35-cp35m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d73660d4ee86ca83d06136eb003be3f9d6b47c3bb7dc01afab783e7d44e35132 |
|
MD5 | 8e0a07ab95e17d359e1fd032dbc326fd |
|
BLAKE2b-256 | ea0fa9f9f1510297696792b5f7f681a83e349e9a6a4ebe20b0fa6143dcede98f |
Hashes for accelerator_toolbox-0.0.3-cp35-cp35m-macosx_10_6_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1621ef89e9b40bba6cec85d38b5eb87fef7abc3bbf59df61ed35f9c5b3f173c4 |
|
MD5 | 8751a4f943afbd2f318c1f000fdbe0fa |
|
BLAKE2b-256 | b494eabedb7753c766c72d3fbae5abaa993503ebb6fa5ca729e862fe0ade8a5d |
Hashes for accelerator_toolbox-0.0.3-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32f699c5754783511b3546d049b2ec8be39b2a43ceeb15b57617107ed5f48679 |
|
MD5 | 23a0b93e4bd640f0ac7eb34aea9a8a48 |
|
BLAKE2b-256 | 1f82e54b336134c488eb2948ae7c7a42fc76a46d0aee1a1a4a9757301d066567 |
Hashes for accelerator_toolbox-0.0.3-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d9c90fd57d19275131a2ad35c19f8dea11285d0f69f3ec061be57321a62f2f0 |
|
MD5 | 9e2ae5cc4a4d61ae3adf2be743d9830f |
|
BLAKE2b-256 | b286b0d0a1da8b2462ab0b691a9c26ba5fb48330d45e4954d5f2f715ca840285 |
Hashes for accelerator_toolbox-0.0.3-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7725b04ae909f7b8fc287792ff3a01ed01c7d7def30529f658e2655bfad8d7cb |
|
MD5 | db2219ff9c13fe9c51d73533263cf00b |
|
BLAKE2b-256 | f91aafe305662773a53105c0cf592ff6ae61d459055fe0693daed388e81c8d61 |
Hashes for accelerator_toolbox-0.0.3-cp34-cp34m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | def49e405b2f4a0d0f511d1b47c4cf062e5396bfce7fbe32a9d64795fe5cb1ba |
|
MD5 | c780ab48e22d784b44ab77df0678977b |
|
BLAKE2b-256 | 03b9498df7f0b2f75dfd4074eb7d073e7e01170042ade0b5e28a2b9dda4d1038 |
Hashes for accelerator_toolbox-0.0.3-cp34-cp34m-macosx_10_6_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f0f0c5446dd7c1165b39de2e2351a94dec7909248518b7b8a00a8ba9a0659e9 |
|
MD5 | b01e6ca88b31eb3880547bf19b4cff3b |
|
BLAKE2b-256 | be6fce4829e43891920cb1441527d6dff65ea8dfe1bca4d1184a3dc75dd3b70e |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8324543b64f1c4cf6d39fde7cd8968a0c214bb5cb88a3a83660ae8dc7a4769c3 |
|
MD5 | 3ad8d929e82e89005c538b534e7337db |
|
BLAKE2b-256 | 2e7bac69230a5861bf596261897c3eea6439ccfe3bd99889ce1746f5c2d18056 |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27mu-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8e67e2d89d884fc2bf9adc1fe589540db5972b631c24176f483b98d4ad6d32f |
|
MD5 | f218acaf89baf8096a5117da5f99d8c8 |
|
BLAKE2b-256 | 5702d59fd748c2293b64f7106c20991b25c8f30ef8283f393946057ce02de16e |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e73402d340c88544e2799cd748ef295475037556e71a67b2897678b8cc22b2d8 |
|
MD5 | 9f41c0ba0b439cfd403345ea85f471a9 |
|
BLAKE2b-256 | 822d1f363bbb59adb3a9e66cac4925f9219a4bb2d73c2e7dfa46626af318bef1 |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3d554d39f65a86b224e7416a991c070c2911067bd38cd2bf97603713b954c27 |
|
MD5 | 80d1eedb13b88166e16dfb0a9614af82 |
|
BLAKE2b-256 | bcc8554a4a0596b4bc8d7bddfca1f34beb0bf934444f536f2cfd03c1e32c1b9e |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dc5739765c77843167cf9ad13a7604c17e4c3331ea8ae6cebc91b79ec4f1b8e |
|
MD5 | b3cc29001ae0100815bc26f2f1368200 |
|
BLAKE2b-256 | 6f66337253890599aad0eb5ea00d0bd7e3f14ed1a6cf4a71de5a6c20e59de06e |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e06d27d36c483b3cb09dfca3835bab3fa7b4b2226568e37a0827106587a7d3a |
|
MD5 | 3c662b19fbe0b2962271385715a5a780 |
|
BLAKE2b-256 | 348af09185db5be1797c942605ab7a3d41f25a0b251507c150930aa95e72abce |
Hashes for accelerator_toolbox-0.0.3-cp27-cp27m-macosx_10_6_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21dc761c975ef6abccb6e4f488a4afefef180c43147fceeb78370a2fd1765f02 |
|
MD5 | 49bd3345b2b002951d2b29465a05fd65 |
|
BLAKE2b-256 | e80e7c12e61d0d7ef695ef876a0d86c98959fb64374314241621e4ce63e70f4f |