ryujin 2.5.0 revision c64172211cf21344cb9b9b0f3a1266aa6400d392
Loading...
Searching...
No Matches
Classes | Enumerations
Interfaces
Collaboration diagram for Interfaces:

Classes

class  ryujin::Interface::HyperbolicModule< dim, Number >
 
class  ryujin::Interface::HyperbolicSystem
 
class  ryujin::Interface::InitialValues< dim, Number >
 
class  ryujin::Restart
 
class  ryujin::Correction
 
class  ryujin::Interface::ParabolicModule< dim, Number >
 
class  ryujin::Interface::ParabolicSystem
 
class  ryujin::Interface::Postprocessor< dim, Number >
 
class  ryujin::Interface::Simulation< dim, Number >
 
class  ryujin::Interface::SolutionTransfer< dim, Number >
 
class  ryujin::Interface::Task< Number >
 
class  ryujin::Interface::TimeIntegrator< dim, Number >
 

Enumerations

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

Detailed Description

Abstract base classes in namespace ryujin::Interface that hide the equation dependent types from the driver and the discretization, and Interface::Task, the interface of all tasks that the Scheduler runs (include/ryujin/interface).

Enumeration Type Documentation

◆ IDViolationStrategy

enum class ryujin::IDViolationStrategy : std::uint8_t
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 implies that the low-order update itself lies outside the invariant domain.

A "CFL violation" occurs if the computed tau_max of a substep is significantly larger than the previously computed time step size tau with which we perform the update.

Note
Data structures in HyperbolicModule are initialized with the ensemble subrange communicator stored in MPIEnsemble. However, the time step size constraint (i.e. tau_max) is synchronized over the entire global communicator.
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 42 of file module.h.