NeoPZ
Public Types | Public Member Functions | Static Public Member Functions | List of all members
pztopology::Pr< TFather > Class Template Reference

Defines the Prismatic extension of a topology. Topology. More...

#include <PrismExtend.h>

Inheritance diagram for pztopology::Pr< TFather >:
[legend]
Collaboration diagram for pztopology::Pr< TFather >:
[legend]

Public Types

enum  { NCornerNodes, NSides, Dimension }
 Enumerate for topological characteristics. More...
 

Public Member Functions

 Pr ()
 Default constructor. More...
 
virtual ~Pr ()
 Default destructor. More...
 
template<>
REAL RefElVolume ()
 

Static Public Member Functions

static void CenterPoint (int side, TPZVec< REAL > &center)
 Returns the barycentric coordinates in the master element space of the original element. More...
 
static std::string StrType ()
 Returns the type of the element as specified in file pzeltype.h. More...
 
static std::string StrType (int side)
 Returns the type of the element as specified in file pzeltype.h. More...
 
static REAL RefElVolume ()
 Volume of the master element (measure) More...
 
static void Diagnostic ()
 Uses log4cxx to print the results of all methods. More...
 
About sides of the topological element
static int SideDimension (int side)
 Returns the dimension of the side. More...
 
static void LowerDimensionSides (int side, TPZStack< int > &smallsides)
 Get all sides with lower dimension on side. More...
 
static void LowerDimensionSides (int side, TPZStack< int > &smallsides, int DimTarget)
 Get all sides with lower dimension but equal to DimTarget on side. More...
 
static void HigherDimensionSides (int side, TPZStack< int > &high)
 Returns all sides whose closure contains side. More...
 
static int NSideNodes (int side)
 Returns the number of nodes (not connectivities) associated with a side. More...
 
static int SideNodeLocId (int side, int node)
 Returns the local node number of the node "node" along side "side". More...
 
static int NumSides ()
 Returns the number of connects of the element (3) More...
 
static int NContainedSides (int side)
 Returns the number of nodes (not connectivities) associated with a side. More...
 
static int ContainedSideLocId (int side, int c)
 Returns the local connect number of the connect "c" along side "side". More...
 
About Transformations
static TPZTransform SideToSideTransform (int sidefrom, int sideto)
 Returns the transformation which takes a point from the side sidefrom ot the side sideto. More...
 
static TPZTransform TransformSideToElement (int side)
 Returns the transformation which transform a point from the side to the interior of the element. More...
 
static TPZTransform TransformElementToSide (int side)
 Returns the transformation which transform a point from the interior of the element to the side. More...
 
static void MapToSide (int side, TPZVec< REAL > &InternalPar, TPZVec< REAL > &SidePar, TPZFMatrix< REAL > &JacToSide)
 Computes the linear map from an internal point to the parameter space of the side returns the jacobian of the transformation. More...
 

Methods related over numeric integration

typedef TFather::IntruleType fatintruletype
 Typedef to numerical integration rule. More...
 
typedef TPZPrInteg< fatintruletypeIntruleType
 Typedef to graphical element type. More...
 
static TPZIntPointsCreateSideIntegrationRule (int side, int order)
 Create an integration rule over side. More...
 

Detailed Description

template<class TFather>
class pztopology::Pr< TFather >

Defines the Prismatic extension of a topology. Topology.

Definition at line 25 of file PrismExtend.h.

Member Typedef Documentation

◆ fatintruletype

template<class TFather>
typedef TFather::IntruleType pztopology::Pr< TFather >::fatintruletype

Typedef to numerical integration rule.

Definition at line 130 of file PrismExtend.h.

◆ IntruleType

template<class TFather>
typedef TPZPrInteg<fatintruletype> pztopology::Pr< TFather >::IntruleType

Typedef to graphical element type.

Definition at line 132 of file PrismExtend.h.

Member Enumeration Documentation

