OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class represents the interface to t3d mesh generation package. More...
#include <t3dinterface.h>
Public Member Functions | |
T3DInterface (Domain *d) | |
Constructor. More... | |
virtual | ~T3DInterface () |
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... | |
int | t3d_2_OOFEM (const char *t3dOutFile, Domain **dNew) |
int | createInput (Element *e, char *t3dInFile) |
int | createVTKExportMesh (const char *t3dOutFile, std::vector< FloatArray > &nodeCoords, std::vector< IntArray > &cellNodes, IntArray &cellTypes) |
int | createQCInterpolationMesh (const char *t3dOutFile, std::vector< FloatArray > &nodeCoords, std::vector< IntArray > &cellNodes, IntArray &cellTypes) |
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... | |
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 t3d mesh generation package.
This interface is primarily responsible for two main tasks:
Definition at line 55 of file t3dinterface.h.
|
inline |
Constructor.
Definition at line 59 of file t3dinterface.h.
|
inlinevirtual |
Destructor.
Definition at line 61 of file t3dinterface.h.
int oofem::T3DInterface::createInput | ( | Element * | e, |
char * | t3dInFile | ||
) |
Definition at line 582 of file t3dinterface.C.
References oofem::Node::giveCoordinate(), oofem::Element::giveNode(), and oofem::Element::giveNumberOfDofManagers().
Referenced by createMesh().
Creates the mesher input, containing the required mesh density information.
Definition at line 73 of file t3dinterface.C.
References oofem::__Element_Geometry_TypeToString(), oofem::IntArray::at(), BMF_FILENAME, oofem::Node::giveCoordinate(), oofem::Domain::giveElement(), oofem::Domain::giveEngngModel(), oofem::Domain::giveErrorEstimator(), oofem::Element::giveGeometryType(), oofem::Domain::giveNode(), oofem::Element::giveNode(), oofem::FEMComponent::giveNumber(), oofem::Domain::giveNumberOfDofManagers(), oofem::Domain::giveNumberOfElements(), oofem::EngngModel::giveRank(), oofem::ErrorEstimator::giveRemeshingCrit(), oofem::RemeshingCriteria::giveRequiredDofManDensity(), oofem::EngngModel::isParallel(), OOFEM_ERROR, OOFEM_LOG_INFO, and oofem::IntArray::resize().
|
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 62 of file t3dinterface.C.
References createInput(), oofem::MesherInterface::domain, oofem::MesherInterface::MI_FAILED, and oofem::MesherInterface::MI_NEEDS_EXTERNAL_ACTION.
int oofem::T3DInterface::createQCInterpolationMesh | ( | const char * | t3dOutFile, |
std::vector< FloatArray > & | nodeCoords, | ||
std::vector< IntArray > & | cellNodes, | ||
IntArray & | cellTypes | ||
) |
Definition at line 736 of file t3dinterface.C.
References oofem::IntArray::at(), oofem::FloatArray::at(), OOFEM_ERROR, and oofem::IntArray::resize().
Referenced by oofem::QClinearStatic::generateInterpolationMesh(), and oofem::QClinearStatic::loadInterpolationMesh().
int oofem::T3DInterface::createVTKExportMesh | ( | const char * | t3dOutFile, |
std::vector< FloatArray > & | nodeCoords, | ||
std::vector< IntArray > & | cellNodes, | ||
IntArray & | cellTypes | ||
) |
Definition at line 617 of file t3dinterface.C.
References oofem::IntArray::at(), oofem::FloatArray::at(), OOFEM_ERROR, and oofem::IntArray::resize().
int oofem::T3DInterface::t3d_2_OOFEM | ( | const char * | t3dOutFile, |
Domain ** | dNew | ||
) |
Definition at line 289 of file t3dinterface.C.
References oofem::IntArray::at(), oofem::FloatArray::at(), oofem::classFactory, oofem::ClassFactory::createBoundaryCondition(), oofem::ClassFactory::createCrossSection(), oofem::ClassFactory::createElement(), oofem::ClassFactory::createFunction(), oofem::ClassFactory::createMaterial(), oofem::ClassFactory::createNonlocalBarrier(), oofem::MesherInterface::domain, oofem::Domain::giveBc(), oofem::Element::giveClassName(), oofem::Domain::giveCrossSection(), oofem::Element::giveCrossSection(), oofem::Domain::giveDefaultNodeDofIDArry(), oofem::Domain::giveDomainType(), oofem::Domain::giveElement(), oofem::Domain::giveEngngModel(), oofem::Domain::giveFunction(), oofem::Domain::giveIc(), oofem::FEMComponent::giveInputRecord(), oofem::GeneralBoundaryCondition::giveInputRecord(), oofem::Material::giveInputRecord(), oofem::CrossSection::giveInputRecord(), oofem::Domain::giveMaterial(), oofem::Element::giveMaterial(), oofem::Domain::giveNonlocalBarrier(), oofem::FEMComponent::giveNumber(), oofem::Domain::giveNumberOfBoundaryConditions(), oofem::Domain::giveNumberOfCrossSectionModels(), oofem::Domain::giveNumberOfFunctions(), oofem::Domain::giveNumberOfInitialConditions(), oofem::Domain::giveNumberOfMaterialModels(), oofem::Domain::giveNumberOfNonlocalBarriers(), oofem::Domain::giveOutputManager(), oofem::DynamicInputRecord::giveRecordKeywordField(), oofem::Domain::giveSerialNumber(), oofem::IntArray::giveSize(), oofem::FEMComponent::initializeFrom(), oofem::InitialCondition::initializeFrom(), oofem::GeneralBoundaryCondition::initializeFrom(), oofem::Material::initializeFrom(), oofem::CrossSection::initializeFrom(), OOFEM_ERROR, oofem::Node::setCoordinates(), oofem::Element::setCrossSection(), oofem::Element::setDofManagers(), oofem::Domain::setDomainType(), oofem::Element::setMaterial(), and oofem::DofManager::setNumberOfDofs().