ASPECT
Classes | Public Member Functions | Static Public Member Functions | List of all members
aspect::Parameters< dim > Struct Template Reference

Classes

struct  AdvectionFieldMethod
 
struct  AdvectionStabilizationMethod
 
struct  Formulation
 
struct  NonlinearSolver
 
struct  NullspaceRemoval
 The NullspaceRemoval struct. More...
 
struct  StokesSolverType
 

Public Member Functions

 Parameters (ParameterHandler &prm, MPI_Comm mpi_communicator)
 
void parse_parameters (ParameterHandler &prm, const MPI_Comm mpi_communicator)
 
void parse_geometry_dependent_parameters (ParameterHandler &prm, const GeometryModel::Interface< dim > &geometry_model)
 

Static Public Member Functions

static void declare_parameters (ParameterHandler &prm)
 

Public Attributes

Global parameters
NonlinearSolver::Kind nonlinear_solver
 
AdvectionStabilizationMethod::Kind advection_stabilization_method
 
double nonlinear_tolerance
 
bool resume_computation
 
double start_time
 
double CFL_number
 
double maximum_time_step
 
double maximum_relative_increase_time_step
 
double maximum_first_time_step
 
bool use_artificial_viscosity_smoothing
 
bool use_conduction_timestep
 
bool convert_to_years
 
std::string output_directory
 
double surface_pressure
 
double adiabatic_surface_temperature
 
unsigned int timing_output_frequency
 
unsigned int max_nonlinear_iterations
 
unsigned int max_nonlinear_iterations_in_prerefinement
 
bool use_operator_splitting
 
std::string world_builder_file
 
section: Solver parameters
double temperature_solver_tolerance
 
double composition_solver_tolerance
 
unsigned int advection_gmres_restart_length
 
bool use_direct_stokes_solver
 
StokesSolverType::Kind stokes_solver_type
 
double linear_stokes_solver_tolerance
 
unsigned int n_cheap_stokes_solver_steps
 
unsigned int n_expensive_stokes_solver_steps
 
double linear_solver_A_block_tolerance
 
bool use_full_A_block_preconditioner
 
double linear_solver_S_block_tolerance
 
unsigned int stokes_gmres_restart_length
 
std::string AMG_smoother_type
 
unsigned int AMG_smoother_sweeps
 
double AMG_aggregation_threshold
 
bool AMG_output_details
 
double reaction_time_step
 
unsigned int reaction_steps_per_advection_step
 
double diffusion_length_scale
 
Formulation settings
Formulation::Kind formulation
 
Formulation::MassConservation::Kind formulation_mass_conservation
 
Formulation::TemperatureEquation::Kind formulation_temperature_equation
 
bool enable_elasticity
 
Parameters that have to do with terms in the model
bool include_melt_transport
 
bool enable_additional_stokes_rhs
 
std::map< types::boundary_id, std::pair< std::string, std::string > > prescribed_traction_boundary_indicators
 
std::set< types::boundary_idfixed_heat_flux_boundary_indicators
 
NullspaceRemoval::Kind nullspace_removal
 
Parameters that have to do with mesh refinement
unsigned int initial_global_refinement
 
unsigned int initial_adaptive_refinement
 
double refinement_fraction
 
double coarsening_fraction
 
bool adapt_by_fraction_of_cells
 
unsigned int min_grid_level
 
std::vector< double > additional_refinement_times
 
unsigned int adaptive_refinement_interval
 
bool skip_solvers_on_initial_refinement
 
bool skip_setup_initial_conditions_on_initial_refinement
 
bool run_postprocessors_on_initial_refinement
 
bool run_postprocessors_on_nonlinear_iterations
 
Parameters that have to do with the stabilization of transport

equations

unsigned int stabilization_alpha
 
std::vector< double > stabilization_c_R
 
std::vector< double > stabilization_beta
 
double stabilization_gamma
 
double discontinuous_penalty
 
bool use_limiter_for_discontinuous_temperature_solution
 
bool use_limiter_for_discontinuous_composition_solution
 
double global_temperature_max_preset
 
double global_temperature_min_preset
 