◆ anonymous enum

template<class TFather>
anonymous enum

Enumerate for topological characteristics.

Enumerator
NCornerNodes 
NSides 
Dimension 

Definition at line 31 of file PrismExtend.h.

Constructor & Destructor Documentation

◆ Pr()

template<class TFather >
pztopology::Pr< TFather >::Pr ( )

Default constructor.

Definition at line 18 of file PrismExtend.cpp.

◆ ~Pr()

template<class TFather >
pztopology::Pr< TFather >::~Pr ( )
virtual

Default destructor.

Definition at line 23 of file PrismExtend.cpp.

Member Function Documentation

◆ CenterPoint()

template<class TFather >
void pztopology::Pr< TFather >::CenterPoint ( int  side,
TPZVec< REAL > &  center 
)
static

Returns the barycentric coordinates in the master element space of the original element.

Definition at line 93 of file PrismExtend.cpp.

References DebugStop, pzrefine::fatherside, and TPZVec< T >::size().

◆ ContainedSideLocId()

template<class TFather >
int pztopology::Pr< TFather >::ContainedSideLocId ( int  side,
int  c 
)
static

Returns the local connect number of the connect "c" along side "side".

Definition at line 236 of file PrismExtend.cpp.

References pzrefine::fatherside, and PZError.

◆ CreateSideIntegrationRule()

template<class TFather >
TPZIntPoints * pztopology::Pr< TFather >::CreateSideIntegrationRule ( int  side,
int  order 
)
static

Create an integration rule over side.

Parameters
sideSide to create integration rule
orderOrder of the integration rule to be created

Definition at line 281 of file PrismExtend.cpp.

References TPZIntPoints::PrismExtend().

◆ Diagnostic()

template<class TFather >
void pztopology::Pr< TFather >::Diagnostic ( )
static

Uses log4cxx to print the results of all methods.

uses log4cxx to print the results of all methods

Definition at line 322 of file PrismExtend.cpp.

References LOGPZ_DEBUG, TPZVec< T >::NElements(), TPZIntPoints::Print(), TPZManVector< T, NumExtAlloc >::Resize(), and sqrt.

◆ HigherDimensionSides()

template<class TFather >
void pztopology::Pr< TFather >::HigherDimensionSides ( int  side,
TPZStack< int > &  high 
)
static

Returns all sides whose closure contains side.

Parameters
sidesmaller dimension side
highvector which will contain all sides whose closure contain sidefrom

Definition at line 63 of file PrismExtend.cpp.

References pzrefine::fatherside, TPZVec< T >::NElements(), TPZStack< T, NumExtAlloc >::Push(), and PZError.

◆ LowerDimensionSides() [1/2]

template<class TFather >
void pztopology::Pr< TFather >::LowerDimensionSides ( int  side,
TPZStack< int > &  smallsides 
)
static

Get all sides with lower dimension on side.

Definition at line 254 of file PrismExtend.cpp.

References TPZStack< T, NumExtAlloc >::Push(), and TPZManVector< T, NumExtAlloc >::Resize().

◆ LowerDimensionSides() [2/2]

template<class TFather >
void pztopology::Pr< TFather >::LowerDimensionSides ( int  side,
TPZStack< int > &  smallsides,
int  DimTarget 
)
static

Get all sides with lower dimension but equal to DimTarget on side.

Definition at line 264 of file PrismExtend.cpp.

References TPZStack< T, NumExtAlloc >::Push(), and TPZManVector< T, NumExtAlloc >::Resize().

◆ MapToSide()

template<class TFather >
void pztopology::Pr< TFather >::MapToSide ( int  side,
TPZVec< REAL > &  InternalPar,
TPZVec< REAL > &  SidePar,
TPZFMatrix< REAL > &  JacToSide 
)
static

Computes the linear map from an internal point to the parameter space of the side returns the jacobian of the transformation.

Definition at line 310 of file PrismExtend.cpp.

