[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
PHiLiP::Tests::EulerTaylorGreen< dim, nstate > Class Template Reference

Euler Taylor Green Vortex. More...

#include <euler_split_inviscid_taylor_green_vortex.h>

Inheritance diagram for PHiLiP::Tests::EulerTaylorGreen< dim, nstate >:
Collaboration diagram for PHiLiP::Tests::EulerTaylorGreen< dim, nstate >:

Public Member Functions

 EulerTaylorGreen (const Parameters::AllParameters *const parameters_input)
 Constructor. More...
 
int run_test () const override
 Ensure that the kinetic energy is bounded. More...
 
- Public Member Functions inherited from PHiLiP::Tests::TestsBase
 TestsBase ()=delete
 Constructor. Deleted the default constructor since it should not be used.
 
 TestsBase (const Parameters::AllParameters *const parameters_input)
 Constructor. More...
 
virtual ~TestsBase ()=default
 Destructor.
 

Private Member Functions

double compute_kinetic_energy (const std::shared_ptr< DGBase< dim, double > > &dg, unsigned int poly_degree) const
 Computes kinetic energy. More...
 
double compute_entropy (const std::shared_ptr< DGBase< dim, double > > &dg, unsigned int poly_degree) const
 Computes entropy in the norm. More...
 
std::array< double, 2 > compute_change_in_entropy (const std::shared_ptr< DGBase< dim, double > > &dg, unsigned int poly_degree) const
 Computes change in entropy in the norm. More...
 
double compute_volume_term (const std::shared_ptr< DGBase< dim, double > > &dg, unsigned int poly_degree) const
 Computes the volume term kinetic energy production.
 
double get_timestep (const std::shared_ptr< DGBase< dim, double > > &dg, unsigned int poly_degree, const double delta_x) const
 Computes the timestep from max eignevector.
 

Additional Inherited Members

- Public Attributes inherited from PHiLiP::Tests::TestsBase
const Parameters::AllParameters *const all_parameters
 Pointer to all parameters.
 
- Protected Member Functions inherited from PHiLiP::Tests::TestsBase
std::vector< int > get_number_1d_cells (const int ngrids) const
 Evaluates the number of cells to generate the grids for 1D grid based on input file. More...
 
std::string get_pde_string (const Parameters::AllParameters *const param) const
 Returns a string describing which PDE is being used.
 
std::string get_conv_num_flux_string (const Parameters::AllParameters *const param) const
 Returns a string describing which convective numerical flux is being used.
 
std::string get_diss_num_flux_string (const Parameters::AllParameters *const param) const
 Returns a string describing which dissipative numerical flux is being used.
 
std::string get_manufactured_solution_string (const Parameters::AllParameters *const param) const
 Returns a string describing which manufactured solution is being used.
 
- Protected Attributes inherited from PHiLiP::Tests::TestsBase
const MPI_Comm mpi_communicator
 MPI communicator.
 
const int mpi_rank
 MPI rank.
 
const int n_mpi
 
dealii::ConditionalOStream pcout
 ConditionalOStream. More...
 

Detailed Description

template<int dim, int nstate>
class PHiLiP::Tests::EulerTaylorGreen< dim, nstate >

Euler Taylor Green Vortex.

Ensure that the kinetic energy is bounded. Ref: Gassner 2016.

Definition at line 38 of file euler_split_inviscid_taylor_green_vortex.h.

Constructor & Destructor Documentation

◆ EulerTaylorGreen()

template<int dim, int nstate>
PHiLiP::Tests::EulerTaylorGreen< dim, nstate >::EulerTaylorGreen ( const Parameters::AllParameters *const  parameters_input)
explicit

Constructor.

Simply calls the TestsBase constructor to set its parameters = parameters_input

Definition at line 13 of file euler_split_inviscid_taylor_green_vortex.cpp.

Member Function Documentation

◆ compute_change_in_entropy()

template<int dim, int nstate>
std::array< double, 2 > PHiLiP::Tests::EulerTaylorGreen< dim, nstate >::compute_change_in_entropy ( const std::shared_ptr< DGBase< dim, double > > &  dg,
unsigned int  poly_degree 
) const
private

Computes change in entropy in the norm.

That is let \( v\) represent the entropy variables, it computes \(v(M+K)\frac{du}{dt}^T\).

Definition at line 17 of file euler_split_inviscid_taylor_green_vortex.cpp.

◆ compute_entropy()

template<int dim, int nstate>
double PHiLiP::Tests::EulerTaylorGreen< dim, nstate >::compute_entropy ( const std::shared_ptr< DGBase< dim, double > > &  dg,
unsigned int  poly_degree 
) const
private

Computes entropy in the norm.

That is let \( v\) represent the entropy variables, it computes \(v(M+K)u^T\).

Definition at line 332 of file euler_split_inviscid_taylor_green_vortex.cpp.

◆ compute_kinetic_energy()

template<int dim, int nstate>
double PHiLiP::Tests::EulerTaylorGreen< dim, nstate >::compute_kinetic_energy ( const std::shared_ptr< DGBase< dim, double > > &  dg,
unsigned int  poly_degree 
) const
private

Computes kinetic energy.

In the future this function should change to: let \( v\) represent the kinetic energy "entropy" variables, it computes \(v(M+K)u^T\).

Definition at line 423 of file euler_split_inviscid_taylor_green_vortex.cpp.

◆ run_test()

template<int dim, int nstate>
int PHiLiP::Tests::EulerTaylorGreen< dim, nstate >::run_test ( ) const
overridevirtual

Ensure that the kinetic energy is bounded.

If the kinetic energy increases about its initial value, then the test should fail. Ref: Gassner 2016.

Implements PHiLiP::Tests::TestsBase.

Definition at line 557 of file euler_split_inviscid_taylor_green_vortex.cpp.


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