107 double angleRad = mAngle *
M_PI / 180.0;
109 cos(angleRad), sin(angleRad)
141 printf(
"EnrichmentFront.propagationIsAllowed is false \n");
150 printf(
"No dofmans in tip; nothing to propagate. \n");
165 std :: list< int > nodeList;
167 for (
int jNode : nodeList ) {
The base class for all spatial localizers.
virtual IRResultType initializeFrom(InputRecord *ir)
FloatArray mPropagationDir
virtual const char * giveInputRecordName() const =0
TipInfo gathers useful information about a crack tip, like its position and tangent direction...
bool insertSortedOnce(int value, int allocChunk=0)
Inserts given value into a receiver, which is assumed to be sorted.
virtual bool propagateInterface(Domain &iDomain, EnrichmentFront &iEnrFront, TipPropagation &oTipProp)
IntArray mPropagationDofManNumbers
Updates the geometry of evolving XFEM interfaces.
Abstract base class for all finite elements.
virtual IRResultType initializeFrom(InputRecord *ir)
Dummy propagation law that does nothing.
int & at(int i)
Coefficient access function.
IntArray mTipDofManNumbers
Local number of which edge the crack enters the element (2d)
virtual void giveInputRecord(DynamicInputRecord &input)
virtual void giveAllNodesWithinBox(nodeContainerType &nodeList, const FloatArray &coords, const double radius)=0
Returns container (list) of all domain nodes within given box.
virtual void giveInputRecord(DynamicInputRecord &input)
void clear()
Clears the array (zero size).
Class EnrichmentFront: describes the edge or tip of an XFEM enrichment.
SpatialLocalizer * giveSpatialLocalizer()
Returns receiver's associated spatial localizer.
virtual bool propagationIsAllowed() const
Propagation law that propagates the crack in a predefined direction.
REGISTER_PropagationLaw(PLDoNothing)
virtual Element * giveElementContainingPoint(const FloatArray &coords, const IntArray *regionList=NULL)=0
Returns the element, containing given point and belonging to one of the region in region list...
#define _IFT_PLnodeRadius_Radius
virtual bool propagateInterface(Domain &iDomain, EnrichmentFront &iEnrFront, TipPropagation &oTipProp)
#define _IFT_PLCrackPrescribedDir_IncLength
Class representing vector of real numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
const FloatArray & giveNodeCoordinates() const
As giveCoordinates, but non-virtual and therefore faster (because it can be inlined).
virtual ~PropagationLaw()
#define _IFT_PLCrackPrescribedDir_Dir
const TipInfo & giveTipInfo() const
double mPropagationLength
int giveSize() const
Returns the size of receiver.
Node * giveNode(int n)
Service for accessing particular domain node.
virtual void giveInputRecord(DynamicInputRecord &input)
the oofem namespace is to define a context or scope in which all oofem names are defined.
Class implementing node in finite element mesh.
Propagation law that propagates a delamination in a predefined radius from an element.