|
| 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.
|
|
void | IntegrateOverTarget (bool integ_over_target_) |
|
void | SetCoefficient (Coefficient &w1) |
| Sets a scaling Coefficient for the quality metric term of the integrator.
|
|
void | EnableLimiting (const GridFunction &n0, const GridFunction &dist, Coefficient &w0, TMOP_LimiterFunction *lfunc=NULL) |
| Limiting of the mesh displacements (general version).
|
|
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.
|
|
void | EnableAdaptiveLimiting (const GridFunction &z0, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Restriction of the node positions to certain regions.
|
|
void | EnableAdaptiveLimiting (const ParGridFunction &z0, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Parallel support for adaptive limiting.
|
|
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.
|
|
void | EnableSurfaceFitting (const ParGridFunction &s0, const Array< bool > &smarker, Coefficient &coeff, AdaptivityEvaluator &ae) |
| Parallel support for surface fitting to the zero level set of a function.
|
|
void | EnableSurfaceFittingFromSource (const ParGridFunction &s_bg, ParGridFunction &s0, const Array< bool > &smarker, Coefficient &coeff, AdaptivityEvaluator &ae, const ParGridFunction &s_bg_grad, ParGridFunction &s0_grad, AdaptivityEvaluator &age, const ParGridFunction &s_bg_hess, ParGridFunction &s0_hess, AdaptivityEvaluator &ahe) |
| Fitting of certain DOFs in the current mesh to the zero level set of a function defined on another (finer) source mesh.
|
|
void | EnableSurfaceFitting (const GridFunction &pos, const Array< bool > &smarker, Coefficient &coeff) |
| Fitting of certain DOFs to given positions in physical space.
|
|
void | GetSurfaceFittingErrors (const Vector &pos, real_t &err_avg, real_t &err_max) |
|
bool | IsSurfaceFittingEnabled () |
|
void | SetLimitingNodes (const GridFunction &n0) |
| Update the original/reference nodes used for limiting.
|
|
virtual real_t | GetElementEnergy (const FiniteElement &el, ElementTransformation &T, const Vector &elfun) |
| Computes the integral of W(Jacobian(Trt)) over a target zone.
|
|
virtual real_t | GetRefinementElementEnergy (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, const IntegrationRule &irule) |
| Computes the mean of the energies of the given element's children.
|
|
virtual real_t | 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.
|
|
virtual void | AssembleElementGrad (const FiniteElement &el, ElementTransformation &T, const Vector &elfun, DenseMatrix &elmat) |
| Assemble the local gradient matrix.
|
|
TMOP_QualityMetric & | GetAMRQualityMetric () |
|
void | UpdateAfterMeshTopologyChange () |
|
void | ParUpdateAfterMeshTopologyChange () |
|
virtual void | AssemblePA (const FiniteElementSpace &) |
| Method defining partial assembly.
|
|
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.
|
|
virtual real_t | GetLocalStateEnergyPA (const Vector &) const |
| Compute the local (to the MPI rank) energy with partial assembly.
|
|
virtual void | AddMultPA (const Vector &, Vector &) const |
| Method for partially assembled action.
|
|
virtual void | AddMultGradPA (const Vector &, Vector &) const |
| Method for partially assembled gradient action.
|
|
virtual void | AssembleGradDiagonalPA (Vector &) const |
| Method for computing the diagonal of the gradient with partial assembly.
|
|
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.
|
|
void | ParEnableNormalization (const ParGridFunction &x) |
|
void | EnableFiniteDifferences (const GridFunction &x) |
| Enables FD-based approximation and computes dx.
|
|
void | EnableFiniteDifferences (const ParGridFunction &x) |
|
void | SetFDhScale (real_t dxscale_) |
|
bool | GetFDFlag () const |
|
real_t | GetFDh () const |
|
void | SetExactActionFlag (bool flag_) |
| Flag to control if exact action of Integration is effected.
|
|
void | UpdateSurfaceFittingWeight (real_t factor) |
| Update the surface fitting weight as surf_fit_coeff *= factor;.
|
|
real_t | GetSurfaceFittingWeight () |
| Get the surface fitting weight.
|
|
void | ComputeUntangleMetricQuantiles (const Vector &x, const FiniteElementSpace &fes) |
|
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).
|
|
void | SetIntegrationMode (Mode m) |
|
void | SetNURBSPatchIntRule (NURBSMeshRules *pr) |
| For patchwise integration, SetNURBSPatchIntRule must be called.
|
|
bool | HasNURBSPatchIntRule () const |
|
bool | Patchwise () const |
|
void | SetIntegrationRule (const IntegrationRule &ir) |
| Prescribe a fixed IntegrationRule to use.
|
|
void | SetPAMemoryType (MemoryType mt) |
|
const IntegrationRule * | GetIntegrationRule () const |
| Get the integration rule of the integrator (possibly NULL).
|
|
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.
|
|
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.
|
|
virtual bool | SupportsCeed () const |
| Indicates whether this integrator can use a Ceed backend.
|
|
virtual void | AssembleMF (const FiniteElementSpace &fes) |
| Method defining fully unassembled operator.
|
|
virtual void | AddMultMF (const Vector &x, Vector &y) const |
|
ceed::Operator & | GetCeedOp () |
|
virtual | ~NonlinearFormIntegrator () |
|
|
void | ComputeNormalizationEnergies (const GridFunction &x, real_t &metric_energy, real_t &lim_energy, real_t &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) |
|
real_t | GetFDDerivative (const FiniteElement &el, ElementTransformation &T, Vector &elfun, const int nodenum, const int idir, const real_t baseenergy, bool update_stored) |
|
void | ComputeFDh (const Vector &x, const FiniteElementSpace &fes) |
| Determines the perturbation, h, for FD-based approximation.
|
|
void | ComputeMinJac (const Vector &x, const FiniteElementSpace &fes) |
|
void | UpdateAfterMeshPositionChange (const Vector &x_new, const FiniteElementSpace &x_fes) |
|
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 |
|
real_t | GetLocalStateEnergyPA_2D (const Vector &) const |
|
real_t | GetLocalStateEnergyPA_C0_2D (const Vector &) const |
|
real_t | GetLocalStateEnergyPA_3D (const Vector &) const |
|
real_t | 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 |
|
void | UpdateCoefficientsPA (const Vector &x_loc) |
|
real_t | ComputeMinDetT (const Vector &x, const FiniteElementSpace &fes) |
|
real_t | 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 1737 of file tmop.hpp.