hp2FEM  0.1
Public Member Functions | Protected Attributes
FiniteElementGroup Class Reference

Set of finite elements with similar features such as geometric properties, shape, interpolation, material and problem type. More...

#include <FiniteElementGroup.h>

Collaboration diagram for FiniteElementGroup:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FiniteElementGroup ()
 Default constructor.
 FiniteElementGroup (unsigned long FEGroupNumber, unsigned long NumberElements, unsigned long InitialElemNumber, unsigned long FinalElemNumber)
 Constructor with parameters: initializes some of the class attributes with values given as parameters.
 FiniteElementGroup (FiniteElementGroup &Instance)
 Copy initializer-constructor. Copies object the contents of Instance to the current object.
void Free ()
 Releases the physical memory allocate for the element.
unsigned long *const GetCardinalityExtraGeneralDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the extra general dofs.
unsigned long *const GetCardinalityExtraGradientDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the extra gradient dofs.
unsigned long *const GetCardinalityExtraStressDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the extra stress dofs.
unsigned long *const GetCardinalityMixedDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the mixed dofs.
unsigned long *const GetCardinalityPrimaryDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the primary dofs.
unsigned long *const GetCardinalitySecondaryGradientDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the secondary gradient dofs.
unsigned long *const GetCardinalitySecondaryStressDOFs (unsigned long &NumberDofs)
 Returns the cardinality of the secondary stress dofs.
unsigned long GetFinalElement ()
 Returns the final element number in the FE group.
GeometricPropertiesGetGeometricProperties ()
 Gets the geometric properties attribute.
unsigned long GetInitialElement ()
 Returns the initial element number of the FE group.
MappingGetMapping ()
 Cast operator to the Mapping class.
MappingType_E GetMappingType ()
 Returns the mapping type of the mesh.
unsigned long GetMaxMappingOrder ()
 Returns the maximuum mapping order of the group.
unsigned long GetMaxSolutionOrder ()
 Returns the maximuum solution order of the group.
MeshGetMesh (MeshID_E MeshID)
 Returns instance of Mesh class given the mesh id.
unsigned long GetNumberElements ()
 Returns the number of elements of the group.
unsigned long GetNumberExtraGeneralDOFs ()
 Returns the number of extra general dofs.
unsigned long GetNumberExtraGradientDOFs ()
 Returns the number of extra gradient dofs.
unsigned long GetNumberExtraStressDOFs ()
 Returns the number of extra stress dofs.
unsigned long GetNumberMixedDOFs ()
 Returns the number of mixed dofs.
unsigned long GetNumberPrimaryDOFs ()
 Returns the number of primary dofs.
unsigned long GetNumberSecondaryGradientDOFs ()
 Returns the number of secondary gradient dofs.
unsigned long GetNumberSecondaryStressDOFs ()
 Returns the number of secondary stress dofs.
void NewMaterial (FILE *DEFFile, MaterialType_E MaterialType)
 Allocates the material type and realizes the reading its.
 operator FiniteElement & ()
 Cast operator to the FiniteElement class.
 operator GeometricProperties & ()
 Cast operator to the GeometricProperties class.
 operator Mapping & ()
 Cast operator to the Mapping class.
 operator Material & ()
 Cast operator to the Material class.
 operator Mesh & ()
 Cast operator to the Mesh class.
FiniteElementGroupoperator= (FiniteElementGroup &Instance)
 Copies object the contents of Instance to the current object.
void Print (FILE *File)
 Prints group information to an ASCII file.
void Read (FILE *FEMFile, FILE *DEFFile, DOFs &DOFsParam, unsigned long PostProcessOrder, unsigned long Dimension, unsigned long TheoSolIntegOrder=0)
 Reads parameters of the group from the .fem and .def ASCII files.
void Restore (FILE *File)
 Restores class data from a binary file.
void Save (FILE *File)
 Writes class information to a binary file.
void SetFEGroupAttributes (unsigned long FEGroupNumber, unsigned long NumberElements, unsigned long InitialElemNumber, unsigned long FinalElemNumber)
 Sets some of the class attributes with values given as parameters.
void SetMesh (MeshID_E MeshID, Mesh ObjMesh)
 Sets an instance of Mesh class given the mesh id.
 ~FiniteElementGroup ()
 Destructor.

Protected Attributes

BuiltInArray< unsigned long > CardExtGenDOFs
 Stores the cardinality of extra stress DOFs for the FE group.
BuiltInArray< unsigned long > CardExtGradDOFs
 Stores the cardinality of the extra gradient DOFs for the FE group.
BuiltInArray< unsigned long > CardExtStressDOFs
 Stores the cardinality of extra stress DOFs for the FE group.
