1
0
Fork 0
mirror of https://github.com/gwm17/catima.git synced 2024-11-22 10:18:50 -05:00
A slightly modified version of the catima energy loss library (equivalent to LISE energy loss)
Go to file
2021-06-22 00:47:38 +02:00
bin json lib include and fetching 2020-11-30 15:39:02 +01:00
docs minor docs 2021-06-22 00:47:38 +02:00
examples Delete simple 2019-10-08 20:12:20 +02:00
libs backup 2020-08-04 17:35:33 +02:00
pymodule Update setup.py 2021-06-20 23:25:10 +02:00
tests scattering update and syncing from local 2021-01-12 21:50:15 +01:00
utils ls calculation 2018-01-22 19:36:50 +01:00
.gitignore partial update 2018-10-19 02:51:01 +02:00
.readthedocs.yml Create .readthedocs.yml 2019-10-22 21:33:56 +02:00
abundance_database.cpp abundances 2018-04-23 01:39:10 +02:00
abundance_database.h abundances 2018-04-23 01:39:10 +02:00
appveyor.yml Update appveyor.yml 2021-05-19 19:20:03 +02:00
build_config.in update3 2018-10-21 22:08:16 +02:00
calculations.cpp scattering update and syncing from local 2021-01-12 21:50:15 +01:00
calculations.h scattering update and syncing from local 2021-01-12 21:50:15 +01:00
catima.cpp Eout fix when material thickness = 0 2021-01-15 23:15:18 +01:00
catima.h scattering update and syncing from local 2021-01-12 21:50:15 +01:00
CMakeLists.txt added all materials to py module 2021-06-18 16:50:30 +02:00
config.h scattering update and syncing from local 2021-01-12 21:50:15 +01:00
constants.h windows build fix 2020-12-02 00:10:40 +01:00
CREDITS Update CREDITS 2018-01-26 16:04:44 +01:00
cwrapper.cpp skip var removed from Config 2019-10-08 20:25:30 +02:00
cwrapper.h skip var removed from Config 2019-10-08 20:25:30 +02:00
data_atima.h config change 2019-10-09 08:19:07 +02:00
data_ionisation_potential.h C Ipot 2018-02-07 10:55:35 +01:00
generated_LS_coeff.h he u4 2018-11-01 15:04:28 +01:00
init.sh.in cmake 2018-04-18 15:19:03 +02:00
integrator.cpp backup 2020-08-04 17:35:33 +02:00
integrator.h improved angular scattering 2020-12-16 22:53:44 +01:00
LICENSE initial 2017-07-25 18:19:11 +02:00
material_database.cpp improved angular scattering 2020-12-16 22:53:44 +01:00
material_database.h improved angular scattering 2020-12-16 22:53:44 +01:00
nucdata.cpp initial 2017-07-25 18:19:11 +02:00
nucdata.h initial 2017-07-25 18:19:11 +02:00
reactions.cpp kox formula CC change 2019-01-17 18:20:00 +01:00
reactions.h gsl guards 2019-10-08 19:51:45 +02:00
README.md minor docs 2021-06-22 00:47:38 +02:00
spline.cpp update3 2018-10-21 22:08:16 +02:00
spline.h update3 2018-10-21 22:08:16 +02:00
srim.cpp u3 2019-11-21 14:10:03 +01:00
srim.h Config refactoring 2019-05-10 21:02:51 +02:00
storage.cpp refactoring 2019-05-13 20:51:09 +02:00
storage.h windows build fix 2020-12-02 00:10:40 +01:00
structures.cpp layers in cm 2020-08-06 15:47:39 +02:00
structures.h scattering update and syncing from local 2021-01-12 21:50:15 +01:00

Codacy Badge Language grade: C/C++ Documentation Status

CATima

C++ library for calculation of energy loss, range, angular scattering and time of flight of the particle passing through matter. The library is based on physics used in the ATIMA code,however its not a 100% copy of the ATIMA physics. see CREDITS for more details.

The WebAtima UI to this library can be found here:

Installation

CMake is used to build the library. For default build:

> mkdir build
> cd build
> cmake ../
> make

after the compilation the libraries and headers must be either installed system-wide by make install or PATH and LD_LIBRARY_PATH must be adjusted to point to headers and library files. The default install path can be change, ie: cmake -DCMAKE_INSTALL_PREFIX=/opt/catima

the option to system-wide installation is to adjust library path and include paths. This can be done sourcing the init.sh file, which is generated in the build directory:

> source init.sh

Python Module

Python module can be installed for Linux and Windows and python versions 3.7-3.9 using pip:

pip install pycatima

cmake options

compile options, enable or disable with cmake:

cmake ../ -D[OPTION]

available options:

  • BUILD_SHARED_LIBS - if ON shared library is build, otherwise static
  • PYTHON_MODULE - enable/disable building of the python bindigs, pybind11 is required to build the catima python module, default OFF
  • APPS - build command line app, default ON
  • TESTS - build tests, default OFF
  • EXAMPLES - build examples, default OFF
  • GENERATE_DATA - makes program to re-generate precalculated tables (ie precalculated LS coefficients), default:OFF
  • THIN_TARGET_APPROXIMATION - compile the library with thin target approximation, default: ON
  • GSL_INTEGRATION - use GSL integration functions, otherwise use built-in integrator, default: OFF
  • GLOBAL - compile with GLOBAL code (source not included at the moment, needs to be manually added to global directory, default:OFF)
  • STORE_SPLINES - store splines in cache, if disabled datapoints are stored and splines are recreated, default ON

ie:

cmake -DPYTHON_MODULE=ON ../