OOFEM 3.0
Loading...
Searching...
No Matches
oofem::CombinedZZSIRemeshingCriteria Class Reference

#include <combinedzzsiee.h>

Inheritance diagram for oofem::CombinedZZSIRemeshingCriteria:
Collaboration diagram for oofem::CombinedZZSIRemeshingCriteria:

Public Member Functions

 CombinedZZSIRemeshingCriteria (int n, ErrorEstimator *e)
 Constructor.
virtual ~CombinedZZSIRemeshingCriteria ()
 Destructor.
double giveRequiredDofManDensity (int num, TimeStep *tStep, int relative=0) override
double giveDofManDensity (int num) override
RemeshingStrategy giveRemeshingStrategy (TimeStep *tStep) override
int estimateMeshDensities (TimeStep *tStep) override
void initializeFrom (InputRecord &ir) override
const char * giveInputRecordName () const override
const char * giveClassName () const override
void setDomain (Domain *d) override
Public Member Functions inherited from oofem::RemeshingCriteria
 RemeshingCriteria (int n, ErrorEstimator *e)
 Constructor.
virtual ~RemeshingCriteria ()
 Destructor.
virtual void reinitialize ()
Public Member Functions inherited from oofem::FEMComponent
 FEMComponent (int n, Domain *d)
virtual ~FEMComponent ()=default
 Virtual destructor.
DomaingiveDomain () const
int giveNumber () const
void setNumber (int num)
virtual void updateLocalNumbering (EntityRenumberingFunctor &f)
virtual void initializeFrom (InputRecord &ir, int priority)
virtual void initializeFinish ()
virtual void postInitialize ()
 Performs post initialization steps. Called after all components are created and initialized.
virtual void giveInputRecord (DynamicInputRecord &input)
virtual void saveContext (DataStream &stream, ContextMode mode)
virtual void restoreContext (DataStream &stream, ContextMode mode)
virtual int checkConsistency ()
virtual void printOutputAt (FILE *file, TimeStep *tStep)
virtual void printYourself ()
 Prints receiver state on stdout. Useful for debugging.
virtual InterfacegiveInterface (InterfaceType t)
std::string errorInfo (const char *func) const
 Returns string for prepending output (used by error reporting macros).

Protected Attributes

ZZRemeshingCriteria zzrc
DirectErrorIndicatorRC dirc
Protected Attributes inherited from oofem::RemeshingCriteria
ErrorEstimatoree
CommunicatorBuffcommBuff
 Common Communicator buffer.
ProblemCommunicatorcommunicator
 Communicator.
bool initCommMap
 Communication init flag.
Protected Attributes inherited from oofem::FEMComponent
int number
 Component number.
Domaindomain
 Link to domain object, useful for communicating with other FEM components.

Detailed Description

The class represent the corresponding remeshing criteria to CombinedZZSIErrorEstimator. In regions, where the error indicator is larger than given threshold, the mesh is refined according this indicator (currently linear interpolation). Otherwise, the mesh size is determined from Zienkiewicz-Zhu remeshing criteria. (Assumes that error is equally distributed between elements, then the requirement for max. permissible error can be translated into placing a limit on the error on each element.) The basic task is to evaluate the required mesh density (at nodes) on given domain, based on informations provided by the compatible error estimator.

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 94 of file combinedzzsiee.h.

Constructor & Destructor Documentation

◆ CombinedZZSIRemeshingCriteria()

oofem::CombinedZZSIRemeshingCriteria::CombinedZZSIRemeshingCriteria ( int n,
ErrorEstimator * e )

Constructor.

Definition at line 105 of file combinedzzsiee.C.

References dirc, oofem::RemeshingCriteria::RemeshingCriteria(), and zzrc.

◆ ~CombinedZZSIRemeshingCriteria()

virtual oofem::CombinedZZSIRemeshingCriteria::~CombinedZZSIRemeshingCriteria ( )
inlinevirtual

Destructor.