BuiltInArray< unsigned long > CardMixedDOFs
 Stores the cardinality of the mixed DOFs for the FE group.
BuiltInArray< unsigned long > CardPrimDOFs
 Stores the cardinality of the primary DOFs for the FE group.
BuiltInArray< unsigned long > CardSecGradDOFs
 Stores the cardinality of the secondary gradient DOFs for the FE group.
BuiltInArray< unsigned long > CardSecStressDOFs
 Stores the cardinality of the seconday stress DOFs for the FE group.
FiniteElement FE
 Instance of FiniteElement class.
unsigned long FinalElem
 Stores the global number of the final element of the FE group.
GeometricProperties GeoProp
 Instance of GeometricProperties class to store geometric properties of the element.
unsigned long GrpNmbr
 Stores the number of the FE group.
unsigned long InitialElem
 Stores the global number of the initial element of the FE group.
Mesh InpMesh
 Instance of Mesh class for the input mesh.
Mapping Map
 Instance of Mapping class.
MeshMapMesh
 The pointer to the Instance of the Mesh class to store the nodal coordinates for each element of the deformed and undeformed mesh.
MappingType_E MapMeshType
 Stores the mesh type used to the mapping mesh.
MaterialMat
 Instance of Material class.
unsigned long NmbrElements
 Stores the number of elements of the FE group.
MeshPostProcMesh
 The pointer to the Instance of the Mesh class to store the nodal coordinates for each element of the deformed and undeformed mesh.
Mesh SolMesh
 Instance of Mesh class for the solution mesh.

Detailed Description

Set of finite elements with similar features such as geometric properties, shape, interpolation, material and problem type.

Author:
Marco Lucio Bittencourt/ Fabiano Fernandes Bargos Gilberto Luis Valente da Costa
Date:
March/28/2011.

Constructor & Destructor Documentation

FiniteElementGroup::FiniteElementGroup ( unsigned long  FEGroupNumber,
unsigned long  NumberElements,
unsigned long  InitialElemNumber,
unsigned long  FinalElemNumber 
)

Constructor with parameters: initializes some of the class attributes with values given as parameters.

Parameters:
[in]FEGroupNumber- finite element group number.
[in]NumberElements- number of finite elements of the group.
[in]InitialElemNumber- global number of the first element of the group.
[in]FinalElemNumber- global number of the last element of the group.

Copy initializer-constructor. Copies object the contents of Instance to the current object.

Parameters:
[in]Instance- instance of the FiniteElementGroup class.
Returns:
Reference to the current object.

Member Function Documentation

Releases the physical memory allocate for the element.

Note:
Statically allocated variables are set to the default values.
unsigned long *const FiniteElementGroup::GetCardinalityExtraGeneralDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the extra general dofs.

Parameters:
[out]NumberDofs- number of extra general dofs.
Returns:
Pointer to an array with the cardinality of the extra general dofs.
unsigned long *const FiniteElementGroup::GetCardinalityExtraGradientDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the extra gradient dofs.

Parameters:
[out]NumberDofs- number of extra gradient dofs.
Returns:
Pointer to an array with the cardinality of the extra gradient dofs.
unsigned long *const FiniteElementGroup::GetCardinalityExtraStressDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the extra stress dofs.

Parameters:
[out]NumberDofs- number of extra stress dofs.
Returns:
Pointer to an array with the cardinality of the extra stress dofs.
unsigned long *const FiniteElementGroup::GetCardinalityMixedDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the mixed dofs.

Parameters:
[out]NumberDofs- number of mixed dofs.
Returns:
Pointer to an array with the cardinality of the mixed dofs.
unsigned long *const FiniteElementGroup::GetCardinalityPrimaryDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the primary dofs.

Parameters:
[out]NumberDofs- number of primary dofs.
Returns:
Pointer to an array with the cardinality of the primary dofs.
unsigned long *const FiniteElementGroup::GetCardinalitySecondaryGradientDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the secondary gradient dofs.

Parameters:
[out]NumberDofs- number of secondary gradient dofs.
Returns:
Pointer to an array with the cardinality of the secondary gradient dofs.
unsigned long *const FiniteElementGroup::GetCardinalitySecondaryStressDOFs ( unsigned long &  NumberDofs)

Returns the cardinality of the secondary stress dofs.

Parameters:
[out]NumberDofs- number of secondary stress dofs.
Returns:
Pointer to an array with the cardinality of the secondary stress dofs.

Gets the geometric properties attribute.

Returns:
Returns a reference to the GeometricProperties class.

Cast operator to the Mapping class.

Returns:
Returns a reference to the Map class variable.

Returns the mapping type of the mesh.

Returns:
Mapping type of the mesh.

Returns the maximuum mapping order of the group.

Returns:
maximuum mapping order.