std::vector< double > global_composition_max_preset
 
std::vector< double > global_composition_min_preset
 
Parameters that have to do with checkpointing
int checkpoint_time_secs
 
int checkpoint_steps
 
Parameters that have to do with spatial discretizations
unsigned int stokes_velocity_degree
 
bool use_locally_conservative_discretization
 
bool use_equal_order_interpolation_for_stokes
 
bool use_discontinuous_temperature_discretization
 
bool use_discontinuous_composition_discretization
 
unsigned int temperature_degree
 
unsigned int composition_degree
 
std::string pressure_normalization
 
MaterialModel::MaterialAveraging::AveragingOperation material_averaging
 
Parameters that have to do with the temperature field
AdvectionFieldMethod::Kind temperature_method
 
Parameters that have to do with compositional fields
unsigned int n_compositional_fields
 
std::vector< std::string > names_of_compositional_fields
 
std::vector< typename AdvectionFieldMethod::Kindcompositional_field_methods
 
std::map< unsigned int, std::pair< std::string, unsigned int > > mapped_particle_properties
 
std::vector< unsigned int > normalized_fields
 
Parameters that have to do with mesh deformation
bool mesh_deformation_enabled
 
Parameters that have to do with volume of fluid calculations
bool volume_of_fluid_tracking_enabled
 

Detailed Description

template<int dim>
struct aspect::Parameters< dim >

A structure that holds run-time parameters. These parameters are all declared for the ParameterHandler class in the declare_parameters() member function, and read in the parse_parameters() function.

Each of the member variables of this class corresponds to a parameter declared for the ParameterHandler class. Rather than duplicating the documentation of each of these parameters for the member variables here, please refer to the documentation of run-time parameters in the ASPECT manual for more information.

Definition at line 56 of file parameters.h.

Constructor & Destructor Documentation

§ Parameters()

template<int dim>
aspect::Parameters< dim >::Parameters ( ParameterHandler prm,
MPI_Comm  mpi_communicator 
)

Constructor. Fills the values of member functions from the given parameter object.

Parameters
prmThe parameter object that has previously been filled with content by reading an input file.
mpi_communicatorThe MPI communicator we will use for this simulation. We need this when calling parse_parameters() so that we can verify some of the input arguments.

Member Function Documentation

§ declare_parameters()

template<int dim>
static void aspect::Parameters< dim >::declare_parameters ( ParameterHandler prm)
static

Declare the run-time parameters this class takes, and call the respective declare_parameters functions of the namespaces that describe geometries, material models, etc.

Parameters
prmThe object in which the run-time parameters are to be declared.

§ parse_parameters()

template<int dim>
void aspect::Parameters< dim >::parse_parameters ( ParameterHandler prm,
const MPI_Comm  mpi_communicator 
)

Read run-time parameters from an object that has previously parsed an input file. This reads all parameters that do not require knowledge of the geometry model we use. There is a separate function parse_geometry_dependent_parameters() that is called as soon as the geometry object has been created and that can translate between the symbolic names for boundary components that the geometry model publishes and the boundary indicators used internally.

Parameters
prmThe object from which to obtain the run-time parameters.
mpi_communicatorThe MPI communicator we will use for this simulation. We need this when calling parse_parameters() so that we can verify some of the input arguments.

§ parse_geometry_dependent_parameters()

template<int dim>
void aspect::Parameters< dim >::parse_geometry_dependent_parameters ( ParameterHandler prm,
const GeometryModel::Interface< dim > &  geometry_model 
)

Read those run-time parameters from a ParameterHandler object that depend on knowing which geometry object we use. This function complements parse_parameters() but is only called once the geometry object has been created. This function is separate because we allow the use of symbolic names in defining which boundary components have which boundary conditions, and the names one can specify there are not available until after the geometry object has been created.

This function is called from the GeometryModel::create_geometry() function.

Parameters
prmThe object from which to obtain the run-time parameters.
geometry_modelThe geometry model that provides boundary names etc.

Member Data Documentation

§ nonlinear_solver

template<int dim>
NonlinearSolver::Kind aspect::Parameters< dim >::nonlinear_solver

