1 #ifndef __LOW_STORAGE_RK_TABLEAU_BASE__ 2 #define __LOW_STORAGE_RK_TABLEAU_BASE__ 4 #include <deal.II/base/conditional_ostream.h> 6 #include <deal.II/grid/tria.h> 7 #include <deal.II/distributed/shared_tria.h> 8 #include <deal.II/distributed/tria.h> 9 #include <deal.II/lac/full_matrix.h> 10 #include <deal.II/lac/vector.h> 12 #include "rk_tableau_base.h" 19 template <
int dim,
typename real,
typename MeshType = dealii::Triangulation<dim>>
21 template <
int dim,
typename real,
typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
34 double get_gamma(
const int i,
const int j)
const;
LowStorageRKTableauBase(const int n_rk_stages, const int num_delta, const std::string rk_method_string_input)
Default constructor that will set the constants.
double get_b_hat(const int i) const
Returns Butcher tableau "b hat" coefficient at position [i].
const int n_rk_stages
Store number of stages.
double get_beta(const int i) const
Returns Butcher tableau "beta" coefficient at position [i].
dealii::Table< 1, double > butcher_tableau_b_hat
Butcher tableau "b hat".
double get_gamma(const int i, const int j) const
Returns Butcher tableau "gamma" coefficient at position [i][j].
dealii::Table< 2, double > butcher_tableau_gamma
Butcher tableau "gamma".
Files for the baseline physics.
Base class for storing the RK method.
void set_tableau() override
Calls setters for butcher tableau.
virtual void set_gamma()=0
Setter for gamma.
virtual void set_b_hat()=0
Setter for b hat.
dealii::Table< 1, double > butcher_tableau_beta
Butcher tableau "beta".
virtual void set_beta()=0
Setter for beta.
Base class for storing the RK method.
const int num_delta
Size of "delta".
dealii::Table< 1, double > butcher_tableau_delta
Butcher tableau "delta".
virtual void set_delta()=0
Setter for delta.
double get_delta(const int i) const
Returns Butcher tableau "delta" coefficient at position [i].
virtual ~LowStorageRKTableauBase()=default
Destructor.