Returns the maximuum solution order of the group.

Returns:
maximuum solution order.
Mesh & FiniteElementGroup::GetMesh ( MeshID_E  MeshID)

Returns instance of Mesh class given the mesh id.

Parameters:
[in]MeshID- mesh ID (INPUT, SOLUTION, MAPPING, POST-PROCESSING).
Returns:
Mesh ID.

Returns the number of elements of the group.

Returns:
an unsigned long with the number of elements of the group.

Returns the number of extra general dofs.

Returns:
Number of secondary extra general dofs.

Returns the number of extra gradient dofs.

Returns:
Number of secondary extra gradient dofs.

Returns the number of extra stress dofs.

Returns:
Number of secondary extra stress dofs.

Returns the number of mixed dofs.

Returns:
Number of mixed dofs.

Returns the number of primary dofs.

Returns:
Number of primary dofs.

Returns the number of secondary gradient dofs.

Returns:
Number of secondary gradient dofs.

Returns the number of secondary stress dofs.

Returns:
Number of secondary stress dofs.
void FiniteElementGroup::NewMaterial ( FILE *  DEFFile,
MaterialType_E  MaterialType 
)

Allocates the material type and realizes the reading its.

Parameters:
[in]DEFFile- pointer to the .def attributes file.
[in]MaterialType- material type.
FiniteElementGroup::operator FiniteElement & ( )

Cast operator to the FiniteElement class.

Returns:
Returns a reference to the FE class variable.
FiniteElementGroup::operator GeometricProperties & ( )

Cast operator to the GeometricProperties class.

Returns:
Returns a reference to the GeoProp class variable.
FiniteElementGroup::operator Mapping & ( )

Cast operator to the Mapping class.

Returns:
Returns a reference to the Map class variable.
FiniteElementGroup::operator Material & ( )

Cast operator to the Material class.

Returns:
Returns a reference to the Mat class variable.
FiniteElementGroup::operator Mesh & ( )

Cast operator to the Mesh class.

Returns:
Returns a reference to the SolMesh class variable.
FiniteElementGroup & FiniteElementGroup::operator= ( FiniteElementGroup Instance)

Copies object the contents of Instance to the current object.

Parameters:
[in]Instance- instance of the FiniteElementGroup class.
Returns:
Reference to the current object.
void FiniteElementGroup::Print ( FILE *  File)

Prints group information to an ASCII file.

Parameters:
[in]File- pointer to the ASCII file.
void FiniteElementGroup::Read ( FILE *  FEMFile,
FILE *  DEFFile,
DOFs DOFsParam,
unsigned long  PostProcessOrder,
unsigned long  Dimension,
unsigned long  TheoSolIntegOrder = 0 
)

Reads parameters of the group from the .fem and .def ASCII files.

Parameters:
[in]FEMFile- pointer to the .fem mesh file.
[in]DEFFile- pointer to the .def attributes file.
[in]DOFsParam- Instance of the DOFs class.
[in]PostProcessOrder- the processing post order.
[in]Dimension- the dimension of element
[in]TheoSoluIntOrder- integration order for the theoretical solution. The dault value -1 means that the theoretical solution is not used for the current analysis.
void FiniteElementGroup::Restore ( FILE *  File)

Restores class data from a binary file.

Parameters:
[in]File- pointer to the binary file.
void FiniteElementGroup::Save ( FILE *  File)

Writes class information to a binary file.

Parameters:
[in]File- Pointer to the file.
void FiniteElementGroup::SetFEGroupAttributes ( unsigned long  FEGroupNumber,
unsigned long  NumberElements,
unsigned long  InitialElemNumber,
unsigned long  FinalElemNumber 
)

Sets some of the class attributes with values given as parameters.

Parameters:
[in]FEGroupNumber- finite element group number.
[in]NumberElements- number of finite elements of the group.
[in]InitialElemNumber- global number of the first element of the group.
[in]FinalElemNumber- global number of the last element of the group.
void FiniteElementGroup::SetMesh ( MeshID_E  MeshID,
Mesh  ObjMesh 
)

Sets an instance of Mesh class given the mesh id.

Parameters:
[in]MeshID- mesh ID (INPUT, SOLUTION, MAPPING, POST-PROCESSING).
[in]ObjMesh- instance of Mesh class.

Member Data Documentation

Instance of FiniteElement class.

Note:
: This attributes won't be generated because need the class FiniteElement.

Instance of Mesh class for the input mesh.

Note:
stores element incidence and coordinates of the input mesh.

Instance of Material class.

Note:
: This attributes won't be generated because need the class Material.

Instance of Mesh class for the solution mesh.

Stores incidence, nodal coordinates and dof numbering for each element of the solution mesh.


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Friends Defines