Definition at line 388 of file parameters.h.

§ advection_stabilization_method

template<int dim>
AdvectionStabilizationMethod::Kind aspect::Parameters< dim >::advection_stabilization_method

Definition at line 390 of file parameters.h.

§ nonlinear_tolerance

template<int dim>
double aspect::Parameters< dim >::nonlinear_tolerance

Definition at line 391 of file parameters.h.

§ resume_computation

template<int dim>
bool aspect::Parameters< dim >::resume_computation

Definition at line 392 of file parameters.h.

§ start_time

template<int dim>
double aspect::Parameters< dim >::start_time

Definition at line 393 of file parameters.h.

§ CFL_number

template<int dim>
double aspect::Parameters< dim >::CFL_number

Definition at line 394 of file parameters.h.

§ maximum_time_step

template<int dim>
double aspect::Parameters< dim >::maximum_time_step

Definition at line 395 of file parameters.h.

§ maximum_relative_increase_time_step

template<int dim>
double aspect::Parameters< dim >::maximum_relative_increase_time_step

Definition at line 396 of file parameters.h.

§ maximum_first_time_step

template<int dim>
double aspect::Parameters< dim >::maximum_first_time_step

Definition at line 397 of file parameters.h.

§ use_artificial_viscosity_smoothing

template<int dim>
bool aspect::Parameters< dim >::use_artificial_viscosity_smoothing

Definition at line 398 of file parameters.h.

§ use_conduction_timestep

template<int dim>
bool aspect::Parameters< dim >::use_conduction_timestep

Definition at line 399 of file parameters.h.

§ convert_to_years

template<int dim>
bool aspect::Parameters< dim >::convert_to_years

Definition at line 400 of file parameters.h.

§ output_directory

template<int dim>
std::string aspect::Parameters< dim >::output_directory

Definition at line 401 of file parameters.h.

§ surface_pressure

template<int dim>
double aspect::Parameters< dim >::surface_pressure

Definition at line 402 of file parameters.h.

§ adiabatic_surface_temperature

template<int dim>
double aspect::Parameters< dim >::adiabatic_surface_temperature

Definition at line 403 of file parameters.h.

§ timing_output_frequency

template<int dim>
unsigned int aspect::Parameters< dim >::timing_output_frequency

Definition at line 404 of file parameters.h.

§ max_nonlinear_iterations

template<int dim>
unsigned int aspect::Parameters< dim >::max_nonlinear_iterations

Definition at line 405 of file parameters.h.

§ max_nonlinear_iterations_in_prerefinement

template<int dim>
unsigned int aspect::Parameters< dim >::max_nonlinear_iterations_in_prerefinement

Definition at line 406 of file parameters.h.

§ use_operator_splitting

template<int dim>
bool aspect::Parameters< dim >::use_operator_splitting

Definition at line 407 of file parameters.h.

§ world_builder_file

template<int dim>
std::string aspect::Parameters< dim >::world_builder_file

Definition at line 408 of file parameters.h.

§ temperature_solver_tolerance

template<int dim>
double aspect::Parameters< dim >::temperature_solver_tolerance

Definition at line 418 of file parameters.h.

§ composition_solver_tolerance

template<int dim>
double aspect::Parameters< dim >::composition_solver_tolerance

Definition at line 419 of file parameters.h.

§ advection_gmres_restart_length

template<int dim>
unsigned int aspect::Parameters< dim >::advection_gmres_restart_length

Definition at line 422 of file parameters.h.

§ use_direct_stokes_solver

template<int dim>
bool aspect::Parameters< dim >::use_direct_stokes_solver

Definition at line 425 of file parameters.h.

§ stokes_solver_type

template<int dim>
StokesSolverType::Kind aspect::Parameters< dim >::stokes_solver_type

Definition at line 426 of file parameters.h.

§ linear_stokes_solver_tolerance

template<int dim>
double aspect::Parameters< dim >::linear_stokes_solver_tolerance

Definition at line 428 of file parameters.h.

§ n_cheap_stokes_solver_steps

