Description
Class which defines a surface for a mesh FEA elements.
The contact surface is a collection of pointers to ChLoadableUV objects, which can be shells in the mesh or proxies to faces of solid elements (such as ChTetrahedronFace or ChHexahedronFace).
#include <ChMeshSurface.h>
Public Member Functions | |
ChMeshSurface (ChMesh *parentmesh=nullptr) | |
ChMesh * | GetMesh () |
Get owner mesh. | |
void | SetMesh (ChMesh *mm) |
Set owner mesh. | |
std::vector< std::shared_ptr< ChLoadableUV > > & | GetFacesList () |
Direct access to the list of faces. | |
virtual void | AddFace (std::shared_ptr< ChLoadableUV > mface) |
Add a single mesh face. More... | |
virtual void | AddFacesFromNodeSet (std::vector< std::shared_ptr< ChNodeFEAbase > > &node_set) |
Add multiple faces of FEM elements given a set of nodes at vertexes. More... | |
virtual void | AddFacesFromBoundary () |
Find faces on the outer boundary of a solid mesh. More... | |
Member Function Documentation
◆ AddFace()
|
inlinevirtual |
Add a single mesh face.
Note that this function does not check for double insertion of the same face.
◆ AddFacesFromBoundary()
|
virtual |
Find faces on the outer boundary of a solid mesh.
Scan all the finite elements already added in the parent ChMesh and add the faces that are not shared.
◆ AddFacesFromNodeSet()
|
virtual |
Add multiple faces of FEM elements given a set of nodes at vertexes.
Scan all the finite elements already added in the parent ChMesh, and check if any has a face whose vertexes are all in the given node set; if so, add it to this mesh surface, with these rules:
- surface elements inherited from ChLoadableUV: the element is added
- face of ChElementTetrahedron : a ChTetrahedronFace proxy is created and added
- face of ChElementHexahedron : a ChHexahedronFace proxy is created and added
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/fea/ChMeshSurface.h
- /builds/uwsbel/chrono/src/chrono/fea/ChMeshSurface.cpp