References TPZTransform< T >::Apply(), TPZTransform< T >::Mult(), and TPZVec< T >::Resize().

◆ NContainedSides()

template<class TFather >
int pztopology::Pr< TFather >::NContainedSides ( int  side)
static

Returns the number of nodes (not connectivities) associated with a side.

Definition at line 228 of file PrismExtend.cpp.

References pzrefine::fatherside.

◆ NSideNodes()

template<class TFather >
int pztopology::Pr< TFather >::NSideNodes ( int  side)
static

Returns the number of nodes (not connectivities) associated with a side.

Definition at line 28 of file PrismExtend.cpp.

◆ NumSides()

template<class TFather >
int pztopology::Pr< TFather >::NumSides ( )
static

Returns the number of connects of the element (3)

Definition at line 222 of file PrismExtend.cpp.

◆ RefElVolume() [1/2]

template<class TFather >
REAL pztopology::Pr< TFather >::RefElVolume ( )
static

Volume of the master element (measure)

volume of the master element

Definition at line 275 of file PrismExtend.cpp.

◆ RefElVolume() [2/2]

template<>
REAL pztopology::Pr< pztopology::TPZPoint >::RefElVolume ( )

Definition at line 587 of file PrismExtend.cpp.

◆ SideDimension()

template<class TFather >
int pztopology::Pr< TFather >::SideDimension ( int  side)
static

Returns the dimension of the side.

Definition at line 51 of file PrismExtend.cpp.

References pzrefine::fatherside, and PZError.

◆ SideNodeLocId()

template<class TFather >
int pztopology::Pr< TFather >::SideNodeLocId ( int  side,
int  node 
)
static

Returns the local node number of the node "node" along side "side".

Definition at line 36 of file PrismExtend.cpp.

References pzrefine::fatherside, and PZError.

◆ SideToSideTransform()

template<class TFather >
TPZTransform pztopology::Pr< TFather >::SideToSideTransform ( int  sidefrom,
int  sideto 
)
static

Returns the transformation which takes a point from the side sidefrom ot the side sideto.

Parameters
sidefromside where the point resides
sidetoside whose closure contains sidefrom

Definition at line 188 of file PrismExtend.cpp.

References pztopology::highsides, TPZTransform< T >::Multiply(), TPZVec< T >::NElements(), and PZError.

◆ StrType() [1/2]

template<class TFather >
std::string pztopology::Pr< TFather >::StrType ( )
static

Returns the type of the element as specified in file pzeltype.h.

Definition at line 294 of file PrismExtend.cpp.

References MElementType_Name().

◆ StrType() [2/2]

template<class TFather >
std::string pztopology::Pr< TFather >::StrType ( int  side)
static

Returns the type of the element as specified in file pzeltype.h.

Definition at line 300 of file PrismExtend.cpp.

References MElementType_Name().

◆ TransformElementToSide()

template<class TFather >
TPZTransform pztopology::Pr< TFather >::TransformElementToSide ( int  side)
static

Returns the transformation which transform a point from the interior of the element to the side.

Parameters
sideside to which the point will be tranformed (0<=side<=2)
Returns
TPZTransform<> object
See also
the class TPZTransform

Definition at line 115 of file PrismExtend.cpp.

References pzrefine::fatherside, TPZTransform< T >::Mult(), PZError, and TPZTransform< T >::Sum().

◆ TransformSideToElement()

template<class TFather >
TPZTransform pztopology::Pr< TFather >::TransformSideToElement ( int  side)
static

Returns the transformation which transform a point from the side to the interior of the element.

Parameters
sideside from which the point will be tranformed (0<=side<=2)
Returns
TPZTransform<> object
See also
the class TPZTransform

Definition at line 148 of file PrismExtend.cpp.

References pzrefine::fatherside, TPZTransform< T >::Mult(), PZError, and TPZTransform< T >::Sum().


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