template<int dim>
unsigned int aspect::Parameters< dim >::n_cheap_stokes_solver_steps

Definition at line 429 of file parameters.h.

§ n_expensive_stokes_solver_steps

template<int dim>
unsigned int aspect::Parameters< dim >::n_expensive_stokes_solver_steps

Definition at line 430 of file parameters.h.

§ linear_solver_A_block_tolerance

template<int dim>
double aspect::Parameters< dim >::linear_solver_A_block_tolerance

Definition at line 431 of file parameters.h.

§ use_full_A_block_preconditioner

template<int dim>
bool aspect::Parameters< dim >::use_full_A_block_preconditioner

Definition at line 432 of file parameters.h.

§ linear_solver_S_block_tolerance

template<int dim>
double aspect::Parameters< dim >::linear_solver_S_block_tolerance

Definition at line 433 of file parameters.h.

§ stokes_gmres_restart_length

template<int dim>
unsigned int aspect::Parameters< dim >::stokes_gmres_restart_length

Definition at line 434 of file parameters.h.

§ AMG_smoother_type

template<int dim>
std::string aspect::Parameters< dim >::AMG_smoother_type

Definition at line 437 of file parameters.h.

§ AMG_smoother_sweeps

template<int dim>
unsigned int aspect::Parameters< dim >::AMG_smoother_sweeps

Definition at line 438 of file parameters.h.

§ AMG_aggregation_threshold

template<int dim>
double aspect::Parameters< dim >::AMG_aggregation_threshold

Definition at line 439 of file parameters.h.

§ AMG_output_details

template<int dim>
bool aspect::Parameters< dim >::AMG_output_details

Definition at line 440 of file parameters.h.

§ reaction_time_step

template<int dim>
double aspect::Parameters< dim >::reaction_time_step

Definition at line 443 of file parameters.h.

§ reaction_steps_per_advection_step

template<int dim>
unsigned int aspect::Parameters< dim >::reaction_steps_per_advection_step

Definition at line 444 of file parameters.h.

§ diffusion_length_scale

template<int dim>
double aspect::Parameters< dim >::diffusion_length_scale

Definition at line 447 of file parameters.h.

§ formulation

template<int dim>
Formulation::Kind aspect::Parameters< dim >::formulation

This variable determines which of the several ways to formulate the equations ASPECT will solve. Common formulations are the Boussinesq or Anelastic Liquid Approximations (BA, ALA). ASPECT's original formulation is termed 'isentropic compression'. 'Custom' allows to set the approximations individually per equation.

Definition at line 466 of file parameters.h.

§ formulation_mass_conservation

template<int dim>
Formulation::MassConservation::Kind aspect::Parameters< dim >::formulation_mass_conservation

Determines how to formulate the mass conservation equation in ASPECT. Common approximations are 'incompressible' or 'reference density profile'. ASPECT's original formulation is termed 'isentropic compression'. See the manual for more details about the individual terms.

Definition at line 474 of file parameters.h.

§ formulation_temperature_equation

template<int dim>
Formulation::TemperatureEquation::Kind aspect::Parameters< dim >::formulation_temperature_equation

Determines how to formulate the density in the temperature equation in ASPECT. Possible approximations are 'reference density profile' or 'real density'.

Definition at line 481 of file parameters.h.

§ enable_elasticity

template<int dim>
bool aspect::Parameters< dim >::enable_elasticity

This variable determines whether additional terms related to elastic forces are added to the Stokes equation.

Definition at line 487 of file parameters.h.

§ include_melt_transport

template<int dim>
bool aspect::Parameters< dim >::include_melt_transport

Definition at line 497 of file parameters.h.

§ enable_additional_stokes_rhs

template<int dim>
bool aspect::Parameters< dim >::enable_additional_stokes_rhs

Definition at line 498 of file parameters.h.

§ prescribed_traction_boundary_indicators

template<int dim>
std::map<types::boundary_id, std::pair<std::string,std::string> > aspect::Parameters< dim >::prescribed_traction_boundary_indicators

Map from boundary id to a pair "components", "traction boundary type", where components is of the format "[x][y][z]" and the traction type is mapped to one of the plugins of traction boundary conditions (e.g. "function")

