38#ifndef ENRICHMENTFRONTINTERSECTION_H_
39 #define ENRICHMENTFRONTINTERSECTION_H_
41 #define _IFT_EnrFrontIntersection_Name "enrfrontintersection"
42 #define _IFT_EnrFrontIntersection_Tangent "tangent"
49class DynamicInputRecord;
50class LinElBranchFunction;
66 void MarkNodesAsFront(std :: unordered_map< int, NodeEnrichmentType > &ioNodeEnrMarkerMap,
XfemManager &ixFemMan,
const std :: unordered_map< int, double > &iLevelSetNormalDirMap,
const std :: unordered_map< int, double > &iLevelSetTangDirMap,
const TipInfo &iTipInfo)
override;
74 void evaluateEnrFuncJumps(std :: vector< double > &oEnrFuncJumps,
GaussPoint &iGP,
int iNodeInd,
bool iGPLivesOnCurrentCrack,
const double &iNormalSignDist)
const override;
76 const char *
giveClassName()
const override {
return "EnrFrontIntersection"; }
void giveInputRecord(DynamicInputRecord &input) override
void evaluateEnrFuncDerivAt(std ::vector< FloatArray > &oEnrFuncDeriv, const EfInput &iEfInput, const FloatArray &iGradLevelSet) const override
virtual ~EnrFrontIntersection()
void evaluateEnrFuncAt(std ::vector< double > &oEnrFunc, const EfInput &iEfInput) const override
const char * giveInputRecordName() const override
void initializeFrom(InputRecord &ir) override
void evaluateEnrFuncJumps(std ::vector< double > &oEnrFuncJumps, GaussPoint &iGP, int iNodeInd, bool iGPLivesOnCurrentCrack, const double &iNormalSignDist) const override
int giveNumEnrichments(const DofManager &iDMan) const override
double giveSupportRadius() const override
int giveMaxNumEnrichments() const override
void setTangent(FloatArray iTangent)
void MarkNodesAsFront(std ::unordered_map< int, NodeEnrichmentType > &ioNodeEnrMarkerMap, XfemManager &ixFemMan, const std ::unordered_map< int, double > &iLevelSetNormalDirMap, const std ::unordered_map< int, double > &iLevelSetTangDirMap, const TipInfo &iTipInfo) override
const char * giveClassName() const override
bool propagationIsAllowed() const override
EnrichmentFront(int iEIindex=0)
#define _IFT_EnrFrontIntersection_Name