12#ifndef MFEM_EXTRAPOLATOR_HPP
13#define MFEM_EXTRAPOLATOR_HPP
20class DiscreteUpwindLOSolver;
39 void ZeroOutInactiveZones(
Vector &dx);
81 real_t dt,
int vis_x_pos, std::string vis_name);
100 const real_t norm_grad = grad_ls.Norml2();
102 if (norm_grad > 0.0) { V /= norm_grad; }
135 : u_gf(
u), n_coeff(n) { }
141 n_coeff.
Eval(n, T, ip);
156 : du_dx(dx), du_dy(dy), n_coeff(n) { }
162 n_coeff.
Eval(n, T, ip);
virtual void Mult(const Vector &x, Vector &dx) const
Perform the action of the operator: y = k = f(x, t), where k solves the algebraic equation F(x,...
enum mfem::AdvectionOper::AdvectionMode adv_mode
AdvectionOper(Array< bool > &zones, ParBilinearForm &Mbf, ParBilinearForm &Kbf, const Vector &rhs)
Base class Coefficients that optionally depend on space and time. These are used by the BilinearFormI...
void CalcLOSolution(const Vector &u, const Vector &rhs, Vector &du) const
void ApplyDiscreteUpwindMatrix(ParGridFunction &u, Vector &du) const
void ComputeDiscreteUpwindMatrix() const
ParFiniteElementSpace & pfes
DiscreteUpwindLOSolver(ParFiniteElementSpace &space, const SparseMatrix &adv, const Vector &Mlump)
GradComponentCoeff(const ParGridFunction &u, int c)
virtual real_t Eval(ElementTransformation &T, const IntegrationPoint &ip)
Evaluate the coefficient in the element described by T at the point ip.
void GetGradient(ElementTransformation &tr, Vector &grad) const
Gradient of a scalar function at a quadrature point.
Wrapper for hypre's ParCSR matrix class.
Class for integration point with weight.
LevelSetNormalGradCoeff(const ParGridFunction &ls)
virtual void Eval(Vector &V, ElementTransformation &T, const IntegrationPoint &ip)
Evaluate the vector coefficient in the element described by T at the point ip, storing the result in ...
NormalGradCoeff(const ParGridFunction &u, VectorCoefficient &n)
virtual real_t Eval(ElementTransformation &T, const IntegrationPoint &ip)
Evaluate the coefficient in the element described by T at the point ip.
virtual real_t Eval(ElementTransformation &T, const IntegrationPoint &ip)
Evaluate the coefficient in the element described by T at the point ip.
NormalGradComponentCoeff(const ParGridFunction &dx, const ParGridFunction &dy, VectorCoefficient &n)
Abstract class for solving systems of ODEs: dx/dt = f(x,t)
Abstract parallel finite element space.
Class for parallel grid function.
real_t GetValue(int i, const IntegrationPoint &ip, int vdim=1) const override
Base abstract class for first order time dependent operators.
Base class for vector Coefficients that optionally depend on time and space.
virtual void Eval(Vector &V, ElementTransformation &T, const IntegrationPoint &ip)=0
Evaluate the vector coefficient in the element described by T at the point ip, storing the result in ...
real_t u(const Vector &xvec)