Definition at line 506 of file parameters.h.

§ fixed_heat_flux_boundary_indicators

template<int dim>
std::set<types::boundary_id> aspect::Parameters< dim >::fixed_heat_flux_boundary_indicators

A set of boundary ids on which the boundary_heat_flux objects will be applied.

Definition at line 512 of file parameters.h.

§ nullspace_removal

template<int dim>
NullspaceRemoval::Kind aspect::Parameters< dim >::nullspace_removal

Selection of operations to perform to remove nullspace from velocity field.

Definition at line 518 of file parameters.h.

§ initial_global_refinement

template<int dim>
unsigned int aspect::Parameters< dim >::initial_global_refinement

Definition at line 527 of file parameters.h.

§ initial_adaptive_refinement

template<int dim>
unsigned int aspect::Parameters< dim >::initial_adaptive_refinement

Definition at line 528 of file parameters.h.

§ refinement_fraction

template<int dim>
double aspect::Parameters< dim >::refinement_fraction

Definition at line 529 of file parameters.h.

§ coarsening_fraction

template<int dim>
double aspect::Parameters< dim >::coarsening_fraction

Definition at line 530 of file parameters.h.

§ adapt_by_fraction_of_cells

template<int dim>
bool aspect::Parameters< dim >::adapt_by_fraction_of_cells

Definition at line 531 of file parameters.h.

§ min_grid_level

template<int dim>
unsigned int aspect::Parameters< dim >::min_grid_level

Definition at line 532 of file parameters.h.

§ additional_refinement_times

template<int dim>
std::vector<double> aspect::Parameters< dim >::additional_refinement_times

Definition at line 533 of file parameters.h.

§ adaptive_refinement_interval

template<int dim>
unsigned int aspect::Parameters< dim >::adaptive_refinement_interval

Definition at line 534 of file parameters.h.

§ skip_solvers_on_initial_refinement

template<int dim>
bool aspect::Parameters< dim >::skip_solvers_on_initial_refinement

Definition at line 535 of file parameters.h.

§ skip_setup_initial_conditions_on_initial_refinement

template<int dim>
bool aspect::Parameters< dim >::skip_setup_initial_conditions_on_initial_refinement

Definition at line 536 of file parameters.h.

§ run_postprocessors_on_initial_refinement

template<int dim>
bool aspect::Parameters< dim >::run_postprocessors_on_initial_refinement

Definition at line 537 of file parameters.h.

§ run_postprocessors_on_nonlinear_iterations

template<int dim>
bool aspect::Parameters< dim >::run_postprocessors_on_nonlinear_iterations

Definition at line 538 of file parameters.h.

§ stabilization_alpha

template<int dim>
unsigned int aspect::Parameters< dim >::stabilization_alpha

Definition at line 548 of file parameters.h.

§ stabilization_c_R

template<int dim>
std::vector<double> aspect::Parameters< dim >::stabilization_c_R

Definition at line 549 of file parameters.h.

§ stabilization_beta

template<int dim>
std::vector<double> aspect::Parameters< dim >::stabilization_beta

Definition at line 550 of file parameters.h.

§ stabilization_gamma

template<int dim>
double aspect::Parameters< dim >::stabilization_gamma

Definition at line 551 of file parameters.h.

§ discontinuous_penalty

template<int dim>
double aspect::Parameters< dim >::discontinuous_penalty

Definition at line 552 of file parameters.h.

§ use_limiter_for_discontinuous_temperature_solution

template<int dim>
bool aspect::Parameters< dim >::use_limiter_for_discontinuous_temperature_solution

Definition at line 553 of file parameters.h.

§ use_limiter_for_discontinuous_composition_solution

template<int dim>
bool aspect::Parameters< dim >::use_limiter_for_discontinuous_composition_solution

Definition at line 554 of file parameters.h.

§ global_temperature_max_preset

template<int dim>
double aspect::Parameters< dim >::global_temperature_max_preset

Definition at line 555 of file parameters.h.

§ global_temperature_min_preset

