NuTo
Numerics Tool
Public Member Functions | Public Attributes | List of all members
NuTo::MeshFem Class Reference

contains the nodes, elements and interpolations for a classic finite element mesh More...

#include <MeshFem.h>

Public Member Functions

 MeshFem ()=default
 
 MeshFem (const MeshFem &)=delete
 
MeshFemoperator= (const MeshFem &)=delete
 
 MeshFem (MeshFem &&)=default
 
MeshFemoperator= (MeshFem &&)=default
 
InterpolationSimpleCreateInterpolation (const InterpolationSimple &interpolation)
 adds a clone of interpolation to the mesh (prototype pattern) More...
 
NodeSimpleNodeAtCoordinate (Eigen::VectorXd coords, double tol=1.e-10)
 selects a coordinate at given coords More...
 
NodeSimpleNodeAtCoordinate (Eigen::VectorXd coords, DofType dofType, double tol=1.e-10)
 selects a node of type dofType at given coords More...
 
Group< NodeSimpleNodesAtAxis (eDirection direction, DofType dofType, double axisOffset=0., double tol=1.e-10)
 selects all nodes of type dofType where the coord in direction is within tol More...
 
Group< NodeSimpleNodesAtAxis (eDirection direction, double axisOffset=0., double tol=1.e-10)
 selects all coordinate nodes where the coord in direction is within tol More...
 
Group< NodeSimpleNodesTotal (DofType dofType)
 selects all nodes of dofType More...
 
Group< NodeSimpleNodesTotal ()
 selects all coordinate nodes More...
 
Group< ElementCollectionFemElementsTotal ()
 selects all element collections More...
 
void AllocateDofInstances (DofType dofType, int numInstances)
 Adds numInstances instances of zeros to all nodes of type dofType More...
 

Public Attributes

ValueVector< NodeSimpleNodes
 
ValueVector< ElementCollectionFemElements
 

Detailed Description

contains the nodes, elements and interpolations for a classic finite element mesh

Remarks
Elements contain references to nodes. Thus, a copy of MeshFem is not trivially possible and only move is allowed

Constructor & Destructor Documentation

NuTo::MeshFem::MeshFem ( )
default
NuTo::MeshFem::MeshFem ( const MeshFem )
delete
NuTo::MeshFem::MeshFem ( MeshFem &&  )
default

Member Function Documentation

void MeshFem::AllocateDofInstances ( DofType  dofType,
int  numInstances 
)

Adds numInstances instances of zeros to all nodes of type dofType

Parameters
dofTypedof type
InterpolationSimple & MeshFem::CreateInterpolation ( const InterpolationSimple interpolation)

adds a clone of interpolation to the mesh (prototype pattern)

Parameters
interpolationinterpolation that is cloned and added
Returns
reference to the cloned object
Group< ElementCollectionFem > MeshFem::ElementsTotal ( )

selects all element collections

Returns
group containing all element collections
NodeSimple & MeshFem::NodeAtCoordinate ( Eigen::VectorXd  coords,
double  tol = 1.e-10 
)

selects a coordinate at given coords

Parameters
coordsglobal coordinates
tolselection tolerance
Returns
reference to the selected node, throws, if no node is found
NodeSimple & MeshFem::NodeAtCoordinate ( Eigen::VectorXd  coords,
DofType  dofType,
double  tol = 1.e-10 
)

selects a node of type dofType at given coords

Parameters
coordsglobal coordinates
dofTypedof type
tolselection tolerance
Returns
reference to the selected node, throws, if no node is found
Group< NodeSimple > MeshFem::NodesAtAxis ( eDirection  direction,
DofType  dofType,
double  axisOffset = 0.,
double  tol = 1.e-10 
)

selects all nodes of type dofType where the coord in direction is within tol

Parameters
directionX, Y, or Z
dofTypedof type
axisOffsetdistance of the node to the axis
tolselection tolerance
Returns
group with selected nodes, the group may be empty if no nodes were found
Group< NodeSimple > MeshFem::NodesAtAxis ( eDirection  direction,
double  axisOffset = 0.,
double  tol = 1.e-10 
)

selects all coordinate nodes where the coord in direction is within tol

Parameters
directionX, Y, or Z
axisOffsetdistance of the node to the axis
tolselection tolerance
Returns
group with selected nodes, the group may be empty if no nodes were found
Group< NodeSimple > MeshFem::NodesTotal ( DofType  dofType)

selects all nodes of dofType

Returns
group containing all selected nodes
Group< NodeSimple > MeshFem::NodesTotal ( )

selects all coordinate nodes

Returns
group containing all selected nodes
MeshFem& NuTo::MeshFem::operator= ( const MeshFem )
delete
MeshFem& NuTo::MeshFem::operator= ( MeshFem &&  )
default

Member Data Documentation

ValueVector<ElementCollectionFem> NuTo::MeshFem::Elements
ValueVector<NodeSimple> NuTo::MeshFem::Nodes

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