Definition at line 104 of file combinedzzsiee.h.

Member Function Documentation

◆ estimateMeshDensities()

int oofem::CombinedZZSIRemeshingCriteria::estimateMeshDensities ( TimeStep * tStep)
overridevirtual

Estimates the nodal densities.

Parameters
tStepTime step.

Implements oofem::RemeshingCriteria.

Definition at line 156 of file combinedzzsiee.C.

References dirc, and zzrc.

Referenced by giveRemeshingStrategy(), and giveRequiredDofManDensity().

◆ giveClassName()

const char * oofem::CombinedZZSIRemeshingCriteria::giveClassName ( ) const
inlineoverridevirtual
Returns
Class name of the receiver.

Implements oofem::FEMComponent.

Definition at line 112 of file combinedzzsiee.h.

◆ giveDofManDensity()

double oofem::CombinedZZSIRemeshingCriteria::giveDofManDensity ( int num)
overridevirtual

Returns existing mesh size for given dof manager.

Parameters
numDofMan number.

Implements oofem::RemeshingCriteria.

Definition at line 172 of file combinedzzsiee.C.

References oofem::IntArray::at(), oofem::Element::computeMeanSize(), oofem::FEMComponent::domain, oofem::ConnectivityTable::giveDofManConnectivityArray(), oofem::IntArray::giveSize(), and oofem::min().

◆ giveInputRecordName()

const char * oofem::CombinedZZSIRemeshingCriteria::giveInputRecordName ( ) const
inlineoverridevirtual
Returns
Input record name of the receiver.

Implements oofem::FEMComponent.

Definition at line 111 of file combinedzzsiee.h.

◆ giveRemeshingStrategy()

RemeshingStrategy oofem::CombinedZZSIRemeshingCriteria::giveRemeshingStrategy ( TimeStep * tStep)
overridevirtual

Determines, if the remeshing is needed, and if needed, the type of strategy used.

Parameters
tStepTime step.

Implements oofem::RemeshingCriteria.

Definition at line 137 of file combinedzzsiee.C.

References dirc, estimateMeshDensities(), oofem::NoRemeshing_RS, oofem::RemeshingFromCurrentState_RS, oofem::RemeshingFromPreviousState_RS, and zzrc.

◆ giveRequiredDofManDensity()

double oofem::CombinedZZSIRemeshingCriteria::giveRequiredDofManDensity ( int num,
TimeStep * tStep,
int relative = 0 )
overridevirtual

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).

Parameters
numDofman number.
tStepTime step.
relativeIf zero, then actual density is returned, otherwise the relative density to current is returned.

Implements oofem::RemeshingCriteria.

Definition at line 110 of file combinedzzsiee.C.

References CZZSI_ZERO_INDICATOR_TOL, dirc, estimateMeshDensities(), oofem::max(), oofem::min(), and zzrc.

◆ initializeFrom()

void oofem::CombinedZZSIRemeshingCriteria::initializeFrom ( InputRecord & ir)
overridevirtual

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. Note that initializeFrom may be called mutiple times.

See also
IR_GIVE_FIELD
IR_GIVE_OPTIONAL_FIELD
Parameters
irInput record to initialize from.
priorityPriority of the input record. This is used to determine the order of initialization

Reimplemented from oofem::FEMComponent.

Definition at line 164 of file combinedzzsiee.C.

References dirc, and zzrc.

◆ setDomain()

void oofem::CombinedZZSIRemeshingCriteria::setDomain ( Domain * d)
overridevirtual

Sets associated Domain

Parameters
dNew domain which receiver should belong to.

Reimplemented from oofem::FEMComponent.

Definition at line 197 of file combinedzzsiee.C.

References dirc, and zzrc.

Member Data Documentation

◆ dirc

DirectErrorIndicatorRC oofem::CombinedZZSIRemeshingCriteria::dirc
protected

◆ zzrc

ZZRemeshingCriteria oofem::CombinedZZSIRemeshingCriteria::zzrc
protected

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

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011