8#include <compile_time_options.h>
16#include <deal.II/base/parameter_acceptor.h>
17#include <deal.II/base/timer.h>
18#include <deal.II/lac/sparse_matrix.templates.h>
19#include <deal.II/lac/vector.h>
74 template <
typename Description,
int dim,
typename Number =
double>
113 View::n_precomputed_values;
119 View::n_precomputation_cycles;
130 View::n_precomputed_initial_values;
136 typename View::precomputed_initial_vector_type;
143 const MPI_Comm &mpi_communicator,
144 std::map<std::string, dealii::Timer> &computing_timer,
148 const std::string &subsection =
"/HyperbolicModule");
220 template <
int stages>
223 std::array<std::reference_wrapper<const vector_type>, stages> stage_U,
224 std::array<std::reference_wrapper<const precomputed_vector_type>,
225 stages> stage_precomputed,
226 const std::array<Number, stages> stage_weights,
229 Number tau = Number(0.))
const;
253 void cfl(Number new_cfl)
const
255 Assert(cfl_ > Number(0.), dealii::ExcInternalError());
312 indicator_parameters_;
318 riemann_solver_parameters_;
320 bool cfl_with_boundary_dofs_;
330 const MPI_Comm &mpi_communicator_;
331 std::map<std::
string, dealii::Timer> &computing_timer_;
333 dealii::SmartPointer<const
OfflineData<dim, Number>> offline_data_;
340 mutable
unsigned int n_restarts_;
342 mutable
unsigned int n_warnings_;
348 static constexpr auto n_bounds =
auto & hyperbolic_system() const
static constexpr unsigned int problem_dimension
static constexpr unsigned int n_precomputation_cycles
typename Description::HyperbolicSystem HyperbolicSystem
HyperbolicModule(const MPI_Comm &mpi_communicator, std::map< std::string, dealii::Timer > &computing_timer, const OfflineData< dim, Number > &offline_data, const HyperbolicSystem &hyperbolic_system, const InitialValues< Description, dim, Number > &initial_values, const std::string &subsection="/HyperbolicModule")
typename View::state_type state_type
typename View::precomputed_initial_vector_type precomputed_initial_vector_type
void apply_boundary_conditions(vector_type &U, Number t) const
auto & precomputed_initial() const
typename Description::template HyperbolicSystemView< dim, Number > View
auto & n_warnings() const
static constexpr unsigned int n_precomputed_values
auto & n_restarts() const
typename OfflineData< dim, Number >::scalar_type scalar_type
typename View::vector_type vector_type
typename View::precomputed_vector_type precomputed_vector_type
void cfl(Number new_cfl) const
IDViolationStrategy id_violation_strategy_
Number step(const vector_type &old_U, std::array< std::reference_wrapper< const vector_type >, stages > stage_U, std::array< std::reference_wrapper< const precomputed_vector_type >, stages > stage_precomputed, const std::array< Number, stages > stage_weights, vector_type &new_U, precomputed_vector_type &new_precomputed, Number tau=Number(0.)) const
auto & offline_data() const
static constexpr unsigned int n_precomputed_initial_values
#define ACCESSOR_READ_ONLY(member)
Euler::HyperbolicSystem HyperbolicSystem