ryujin 2.1.1 revision ee5cbcbf2346c1299c942d0e1f13b46449973c18
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | List of all members
ryujin::EquationDispatch Class Reference

#include <source/equation_dispatch.h>

Inheritance diagram for ryujin::EquationDispatch:
Inheritance graph
[legend]
Collaboration diagram for ryujin::EquationDispatch:
Collaboration graph
[legend]

Classes

struct  Signals
 

Public Member Functions

 EquationDispatch ()
 
 ~EquationDispatch () override
 
void dispatch (const std::string &parameter_file, const MPI_Comm &mpi_comm)
 

Static Public Member Functions

static void create_parameter_files ()
 
template<typename Callable >
static void register_create_parameter_files (const Callable &callable)
 
template<typename Callable >
static void register_dispatch (const Callable &callable)
 

Internal data

static Signalssignals
 

Detailed Description

Dispatcher class that calls into the right TimeLoop depending on what has been set in the parameter file.

When starting up the ryujin executable we are faced with the following difficulties:

We thus first read in two parameters from the parameter file:

subsection B - Equation
set dimension = ...
set equation = ...
end

and then create an instance of the correct TimeLoop class, that takes the dimension and equation as template parameters.

Definition at line 53 of file equation_dispatch.h.

Constructor & Destructor Documentation

◆ EquationDispatch()

ryujin::EquationDispatch::EquationDispatch ( )
inline

Definition at line 56 of file equation_dispatch.h.

◆ ~EquationDispatch()

ryujin::EquationDispatch::~EquationDispatch ( )
inlineoverride

Definition at line 67 of file equation_dispatch.h.

References signals.

Member Function Documentation

◆ create_parameter_files()

static void ryujin::EquationDispatch::create_parameter_files ( )
inlinestatic

Call create_parameter_files() for all registered equations.

Definition at line 79 of file equation_dispatch.h.

References ryujin::EquationDispatch::Signals::create_parameter_files, ryujin::dave, and signals.

◆ register_create_parameter_files()

template<typename Callable >
static void ryujin::EquationDispatch::register_create_parameter_files ( const Callable &  callable)
inlinestatic

◆ dispatch()

void ryujin::EquationDispatch::dispatch ( const std::string &  parameter_file,
const MPI_Comm &  mpi_comm 
)
inline

Call dispatch() for all registered equations.

Definition at line 107 of file equation_dispatch.h.

References ryujin::dave, ryujin::EquationDispatch::Signals::dispatch, and signals.

◆ register_dispatch()

template<typename Callable >
static void ryujin::EquationDispatch::register_dispatch ( const Callable &  callable)
inlinestatic

Member Data Documentation

◆ signals

Signals* ryujin::EquationDispatch::signals
staticprotected

The documentation for this class was generated from the following file: