OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class represents the interface to freem mesh generation package. More...
#include <freeminterface.h>
Public Member Functions | |
FreemInterface (Domain *d) | |
Constructor. More... | |
virtual | ~FreemInterface () |
Destructor. More... | |
virtual returnCode | createMesh (TimeStep *tStep, int domainNumber, int domainSerNum, Domain **dNew) |
Runs the mesh generation, mesh will be written to corresponding domain din file. More... | |
Public Member Functions inherited from oofem::MesherInterface | |
MesherInterface (Domain *d) | |
Constructor. More... | |
virtual | ~MesherInterface () |
Destructor. More... | |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
Protected Member Functions | |
int | createInput (Domain *d, TimeStep *tStep) |
Creates the mesher input, containing the required mesh density information. More... | |
void | smoothNodalDensities (Domain *d, FloatArray &nodalDensities, TimeStep *tStep) |
Service for smoothing the densities for freem. More... | |
Additional Inherited Members | |
Public Types inherited from oofem::MesherInterface | |
enum | returnCode { MI_OK, MI_NEEDS_EXTERNAL_ACTION, MI_FAILED } |
Protected Attributes inherited from oofem::MesherInterface | |
Domain * | domain |
This class represents the interface to freem mesh generation package.
This interface is primarily responsible for two main tasks:
Definition at line 53 of file freeminterface.h.
|
inline |
Constructor.
Definition at line 57 of file freeminterface.h.
|
inlinevirtual |
Destructor.
Definition at line 59 of file freeminterface.h.
Creates the mesher input, containing the required mesh density information.
Definition at line 62 of file freeminterface.C.
References oofem::FloatArray::at(), oofem::Node::giveCoordinate(), oofem::Domain::giveElement(), oofem::Domain::giveErrorEstimator(), oofem::Element::giveGeometryType(), oofem::Domain::giveNode(), oofem::Element::giveNode(), oofem::FEMComponent::giveNumber(), oofem::Domain::giveNumberOfDofManagers(), oofem::Domain::giveNumberOfElements(), oofem::ErrorEstimator::giveRemeshingCrit(), oofem::RemeshingCriteria::giveRequiredDofManDensity(), OOFEM_ERROR, OOFEM_LOG_INFO, and smoothNodalDensities().
Referenced by createMesh().
|
virtual |
Runs the mesh generation, mesh will be written to corresponding domain din file.
tStep | Time step. |
domainNumber | New domain number. |
domainSerNum | New domain serial number. |
dNew | Newly allocated domain, representing new mesh or set to NULL if external generation has to be performed. |
Implements oofem::MesherInterface.
Definition at line 51 of file freeminterface.C.
References createInput(), oofem::MesherInterface::domain, oofem::MesherInterface::MI_FAILED, and oofem::MesherInterface::MI_NEEDS_EXTERNAL_ACTION.
|
protected |
Service for smoothing the densities for freem.
Definition at line 111 of file freeminterface.C.
References oofem::IntArray::at(), oofem::FloatArray::at(), oofem::FloatArray::distance(), oofem::Domain::giveConnectivityTable(), oofem::Node::giveCoordinates(), oofem::Domain::giveDofManager(), oofem::ConnectivityTable::giveDofManConnectivityArray(), oofem::Domain::giveElement(), oofem::Element::giveNode(), oofem::FEMComponent::giveNumber(), oofem::Domain::giveNumberOfDofManagers(), oofem::Element::giveNumberOfNodes(), oofem::IntArray::giveSize(), and oofem::max().
Referenced by createInput().