#include <tmop_amr.hpp>
Definition at line 24 of file tmop_amr.hpp.
◆ TMOPRefinerEstimator()
mfem::TMOPRefinerEstimator::TMOPRefinerEstimator |
( |
Mesh & |
mesh_, |
|
|
NonlinearForm & |
nlf_, |
|
|
int |
order_, |
|
|
int |
amrmetric_ |
|
) |
| |
|
inline |
◆ ~TMOPRefinerEstimator()
mfem::TMOPRefinerEstimator::~TMOPRefinerEstimator |
( |
| ) |
|
|
inline |
◆ ComputeEstimates()
void mfem::TMOPRefinerEstimator::ComputeEstimates |
( |
| ) |
|
|
protected |
Compute the element error estimates. For an element E in the mesh, error(E) = TMOPEnergy(E)*energy_scaling_factor-Mean(TMOPEnergy(ChildofE)), where TMOPEnergy of Children of E is obtained by assuming the element E is refined using the refinement type being considered based on the TMOP mesh quality metric.
Definition at line 19 of file tmop_amr.cpp.
◆ GetAnisotropicFlags()
virtual const Array<int>& mfem::TMOPRefinerEstimator::GetAnisotropicFlags |
( |
| ) |
|
|
inlinevirtual |
◆ GetLocalErrors()
virtual const Vector& mfem::TMOPRefinerEstimator::GetLocalErrors |
( |
| ) |
|
|
inlinevirtual |
Get TMOP-based errors for each element in the mesh computed based on the refinement types being considered.
Implements mfem::ErrorEstimator.
Definition at line 102 of file tmop_amr.hpp.
◆ GetTMOPRefinementEnergy()
void mfem::TMOPRefinerEstimator::GetTMOPRefinementEnergy |
( |
int |
reftype, |
|
|
Vector & |
el_energy_vec |
|
) |
| |
|
protected |
Get TMOP energy for each element corresponding to the refinement type specified.
Definition at line 87 of file tmop_amr.cpp.
◆ MeshIsModified()
bool mfem::TMOPRefinerEstimator::MeshIsModified |
( |
| ) |
|
|
inlineprotected |
Check if the mesh of the solution was modified.
Definition at line 42 of file tmop_amr.hpp.
◆ Reset()
virtual void mfem::TMOPRefinerEstimator::Reset |
( |
| ) |
|
|
inlinevirtual |
◆ SetEnergyScalingFactor()
void mfem::TMOPRefinerEstimator::SetEnergyScalingFactor |
( |
double |
scale | ) |
|
|
inline |
Scaling factor for the TMOP refinement energy. An element is refined if [mean TMOPEnergy(children)]*energy_scaling_factor < TMOPEnergy(parent)
Definition at line 116 of file tmop_amr.hpp.
◆ SetHexIntRules()
void mfem::TMOPRefinerEstimator::SetHexIntRules |
( |
| ) |
|
|
protected |
◆ SetIntRulesFromMesh()
Use a mesh to setup an integration rule that will mimic the different refinement types.
Definition at line 317 of file tmop_amr.cpp.
◆ SetQuadIntRules()
void mfem::TMOPRefinerEstimator::SetQuadIntRules |
( |
| ) |
|
|
protected |
Construct the integration rules to model how each element type is split using different refinement types. ref_type = 0 is the original element and reftype \ in [1, 7] represent different refinement type based on NCMesh class.
Definition at line 206 of file tmop_amr.cpp.
◆ SetSpatialIndicator()
void mfem::TMOPRefinerEstimator::SetSpatialIndicator |
( |
GridFunction & |
spat_gf_, |
|
|
double |
spat_gf_critical_ = 0.5 |
|
) |
| |
|
inline |
Spatial indicator function (eta) that can be used to prevent elements from being refined even if the energy criterion is met. Using this, an element E is not refined if mean(spat_gf(E)) < spat_gf_critical.
Definition at line 121 of file tmop_amr.hpp.
◆ SetSpatialIndicatorCritical()
void mfem::TMOPRefinerEstimator::SetSpatialIndicatorCritical |
( |
double |
val_ | ) |
|
|
inline |
◆ SetTetIntRules()
void mfem::TMOPRefinerEstimator::SetTetIntRules |
( |
| ) |
|
|
protected |
◆ SetTriIntRules()
void mfem::TMOPRefinerEstimator::SetTriIntRules |
( |
| ) |
|
|
protected |
◆ amrmetric
int mfem::TMOPRefinerEstimator::amrmetric |
|
protected |
◆ aniso_flags
Array<int> mfem::TMOPRefinerEstimator::aniso_flags |
|
protected |
◆ current_sequence
long mfem::TMOPRefinerEstimator::current_sequence |
|
protected |
◆ energy_scaling_factor
double mfem::TMOPRefinerEstimator::energy_scaling_factor |
|
protected |
◆ error_estimates
Vector mfem::TMOPRefinerEstimator::error_estimates |
|
protected |
◆ HexIntRule
◆ mesh
Mesh* mfem::TMOPRefinerEstimator::mesh |
|
protected |
◆ nlf
◆ order
int mfem::TMOPRefinerEstimator::order |
|
protected |
◆ QuadIntRule
◆ spat_gf
◆ spat_gf_critical
double mfem::TMOPRefinerEstimator::spat_gf_critical |
|
protected |
◆ TetIntRule
◆ TriIntRule
The documentation for this class was generated from the following files: