Peano
Loading...
Searching...
No Matches
benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth Class Reference

#include <EulerFVSmooth.h>

Inheritance diagram for benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth:
Collaboration diagram for benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth:

Public Member Functions

 EulerFVSmooth ()=default
 
virtual void flux (const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, int normal, double *__restrict__ F) override
 
virtual void maxEigenvalue (const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, int normal, double *__restrict__ lambdaMax) override
 
virtual void initPointWisely (const tarch::la::Vector< Dimensions, double > &x, double *__restrict__ Q) override
 Smooth density wave advected in x, constant pressure - same closed-form initial condition the legacy, cell-wise initialCondition() used, just evaluated at the single point x instead of a whole cell's centre.
 
virtual void dirichletBoundaryConditions (const tarch::la::Vector< Dimensions, double > &x, double t, double *__restrict__ Q) override
 Prescribe the exact solution outside of the domain: The density wave is advected with constant velocity u, i.e.
 

Detailed Description

Definition at line 19 of file EulerFVSmooth.h.

Constructor & Destructor Documentation

◆ EulerFVSmooth()

benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth::EulerFVSmooth ( )
default

Member Function Documentation

◆ dirichletBoundaryConditions()

virtual void benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth::dirichletBoundaryConditions ( const tarch::la::Vector< Dimensions, double > &  x,
double  t,
double *__restrict__  Q 
)
overridevirtual

Prescribe the exact solution outside of the domain: The density wave is advected with constant velocity u, i.e.

the solution at (x,t) equals the initial condition at x-ut. With these Dirichlet conditions, the numerical solution should converge towards the same exact solution as with periodic boundary conditions.

◆ flux()

virtual void benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth::flux ( const double *__restrict__  Q,
const tarch::la::Vector< Dimensions, double > &  x,
int  normal,
double *__restrict__  F 
)
overridevirtual

◆ initPointWisely()

virtual void benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth::initPointWisely ( const tarch::la::Vector< Dimensions, double > &  x,
double *__restrict__  Q 
)
overridevirtual

Smooth density wave advected in x, constant pressure - same closed-form initial condition the legacy, cell-wise initialCondition() used, just evaluated at the single point x instead of a whole cell's centre.

◆ maxEigenvalue()

virtual void benchmarks::exahype2::euler::smooth_convergence_test::EulerFVSmooth::maxEigenvalue ( const double *__restrict__  Q,
const tarch::la::Vector< Dimensions, double > &  x,
int  normal,
double *__restrict__  lambdaMax 
)
overridevirtual

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