template<int dim>
double aspect::Parameters< dim >::global_temperature_min_preset

Definition at line 556 of file parameters.h.

§ global_composition_max_preset

template<int dim>
std::vector<double> aspect::Parameters< dim >::global_composition_max_preset

Definition at line 557 of file parameters.h.

§ global_composition_min_preset

template<int dim>
std::vector<double> aspect::Parameters< dim >::global_composition_min_preset

Definition at line 558 of file parameters.h.

§ checkpoint_time_secs

template<int dim>
int aspect::Parameters< dim >::checkpoint_time_secs

Definition at line 567 of file parameters.h.

§ checkpoint_steps

template<int dim>
int aspect::Parameters< dim >::checkpoint_steps

Definition at line 568 of file parameters.h.

§ stokes_velocity_degree

template<int dim>
unsigned int aspect::Parameters< dim >::stokes_velocity_degree

Definition at line 577 of file parameters.h.

§ use_locally_conservative_discretization

template<int dim>
bool aspect::Parameters< dim >::use_locally_conservative_discretization

Definition at line 578 of file parameters.h.

§ use_equal_order_interpolation_for_stokes

template<int dim>
bool aspect::Parameters< dim >::use_equal_order_interpolation_for_stokes

Definition at line 579 of file parameters.h.

§ use_discontinuous_temperature_discretization

template<int dim>
bool aspect::Parameters< dim >::use_discontinuous_temperature_discretization

Definition at line 580 of file parameters.h.

§ use_discontinuous_composition_discretization

template<int dim>
bool aspect::Parameters< dim >::use_discontinuous_composition_discretization

Definition at line 581 of file parameters.h.

§ temperature_degree

template<int dim>
unsigned int aspect::Parameters< dim >::temperature_degree

Definition at line 582 of file parameters.h.

§ composition_degree

template<int dim>
unsigned int aspect::Parameters< dim >::composition_degree

Definition at line 583 of file parameters.h.

§ pressure_normalization

template<int dim>
std::string aspect::Parameters< dim >::pressure_normalization

Definition at line 584 of file parameters.h.

§ material_averaging

template<int dim>
MaterialModel::MaterialAveraging::AveragingOperation aspect::Parameters< dim >::material_averaging

Definition at line 585 of file parameters.h.

§ temperature_method

template<int dim>
AdvectionFieldMethod::Kind aspect::Parameters< dim >::temperature_method

Definition at line 596 of file parameters.h.

§ n_compositional_fields

template<int dim>
unsigned int aspect::Parameters< dim >::n_compositional_fields

Definition at line 606 of file parameters.h.

§ names_of_compositional_fields

template<int dim>
std::vector<std::string> aspect::Parameters< dim >::names_of_compositional_fields

Definition at line 607 of file parameters.h.

§ compositional_field_methods

template<int dim>
std::vector<typename AdvectionFieldMethod::Kind> aspect::Parameters< dim >::compositional_field_methods

A vector that contains the advection field method for every compositional field. Consequently the vector has n_compositional_fields entries.

Definition at line 613 of file parameters.h.

§ mapped_particle_properties

template<int dim>
std::map<unsigned int, std::pair<std::string,unsigned int> > aspect::Parameters< dim >::mapped_particle_properties

Map from compositional index to a pair "particle property", "component", where particle property is a string that can be mapped to one of the particle property plugins. Component denotes which component of the particle property is to be mapped in case there are several. Therefore, it is optional to specify the component and it is of the format "[0][1][2]". In case no component is specified it defaults to 0.

Definition at line 624 of file parameters.h.

§ normalized_fields

template<int dim>
std::vector<unsigned int> aspect::Parameters< dim >::normalized_fields

Definition at line 626 of file parameters.h.

§ mesh_deformation_enabled

template<int dim>
bool aspect::Parameters< dim >::mesh_deformation_enabled

Definition at line 634 of file parameters.h.

§ volume_of_fluid_tracking_enabled

template<int dim>
bool aspect::Parameters< dim >::volume_of_fluid_tracking_enabled

Definition at line 643 of file parameters.h.


The documentation for this struct was generated from the following file: