12 #ifndef MFEM_SBM_SOLVER_HPP
13 #define MFEM_SBM_SOLVER_HPP
25 std::function<double(const Vector &)>
Function;
36 return (
this)->Eval(T, ip, D);
79 bool include_cut_cell_ =
false,
136 bool include_cut_cell_ =
false,
Abstract class for all finite elements.
SBM2DirichletLFIntegrator(const ParMesh *pmesh, ShiftedFunctionCoefficient &u, const double a, VectorCoefficient &vD_, Array< int > &elem_marker_, bool include_cut_cell_=false, int nterms_=0)
Base class for vector Coefficients that optionally depend on time and space.
virtual ~SBM2DirichletIntegrator()
Data type dense matrix using column-major storage.
int par_shared_face_count
Array< int > * elem_marker
Array< int > * elem_marker
virtual void AssembleRHSElementVect(const FiniteElement &el, ElementTransformation &Tr, Vector &elvect)
Base class Coefficients that optionally depend on space and time. These are used by the BilinearFormI...
ShiftedFunctionCoefficient(std::function< double(const Vector &v)> F)
virtual double Eval(ElementTransformation &T, const IntegrationPoint &ip)
Evaluate the coefficient in the element described by T at the point ip.
std::function< double(const Vector &)> Function
Class for integration point with weight.
SBM2DirichletIntegrator(const ParMesh *pmesh, const double a, VectorCoefficient &vD_, Array< int > &elem_marker_, bool include_cut_cell_=false, int nterms_=0)
virtual void AssembleFaceMatrix(const FiniteElement &el1, const FiniteElement &el2, FaceElementTransformations &Trans, DenseMatrix &elmat)
double u(const Vector &xvec)
int par_shared_face_count
Class for parallel meshes.
ShiftedFunctionCoefficient * uD