NeoPZ
Public Member Functions | Private Attributes | List of all members
TPZHierarquicalGrid Class Reference

#include <tpzhierarquicalgrid.h>

Collaboration diagram for TPZHierarquicalGrid:
[legend]

Public Member Functions

 TPZHierarquicalGrid ()
 
 TPZHierarquicalGrid (TPZGeoMesh *Geomesh)
 
 TPZHierarquicalGrid (const TPZHierarquicalGrid &other)
 
 ~TPZHierarquicalGrid ()
 
TPZHierarquicalGridoperator= (const TPZHierarquicalGrid &other)
 
bool operator== (const TPZHierarquicalGrid &other) const
 
void PrintGeneratedMesh (std::ostream &out=std::cout)
 Prints the generated mesh. More...
 
void SetGeometricMesh (TPZGeoMesh *gmesh)
 
void SetParametricFunction (TPZAutoPointer< TPZFunction< REAL > > fp)
 
TPZGeoMeshComputeExtrusion (REAL t, REAL dt, int n)
 
void SetFrontBackMatId (int front, int back)
 
void SetTriangleExtrusion ()
 
void SetTetrahedonExtrusion ()
 
void SetPrismExtrusion ()
 
void SetNonAffineExtrusion ()
 
void SetGridFileName (std::string &FileName)
 
void CreateGeometricElement (int n, int iel, int eldim, int elmatid, int &elid)
 

Private Attributes

REAL fThickness
 Thickness of the mesh (+ or -) More...
 
bool fNonAffineQ
 Non affine 2D and 3D extrusion. More...
 
bool fIsQuad
 2d extrusion is based on quadrilaterals More...
 
bool fIsPrism
 3d extrusion is based on prisms More...
 
bool fIsTetrahedron
 3d extrusion is based on tetrahedrons More...
 
int ffrontMatID
 Extrusion front material id. More...
 
int fbackMatID
 Extrusion back material id. More...
 
std::string fFileName
 Name of the fine mesh to be extended. More...
 
TPZGeoMeshfComputedGeomesh
 A geometric mesh being computed. More...
 
TPZAutoPointer< TPZGeoMeshfBase
 A geometric mesh generated from other sources. More...
 
TPZVec< TPZAutoPointer< TPZGeoMesh > > fSubBases
 Vector of n bases to be connected to the original base. More...
 
TPZAutoPointer< TPZFunction< REAL > > fParametricFunction
 Pointer to parametric function of t parameter. More...
 

Detailed Description

Definition at line 31 of file tpzhierarquicalgrid.h.

Constructor & Destructor Documentation

◆ TPZHierarquicalGrid() [1/3]

TPZHierarquicalGrid::TPZHierarquicalGrid ( )

◆ TPZHierarquicalGrid() [2/3]

TPZHierarquicalGrid::TPZHierarquicalGrid ( TPZGeoMesh Geomesh)

◆ TPZHierarquicalGrid() [3/3]

TPZHierarquicalGrid::TPZHierarquicalGrid ( const TPZHierarquicalGrid other)

◆ ~TPZHierarquicalGrid()

TPZHierarquicalGrid::~TPZHierarquicalGrid ( )

Destructor

Definition at line 92 of file tpzhierarquicalgrid.cpp.

Member Function Documentation

◆ ComputeExtrusion()

TPZGeoMesh * TPZHierarquicalGrid::ComputeExtrusion ( REAL  t,
REAL  dt,
int  n 
)

Compute the extrusion based on a lower dimension mesh

Parameters
tone-dimensional parameteric representation of the R3 space
dtelement size over the parametric space
nnumber of elements in the paremetric direction
Returns
high dimension geometric mesh

Definition at line 119 of file tpzhierarquicalgrid.cpp.

References TPZGeoMesh::BuildConnectivity(), CreateGeometricElement(), TPZGeoMesh::Dimension(), TPZGeoMesh::ElementVec(), TPZFunction< TVar >::Execute(), fBase, fComputedGeomesh, fNonAffineQ, fParametricFunction, fSubBases, TPZGeoMesh::NElements(), TPZGeoMesh::NNodes(), TPZGeoMesh::NodeVec(), TPZAdmChunkVector< T, EXP >::Resize(), TPZVec< T >::Resize(), TPZGeoMesh::SetMaxElementId(), and TPZGeoMesh::SetMaxNodeId().

Referenced by SetParametricFunction().

◆ CreateGeometricElement()

void TPZHierarquicalGrid::CreateGeometricElement ( int  n,
int  iel,
int  eldim,
int  elmatid,
int &  elid 
)

◆ operator=()

TPZHierarquicalGrid & TPZHierarquicalGrid::operator= ( const TPZHierarquicalGrid other)

Assignment operator

Parameters
otherTPZHierarquicalGrid object being copied
Returns
The new copy

Definition at line 97 of file tpzhierarquicalgrid.cpp.

References fbackMatID, fBase, fComputedGeomesh, fFileName, ffrontMatID, fIsPrism, fIsQuad, fIsTetrahedron, fNonAffineQ, and fSubBases.

◆ operator==()

bool TPZHierarquicalGrid::operator== ( const TPZHierarquicalGrid other) const

