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.git
The 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-devel
To build it with cmake:
cd SimProp-Sirente
mkdir build
cd build
cmake -DENABLE_TESTING=On ..
make -j
make test
To 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 above
To build it with cmake:
cd SimProp-Sirente
mkdir build
cd build
cmake -DENABLE_TESTING=On ..
make -j
make test
Or 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