Build and Run Ateles

This page provides a brief introduction on building and using the Ateles solver.

Compilation

Ateles is a MPI-parallel application and you will need to have the MPI library installed to compile it. For compilation the waf build tool is used. The Fortran compiler is specified using the environment variable FC. Thus you should set this environment variable to the MPI wrapper on your machine, typically export FC=mpif90. With this variable set, you can configure and compile the code by typing

./waf configure build

Now, an executable called ateles got created in the folder ateles/build/. The two steps, configuration and building might also be done separately. Configuration is done with the folowing command

./waf configure

whereas the command

./waf distclean

is used to clean the current configuration as well as most build output.

If you want to clean only the build output but keep the configuration in place, use

./waf clean

To keep the configuration tidy, it is recommended to clean it before creating a new one. Therefore it is adviced to call configure together with distclean or cleanall.

For using q-polynomials you also need to load the fftw module. For that the --fftw_path=$FFTWDIR/ option in the configuration process has to be set

./waf distclean configure --fftw_path=$FFTWDIR/

To compile the code, type

./waf build

You can also do a faster compilation without doing unit tests by building only the exectubale with the command

./waf build --target=ateles

In the compilation described above you will obtain an optimized version of the executable. If you would like to get an executable that is suitable for debugging, you can run

./waf debug

This will produce the executable with debugging symbols in build/debug.

Usually the project needs to be configured only once on a system, but you might recompile it several times.

Running

In the main ateles directory there is an example configuration file that documents most parameters you might set for the simulation, and allows you to do a small simulation run right after compilation to check if everything worked fine. The configuration is provided in the form of a Lua script, and the input is therefore named ateles.lua. The application takes just a single parameter on the command line, which is the name of the configuration file to load. If no command line parameter is given, this will default to ateles.lua. Said example configuration can therefore be run by just executing

./build/ateles

in the main project directory.