Gyselalib++ is a collection of C++ components for writing gyrokinetic semi-lagrangian codes and similar as well as a collection of such codes.
to compile Gyselalib++:
git clone --recurse-submodules git@gitlab.maisondelasimulation.fr:gysela-developpers/gyselalibxx.git gyselalibxx
cd gyselalibxx
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-Wall -Wno-sign-compare" ..
make
to run the tests:
ctest --output-on-failure
Then, just have a look at tests/geometryXVx/landau/fft/growthrate_t0.0to45.0.png
:
and tests/geometryXVx/landau/fft/frequency_t0.0to45.0.png
:
To install dependencies through spack, first follow the the 3 first steps of https://github.com/pdidev/spack
Then execute the following:
spack env create gyselalibxx spack.yaml
spack env activate gyselalibxx
spack concretize --reuse
spack install
For example, you can find a Dockerfile installing these dependencies on ubuntu in
docker/gyselalibxx_env/Dockerfile
.