GEOSX
Macros
KrylovUtils.hpp File Reference
#include "codingUtilities/Utilities.hpp"

Go to the source code of this file.

Macros

#define GEOSX_KRYLOV_MIN_DIV   ::LvArray::NumericLimits< real64 >::epsilon
 Tolerance for division by zero in Krylov solvers.
 
#define GEOSX_KRYLOV_BREAKDOWN_IF_ZERO(VAR)
 Exit solver iteration and report a breakdown if value too close to zero. More...
 

Macro Definition Documentation

◆ GEOSX_KRYLOV_BREAKDOWN_IF_ZERO

#define GEOSX_KRYLOV_BREAKDOWN_IF_ZERO (   VAR)
Value:
do { \
if( isZero( VAR, GEOSX_KRYLOV_MIN_DIV ) ) \
{ \
GEOSX_LOG_LEVEL_RANK_0( 1, "Breakdown in " << methodName() << ": " << #VAR << " = " << VAR ); \
m_result.status = LinearSolverResult::Status::Breakdown; \
break; \
} \
} while( false )
#define GEOSX_KRYLOV_MIN_DIV
Tolerance for division by zero in Krylov solvers.
Definition: KrylovUtils.hpp:24

Exit solver iteration and report a breakdown if value too close to zero.

Parameters
VARthe variable or expression

Definition at line 31 of file KrylovUtils.hpp.