Installation and Testing
Dependencies
CMake is used as a build system. The mkdeps shell script should handle installing all the dependencies, but they are: NetCDF, zlib, HDF5. Anaconda is also required, as the interface to Gkeyll (more specifically, the post-processing Gkeyll suite postgkyl) is written in python. A conda environment is automatically setup by mkdeps to handle this.
Installation
Before installing Flan, ensure you have a working installation of Anaconda on your machine. If you are on a cluster, oftentimes you may need to load the conda module with something like module load conda, but ultimately each cluster has its own ways. If a system-wide installation is not available, you can install Anaconda in your home directory and run it from there. Once you have that, then installing Flan should only require three commands. Navigate to the top directory of Flan and do the following:
Install dependencies:
machines/mkdeps.[machine].sh
machineis where you are installing it on (probably linux)This installs the dependencies in
$HOME/flansoft.If you want them somewhere else, change the FLANSOFT variable in your mkdeps fileA conda environment named
flanis created as part of this process, which you can activate withconda activate flan
Generate build system:
cd build && cmake ..
If you changed
FLANSOFTabove, modify the cmake command with-DFLANSOFT=/path/to/flansoft
Make and install Flan:
make && make install
This process installs the flan library in the lib directory and activates the (flan) conda environment. To run flan, one writes an input file in C++ and then compiles it with Flan. This process is detailed next, but it is important to note that the executable must be ran within the (flan) conda environment!
Testing
CTest (part of CMake) is used to carry out tests. These are being written still.