![]() |
ASPECT
|
Static Public Member Functions | |
static void | declare_parameters (ParameterHandler &prm) |
static void | register_mesh_refinement_criterion (const std::string &name, const std::string &description, void(*declare_parameters_function)(ParameterHandler &), std::unique_ptr< Interface< dim >>(*factory_function)()) |
static void | write_plugin_graph (std::ostream &output_stream) |
![]() | |
static void | get_composition_values_at_q_point (const std::vector< std::vector< double >> &composition_values, const unsigned int q, std::vector< double > &composition_values_at_q_point) |
Private Types | |
enum | MergeOperation { plus, max } |
Private Attributes | |
MergeOperation | merge_operation |
bool | normalize_criteria |
std::vector< double > | scaling_factors |
std::list< std::unique_ptr< Interface< dim > > > | mesh_refinement_objects |
A class that manages all objects that provide functionality to refine meshes.
Definition at line 115 of file simulator_access.h.
|
private |
An enum that describes the different ways in which we can merge the results of multiple mesh refinement criteria.
Enumerator | |
---|---|
plus | |
max |
Definition at line 296 of file interface.h.
|
override |
Destructor. Made virtual since this class has virtual member functions.
|
virtual |
Update all of the mesh refinement objects that have been requested in the input file. Individual mesh refinement objects may choose to implement an update function to modify object variables once per time step.
|
virtual |
Execute all of the mesh refinement objects that have been requested in the input file. The error indicators are then each individually normalized and merged according to the operation specified in the input file (e.g., via a plus, a maximum operation, etc).
|
virtual |
Apply additional refinement criteria independent of the error estimate for all of the mesh refinement objects that have been requested in the input file.
|
static |
Declare the parameters of all known mesh refinement plugins, as well as of ones this class has itself.
void aspect::MeshRefinement::Manager< dim >::parse_parameters | ( | ParameterHandler & | prm | ) |
Read the parameters this class declares from the parameter file. This determines which mesh refinement objects will be created; then let these objects read their parameters as well.
|
inline |
Go through the list of all mesh refinement strategies that have been selected in the input file (and are consequently currently active) and return true if one of them has the desired type specified by the template argument.
Definition at line 329 of file interface.h.
|
inline |
Go through the list of all mesh refinement strategies that have been selected in the input file (and are consequently currently active) and see if one of them has the type specified by the template argument or can be casted to that type. If so, return a reference to it. If no mesh refinement strategy is active that matches the given type, throw an exception.
Definition at line 346 of file interface.h.
|
static |
A function that is used to register mesh refinement objects in such a way that the Manager can deal with all of them without having to know them by name. This allows the files in which individual plugins are implemented to register these plugins, rather than also having to modify the Manager class by adding the new mesh refinement class.
name | The name under which this plugin is to be called in parameter files. |
description | A text description of what this model does and that will be listed in the documentation of the parameter file. |
declare_parameters_function | A pointer to a function that declares the parameters for this plugin. |
factory_function | A pointer to a function that creates such a mesh refinement object and returns a pointer to it. |
|
static |
For the current plugin subsystem, write a connection graph of all of the plugins we know about, in the format that the programs dot and neato understand. This allows for a visualization of how all of the plugins that ASPECT knows about are interconnected, and connect to other parts of the ASPECT code.
output_stream | The stream to write the output to. |
aspect::MeshRefinement::Manager< dim >::DeclException1 | ( | ExcMeshRefinementNameNotFound | , |
std::string | |||
) |
Exception.
|
private |
How to merge the results of multiple mesh refinement criteria.
Definition at line 302 of file interface.h.
|
private |
Whether to normalize the individual refinement indicators to the range \([0,1]\) before merging.
Definition at line 308 of file interface.h.
|
private |
The scaling factors that should be applied to the individual refinement indicators before merging.
Definition at line 314 of file interface.h.
|
private |
A list of mesh refinement objects that have been requested in the parameter file.
Definition at line 320 of file interface.h.