|
OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
EnrichmentItem with geometry defined by a set of nodes to be enriched. More...
#include <listbasedei.h>
Inheritance diagram for oofem::ListBasedEI:
Collaboration diagram for oofem::ListBasedEI:Public Member Functions | |
| ListBasedEI (int n, XfemManager *xm, Domain *aDomain) | |
| virtual | ~ListBasedEI () |
| virtual const char * | giveClassName () const |
| virtual const char * | giveInputRecordName () const |
| virtual void | updateGeometry () |
| virtual void | propagateFronts (bool &oFrontsHavePropagated) |
| virtual void | initiateFronts (bool &oFrontsHavePropagated, IntArray &initiateDofMans) |
| virtual void | updateNodeEnrMarker (XfemManager &ixFemMan) |
| virtual bool | giveElementTipCoord (FloatArray &oCoord, double &oArcPos, Element &iEl, const FloatArray &iElCenter) const |
| virtual void | giveBoundingSphere (FloatArray &oCenter, double &oRadius) |
Public Member Functions inherited from oofem::EnrichmentItem | |
| EnrichmentItem (int n, XfemManager *xm, Domain *aDomain) | |
| Constructor / destructor. More... | |
| virtual | ~EnrichmentItem () |
| virtual IRResultType | initializeFrom (InputRecord *ir) |
| Initializes receiver according to object description stored in input record. More... | |
| virtual void | giveInputRecord (DynamicInputRecord &input) |
| Note the special treatment here, the "normal" syntax would be giveInputRecord(DynamicInputRecord &input). More... | |
| virtual void | appendInputRecords (DynamicDataReader &oDR)=0 |
| virtual int | instanciateYourself (DataReader &dr)=0 |
| const IntArray * | giveEnrichesDofsWithIdArray () const |
| int | giveNumberOfEnrDofs () const |
| virtual void | writeVtkDebug () const |
| bool | isElementEnriched (const Element *element) const |
| bool | isDofManEnriched (const DofManager &iDMan) const |
| int | giveNumDofManEnrichments (const DofManager &iDMan) const |
| virtual bool | canModifyMaterial () const |
| virtual bool | isMaterialModified (GaussPoint &iGP, Element &iEl, CrossSection *&opCS) const |
| virtual void | updateGeometry (FailureCriteriaStatus *fc, TimeStep *tStep) |
| virtual void | updateGeometry (TimeStep *tStep) |
| virtual bool | hasPropagatingFronts () const |
| virtual bool | hasInitiationCriteria () |
| int | giveStartOfDofIdPool () const |
| int | giveEndOfDofIdPool () const |
| virtual int | giveDofPoolSize () const |
| virtual void | computeEnrichedDofManDofIdArray (IntArray &oDofIdArray, DofManager &iDMan) |
| Compute Id's of enriched dofs for a given DofManager. More... | |
| virtual void | giveEIDofIdArray (IntArray &answer) const |
| virtual void | givePotentialEIDofIdArray (IntArray &answer) const |
| virtual void | evaluateEnrFuncInNode (std::vector< double > &oEnrFunc, const Node &iNode) const =0 |
| virtual void | evaluateEnrFuncAt (std::vector< double > &oEnrFunc, const FloatArray &iGlobalCoord, const FloatArray &iLocalCoord, int iNodeInd, const Element &iEl) const =0 |
| virtual void | evaluateEnrFuncAt (std::vector< double > &oEnrFunc, const FloatArray &iGlobalCoord, const FloatArray &iLocalCoord, int iNodeInd, const Element &iEl, const FloatArray &iN, const IntArray &iElNodes) const =0 |
| virtual void | evaluateEnrFuncDerivAt (std::vector< FloatArray > &oEnrFuncDeriv, const FloatArray &iGlobalCoord, const FloatArray &iLocalCoord, int iNodeInd, const Element &iEl) const =0 |
| virtual void | evaluateEnrFuncDerivAt (std::vector< FloatArray > &oEnrFuncDeriv, const FloatArray &iGlobalCoord, const FloatArray &iLocalCoord, int iNodeInd, const Element &iEl, const FloatArray &iN, const FloatMatrix &idNdX, const IntArray &iElNodes) const =0 |
| bool | evalLevelSetNormalInNode (double &oLevelSet, int iNodeInd, const FloatArray &iGlobalCoord) const |
| bool | evalLevelSetTangInNode (double &oLevelSet, int iNodeInd, const FloatArray &iGlobalCoord) const |
| bool | evalNodeEnrMarkerInNode (double &oNodeEnrMarker, int iNodeInd) const |
| virtual void | createEnrichedDofs () |
| PropagationLaw * | givePropagationLaw () |
| void | setPropagationLaw (PropagationLaw *ipPropagationLaw) |
| bool | hasPropagationLaw () |
| virtual void | callGnuplotExportModule (GnuplotExportModule &iExpMod, TimeStep *tStep) |
| const std::unordered_map< int, NodeEnrichmentType > & | giveEnrNodeMap () const |
| EnrichmentFront * | giveEnrichmentFrontStart () |
| void | setEnrichmentFrontStart (EnrichmentFront *ipEnrichmentFrontStart, bool iDeleteOld=true) |
| EnrichmentFront * | giveEnrichmentFrontEnd () |
| void | setEnrichmentFrontEnd (EnrichmentFront *ipEnrichmentFrontEnd, bool iDeleteOld=true) |
| bool | tipIsTouchingEI (const TipInfo &iTipInfo) |
| void | setEnrichmentFunction (EnrichmentFunction *ipEnrichmentFunc) |
Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| Regular constructor, creates component with given number and belonging to given domain. More... | |
| virtual | ~FEMComponent () |
| Virtual destructor. More... | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| Sets associated Domain. More... | |
| int | giveNumber () const |
| void | setNumber (int num) |
| Sets number of receiver. More... | |
| virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
| Local renumbering support. More... | |
| virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
| Stores receiver state to output stream. More... | |
| virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
| Restores the receiver state previously written in stream. More... | |
| virtual int | checkConsistency () |
| Allows programmer to test some internal data, before computation begins. More... | |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| Prints output of receiver to stream, for given time step. More... | |
| virtual void | printYourself () |
| Prints receiver state on stdout. Useful for debugging. More... | |
| virtual Interface * | giveInterface (InterfaceType t) |
| Interface requesting service. More... | |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). More... | |
Protected Attributes | |
| std::vector< int > | dofManList |
| double | xi |
| int | setNumber |
Protected Attributes inherited from oofem::EnrichmentItem | |
| EnrichmentFunction * | mpEnrichmentFunc |
| EnrichmentFront * | mpEnrichmentFrontStart |
| EnrichmentFront * | mpEnrichmentFrontEnd |
| int | mEnrFrontIndex |
| mEnrFrontIndex: nonzero if an enrichment front is present, zero otherwise. More... | |
| PropagationLaw * | mpPropagationLaw |
| int | mPropLawIndex |
| mPropLawIndex: nonzero if a propagation law is present, zero otherwise. More... | |
| bool | mInheritBoundaryConditions |
| If newly created enriched dofs should inherit boundary conditions from the node they are introduced in. More... | |
| bool | mInheritOrderedBoundaryConditions |
| int | startOfDofIdPool |
| int | endOfDofIdPool |
| IntArray | mpEnrichesDofsWithIdArray |
| Geometry associated with EnrichmentItem. More... | |
| std::unordered_map< int, double > | mLevelSetNormalDirMap |
| std::unordered_map< int, double > | mLevelSetTangDirMap |
| std::unordered_map< int, NodeEnrichmentType > | mNodeEnrMarkerMap |
| IntArray | mEIDofIdArray |
| bool | mLevelSetsNeedUpdate |
| const double | mLevelSetTol2 |
Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. More... | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from oofem::EnrichmentItem | |
| static double | calcXiZeroLevel (const double &iQ1, const double &iQ2) |
| static void | calcPolarCoord (double &oR, double &oTheta, const FloatArray &iOrigin, const FloatArray &iPos, const FloatArray &iN, const FloatArray &iT, const EfInput &iEfInput, bool iFlipTangent) |
Protected Member Functions inherited from oofem::EnrichmentItem | |
| virtual void | evalLevelSetNormal (double &oLevelSet, const FloatArray &iGlobalCoord, const FloatArray &iN, const IntArray &iNodeInd) const =0 |
| Evaluate the normal direction level set in the point iGlobalCoord. More... | |
| virtual void | evalLevelSetTangential (double &oLevelSet, const FloatArray &iGlobalCoord, const FloatArray &iN, const IntArray &iNodeInd) const =0 |
| Evaluate the tangential direction level set in the point iGlobalCoord. More... | |
| virtual void | evalGradLevelSetNormal (FloatArray &oGradLevelSet, const FloatArray &iGlobalCoord, const FloatMatrix &idNdX, const IntArray &iNodeInd) const =0 |
| Evaluate the gradient of the normal direction level set in the point iGlobalCoord. More... | |
Static Protected Attributes inherited from oofem::EnrichmentItem | |
| static const double | mLevelSetTol = 1.0e-12 |
| static const double | mLevelSetRelTol = 1.0e-3 |
EnrichmentItem with geometry defined by a set of nodes to be enriched.
Definition at line 54 of file listbasedei.h.
| oofem::ListBasedEI::ListBasedEI | ( | int | n, |
| XfemManager * | xm, | ||
| Domain * | aDomain | ||
| ) |
Definition at line 49 of file listbasedei.C.
|
virtual |
Definition at line 53 of file listbasedei.C.
|
inlinevirtual |
Implements oofem::EnrichmentItem.
Definition at line 70 of file listbasedei.h.
References OOFEM_ERROR.
|
inlinevirtual |
Implements oofem::EnrichmentItem.
Reimplemented in oofem::Delamination.
Definition at line 60 of file listbasedei.h.
|
virtual |
Implements oofem::EnrichmentItem.
Definition at line 156 of file listbasedei.C.
|
inlinevirtual |
Implements oofem::FEMComponent.
Reimplemented in oofem::Delamination.
Definition at line 61 of file listbasedei.h.
References _IFT_ListBasedEI_Name.
|
virtual |
Definition at line 96 of file listbasedei.C.
References oofem::IntArray::at(), dofManList, oofem::FEMComponent::giveNumber(), oofem::IntArray::giveSize(), oofem::sort(), and updateGeometry().
|
virtual |
Implements oofem::EnrichmentItem.
Reimplemented in oofem::Delamination.
Definition at line 67 of file listbasedei.C.
References oofem::IntArray::at(), dofManList, oofem::FEMComponent::giveDomain(), oofem::IntArray::giveSize(), oofem::EnrichmentItem::mpEnrichmentFrontStart, oofem::EnrichmentItem::mpPropagationLaw, oofem::TipPropagation::mPropagationDofManNumbers, oofem::PropagationLaw::propagateInterface(), oofem::sort(), and updateGeometry().
|
virtual |
Implements oofem::EnrichmentItem.
Definition at line 56 of file listbasedei.C.
References oofem::EnrichmentItem::createEnrichedDofs(), oofem::FEMComponent::giveDomain(), oofem::Domain::giveXfemManager(), and updateNodeEnrMarker().
Referenced by initiateFronts(), oofem::Delamination::instanciateYourself(), propagateFronts(), and oofem::Delamination::propagateFronts().
|
virtual |
Implements oofem::EnrichmentItem.
Definition at line 120 of file listbasedei.C.
References dofManList, oofem::FEMComponent::giveNumber(), oofem::IntArray::insertSorted(), oofem::EnrichmentItem::mNodeEnrMarkerMap, oofem::EnrichmentItem::mpEnrichmentFrontStart, oofem::TipInfo::mTipDofManNumbers, oofem::NodeEnr_BULK, and oofem::EnrichmentFront::setTipInfo().
Referenced by oofem::Delamination::instanciateYourself(), and updateGeometry().
|
protected |
Definition at line 73 of file listbasedei.h.
Referenced by oofem::Delamination::appendInputRecords(), initiateFronts(), oofem::Delamination::instanciateYourself(), propagateFronts(), oofem::Delamination::propagateFronts(), and updateNodeEnrMarker().
|
protected |
Definition at line 75 of file listbasedei.h.
|
protected |
Definition at line 74 of file listbasedei.h.