![]() |
NeoPZ
|
#include <TPZAcademicGeoMesh.h>
Public Types | |
| enum | MMeshType { ENone, EHexa, EPrism, ETetrahedra, EPyramid } |
Public Member Functions | |
| TPZAcademicGeoMesh () | |
| sets up parameters to create de hexahedral regular mesh More... | |
| TPZAcademicGeoMesh (int numelements, MMeshType meshtype, bool deform=false) | |
| sets up parameters to create de hexahedral regular mesh More... | |
| void | SetMeshType (MMeshType meshtype) |
| set the meshtype acording to the enumerate values More... | |
| void | SetBoundaryIndices (TPZVec< int > &BCNumbers) |
| set the boundary numbers on the sides of the cube More... | |
| void | ShouldDeform (bool deform) |
| toggle between regular or deformed mesh More... | |
| void | SetNumberElements (int64_t numelements) |
| set the number of elements in any direction More... | |
| void | SetMaterialId (int id) |
| set the material id to be used More... | |
| TPZGeoMesh * | CreateGeoMesh () |
| create a geometric mesh acording to the parameters of the object More... | |
| TPZGeoMesh * | PyramidalAndTetrahedralMesh () |
| TPZGeoMesh * | RedBlackPyramidalAndHexagonalMesh () |
| TPZGeoMesh * | TetrahedralMesh () |
| void | SetBCIDVector (TPZVec< int > &BCNumbers) |
Public Attributes | |
| TPZGeoMesh | fDeformed |
Static Public Attributes | |
| static TPZManVector< REAL, 3 > | fX0 |
| static TPZManVector< REAL, 3 > | fEps |
Protected Member Functions | |
| void | GenerateNodes (TPZGeoMesh *gmesh) |
| put the geometric nodes in the geometric mesh More... | |
| void | DeformGMesh (TPZGeoMesh &gmesh) |
| Deform the geometric mesh according to the coordinates of fDeformed. More... | |
| TPZGeoMesh * | HexahedralMesh () |
| TPZGeoMesh * | TetrahedralMeshUsingRefinement () |
| int | AddBoundaryElements (TPZGeoMesh *gmesh) |
| int | AddBoundaryElementsByCoord (TPZGeoMesh *gmesh) |
| void | CheckConsistency (TPZGeoMesh *gmesh) |
| verify if the faces without neighbour should be orthogonal to the main planes More... | |
Protected Attributes | |
| MMeshType | fMeshType |
| type of mesh that should be generated More... | |
| TPZManVector< int, 6 > | fBCNumbers |
| indices of the boundary conditions More... | |
| bool | fShouldDeform |
| whether the mesh should be deformed or not More... | |
| int64_t | fNumberElements |
| number of elements in any direction More... | |
| int | fMaterialId |
| material index for volume elements More... | |
Definition at line 19 of file TPZAcademicGeoMesh.h.
| Enumerator | |
|---|---|
| ENone | |
| EHexa | |
| EPrism | |
| ETetrahedra | |
| EPyramid | |
Definition at line 26 of file TPZAcademicGeoMesh.h.
| TPZAcademicGeoMesh::TPZAcademicGeoMesh | ( | ) |
sets up parameters to create de hexahedral regular mesh
Initialiazing file for Log4CXX for this project
Definition at line 42 of file TPZAcademicGeoMesh.cpp.
References TPZGeoMesh::CreateGeoElement(), ECube, fDeformed, TPZGeoMesh::NodeVec(), and TPZAdmChunkVector< T, EXP >::Resize().
|
inline |
sets up parameters to create de hexahedral regular mesh
Definition at line 68 of file TPZAcademicGeoMesh.h.
|
protected |
Definition at line 453 of file TPZAcademicGeoMesh.cpp.
References DebugStop, TPZGeoElSide::Dimension(), TPZGeoMesh::ElementVec(), fabs, fBCNumbers, TPZGeoElSide::Jacobian(), TPZGeoElSide::Neighbour(), TPZGeoMesh::NElements(), TPZGeoEl::NSides(), and pzgeom::tol.
Referenced by HexahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
Definition at line 527 of file TPZAcademicGeoMesh.cpp.
References DebugStop, TPZGeoElSide::Dimension(), TPZGeoMesh::ElementVec(), fabs, fBCNumbers, TPZGeoElSide::Jacobian(), TPZGeoElSide::Neighbour(), TPZGeoMesh::NElements(), TPZGeoMesh::NodeVec(), TPZGeoElSide::NSideNodes(), TPZGeoEl::NSides(), TPZGeoElSide::SideNodeIndex(), and pzgeom::tol.
Referenced by PyramidalAndTetrahedralMesh().
|
protected |
verify if the faces without neighbour should be orthogonal to the main planes
Definition at line 404 of file TPZAcademicGeoMesh.cpp.
References TPZGeoElSide::CenterPoint(), DebugStop, TPZGeoElSide::Dimension(), TPZGeoMesh::ElementVec(), fabs, TPZGeoElSide::Jacobian(), TPZGeoElSide::Neighbour(), TPZGeoMesh::NElements(), TPZGeoEl::NSides(), pzgeom::tol, and TPZGeoElSide::X().
|
inline |
create a geometric mesh acording to the parameters of the object
Definition at line 113 of file TPZAcademicGeoMesh.h.
References DebugStop, EHexa, EPrism, EPyramid, ETetrahedra, HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
Deform the geometric mesh according to the coordinates of fDeformed.
Definition at line 75 of file TPZAcademicGeoMesh.cpp.
References TPZGeoMesh::ElementVec(), fDeformed, TPZChunkVector< T, EXP >::NElements(), and TPZGeoMesh::NodeVec().
Referenced by HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
put the geometric nodes in the geometric mesh
Definition at line 116 of file TPZAcademicGeoMesh.cpp.
References fNumberElements, TPZGeoMesh::NodeVec(), and TPZAdmChunkVector< T, EXP >::Resize().
Referenced by HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
Constructing geometrical mesh depends on type of element wished.
Definition at line 362 of file TPZAcademicGeoMesh.cpp.
References AddBoundaryElements(), TPZGeoMesh::BuildConnectivity(), TPZGeoMesh::CreateGeoElement(), DeformGMesh(), ECube, fMaterialId, fNumberElements, fShouldDeform, GenerateNodes(), LOGPZ_DEBUG, and TPZGeoMesh::SetDimension().
Referenced by CreateGeoMesh().
| TPZGeoMesh * TPZAcademicGeoMesh::PyramidalAndTetrahedralMesh | ( | ) |
Definition at line 133 of file TPZAcademicGeoMesh.cpp.
References AddBoundaryElementsByCoord(), TPZGeoMesh::BuildConnectivity(), TPZGeoMesh::CreateGeoElement(), DeformGMesh(), EPiramide, ETetraedro, fMaterialId, fNumberElements, fShouldDeform, GenerateNodes(), LOGPZ_DEBUG, TPZVec< T >::resize(), and TPZGeoMesh::SetDimension().
Referenced by CreateGeoMesh().
| TPZGeoMesh * TPZAcademicGeoMesh::RedBlackPyramidalAndHexagonalMesh | ( | ) |
Definition at line 188 of file TPZAcademicGeoMesh.cpp.
References AddBoundaryElements(), TPZGeoMesh::BuildConnectivity(), TPZGeoMesh::CreateGeoElement(), DeformGMesh(), dx(), ECube, EPiramide, fMaterialId, fNumberElements, fShouldDeform, GenerateNodes(), TPZGeoMesh::NNodes(), TPZGeoMesh::NodeVec(), TPZStack< T, NumExtAlloc >::push_back(), TPZAdmChunkVector< T, EXP >::Resize(), and TPZGeoMesh::SetDimension().
Referenced by CreateGeoMesh().
|
inline |
Sets the bc id vector for the hexaedral mesh
| BCNumbers | id of bcs with order and location on global mesh 0: x = 0 1: y = 0 2: z = 0 3: x = 1 4: y = 1 5: z = 1 |
Definition at line 152 of file TPZAcademicGeoMesh.h.
References DebugStop, and TPZVec< T >::size().
| void TPZAcademicGeoMesh::SetBoundaryIndices | ( | TPZVec< int > & | BCNumbers | ) |
set the boundary numbers on the sides of the cube
Referenced by SetMeshType().
|
inline |
set the material id to be used
Definition at line 101 of file TPZAcademicGeoMesh.h.
References DebugStop.
|
inline |
set the meshtype acording to the enumerate values
Definition at line 75 of file TPZAcademicGeoMesh.h.
References DebugStop, ENone, SetBoundaryIndices(), and ShouldDeform().
|
inline |
set the number of elements in any direction
Definition at line 90 of file TPZAcademicGeoMesh.h.
References DebugStop.
| void TPZAcademicGeoMesh::ShouldDeform | ( | bool | deform | ) |
toggle between regular or deformed mesh
Referenced by SetMeshType().
| TPZGeoMesh * TPZAcademicGeoMesh::TetrahedralMesh | ( | ) |
Definition at line 313 of file TPZAcademicGeoMesh.cpp.
References AddBoundaryElements(), TPZGeoMesh::BuildConnectivity(), TPZGeoMesh::CreateGeoElement(), DeformGMesh(), ETetraedro, fMaterialId, fNumberElements, fShouldDeform, GenerateNodes(), LOGPZ_DEBUG, and TPZGeoMesh::SetDimension().
Referenced by CreateGeoMesh().
|
protected |
|
protected |
indices of the boundary conditions
Definition at line 34 of file TPZAcademicGeoMesh.h.
Referenced by AddBoundaryElements(), and AddBoundaryElementsByCoord().
| TPZGeoMesh TPZAcademicGeoMesh::fDeformed |
Definition at line 24 of file TPZAcademicGeoMesh.h.
Referenced by DeformGMesh(), and TPZAcademicGeoMesh().
|
static |
Definition at line 22 of file TPZAcademicGeoMesh.h.
|
protected |
material index for volume elements
Definition at line 43 of file TPZAcademicGeoMesh.h.
Referenced by HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
type of mesh that should be generated
Definition at line 31 of file TPZAcademicGeoMesh.h.
|
protected |
number of elements in any direction
Definition at line 40 of file TPZAcademicGeoMesh.h.
Referenced by GenerateNodes(), HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
protected |
whether the mesh should be deformed or not
Definition at line 37 of file TPZAcademicGeoMesh.h.
Referenced by HexahedralMesh(), PyramidalAndTetrahedralMesh(), RedBlackPyramidalAndHexagonalMesh(), and TetrahedralMesh().
|
static |
Definition at line 22 of file TPZAcademicGeoMesh.h.
1.8.13