Template Class ElasticityProblemParameters¶
Defined in File elasticity_problem_parameters.h
Inheritance Relationships¶
Base Type¶
public ParameterAcceptor
Class Documentation¶
-
template<int dim, int spacedim = dim>
class ElasticityProblemParameters : public ParameterAcceptor¶ Parameter set driving mesh generation, constitutive model, and solvers.
Unnamed Group
-
std::string output_directory = "."¶
Output, mesh, and finite-element setup parameters.
Output folder.
-
std::string output_name = "solution"¶
Output stem.
-
unsigned int fe_degree = 1¶
FE degree.
-
unsigned int initial_refinement = 5¶
Global refinements.
-
std::set<types::boundary_id> dirichlet_ids = {0}¶
Strong Dirichlet ids.
-
std::set<types::boundary_id> weak_dirichlet_ids = {}¶
Weak Dirichlet ids.
-
std::set<types::boundary_id> neumann_ids = {}¶
Neumann ids.
-
std::set<types::boundary_id> normal_flux_ids = {}¶
Flux-constraint ids.
-
MaterialProperties default_material_properties{"default"}¶
Fallback material.
-
std::map<types::material_id, std::string> material_tags_by_material_id¶
Id->tag map.
-
std::map<types::material_id, std::unique_ptr<MaterialProperties>> material_properties_by_id¶
Runtime material table.
-
std::string domain_type = "generate"¶
Grid source mode.
-
std::string name_of_grid = "hyper_cube"¶
Grid generator/input name.
-
std::string arguments_for_grid = "-1: 1: false"¶
Grid generator arguments.
-
std::string refinement_strategy = "fixed_fraction"¶
Adaptivity strategy.
-
double coarsening_fraction = 0.0¶
Coarsening fraction.
-
double refinement_fraction = 0.3¶
Refinement fraction.
-
unsigned int n_refinement_cycles = 1¶
Number of adapt cycles.
-
unsigned int max_cells = 20000¶
Global cell cap.
-
bool output_pressure = false¶
Enable pressure output.
-
double penalty_term = 1.0e4¶
Weak-Dirichlet penalty.
Unnamed Group
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> rhs¶
Volumetric forcing and forcing modulation.
-
double rhs_modulation = 0.0¶
Forcing modulation amplitude/factor.
Unnamed Group
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> bc¶
Dirichlet and Neumann boundary data with modulation factors.
-
double bc_modulation = 0.0¶
Boundary-condition modulation factor.
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> Neumann_bc¶
Neumann boundary data function.
-
double neumann_bc_modulation = 0.0¶
Neumann modulation factor.
Unnamed Group
-
mutable ParameterAcceptorProxy<ReductionControl> displacement_solver_control¶
Solver controls for different linear blocks.
-
mutable ParameterAcceptorProxy<ReductionControl> reduced_mass_solver_control¶
Mass solve control.
-
mutable ParameterAcceptorProxy<ReductionControl> augmented_lagrange_solver_control¶
Augmented-Lagrangian solve control.
-
mutable ParameterAcceptorProxy<ReductionControl> schur_complement_solver_control¶
Schur-complement solve control.
Unnamed Group
-
double initial_time = 0.0¶
Time-integration parameters.
Initial physical time.
-
double final_time = 0.0¶
Final physical time.
-
mutable double dt = 5e-3¶
Time-step size.
-
bool refine_time_step = false¶
Enable adaptive time step.
-
double beta = 0.25¶
Newmark beta.
-
double gamma = 0.5¶
Newmark gamma.
Public Functions
-
ElasticityProblemParameters()¶
Build and register all parameter subsections used by the elasticity model.
-
inline const MaterialProperties &get_material_properties(const types::material_id material_id) const¶
Return material parameters associated with a material id.
-
void check_model_consistency()¶
Check model consistency and infer derived modes after parameter parsing.
This performs the requested consistency checks and sets:
time_modebased on{initial_time, final_time}andrhoacross all materials;elasticity_modelbased onnetaacross all materials;
This is called automatically from the parse callback once all material subsections have been parsed (i.e., in the second pass when material tags are used).
Public Members
-
TimeMode time_mode = TimeMode::Static¶
Inferred time mode (set during parameter parsing).
Note
Parameters are parsed using a two-pass strategy (see
initialize_parameters()ininclude/utils.h). We infer modes only after pass >= 2 so that dynamically-createdMaterialPropertiesacceptors have been parsed.
-
ElasticityModel elasticity_model = ElasticityModel::LinearElasticity¶
Inferred bulk constitutive model (set during parameter parsing).
-
bool pressure_coupling = false¶
Toggle load transfer through inclusion pressure projection.
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> exact_solution¶
Exact solution used for error postprocessing.
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> initial_displacement¶
Initial displacement for time-dependent runs.
-
mutable ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>> initial_velocity¶
Initial velocity for time-dependent runs.
-
std::string weight_expression = "1."¶
Expression used to define quadrature weights on inclusions.
-
bool output_results_before_solving = false¶
Emit output before each solve step.
-
mutable ParsedConvergenceTable convergence_table¶
Convergence table used for run summaries.
-
std::string output_directory = "."¶