1 #ifndef __PARAMETERS_ODE_SOLVER_H__ 2 #define __PARAMETERS_ODE_SOLVER_H__ 4 #include <deal.II/base/parameter_handler.h> 5 #include "parameters/parameters.h" bool is_3Sstarplus
True or false depending on what low-storage RK method is used.
OutputEnum ode_output
verbose or quiet.
Proper Orthogonal Decomposition with Galerkin projection.
double initial_time
Initial time at which we initialize the ODE solver with.
Heun's method (second order explicit trapezoidal; SSP)
double beta2
Second value for beta controller;.
int output_solution_every_x_steps
Outputs the solution every x steps to .vtk file.
Third-order diagonally-implicit RK.
int num_delta
Number of delta values in low-storage RK methods.
bool output_solution_at_fixed_times
Flag for outputting solution at fixed times.
double time_step_factor_residual_exp
Scales initial time step by pow(time_step_factor_residual*(-log10(residual_norm_decrease)),time_step_factor_residual_exp)
Proper Orthogonal Decomposition with Petrov-Galerkin projection (LSPG) and ECSW Hyper-reduction.
Files for the baseline physics.
RKMethodEnum
Types of RK method (i.e., unique Butcher tableau)
OutputEnum rrk_root_solver_output
Do output for root solving routine.
unsigned int print_iteration_modulo
If ode_output==verbose, print every print_iteration_modulo iterations.
bool output_ode_solver_steady_state_convergence_table
unsigned int initial_iteration
Initial iteration at which we initialize the ODE solver with.
double atol
Absolute tolerance.
Explicit RK using the relaxation Runge-Kutta method (Ketcheson, 2019)
ODESolverEnum
Types of ODE solver.
Third-order strong-stability preserving.
double output_solution_every_dt_time_intervals
Outputs the solution every dt time intervals to .vtk file.
bool allocate_matrix_dRdW
Flag to signal that automatic differentiation (AD) matrix dRdW must be allocated. ...
int rk_order
Order of the RK method; assigned based on runge_kutta_method.
std::string output_solution_fixed_times_string
String of fixed solution output times.
double initial_time_step
Time step used in ODE solver.
Proper Orthogonal Decomposition with Petrov-Galerkin projection (LSPG)
double nonlinear_steady_residual_tolerance
Tolerance to determine steady-state convergence.
Fourth-order, FSAL, three register low-storage Runge-Kutta method with a fourth register for an error...
Second-order diagonally-implicit RK.
double rtol
Relative tolerance.
Fourth-order, three register low-storage Runge-Kutta method.
double initial_desired_time_for_output_solution_every_dt_time_intervals
std::string steady_state_final_solution_filename
Filename to write final steady state solution.
Third-order, FSAL, three register low-storage Runge-Kutta method with a fourth register for an error ...
unsigned int number_of_fixed_times_to_output_solution
Number of fixed times to output the solution.
bool output_final_steady_state_solution_to_file
Output final steady state solution to file.
RKMethodEnum runge_kutta_method
Runge-kutta method.
double time_step_factor_residual
Multiplies initial time-step by time_step_factor_residual*(-log10(residual_norm_decrease)) ...
void parse_parameters(dealii::ParameterHandler &prm)
Parses input file and sets the variables.
bool output_solution_at_exact_fixed_times
Flag for outputting the solution at exact fixed times by decreasing the time step on the fly...
ODESolverEnum ode_solver_type
ODE solver type.
Runge-Kutta (RK), explicit or diagonally implicit.
Parameters related to the ODE solver.
double relaxation_runge_kutta_root_tolerance
Tolerance for RRK root solver, default value 5E-10.
double beta3
Third value for beta controller;.
int n_rk_stages
Number of stages for an RK method; assigned based on runge_kutta_method.
double beta1
First value for beta controller;.
Classical fourth-order RK.
unsigned int nonlinear_max_iterations
Maximum number of iterations.
static void declare_parameters(dealii::ParameterHandler &prm)
Declares the possible variables and sets the defaults.