61 void setQuadraturePointsAndWeights(
const std::vector<Point> & qp_points,
62 const std::vector<Real> & qp_weights);
66 virtual void computePhysicalVolumeFraction() = 0;
71 Real getPhysicalVolumeFraction()
const;
77 virtual void computePhysicalFaceAreaFraction(
unsigned int side) = 0;
83 Real getPhysicalFaceAreaFraction(
unsigned int side)
const;
85 virtual void computeMomentFittingWeights() = 0;
86 Real getMomentFittingWeight(
unsigned int i_qp)
const;
87 virtual Point getCutPlaneOrigin(
unsigned int plane_id,
88 MeshBase * displaced_mesh =
nullptr)
const = 0;
89 virtual Point getCutPlaneNormal(
unsigned int plane_id,
90 MeshBase * displaced_mesh =
nullptr)
const = 0;
92 getCrackTipOriginAndDirection(
unsigned tip_id,
Point & origin,
Point & direction)
const = 0;
93 virtual void getFragmentFaces(std::vector<std::vector<Point>> & frag_faces,
94 MeshBase * displaced_mesh =
nullptr)
const = 0;
95 virtual const EFAElement * getEFAElement()
const = 0;
96 virtual unsigned int numCutPlanes()
const = 0;
113 void computeXFEMWeights(
QBase * qrule,
125 void computeXFEMFaceWeights(
QBase * qrule,
129 bool isPointPhysical(
const Point & p)
const;
130 virtual void getIntersectionInfo(
unsigned int plane_id,
132 std::vector<Point> & intersectionPoints,
133 MeshBase * displaced_mesh =
nullptr)
const = 0;
std::vector< Real > _elem_side_area
std::vector< std::vector< Real > > _new_face_weights
face quadrature weights from surface area fraction
std::vector< bool > _have_face_weights
std::vector< Point > _qp_points
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...
std::vector< Real > _qp_weights
std::vector< Real > _new_weights
quadrature weights from volume fraction and moment fitting
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::vector< Node * > _nodes
std::vector< Real > _physical_areafrac