Comparison operator

Parameters
otherright hand side
Returns
comparison result (true/false)

TODO: return ...;

Definition at line 112 of file tpzhierarquicalgrid.cpp.

References DebugStop.

◆ PrintGeneratedMesh()

void TPZHierarquicalGrid::PrintGeneratedMesh ( std::ostream &  out = std::cout)

Prints the generated mesh.

◆ SetFrontBackMatId()

void TPZHierarquicalGrid::SetFrontBackMatId ( int  front,
int  back 
)
inline

Definition at line 168 of file tpzhierarquicalgrid.h.

◆ SetGeometricMesh()

void TPZHierarquicalGrid::SetGeometricMesh ( TPZGeoMesh gmesh)
inline

Set the geometric mesh being extruded

Parameters
gmeshTPZGeoMesh representation of the geometry

Definition at line 143 of file tpzhierarquicalgrid.h.

◆ SetGridFileName()

void TPZHierarquicalGrid::SetGridFileName ( std::string &  FileName)
inline

Definition at line 178 of file tpzhierarquicalgrid.h.

References CreateGeometricElement().

◆ SetNonAffineExtrusion()

void TPZHierarquicalGrid::SetNonAffineExtrusion ( )
inline

Definition at line 176 of file tpzhierarquicalgrid.h.

◆ SetParametricFunction()

void TPZHierarquicalGrid::SetParametricFunction ( TPZAutoPointer< TPZFunction< REAL > >  fp)
inline

Paramatric function used during the extrusion

Parameters
fpautopointer of the parametric function

Definition at line 152 of file tpzhierarquicalgrid.h.

References ComputeExtrusion().

◆ SetPrismExtrusion()

void TPZHierarquicalGrid::SetPrismExtrusion ( )
inline

Definition at line 174 of file tpzhierarquicalgrid.h.

◆ SetTetrahedonExtrusion()

void TPZHierarquicalGrid::SetTetrahedonExtrusion ( )
inline

Definition at line 172 of file tpzhierarquicalgrid.h.

◆ SetTriangleExtrusion()

void TPZHierarquicalGrid::SetTriangleExtrusion ( )
inline

Definition at line 170 of file tpzhierarquicalgrid.h.

Member Data Documentation

◆ fbackMatID

int TPZHierarquicalGrid::fbackMatID
private

Extrusion back material id.

Definition at line 67 of file tpzhierarquicalgrid.h.

Referenced by CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fBase

TPZAutoPointer<TPZGeoMesh> TPZHierarquicalGrid::fBase
private

A geometric mesh generated from other sources.

Definition at line 82 of file tpzhierarquicalgrid.h.

Referenced by ComputeExtrusion(), CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fComputedGeomesh

TPZGeoMesh* TPZHierarquicalGrid::fComputedGeomesh
private

A geometric mesh being computed.

Definition at line 77 of file tpzhierarquicalgrid.h.

Referenced by ComputeExtrusion(), CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fFileName

std::string TPZHierarquicalGrid::fFileName
private

Name of the fine mesh to be extended.

Definition at line 72 of file tpzhierarquicalgrid.h.

Referenced by operator=(), and TPZHierarquicalGrid().

◆ ffrontMatID

int TPZHierarquicalGrid::ffrontMatID
private

Extrusion front material id.

Definition at line 62 of file tpzhierarquicalgrid.h.

Referenced by CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fIsPrism

bool TPZHierarquicalGrid::fIsPrism
private

3d extrusion is based on prisms

Definition at line 52 of file tpzhierarquicalgrid.h.

Referenced by CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fIsQuad

bool TPZHierarquicalGrid::fIsQuad
private

2d extrusion is based on quadrilaterals

Definition at line 47 of file tpzhierarquicalgrid.h.

Referenced by CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fIsTetrahedron

bool TPZHierarquicalGrid::fIsTetrahedron
private

3d extrusion is based on tetrahedrons

Definition at line 57 of file tpzhierarquicalgrid.h.

Referenced by CreateGeometricElement(), operator=(), and TPZHierarquicalGrid().

◆ fNonAffineQ

bool TPZHierarquicalGrid::fNonAffineQ
private

Non affine 2D and 3D extrusion.

Definition at line 42 of file tpzhierarquicalgrid.h.

Referenced by ComputeExtrusion(), operator=(), and TPZHierarquicalGrid().

◆ fParametricFunction

TPZAutoPointer<TPZFunction<REAL> > TPZHierarquicalGrid::fParametricFunction
private

Pointer to parametric function of t parameter.

Definition at line 90 of file tpzhierarquicalgrid.h.

Referenced by ComputeExtrusion().

◆ fSubBases

TPZVec<TPZAutoPointer<TPZGeoMesh> > TPZHierarquicalGrid::fSubBases
private

Vector of n bases to be connected to the original base.

Definition at line 87 of file tpzhierarquicalgrid.h.

Referenced by ComputeExtrusion(), operator=(), and TPZHierarquicalGrid().

◆ fThickness

REAL TPZHierarquicalGrid::fThickness
private

Thickness of the mesh (+ or -)

Definition at line 37 of file tpzhierarquicalgrid.h.


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