|
| TMOP_Integrator (TMOP_QualityMetric *m, TargetConstructor *tc, TMOP_QualityMetric *hm) |
|
| TMOP_Integrator (TMOP_QualityMetric *m, TargetConstructor *tc) |
|
| ~TMOP_Integrator () |
|
void | ReleasePADeviceMemory (bool copy_to_host=true) |
|
void | SetIntegrationRules (IntegrationRules &irules, int order) |
| Prescribe a set of integration rules; relevant for mixed meshes. More...
|
|
void | SetCoefficient (Coefficient &w1) |
| Sets a scaling Coefficient for the quality metric term of the integrator. More...
|
|
void | EnableLimiting (const GridFunction &n0, const GridFunction &dist, Coefficient &w0, TMOP_LimiterFunction *lfunc=NULL) |
| Limiting of the mesh displacements (general version). More...
|
|
void | EnableLimiting (const GridFunction &n0, Coefficient &w0, TMOP_LimiterFunction *lfunc=NULL) |
| Adds a limiting term to the integrator with limiting distance function (dist in the general version of the method) equal to 1. More...
|
|
void | EnableAdaptiveLimiting (const GridFunction &z0, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Restriction of the node positions to certain regions. More...
|
|
void | EnableAdaptiveLimiting (const ParGridFunction &z0, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Parallel support for adaptive limiting. More...
|
|
void | EnableSurfaceFitting (const GridFunction &s0, const Array< bool > &smarker, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Fitting of certain DOFs to the zero level set of a function. More...
|
|
void | EnableSurfaceFitting (const ParGridFunction &s0, const Array< bool > &smarker, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Parallel support for surface fitting. More...
|
|
void | GetSurfaceFittingErrors (double &err_avg, double &err_max) |
|
bool | IsSurfaceFittingEnabled () |
|
void | SetLimitingNodes (const GridFunction &n0) |
| Update the original/reference nodes used for limiting. More...
|
|
virtual double | GetElementEnergy (const FiniteElement &el, ElementTransformation &T, const Vector &elfun) |
| Computes the integral of W(Jacobian(Trt)) over a target zone. More...
|
|
virtual double | GetRefinementElementEnergy (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, const IntegrationRule &irule) |
| Computes the mean of the energies of the given element's children. More...
|
|
virtual double | GetDerefinementElementEnergy (const FiniteElement &el, ElementTransformation &T, const Vector &elfun) |
|
virtual void | AssembleElementVector (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, Vector &elvect) |
| Perform the local action of the NonlinearFormIntegrator. More...
|
|
virtual void | AssembleElementGrad (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, DenseMatrix &elmat) |
| Assemble the local gradient matrix. More...
|
|
TMOP_QualityMetric & | GetAMRQualityMetric () |
|
void | UpdateAfterMeshTopologyChange () |
|
void | ParUpdateAfterMeshTopologyChange () |
|
virtual void | AssemblePA (const FiniteElementSpace &) |
| Method defining partial assembly. More...
|
|
virtual void | AssembleGradPA (const Vector &, const FiniteElementSpace &) |
| Prepare the integrator for partial assembly (PA) gradient evaluations on the given FE space fes at the state x. More...
|
|
virtual double | GetLocalStateEnergyPA (const Vector &) const |
| Compute the local (to the MPI rank) energy with partial assembly. More...
|
|
virtual void | AddMultPA (const Vector &, Vector &) const |
| Method for partially assembled action. More...
|
|
virtual void | AddMultGradPA (const Vector &, Vector &) const |
| Method for partially assembled gradient action. More...
|
|
virtual void | AssembleGradDiagonalPA (Vector &) const |
| Method for computing the diagonal of the gradient with partial assembly. More...
|
|
DiscreteAdaptTC * | GetDiscreteAdaptTC () const |
|
void | EnableNormalization (const GridFunction &x) |
| Computes the normalization factors of the metric and limiting integrals using the mesh position given by x. More...
|
|
void | ParEnableNormalization (const ParGridFunction &x) |
|
void | EnableFiniteDifferences (const GridFunction &x) |
| Enables FD-based approximation and computes dx. More...
|
|
void | EnableFiniteDifferences (const ParGridFunction &x) |
|
void | SetFDhScale (double dxscale_) |
|
bool | GetFDFlag () const |
|
double | GetFDh () const |
|
void | SetExactActionFlag (bool flag_) |
| Flag to control if exact action of Integration is effected. More...
|
|
void | UpdateSurfaceFittingWeight (double factor) |
| Update the surface fitting weight as surf_fit_coeff *= factor;. More...
|
|
double | GetSurfaceFittingWeight () |
| Get the surface fitting weight. More...
|
|
void | ComputeUntangleMetricQuantiles (const Vector &x, const FiniteElementSpace &fes) |
|
virtual void | AssemblePA (const FiniteElementSpace &fes) |
| Method defining partial assembly. More...
|
|
virtual void | AssemblePA (const FiniteElementSpace &trial_fes, const FiniteElementSpace &test_fes) |
|
virtual void | SetIntRule (const IntegrationRule *ir) |
| Prescribe a fixed IntegrationRule to use (when ir != NULL) or let the integrator choose (when ir == NULL). More...
|
|
void | SetIntegrationRule (const IntegrationRule &ir) |
| Prescribe a fixed IntegrationRule to use. More...
|
|
void | SetPAMemoryType (MemoryType mt) |
|
const IntegrationRule * | GetIntegrationRule () const |
| Get the integration rule of the integrator (possibly NULL). More...
|
|
virtual void | AssembleFaceVector (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, const Vector &elfun, Vector &elvect) |
| Perform the local action of the NonlinearFormIntegrator resulting from a face integral term. More...
|
|
virtual void | AssembleFaceGrad (const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Tr, const Vector &elfun, DenseMatrix &elmat) |
| Assemble the local action of the gradient of the NonlinearFormIntegrator resulting from a face integral term. More...
|
|
virtual void | AssemblePA (const FiniteElementSpace &trial_fes, const FiniteElementSpace &test_fes) |
|
virtual bool | SupportsCeed () const |
| Indicates whether this integrator can use a Ceed backend. More...
|
|
virtual void | AssembleMF (const FiniteElementSpace &fes) |
| Method defining fully unassembled operator. More...
|
|
virtual void | AddMultMF (const Vector &x, Vector &y) const |
|
ceed::Operator & | GetCeedOp () |
|
virtual | ~NonlinearFormIntegrator () |
|
|
void | ComputeNormalizationEnergies (const GridFunction &x, double &metric_energy, double &lim_energy, double &surf_fit_gf_energy) |
|
void | AssembleElementVectorExact (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, Vector &elvect) |
|
void | AssembleElementGradExact (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, DenseMatrix &elmat) |
|
void | AssembleElementVectorFD (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, Vector &elvect) |
|
void | AssembleElementGradFD (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, DenseMatrix &elmat) |
|
void | AssembleElemVecAdaptLim (const FiniteElement &el, IsoparametricTransformation &Tpr, const IntegrationRule &ir, const Vector &weights, DenseMatrix &mat) |
|
void | AssembleElemGradAdaptLim (const FiniteElement &el, IsoparametricTransformation &Tpr, const IntegrationRule &ir, const Vector &weights, DenseMatrix &m) |
|
void | AssembleElemVecSurfFit (const FiniteElement &el_x, IsoparametricTransformation &Tpr, DenseMatrix &mat) |
|
void | AssembleElemGradSurfFit (const FiniteElement &el_x, IsoparametricTransformation &Tpr, DenseMatrix &mat) |
|
double | GetFDDerivative (const FiniteElement &el, ElementTransformation &T, Vector &elfun, const int nodenum, const int idir, const double baseenergy, bool update_stored) |
|
void | ComputeFDh (const Vector &x, const FiniteElementSpace &fes) |
| Determines the perturbation, h, for FD-based approximation. More...
|
|
void | ComputeMinJac (const Vector &x, const FiniteElementSpace &fes) |
|
void | UpdateAfterMeshPositionChange (const Vector &new_x, int new_x_ordering=Ordering::byNODES) |
|
void | DisableLimiting () |
|
const IntegrationRule & | EnergyIntegrationRule (const FiniteElement &el) const |
|
const IntegrationRule & | ActionIntegrationRule (const FiniteElement &el) const |
|
const IntegrationRule & | GradientIntegrationRule (const FiniteElement &el) const |
|
void | AssembleGradPA_2D (const Vector &) const |
|
void | AssembleGradPA_3D (const Vector &) const |
|
void | AssembleGradPA_C0_2D (const Vector &) const |
|
void | AssembleGradPA_C0_3D (const Vector &) const |
|
double | GetLocalStateEnergyPA_2D (const Vector &) const |
|
double | GetLocalStateEnergyPA_C0_2D (const Vector &) const |
|
double | GetLocalStateEnergyPA_3D (const Vector &) const |
|
double | GetLocalStateEnergyPA_C0_3D (const Vector &) const |
|
void | AddMultPA_2D (const Vector &, Vector &) const |
|
void | AddMultPA_3D (const Vector &, Vector &) const |
|
void | AddMultPA_C0_2D (const Vector &, Vector &) const |
|
void | AddMultPA_C0_3D (const Vector &, Vector &) const |
|
void | AddMultGradPA_2D (const Vector &, Vector &) const |
|
void | AddMultGradPA_3D (const Vector &, Vector &) const |
|
void | AddMultGradPA_C0_2D (const Vector &, Vector &) const |
|
void | AddMultGradPA_C0_3D (const Vector &, Vector &) const |
|
void | AssembleDiagonalPA_2D (Vector &) const |
|
void | AssembleDiagonalPA_3D (Vector &) const |
|
void | AssembleDiagonalPA_C0_2D (Vector &) const |
|
void | AssembleDiagonalPA_C0_3D (Vector &) const |
|
void | AssemblePA_Limiting () |
|
void | ComputeAllElementTargets (const Vector &xe=Vector()) const |
|
double | ComputeMinDetT (const Vector &x, const FiniteElementSpace &fes) |
|
double | ComputeUntanglerMaxMuBarrier (const Vector &x, const FiniteElementSpace &fes) |
|
| NonlinearFormIntegrator (const IntegrationRule *ir=NULL) |
|
A TMOP integrator class based on any given TMOP_QualityMetric and TargetConstructor.
Represents \( \int W(Jpt) dx \) over a target zone, where W is the metric's strain energy density function, and Jpt is the Jacobian of the target->physical coordinates transformation. The virtual target zone is defined by the TargetConstructor.
Definition at line 1638 of file tmop.hpp.