18 #ifndef itkFEMObject_h
19 #define itkFEMObject_h
36 #include "ITKFEMExport.h"
74 template <
unsigned int VDimension = 3>
312 virtual void PrintSelf(std::ostream& os,
Indent indent)
const ITK_OVERRIDE;
348 void operator=(const
Self &) ITK_DELETE_FUNCTION;
356 #ifndef ITK_MANUAL_INSTANTIATION
357 #include "itkFEMObject.hxx"
360 #endif // #ifndef itkFEMObject_h
void InsertLoad(Load::Pointer ld, LoadIdentifier index)
void InsertElement(Element::Pointer e, ElementIdentifier index)
MaterialContainerType::ConstPointer MaterialContainerConstPointer
virtual void PrintSelf(std::ostream &os, Indent indent) const override
Material::ConstPointer GetMaterialWithGlobalNumber(int globalNumber) const
Implements N-dimensional Finite element (FE) models including elements, materials, and loads.
Element::ConstPointer GetElement(ElementIdentifier index) const
unsigned long ElementIdentifier
ElementContainerType::Iterator ElementContainerIterator
LoadContainerType::ConstPointer LoadContainerConstPointer
void AddNextLoad(LoadBCMFC::Pointer ld)
void AddNextLoad(LoadGravConst::Pointer ld)
NodeContainerType::Pointer NodeContainerPointer
Load::ConstPointer GetLoad(LoadIdentifier index) const
void AddNextLoadInternal(Load *l)
MaterialContainerPointer m_MaterialContainer
SmartPointer< const Self > ConstPointer
void AddNextLoad(LoadNode::Pointer ld)
void AddNextMaterialInternal(Material *mat)
ElementContainerPointer m_ElementContainer
void AddNextMaterial(MaterialLinearElasticity::Pointer mat)
ObjectType * GetPointer() const
static const double e
The base of the natural logarithm or Euler's number
Load::Pointer GetLoadWithGlobalNumber(int globalNumber)
void AddNextLoad(LoadBC::Pointer ld)
NodeContainerPointer m_NodeContainer
unsigned int GetNumberOfElements(void) const
unsigned int GetNumberOfMaterials(void) const
MaterialContainerType::Pointer MaterialContainerPointer
unsigned long LoadIdentifier
unsigned long MaterialIdentifier
VectorContainer< NodeIdentifier, Element::Node::Pointer > NodeContainerType
SmartPointer< Self > Pointer
Base class for storing all the implicit material and other properties required to fully define the el...
void AddNextLoad(LoadEdge::Pointer ld)
void AddNextMaterial(Material::Pointer mat)
LoadContainerPointer m_LoadContainer
VectorContainer< MaterialIdentifier, Material::Pointer > MaterialContainerType
Element::ConstPointer GetElementWithGlobalNumber(int globalNumber) const
void AddNextLoad(Load::Pointer ld)
unsigned int GetNumberOfLoads(void) const
VectorContainer< ElementIdentifier, Element::Pointer > ElementContainerType
LoadContainerType::Pointer LoadContainerPointer
void RenumberNodeContainer()
void InsertMaterial(Material::Pointer e, MaterialIdentifier index)
unsigned int GetNumberOfNodes(void) const
static const unsigned int FEMDimension
LoadContainerType::Iterator LoadContainerIterator
NodeContainerType::ConstPointer NodeContainerConstPointer
Material::ConstPointer GetMaterial(MaterialIdentifier index) const
unsigned int GetNumberOfDegreesOfFreedom(void) const
unsigned long NodeIdentifier
MaterialContainerType::Iterator MaterialContainerIterator
void DeepCopy(FEMObject *Copy)
NodeContainerType::ConstIterator NodeContainerConstIterator
ElementContainerType::ConstPointer ElementContainerConstPointer
unsigned int GetNumberOfMultiFreedomConstraints(void) const
void AddNextNode(Element::Node::Pointer e)
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
static const unsigned int MaxDimensions
void AddNextElement(Element::Pointer e)
Control indentation during Print() invocation.
void InsertNode(Element::Node::Pointer e, NodeIdentifier index)
General abstract load base class.
MaterialContainerType::ConstIterator MaterialContainerConstIterator
Element::Node::Pointer GetNodeWithGlobalNumber(int globalNumber)
NodeContainerType::Iterator NodeContainerIterator
Element::Node::Pointer GetNode(NodeIdentifier index)
ElementContainerType::Pointer ElementContainerPointer
void AddNextLoad(LoadLandmark::Pointer ld)
LoadContainerType::ConstIterator LoadContainerConstIterator
Base class for all data objects in ITK.
VectorContainer< LoadIdentifier, Load::Pointer > LoadContainerType
ElementContainerType::ConstIterator ElementContainerConstIterator