1 #ifndef __TIME_REFINEMENT_STUDY_REFERENCE__ 2 #define __TIME_REFINEMENT_STUDY_REFERENCE__ 4 #include <deal.II/base/convergence_table.h> 6 #include "dg/dg_base.hpp" 13 template <
int dim,
int nstate>
20 const dealii::ParameterHandler ¶meter_handler_input);
40 dealii::LinearAlgebra::distributed::Vector<double> calculate_reference_solution(
double final_time)
const;
46 double final_time_actual,
47 dealii::LinearAlgebra::distributed::Vector<double> reference_solution)
const;
double calculate_L2_error_at_final_time_wrt_reference(std::shared_ptr< DGBase< dim, double >> dg, const Parameters::AllParameters parameters, double final_time_actual, dealii::LinearAlgebra::distributed::Vector< double > reference_solution) const
Calculate L2 error at the final time in the passed parameters.
Parameters::AllParameters reinit_params_and_refine_timestep(int refinement) const
Reinitialize parameters while refining the timestep. Necessary because all_parameters is constant...
Files for the baseline physics.
int run_test() const override
Run test.
Parameters::AllParameters reinit_params_for_reference_solution(int number_of_timesteps, double final_time) const
Reinitialize parameters and set initial_timestep according to reference solution and passed final tim...
Main parameter class that contains the various other sub-parameter classes.
const dealii::ParameterHandler & parameter_handler
Parameter handler for storing the .prm file being ran.
TimeRefinementStudyReference(const Parameters::AllParameters *const parameters_input, const dealii::ParameterHandler ¶meter_handler_input)
Constructor.
const double refine_ratio
Ratio to refine by.
Time refinement study which compares to a reference solution.
DGBase is independent of the number of state variables.
const int n_time_calculations
Number of times to solve for convergence summary.
Base class of all the tests.