ryujin 2.1.1 revision 9391072059490dd712e0ea92785f21acd6605f00
Classes | Enumerations
Hyperbolic Module

Classes

class  ryujin::HyperbolicModule< Description, dim, Number >
 

Enumerations

enum class  ryujin::IDViolationStrategy { ryujin::IDViolationStrategy::warn , ryujin::IDViolationStrategy::raise_exception }
 

Detailed Description

This module contains classes and functions used during different stages of the explicit hyperbolic update performed in HyperbolicModule::step().

Enumeration Type Documentation

◆ IDViolationStrategy

enum class ryujin::IDViolationStrategy
strong

An enum controlling the behavior on detection of an invariant domain or CFL violation. Such a case might occur for either aggressive CFL numbers > 1, and/or later stages in the Runge Kutta scheme when the time step tau is prescribed.

The invariant domain violation is detected in the limiter and typically implies that the low-order update is already out of bounds. We further do a quick sanity check whether the computed step size tau_max and the prescribed step size tau are within an acceptable tolerance of about 10%.

Enumerator
warn 

Warn about an invariant domain violation but take no further action.

raise_exception 

Raise a Restart exception on domain violation. This exception can be caught in TimeIntegrator and various different actions (adapt CFL and retry) can be taken depending on chosen strategy.

Definition at line 39 of file hyperbolic_module.h.