OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
The base class for all remeshing criteria. More...
#include <remeshingcrit.h>
Public Member Functions | |
RemeshingCriteria (int n, ErrorEstimator *e) | |
Constructor. More... | |
virtual | ~RemeshingCriteria () |
Destructor. More... | |
virtual double | giveRequiredDofManDensity (int num, TimeStep *tStep, int relative=0)=0 |
Returns the required mesh size n given dof manager. More... | |
virtual double | giveDofManDensity (int num)=0 |
Returns existing mesh size for given dof manager. More... | |
virtual RemeshingStrategy | giveRemeshingStrategy (TimeStep *tStep)=0 |
Determines, if the remeshing is needed, and if needed, the type of strategy used. More... | |
virtual int | estimateMeshDensities (TimeStep *tStep)=0 |
Estimates the nodal densities. More... | |
virtual void | reinitialize () |
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 * | giveClassName () const =0 |
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 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 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 | |
ErrorEstimator * | ee |
CommunicatorBuff * | commBuff |
Common Communicator buffer. More... | |
ProblemCommunicator * | communicator |
Communicator. More... | |
bool | initCommMap |
Communication init flag. More... | |
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... | |
The base class for all remeshing criteria.
The basic task is to evaluate the required mesh density (at nodes) on given domain, based on informations provided by the compatible error estimator. If this task requires the special element algorithms, these should be included using interface concept.
The remeshing criteria is maintained by the corresponding error estimator. This is mainly due to fact, that is necessary for given EE to create compatible RC. In our concept, the EE is responsible.
Definition at line 61 of file remeshingcrit.h.
oofem::RemeshingCriteria::RemeshingCriteria | ( | int | n, |
ErrorEstimator * | e | ||
) |
Constructor.
Definition at line 43 of file remeshingcrit.C.
References commBuff, communicator, ee, and initCommMap.
|
virtual |
|
pure virtual |
Estimates the nodal densities.
tStep | Time step. |
Implemented in oofem::HuertaRemeshingCriteria, oofem::ZZRemeshingCriteria, oofem::CombinedZZSIRemeshingCriteria, and oofem::DirectErrorIndicatorRC.
Referenced by oofem::AdaptiveNonLinearStatic::solveYourselfAt().
|
pure virtual |
Returns existing mesh size for given dof manager.
num | DofMan number. |
Implemented in oofem::HuertaRemeshingCriteria, oofem::ZZRemeshingCriteria, oofem::CombinedZZSIRemeshingCriteria, and oofem::DirectErrorIndicatorRC.
|
pure virtual |
Determines, if the remeshing is needed, and if needed, the type of strategy used.
tStep | Time step. |
Implemented in oofem::HuertaRemeshingCriteria, oofem::ZZRemeshingCriteria, oofem::CombinedZZSIRemeshingCriteria, and oofem::DirectErrorIndicatorRC.
Referenced by oofem::AdaptiveNonLinearStatic::solveYourselfAt(), and oofem::AdaptiveLinearStatic::updateYourself().
|
pure virtual |
Returns the required mesh size n given dof manager.
The mesh density is defined as a required element size (in 1D the element length, in 2D the square from element area).
num | Dofman number. |
tStep | Time step. |
relative | If zero, then actual density is returned, otherwise the relative density to current is returned. |
Implemented in oofem::HuertaRemeshingCriteria, oofem::ZZRemeshingCriteria, oofem::CombinedZZSIRemeshingCriteria, and oofem::DirectErrorIndicatorRC.
Referenced by oofem::Targe2Interface::createInput(), oofem::FreemInterface::createInput(), oofem::T3DInterface::createInput(), and oofem::Subdivision::createMesh().
|
inlinevirtual |
Reimplemented in oofem::DirectErrorIndicatorRC.
Definition at line 106 of file remeshingcrit.h.
|
protected |
Common Communicator buffer.
Definition at line 68 of file remeshingcrit.h.
Referenced by oofem::DirectErrorIndicatorRC::initializeFrom(), RemeshingCriteria(), and ~RemeshingCriteria().
|
protected |
Definition at line 70 of file remeshingcrit.h.
Referenced by oofem::DirectErrorIndicatorRC::estimateMeshDensities(), oofem::DirectErrorIndicatorRC::exchangeDofManDensities(), oofem::DirectErrorIndicatorRC::exchangeDofManIndicatorVals(), oofem::DirectErrorIndicatorRC::initializeFrom(), RemeshingCriteria(), and ~RemeshingCriteria().
|
protected |
Definition at line 64 of file remeshingcrit.h.
Referenced by oofem::ZZRemeshingCriteria::estimateMeshDensities(), oofem::HuertaRemeshingCriteria::estimateMeshDensities(), oofem::DirectErrorIndicatorRC::giveLocalDofManIndicator(), and RemeshingCriteria().
|
protected |
Communication init flag.
Definition at line 72 of file remeshingcrit.h.
Referenced by oofem::DirectErrorIndicatorRC::estimateMeshDensities(), oofem::DirectErrorIndicatorRC::reinitialize(), RemeshingCriteria(), and oofem::DirectErrorIndicatorRC::setDomain().