22 #ifndef _aspect_parameters_h
23 #define _aspect_parameters_h
33 struct CompositionalFieldDescription;
36 namespace GeometryModel
136 if (input ==
"continue with next timestep")
138 else if (input ==
"cut timestep size")
140 else if (input ==
"abort program")
167 if (input ==
"continue with nonlinear solver")
169 else if (input ==
"abort")
255 if (input ==
"isentropic compression")
257 else if (input ==
"anelastic liquid approximation")
259 else if (input ==
"Boussinesq approximation")
261 else if (input ==
"custom")
299 if (input ==
"isentropic compression")
301 else if (input ==
"hydrostatic compression")
303 else if (input ==
"reference density profile")
305 else if (input ==
"implicit reference density profile")
307 else if (input ==
"incompressible")
309 else if (input ==
"projected density field")
311 else if (input ==
"ask material model")
345 if (input ==
"real density")
347 else if (input ==
"reference density profile")
376 if (input ==
"entropy viscosity")
378 else if (input ==
"SUPG")
388 return "entropy viscosity|SUPG";
408 return "default solver|block AMG|direct solver|block GMG";
414 if (input ==
"block AMG")
416 else if (input ==
"direct solver")
418 else if (input ==
"block GMG")
420 else if (input ==
"default solver")
443 return "local smoothing|global coarsening";
449 if (input ==
"local smoothing")
451 else if (input ==
"global coarsening")
474 return "GMRES|IDR(s)";
480 if (input ==
"GMRES")
482 else if (input ==
"IDR(s)")
505 return "ARKode|fixed step";
511 if (input ==
"ARKode")
513 else if (input ==
"fixed step")
539 const MPI_Comm mpi_communicator);
570 const MPI_Comm mpi_communicator);
static ::ExceptionBase & ExcNotImplemented()
#define AssertThrow(cond, exc)
@ prescribed_field_with_diffusion
static std::string get_options_string()
static Kind parse(const std::string &input)
static Kind parse(const std::string &input)
@ continue_with_nonlinear_solver
static Kind parse(const std::string &input)
@ continue_with_next_timestep
@ no_Advection_iterated_defect_correction_Stokes
@ iterated_Advection_and_Newton_Stokes
@ no_Advection_single_Stokes
@ no_Advection_single_Stokes_first_timestep_only
@ single_Advection_no_Stokes
@ single_Advection_iterated_Stokes
@ iterated_Advection_no_Stokes
@ single_Advection_single_Stokes
@ single_Advection_iterated_Newton_Stokes
@ no_Advection_iterated_Stokes
@ single_Advection_iterated_defect_correction_Stokes
@ iterated_Advection_and_Stokes
@ iterated_Advection_and_defect_correction_Stokes
The NullspaceRemoval struct.
static Kind parse(const std::string &input)
static const std::string pattern()
static const std::string pattern()
static Kind parse(const std::string &input)
static Kind parse(const std::string &input)
static const std::string pattern()
static const std::string pattern()
static Kind parse(const std::string &input)
unsigned int max_nonlinear_iterations
unsigned int max_nonlinear_iterations_in_prerefinement
std::vector< double > global_composition_min_preset
NullspaceRemoval::Kind nullspace_removal
bool mesh_deformation_enabled
unsigned int resume_checkpoint_id
Formulation::MassConservation::Kind formulation_mass_conservation
bool skip_setup_initial_conditions_on_initial_refinement
MaterialModel::MaterialAveraging::AveragingOperation material_averaging
bool use_equal_order_interpolation_for_stokes
unsigned int n_checkpoints_to_keep
unsigned int n_cheap_stokes_solver_steps
unsigned int adaptive_refinement_interval
unsigned int reaction_steps_per_advection_step
double reaction_time_step
bool use_discontinuous_temperature_discretization
double maximum_relative_increase_time_step
double global_temperature_max_preset
bool have_discontinuous_composition_discretization
double discontinuous_penalty
static bool solve_Stokes_iteratively(const typename NonlinearSolver::Kind &input)
std::string pressure_normalization
std::vector< double > stabilization_c_R
std::vector< bool > use_limiter_for_discontinuous_composition_solution
static bool is_defect_correction(const typename NonlinearSolver::Kind &input)
unsigned int temperature_degree
AdvectionStabilizationMethod::Kind advection_stabilization_method
double refinement_fraction
double temperature_solver_tolerance
void parse_geometry_dependent_parameters(ParameterHandler &prm, const GeometryModel::Interface< dim > &geometry_model)
unsigned int min_grid_level
NonlinearSolver::Kind nonlinear_solver
unsigned int initial_global_refinement
bool use_operator_splitting
unsigned int AMG_smoother_sweeps
std::vector< double > global_composition_max_preset
std::set< types::boundary_id > fixed_heat_flux_boundary_indicators
bool skip_solvers_on_initial_refinement
std::string AMG_smoother_type
bool adapt_by_fraction_of_cells
void parse_parameters(ParameterHandler &prm, const MPI_Comm mpi_communicator)
LinearSolverFailureStrategy::Kind linear_solver_failure_strategy
bool run_postprocessors_on_initial_refinement
StokesGMGType::Kind stokes_gmg_type
std::vector< bool > use_discontinuous_composition_discretization
bool use_conduction_timestep
unsigned int advection_gmres_restart_length
double coarsening_fraction
Parameters(ParameterHandler &prm, const MPI_Comm mpi_communicator)
Formulation::Kind formulation
std::string output_directory
bool use_full_A_block_preconditioner
double AMG_aggregation_threshold
double linear_stokes_solver_tolerance
double adiabatic_surface_temperature
unsigned int max_composition_degree
bool use_artificial_viscosity_smoothing
unsigned int stabilization_alpha
std::vector< double > additional_refinement_times
double maximum_first_time_step
NonlinearSolverFailureStrategy::Kind nonlinear_solver_failure_strategy
double nonlinear_tolerance
std::vector< typename AdvectionFieldMethod::Kind > compositional_field_methods
double linear_solver_S_block_tolerance
Formulation::TemperatureEquation::Kind formulation_temperature_equation
static void declare_parameters(ParameterHandler &prm, const unsigned int mpi_rank)
unsigned int stokes_velocity_degree
bool use_direct_stokes_solver
double stabilization_gamma
StokesSolverType::Kind stokes_solver_type
unsigned int idr_s_parameter
double global_temperature_min_preset
unsigned int timing_output_frequency
double diffusion_length_scale
bool force_nonsymmetric_A_block_solver
std::string world_builder_file
bool use_locally_conservative_discretization
double linear_solver_A_block_tolerance
std::map< unsigned int, std::pair< std::string, unsigned int > > mapped_particle_properties
unsigned int initial_adaptive_refinement
unsigned int n_compositional_fields
bool enable_additional_stokes_rhs
bool enable_prescribed_dilation
std::vector< unsigned int > normalized_fields
bool use_limiter_for_discontinuous_temperature_solution
AdvectionFieldMethod::Kind temperature_method
std::vector< unsigned int > chemical_composition_indices
StokesKrylovType::Kind stokes_krylov_type
unsigned int n_chemical_compositions
bool include_melt_transport
double ARKode_relative_tolerance
std::vector< unsigned int > composition_degrees
bool volume_of_fluid_tracking_enabled
unsigned int n_expensive_stokes_solver_steps
std::vector< aspect::CompositionalFieldDescription > composition_descriptions
std::vector< std::string > names_of_compositional_fields
bool run_postprocessors_on_nonlinear_iterations
unsigned int stokes_gmres_restart_length
std::vector< double > stabilization_beta
ReactionSolverType::Kind reaction_solver_type
std::vector< std::string > compositional_fields_with_disabled_boundary_entropy_viscosity
double composition_solver_tolerance
unsigned int n_particle_managers