4.3. Spectral solver
This manual describes the installation on a Unix system.
For running a simulation after the installation, please refer to the spectral solver usage page
- Fortran compiler supporting Fortran 2008 standard
- PETSc including FFTW
- DAMASK/CONFIG reflecting your system settings
- system variables set (done by calling
>source DAMASK/DAMASK_env.(sh/csh/zsh); IMPORTANT note: as you have not yet compiled the spectral solver at this point, the warnings about "Spectral Solver Not found!" and "Post Processing Not found!" are normal; follow below instructions, which will fix this behavior!)
Build from source and install
> cd DAMASK
> make spectral [switch=value] [switch=value] [...]
> make install
General compiler switches
You can control your compilation with the following switches (default in bold
- OPTIMIZATION: OFF, DEFENSIVE, AGGRESSIVE
- OPENMP: TRUE, FALSE
- BUILD_TYPE: RELEASE, SYNTAXONLY, DEBUG (future option)
The meaning of the OPTIMIZATION
switches are as following:
- OFF: -O0
- DEFENSIVE: -O2
- AGGRESSIVE: -O3
Choose AGGRESSIVE only if you do not encounter any problems such as inconsistent solver results.
As far as we know, DEFENSIVE is always safe and already improves performance significantly compared to OFF.
Compilation with OPTIMIZATION
= OFF is only recommended when compile time is a premium.
Advanced make options
The advanced make options allow to specify in combination with the general compiler switches the complete compile command.
The following commands are defined in the Makefile
- BUILDCMD_PRE = arbitrary prefix
- BUILDCMD_POST = arbitrary suffix
If the compiling options are changed, remove all previously compiled objects with
> cd DAMASK/code/
> make clean