Troubleshooting#

If you have questions that go beyond this manual, there are a number of resources:

Compiling Errors#

Need text here.

Using MKL in a Conda environment#

If you use MKL inside a Conda environment (e.g. inside the radev environment set up by the “environment.yml” file inside Rayleigh), you will most likely want to have the MKLROOT environment variable set whenever you activate your Conda environment. To do this we set MKLROOT to the location of the currently activated conda environment from the enviroment variable CONDA_PREFIX.

export MKLROOT="$CONDA_PREFIX"

Note that this is Bash syntax (use setenv if running c-shell). Note that there should be no spaces on either side of the “=” sign. If you stop here, you will have to do this every time you activate your development environment. To have this happen automatically, you only need to add two small scripts to radev/etc/conda/activate.d and radev/etc/conda/deactivate.d directories. Scripts in these directories are automatically executed when your conda environment is activated and deactivated, respectively.

Change to your activate.d directory (for me, this was /custom/software/miniconda3/envs/radev/etc/conda/activate.d) and create a file named activate_mkl.sh with the following three lines:

#!/bin/bash
export MKLSAVE="$MKLROOT"
export MKLROOT="$CONDA_PREFIX"

In the deactivate.d directory, create a file named deactivate_mkl.sh with the following two lines:

#!/bin/bash
export MKLROOT="$MKLSAVE"

Now, try it out.

conda deactivate
echo $MKLROOT
conda activate radev
echo $MKLROOT

The MKLSAVE variable is used so that a separate MKL installation on your machine, if one exists, is properly reset in your environment following deactivation.

If you now run configure -conda-mkl Rayleigh should correctly pick up the conda MKL installation.

Segmentation Fault Crashes#

Need test here.

Timestep Crashes#

Need text here.

Numerical Ringing#

Need text here.