20 #define flagInvalidSolution(message) \ 23 static const auto __invalid_id = this->registerInvalidSolutionInternal(message, false); \ 24 this->flagInvalidSolutionInternal<false>(__invalid_id); \ 27 #define flagSolutionWarning(message) \ 30 static const auto __invalid_id = this->registerInvalidSolutionInternal(message, true); \ 31 this->flagInvalidSolutionInternal<true>(__invalid_id); \ 42 #ifdef MOOSE_KOKKOS_ENABLED 51 template <
bool warning>
56 const bool warning)
const;
unsigned int InvalidSolutionID
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
InvalidSolutionID registerInvalidSolutionInternal(const std::string &message, const bool warning) const
An interface that allows the marking of invalid solutions during a solve.
Every object that can be built by the factory should be derived from this class.
SolutionInvalidInterface(const MooseObject *const moose_object)
const FEProblemBase & _si_problem
A reference to FEProblem base.
const MooseObject & _si_moose_object
The MooseObject that owns this interface.
void flagInvalidSolutionInternal(const InvalidSolutionID invalid_solution_id) const
Set solution invalid mark for the given solution ID.