[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
empty_RRK_base.h
1 #ifndef __EMPTY_RRK_BASE_H__
2 #define __EMPTY_RRK_BASE_H__
3 
4 #include "dg/dg_base.hpp"
5 #include "ode_solver/runge_kutta_methods/rk_tableau_base.h"
6 
7 namespace PHiLiP {
8 namespace ODE {
9 
12 #if PHILIP_DIM==1
13 template <int dim, typename real, typename MeshType = dealii::Triangulation<dim>>
14 #else
15 template <int dim, typename real, typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
16 #endif
18 {
19 public:
21  explicit EmptyRRKBase(std::shared_ptr<RKTableauBase<dim,real,MeshType>> /*rk_tableau_input*/);
22 
24 
26  virtual real compute_FR_entropy_contribution(const real /*dt*/,
27  std::shared_ptr<DGBase<dim,real,MeshType>>/* dg*/,
28  const std::vector<dealii::LinearAlgebra::distributed::Vector<double>> &/*rk_stage*/,
29  const bool /*compute_K_norm*/) const{
30  return 0.0;
31  };
32 
34 
35  virtual void store_stage_solutions(const int /*istage*/,
36  const dealii::LinearAlgebra::distributed::Vector<double> /*rk_stage_i*/) {
37  // Do not store anything
38  };
39 
41 
43  virtual real update_relaxation_parameter(const real /*dt*/,
44  std::shared_ptr<DGBase<dim,real,MeshType>> /*dg*/,
45  const std::vector<dealii::LinearAlgebra::distributed::Vector<double>> &/*rk_stage*/,
46  const dealii::LinearAlgebra::distributed::Vector<double> &/*solution_update*/
47  ) {
48  // Return 1 such that the time step isn't modified
49  return 1.0;
50  };
51 
52 
53 };
54 
55 } // ODE namespace
56 } // PHiLiP namespace
57 
58 #endif
EmptyRRKBase(std::shared_ptr< RKTableauBase< dim, real, MeshType >>)
Default constructor that will set the constants.
Files for the baseline physics.
Definition: ADTypes.hpp:10
virtual real update_relaxation_parameter(const real, std::shared_ptr< DGBase< dim, real, MeshType >>, const std::vector< dealii::LinearAlgebra::distributed::Vector< double >> &, const dealii::LinearAlgebra::distributed::Vector< double > &)
Return the relaxation parameter per the RRK method.
virtual void store_stage_solutions(const int, const dealii::LinearAlgebra::distributed::Vector< double >)
Update stored quantities at the current stage.
Base class for storing the RK method.
virtual real compute_FR_entropy_contribution(const real, std::shared_ptr< DGBase< dim, real, MeshType >>, const std::vector< dealii::LinearAlgebra::distributed::Vector< double >> &, const bool) const
Calculate FR entropy adjustment.
DGBase is independent of the number of state variables.
Definition: dg_base.hpp:82