[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
rrk_numerical_entropy_conservation_check.h
1 #ifndef __RRK_NUMERICAL_ENTROPY_CONSERVATION_CHECK__
2 #define __RRK_NUMERICAL_ENTROPY_CONSERVATION_CHECK__
3 
4 #include <deal.II/base/convergence_table.h>
5 
6 #include "dg/dg_base.hpp"
7 #include "tests.h"
8 #include "flow_solver/flow_solver.h"
9 
10 namespace PHiLiP {
11 namespace Tests {
12 
14 template <int dim, int nstate>
16 {
17 public:
20  const Parameters::AllParameters *const parameters_input,
21  const dealii::ParameterHandler &parameter_handler_input);
22 
24  const dealii::ParameterHandler &parameter_handler;
25 
27  int run_test () const override;
28 protected:
29 
31  Parameters::AllParameters reinit_params(bool use_rrk, double time_step_size) const;
32 
35  const std::unique_ptr<FlowSolver::FlowSolver<dim,nstate>> &flow_solver,
36  const double initial_numerical_entropy,
37  const double final_time_actual,
38  bool expect_conservation
39  ) const;
40 
43  const Parameters::AllParameters params,
44  const double numerical_entropy_initial,
45  bool expect_conservation
46  ) const;
47 
48 };
49 
50 } // End of Tests namespace
51 } // End of PHiLiP namespace
52 
53 #endif
Selects which flow case to simulate.
Definition: flow_solver.h:64
Files for the baseline physics.
Definition: ADTypes.hpp:10
const dealii::ParameterHandler & parameter_handler
Parameter handler for storing the .prm file being ran.
Main parameter class that contains the various other sub-parameter classes.
int compare_numerical_entropy_to_initial(const std::unique_ptr< FlowSolver::FlowSolver< dim, nstate >> &flow_solver, const double initial_numerical_entropy, const double final_time_actual, bool expect_conservation) const
Compare the numerical_entropy after flow simulation to initial, and return test fail int...
int get_numerical_entropy_and_compare_to_initial(const Parameters::AllParameters params, const double numerical_entropy_initial, bool expect_conservation) const
runs flow solver. Returns 0 (pass) or 1 (fail) based on numerical_entropy conservation of calculation...
RRKNumericalEntropyConservationCheck(const Parameters::AllParameters *const parameters_input, const dealii::ParameterHandler &parameter_handler_input)
Constructor.
Parameters::AllParameters reinit_params(bool use_rrk, double time_step_size) const
Reinitialize parameters. Necessary because all_parameters is constant.
Verify numerical_entropy conservation for inviscid Burgers using split form and RRK.
Base class of all the tests.
Definition: tests.h:17