12 #ifndef MFEM_TMOP_TOOLS_HPP
13 #define MFEM_TMOP_TOOLS_HPP
93 :
NewtonSolver(comm), parallel(true), ir(irule), discr_tc(NULL) { }
96 :
NewtonSolver(), parallel(false), ir(irule), discr_tc(NULL) { }
119 :
NewtonSolver(comm), parallel(true), ir(irule), discr_tc(NULL) { }
122 :
NewtonSolver(), parallel(false), ir(irule), discr_tc(NULL) { }
130 const TargetConstructor &tc, Mesh &pmesh,
131 char *title,
int position);
134 const TargetConstructor &tc, ParMesh &pmesh,
135 char *title,
int position);
VectorGridFunctionCoefficient u_coeff
void vis_tmop_metric_p(int order, TMOP_QualityMetric &qm, const TargetConstructor &tc, ParMesh &pmesh, char *title, int position)
Class for an integration rule - an Array of IntegrationPoint.
Class for grid function - Vector with associated FE space.
Base abstract class for first order time dependent operators.
TMOPNewtonSolver(MPI_Comm comm, const IntegrationRule &irule)
Allows negative Jacobians. Used for untangling.
Abstract parallel finite element space.
void vis_tmop_metric_s(int order, TMOP_QualityMetric &qm, const TargetConstructor &tc, Mesh &mesh, char *title, int position)
virtual void ProcessNewState(const Vector &x) const
This method can be overloaded in derived classes to perform computations that need knowledge of the n...
virtual void ComputeAtNewPosition(const Vector &new_nodes, Vector &new_field)
SerialAdvectorCGOper(const Vector &x_start, GridFunction &vel, FiniteElementSpace &fes)
virtual void Mult(const Vector &ind, Vector &di_dt) const
Perform the action of the operator: y = k = f(x, t), where k solves the algebraic equation F(x...
Newton's method for solving F(x)=b for a given operator F.
Performs a single remap advection step in serial.
virtual void ProcessNewState(const Vector &x) const
This method can be overloaded in derived classes to perform computations that need knowledge of the n...
TMOPDescentNewtonSolver(MPI_Comm comm, const IntegrationRule &irule)
The classical explicit forth-order Runge-Kutta method, RK4.
Class FiniteElementSpace - responsible for providing FEM view of the mesh, mainly managing the set of...
ParAdvectorCGOper(const Vector &x_start, GridFunction &vel, ParFiniteElementSpace &pfes)
Performs a single remap advection step in parallel.
TMOPDescentNewtonSolver(const IntegrationRule &irule)
TMOPNewtonSolver(const IntegrationRule &irule)
virtual void SetInitialField(const Vector &init_nodes, const Vector &init_field)
VectorGridFunctionCoefficient u_coeff
virtual void Mult(const Vector &ind, Vector &di_dt) const
Perform the action of the operator: y = k = f(x, t), where k solves the algebraic equation F(x...
virtual double ComputeScalingFactor(const Vector &x, const Vector &b) const
This method can be overloaded in derived classes to implement line search algorithms.
Vector coefficient defined by a vector GridFunction.
void SetDiscreteAdaptTC(DiscreteAdaptTC *tc)
virtual double ComputeScalingFactor(const Vector &x, const Vector &b) const
This method can be overloaded in derived classes to implement line search algorithms.