Peano 4
Loading...
Searching...
No Matches
applications::exahype2::ccz4::RKDGCCZ4 Class Reference

#include <RKDGCCZ4.h>

Inheritance diagram for applications::exahype2::ccz4::RKDGCCZ4:
Collaboration diagram for applications::exahype2::ccz4::RKDGCCZ4:

Public Member Functions

 RKDGCCZ4 ()
 
::exahype2::RefinementCommand refinementCriterion (const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, double t) override
 Refinement criterion.
 
void initialCondition (double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, const tarch::la::Vector< Dimensions, int > &index, bool gridIsConstructed) override
 
virtual void boundaryConditions (const double *__restrict__ Qinside, double *__restrict__ Qoutside, const tarch::la::Vector< Dimensions, double > &x, double t, int normal) override
 
void sourceTerm (const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, double t, double dt, double *__restrict__ S) override
 
virtual double maxEigenvalue (const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, double t, double dt, int normal) override
 Determine max eigenvalue over Jacobian in a given point with solution values (states) Q.
 
virtual void nonconservativeProduct (const double *__restrict__ Q, const double *__restrict__ dQdx, const tarch::la::Vector< Dimensions, double > &x, double t, double dt, int normal, double *__restrict__ BgradQ) override
 

Static Private Attributes

static tarch::logging::Log _log
 

Detailed Description

Definition at line 24 of file RKDGCCZ4.h.

Constructor & Destructor Documentation

◆ RKDGCCZ4()

applications::exahype2::ccz4::RKDGCCZ4::RKDGCCZ4 ( )

Definition at line 84 of file RKDGCCZ4.cpp.

Member Function Documentation

◆ boundaryConditions()

void applications::exahype2::ccz4::RKDGCCZ4::boundaryConditions ( const double *__restrict__ Qinside,
double *__restrict__ Qoutside,
const tarch::la::Vector< Dimensions, double > & x,
double t,
int normal )
overridevirtual

Definition at line 163 of file RKDGCCZ4.cpp.

References assertion4, logTraceInWith3Arguments, and logTraceOut.

◆ initialCondition()

void applications::exahype2::ccz4::RKDGCCZ4::initialCondition ( double *__restrict__ Q,
const tarch::la::Vector< Dimensions, double > & x,
const tarch::la::Vector< Dimensions, double > & h,
const tarch::la::Vector< Dimensions, int > & index,
bool gridIsConstructed )
override

◆ maxEigenvalue()

virtual double applications::exahype2::ccz4::RKDGCCZ4::maxEigenvalue ( const double *__restrict__ Q,
const tarch::la::Vector< Dimensions, double > & x,
double t,
double dt,
int normal )
overridevirtual

Determine max eigenvalue over Jacobian in a given point with solution values (states) Q.

All parameters are in.

Returns
Max eigenvalue. Result has to be positive, so we are actually speaking about the maximum absolute eigenvalue.

◆ nonconservativeProduct()

virtual void applications::exahype2::ccz4::RKDGCCZ4::nonconservativeProduct ( const double *__restrict__ Q,
const double *__restrict__ dQdx,
const tarch::la::Vector< Dimensions, double > & x,
double t,
double dt,
int normal,
double *__restrict__ BgradQ )
overridevirtual

◆ refinementCriterion()

exahype2::RefinementCommand applications::exahype2::ccz4::RKDGCCZ4::refinementCriterion ( const double *__restrict__ Q,
const tarch::la::Vector< Dimensions, double > & x,
const tarch::la::Vector< Dimensions, double > & h,
double t )
override

Refinement criterion.

ExaHypE2 is guided by a maximum and minimum mesh (patch) size. All (dynamic) AMR is constrained by these values, i.e. if your mesh is coarser than the maximum mesh size, ExaHyPE 2 will automatically refine. If you try to refine further than the minimum mesh size, ExaHyPE 2 will ignore any refinement.

Consequently, you are fine if you work with a regular mesh: You set the maximum mesh size, and you leave everything else to Peano 4/ExaHyPE 2. If you want to have an adaptive mesh, use this routine to implement the refinement pattern.

Parameters
QThis is the (current) solution. The data is not set to a valid value throughout grid construction. That is: If t equals 0.0, you cannot assume that Q is properly initialised. Therefore, Q usually is only evaluated by dynamic AMR codes which make the solution follow

Definition at line 101 of file RKDGCCZ4.cpp.

References h, exahype2::Keep, logTraceInWith3Arguments, logTraceOutWith1Argument, and toString().

Here is the call graph for this function:

◆ sourceTerm()

void applications::exahype2::ccz4::RKDGCCZ4::sourceTerm ( const double *__restrict__ Q,
const tarch::la::Vector< Dimensions, double > & x,
double t,
double dt,
double *__restrict__ S )
override

Field Documentation

◆ _log

tarch::logging::Log applications::exahype2::ccz4::RKDGCCZ4::_log
staticprivate

Definition at line 26 of file RKDGCCZ4.h.


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