SimProp is a Monte Carlo simulation code of ultra-high energy cosmic ray propagation. SimProp-Sirente is based on SimProp-v2r4 but still in its initial development.
The stable release (and older versions) of SimProp can be found at
https://augeraq.sites.lngs.infn.it
Enquires about SimProp must be addressed to the SimProp development group at
[email protected]
The preferred way is to clone the source from the git repository:
git clone https://github.com/carmeloevoli/SimProp-Sirente.gitThe other method is to download a ZIP file from the GitHub page by clicking "Clone and download" and then "Download ZIP".
SimProp can be installed on GNU/Linux and macOS (OS X), while other operating systems have not been tested and are generally not supported.
Required:
- CMake (
cmake) is necessary to configure and build the source code (ver. 3.1+) - GCC (
g++) or Clang (clang++) are supported compilers; as modern C++ is employed (C++14), at least GCC 6.1 / Clang 3.4 should be considered - GNU Scientific Library (GSL) (
gsl) is mandatory for numerical integration and for special functions
Optional:
- Git is needed if one wants to clone and keep in sync the source code from the git repository (recommended)
- LCOV is used with
gcov(GCC) to generate the code coverage reports
Provided with the source:
- Google Test is employed as a framework for unit tests v1.10.0
- PLOG is a C++ logging library v1.1.5
- NamedType is a C++ library for the easy implementation of StrongTypes master
Required packages to build on RHEL/CentOS/Fedora systems:
dnf install git cmake g++ gsl-develTo build it with cmake:
cd SimProp-Sirente
mkdir build
cd build
cmake -DENABLE_TESTING=On ..
make -j
make testTo obtain the required and optional packages, one can use Homebrew:
brew install cmake gsl
brew install gcc # only if GCC is desired
brew link --overwrite gcc # same as aboveTo build it with cmake:
cd SimProp-Sirente
mkdir build
cd build
cmake -DENABLE_TESTING=On ..
make -j
make testOr for GCC:
export GCC_BREW_PATH=$(brew --cellar gcc)/$(brew info --json gcc | jq -r '.[0].installed[0].version');
export CC=$GCC_BREW_PATH/bin/gcc-9
export CXX=$GCC_BREW_PATH/bin/g++-9
cmake -DENABLE_TESTING=On ..
make -j
make test