debugging

moment_kinetics.debuggingModule

Define debugging levels that can be used to include extra debugging steps

Provides a bunch of macros (see the macronames Vector) that can be used to surround code in other modules so that it only runs if the 'debug level' passed to the --debug or -d command line argument is high enough.

Also provides macro *_ifelse whose names are taken from macronames, which can be used to switch definitions, etc. For example, if debug_shared_array is in macronames, then

const MPISharedArray = @debug_shared_array_ifelse(DebugMPISharedArray, Array)

can be used to make the type represented by MPISharedArray depend on the debug level.

source