Template Class ElasticityFreqProblemParameters¶
Defined in File elasticity_freq_problem_parameters.h
Inheritance Relationships¶
Base Type¶
public dealii::ParameterAcceptor
Class Documentation¶
-
template<int dim, int spacedim = dim>
class ElasticityFreqProblemParameters : public dealii::ParameterAcceptor¶ Parameters for the direct frequency-domain elasticity solver.
Unnamed Group
-
mutable ModulatedParsedFunction<spacedim> rhs¶
-
std::map<types::material_id, std::shared_ptr<ModulatedParsedFunction<spacedim>>> rhs_by_material_id¶
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 = domain_parameters.initial_refinement¶
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.
-
std::set<types::boundary_id> robin_ids = {}¶
Full-vector Robin faces.
-
MaterialProperties default_material_properties¶
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::set<types::material_id> rhs_material_ids = {}¶
Material-specific rhs.
-
std::string domain_type = "generate"¶
Grid source mode.
-
std::string &triangulation_type = domain_parameters.triangulation_type¶
Parallel tria backend.
-
std::string &name_of_grid = domain_parameters.name_of_grid¶
Grid generator/input name.
-
std::string &arguments_for_grid = domain_parameters.arguments_for_grid¶
Grid generator arguments.
-
double &grid_scale = domain_parameters.grid_scale¶
Uniform scaling applied after grid input.
-
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.
-
double penalty_term = 1.0e4¶
Weak-Dirichlet penalty.
Unnamed Group
-
mutable ModulatedParsedFunction<spacedim> bc¶
Dirichlet and Neumann boundary data with modulation factors.
-
std::map<types::boundary_id, std::shared_ptr<ModulatedParsedFunction<spacedim>>> dirichlet_bc_by_id¶
-
mutable ModulatedParsedFunction<spacedim> Neumann_bc¶
Neumann boundary data function.
-
std::map<types::boundary_id, std::shared_ptr<ModulatedParsedFunction<spacedim>>> neumann_bc_by_id¶
-
std::map<types::boundary_id, std::shared_ptr<ParameterAcceptorProxy<Functions::ParsedFunction<spacedim>>>> robin_coefficient_by_id¶
-
mutable ModulatedParsedFunction<spacedim> robin_bc¶
-
std::map<types::boundary_id, std::shared_ptr<ModulatedParsedFunction<spacedim>>> robin_bc_by_id¶
Public Functions
-
explicit ElasticityFreqProblemParameters(const std::string &subsection = "/Immersed Problem/", std::vector<double> *shared_frequencies = nullptr)¶
Build and register all parameter subsections used by the elasticity model.
A shared frequency vector is registered by its owner and must outlive this parameter object.
-
const MaterialProperties &get_material_properties(const types::material_id material_id) const¶
Return material parameters associated with a material id.
-
const ModulatedParsedFunction<spacedim> &get_dirichlet_bc(const types::boundary_id boundary_id) const¶
-
const ModulatedParsedFunction<spacedim> &get_neumann_bc(const types::boundary_id boundary_id) const¶
-
const Functions::ParsedFunction<spacedim> &get_robin_coefficient(const types::boundary_id boundary_id) const¶
-
const ModulatedParsedFunction<spacedim> &get_robin_bc(const types::boundary_id boundary_id) const¶
-
const ModulatedParsedFunction<spacedim> &get_rhs(const types::material_id material_id) const¶
-
void set_rhs_times(const double time) const¶
-
void set_boundary_condition_times(const double time) const¶
-
void validate_parameters()¶
Validate boundary and material data after parameter parsing.
Public Members
-
DomainParameters<dim, spacedim> domain_parameters¶
Domain settings use the same grid subsection as the legacy solver.
-
std::vector<double> &frequencies¶
-
double dirichlet_phase = 0.0¶
-
double neumann_phase = 0.0¶
-
double rhs_phase = 0.0¶
-
std::map<types::boundary_id, double> dirichlet_phase_by_id¶
-
std::map<types::boundary_id, double> neumann_phase_by_id¶
-
std::map<types::material_id, double> rhs_phase_by_id¶
-
double robin_phase = 0.¶
-
std::map<types::boundary_id, double> robin_phase_by_id¶
-
unsigned int gmres_basis_size = 200¶
-
mutable ParameterAcceptorProxy<ReductionControl> displacement_solver_control¶
Solver control for the frequency-domain FGMRES solve.
-
mutable ModulatedParsedFunction<spacedim> rhs¶