OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Abstract class representing global shape function Base class declares abstract interface common to all enrichment functions. More...
#include <enrichmentfunction.h>
Public Member Functions | |
EnrichmentFunction (int n, Domain *aDomain) | |
Constructor. More... | |
virtual | ~EnrichmentFunction () |
Destructor. More... | |
virtual void | evaluateEnrFuncAt (double &oEnrFunc, const FloatArray &iPos, const double &iLevelSet) const =0 |
virtual void | evaluateEnrFuncDerivAt (FloatArray &oEnrFuncDeriv, const FloatArray &iPos, const double &iLevelSet, const FloatArray &iGradLevelSet) const =0 |
virtual void | giveJump (std::vector< double > &oJumps) const =0 |
Returns the discontinuous jump in the enrichment function when the lvel set function changes sign, e.g. More... | |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual const char * | giveClassName () const |
int | giveNumberOfDofs () const |
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... | |
virtual const char * | giveInputRecordName () const =0 |
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 | |
int | numberOfDofs |
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... | |
Abstract class representing global shape function Base class declares abstract interface common to all enrichment functions.
Particularly, evaluateEnrFuncAt() and evaluateEnrFuncDerivAt() evaluate the value and spatial derivatives at a given point.
Definition at line 60 of file enrichmentfunction.h.
|
inline |
Constructor.
n | Number associated with receiver. |
aDomain | Reference to domain. |
Definition at line 68 of file enrichmentfunction.h.
|
inlinevirtual |
Destructor.
Definition at line 70 of file enrichmentfunction.h.
|
pure virtual |
|
pure virtual |
Implemented in oofem::RampFunction, oofem::HeavisideFunction, and oofem::DiscontinuousFunction.
Referenced by oofem::GeometryBasedEI::evaluateEnrFuncDerivAt().
|
inlinevirtual |
Implements oofem::FEMComponent.
Reimplemented in oofem::RampFunction, oofem::HeavisideFunction, and oofem::DiscontinuousFunction.
Definition at line 85 of file enrichmentfunction.h.
|
virtual |
Setups the input record string of receiver.
input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::FEMComponent.
Definition at line 52 of file enrichmentfunction.C.
References oofem::FEMComponent::giveInputRecord().
Referenced by oofem::NCPrincipalStrain::appendInputRecords(), oofem::NCPrincipalStress::appendInputRecords(), oofem::GeometryBasedEI::appendInputRecords(), and oofem::Delamination::appendInputRecords().
|
pure virtual |
Returns the discontinuous jump in the enrichment function when the lvel set function changes sign, e.g.
1.0 for Heaviside, 2.0 for Sign and 0.0 for abs enrichment. Used for combination of cohesive zones and XFEM.
Implemented in oofem::RampFunction, oofem::HeavisideFunction, and oofem::DiscontinuousFunction.
Referenced by oofem::GeometryBasedEI::evaluateEnrFuncJumps().
|
inline |
Definition at line 86 of file enrichmentfunction.h.
Referenced by oofem::EnrichmentItem::giveNumberOfEnrDofs().
|
virtual |
Initializes receiver according to object description stored in input record.
This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record.
ir | Input record to initialize from. |
Reimplemented from oofem::FEMComponent.
Referenced by oofem::GeometryBasedEI::instanciateYourself(), oofem::NucleationCriterion::instanciateYourself(), and oofem::Delamination::instanciateYourself().
|
protected |
Definition at line 90 of file enrichmentfunction.h.