OOFEM  2.4
OOFEM.org - Object Oriented Finite Element Solver
oofem::EnrFrontLinearBranchFuncRadius Class Reference

EnrFrontLinearBranchFuncRadius. More...

#include <enrichmentfrontlinbranchfuncradius.h>

+ Inheritance diagram for oofem::EnrFrontLinearBranchFuncRadius:
+ Collaboration diagram for oofem::EnrFrontLinearBranchFuncRadius:

Public Member Functions

 EnrFrontLinearBranchFuncRadius ()
 
virtual ~EnrFrontLinearBranchFuncRadius ()
 
virtual 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)
 MarkNodesAsFront: Intput: -ioNodeEnrMarker: A vector with the same size as the number of nodes in the mesh where the nodes corresponding to interior XFEM enrichments are marked with 1, other entries are zero. More...
 
virtual int giveNumEnrichments (const DofManager &iDMan) const
 
virtual int giveMaxNumEnrichments () const
 
virtual void evaluateEnrFuncAt (std::vector< double > &oEnrFunc, const EfInput &iEfInput) const
 
virtual void evaluateEnrFuncDerivAt (std::vector< FloatArray > &oEnrFuncDeriv, const EfInput &iEfInput, const FloatArray &iGradLevelSet) const
 
virtual void evaluateEnrFuncJumps (std::vector< double > &oEnrFuncJumps, GaussPoint &iGP, int iNodeInd, bool iGPLivesOnCurrentCrack, const double &iNormalSignDist) const
 
virtual const char * giveClassName () const
 
virtual const char * giveInputRecordName () const
 
virtual IRResultType initializeFrom (InputRecord *ir)
 
virtual void giveInputRecord (DynamicInputRecord &input)
 
virtual double giveSupportRadius () const
 
- Public Member Functions inherited from oofem::EnrichmentFront
 EnrichmentFront (int iEIindex=0)
 
virtual ~EnrichmentFront ()
 
std::string errorInfo (const char *func) const
 
virtual bool propagationIsAllowed () const
 
const TipInfogiveTipInfo () const
 
virtual void setTipInfo (const TipInfo &iTipInfo)
 
void computeCrackTangent (FloatArray &oTangent, FloatArray &oNormal, bool &oFlipTangent, const EfInput &iEfInput) const
 

Private Attributes

double mEnrichmentRadius
 
LinElBranchFunctionmpBranchFunc
 

Additional Inherited Members

- Public Attributes inherited from oofem::EnrichmentFront
int mEIindex
 
- Protected Member Functions inherited from oofem::EnrichmentFront
void MarkTipElementNodesAsFront (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)
 Several enrichment fronts enrich all nodes in the tip element. More...
 
- Protected Attributes inherited from oofem::EnrichmentFront
TipInfo mTipInfo
 reference to the associated enrichment item More...
 

Detailed Description

EnrFrontLinearBranchFuncRadius.

Author
Erik Svenning
Date
Feb 14, 2014

Definition at line 61 of file enrichmentfrontlinbranchfuncradius.h.

Constructor & Destructor Documentation

oofem::EnrFrontLinearBranchFuncRadius::EnrFrontLinearBranchFuncRadius ( )
oofem::EnrFrontLinearBranchFuncRadius::~EnrFrontLinearBranchFuncRadius ( )
virtual

Definition at line 53 of file enrichmentfrontlinbranchfuncradius.C.

References mpBranchFunc.

Member Function Documentation

void oofem::EnrFrontLinearBranchFuncRadius::evaluateEnrFuncAt ( std::vector< double > &  oEnrFunc,
const EfInput iEfInput 
) const
virtual
void oofem::EnrFrontLinearBranchFuncRadius::evaluateEnrFuncDerivAt ( std::vector< FloatArray > &  oEnrFuncDeriv,
const EfInput iEfInput,
const FloatArray iGradLevelSet 
) const
virtual
void oofem::EnrFrontLinearBranchFuncRadius::evaluateEnrFuncJumps ( std::vector< double > &  oEnrFuncJumps,
GaussPoint iGP,
int  iNodeInd,
bool  iGPLivesOnCurrentCrack,
const double &  iNormalSignDist 
) const
virtual
virtual const char* oofem::EnrFrontLinearBranchFuncRadius::giveClassName ( ) const
inlinevirtual

Implements oofem::EnrichmentFront.

Definition at line 77 of file enrichmentfrontlinbranchfuncradius.h.

virtual const char* oofem::EnrFrontLinearBranchFuncRadius::giveInputRecordName ( ) const
inlinevirtual
virtual int oofem::EnrFrontLinearBranchFuncRadius::giveMaxNumEnrichments ( ) const
inlinevirtual

Implements oofem::EnrichmentFront.

Definition at line 70 of file enrichmentfrontlinbranchfuncradius.h.

int oofem::EnrFrontLinearBranchFuncRadius::giveNumEnrichments ( const DofManager iDMan) const
virtual

Implements oofem::EnrichmentFront.

Definition at line 100 of file enrichmentfrontlinbranchfuncradius.C.

virtual double oofem::EnrFrontLinearBranchFuncRadius::giveSupportRadius ( ) const
inlinevirtual

Implements oofem::EnrichmentFront.

Definition at line 83 of file enrichmentfrontlinbranchfuncradius.h.

IRResultType oofem::EnrFrontLinearBranchFuncRadius::initializeFrom ( InputRecord ir)
virtual
void oofem::EnrFrontLinearBranchFuncRadius::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 
)
virtual

MarkNodesAsFront: Intput: -ioNodeEnrMarker: A vector with the same size as the number of nodes in the mesh where the nodes corresponding to interior XFEM enrichments are marked with 1, other entries are zero.

Output: -ioNodeEnrMarker: Modifies the vector by marking tip nodes as 2, meaning that they should get special treatment. May also modify the set of nodes enriched by the interior enrichment.

Implements oofem::EnrichmentFront.

Definition at line 61 of file enrichmentfrontlinbranchfuncradius.C.

References oofem::FloatArray::distance_square(), oofem::DofManager::giveCoordinates(), oofem::Domain::giveDofManager(), oofem::XfemManager::giveDomain(), oofem::Domain::giveNumberOfDofManagers(), oofem::EnrichmentFront::MarkTipElementNodesAsFront(), mEnrichmentRadius, oofem::TipInfo::mGlobalCoord, oofem::TipInfo::mTipIndex, oofem::EnrichmentFront::mTipInfo, oofem::NodeEnr_END_TIP, oofem::NodeEnr_START_AND_END_TIP, and oofem::NodeEnr_START_TIP.

Member Data Documentation

double oofem::EnrFrontLinearBranchFuncRadius::mEnrichmentRadius
private
LinElBranchFunction* oofem::EnrFrontLinearBranchFuncRadius::mpBranchFunc
private

The documentation for this class was generated from the following files:

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Jan 2 2018 20:07:35 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011