NeoPZ
Public Member Functions | Protected Member Functions | List of all members
TPZReferredCompEl< TCOMPEL > Class Template Reference

Template to generate computational elements. Computational Element. More...

#include <pzreferredcompel.h>

Inheritance diagram for TPZReferredCompEl< TCOMPEL >:
[legend]
Collaboration diagram for TPZReferredCompEl< TCOMPEL >:
[legend]

Public Member Functions

 TPZReferredCompEl (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index)
 Class constructor. More...
 
 TPZReferredCompEl ()
 
 TPZReferredCompEl (TPZCompMesh &mesh, const TPZReferredCompEl< TCOMPEL > &copy)
 
 TPZReferredCompEl (TPZCompMesh &mesh, const TPZReferredCompEl< TCOMPEL > &copy, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap)
 
 ~TPZReferredCompEl ()
 Class destructor. More...
 
virtual void SetCreateFunctions (TPZCompMesh *mesh) override
 Set create function in TPZCompMesh to create elements of this type. More...
 
TPZCompElReferredElement ()
 Returns referred element of this. More...
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZMaterialData &data) override
 Computes solution and its derivatives in local coordinate qsi. More...
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZVec< REAL > &normal, TPZSolVec &leftsol, TPZGradSolVec &dleftsol, TPZFMatrix< REAL > &leftaxes, TPZSolVec &rightsol, TPZGradSolVec &drightsol, TPZFMatrix< REAL > &rightaxes) override
 Computes solution and its derivatives in the local coordinate qsi. More...
 
virtual void Print (std::ostream &out=std::cout) const override
 Prints element data. More...
 
int ClassId () const override
 
template<>
void SetCreateFunctions (TPZCompMesh *mesh)
 

Protected Member Functions

void AppendOtherSolution (TPZVec< REAL > &qsi, TPZSolVec &sol, TPZGradSolVec &dsol, TPZFMatrix< REAL > &axes)
 Append solution of the referred element. More...
 
void AppendOtherSolution (TPZVec< REAL > &qsi, TPZSolVec &sol)
 Append solution of the referred element. More...
 
void AppendOtherSolution (TPZVec< REAL > &qsi, TPZSolVec &sol, TPZGradSolVec &dsol, const TPZFMatrix< REAL > &axes)
 Append solution of the referred element. More...
 
void AppendOtherSolution (TPZVec< REAL > &qsi, TPZVec< REAL > &normal, TPZSolVec &leftsol, TPZGradSolVec &dleftsol, TPZFMatrix< REAL > &leftaxes, TPZSolVec &rightsol, TPZGradSolVec &drightsol, TPZFMatrix< REAL > &rightaxes)
 Append solution of the referred element. More...
 
template<>
void AppendOtherSolution (TPZVec< REAL > &qsi, TPZSolVec &sol, TPZGradSolVec &dsol, TPZFMatrix< REAL > &axes)
 

Detailed Description

template<class TCOMPEL>
class TPZReferredCompEl< TCOMPEL >

Template to generate computational elements. Computational Element.

Definition at line 26 of file pzreferredcompel.h.

Constructor & Destructor Documentation

◆ TPZReferredCompEl() [1/4]

template<class TCOMPEL >
TPZReferredCompEl< TCOMPEL >::TPZReferredCompEl ( TPZCompMesh mesh,
TPZGeoEl gel,
int64_t &  index 
)

Class constructor.

Definition at line 109 of file pzreferredcompel.cpp.

◆ TPZReferredCompEl() [2/4]

template<class TCOMPEL >
TPZReferredCompEl< TCOMPEL >::TPZReferredCompEl ( )

Definition at line 115 of file pzreferredcompel.cpp.

◆ TPZReferredCompEl() [3/4]

template<class TCOMPEL >
TPZReferredCompEl< TCOMPEL >::TPZReferredCompEl ( TPZCompMesh mesh,
const TPZReferredCompEl< TCOMPEL > &  copy 
)

Definition at line 121 of file pzreferredcompel.cpp.

◆ TPZReferredCompEl() [4/4]

template<class TCOMPEL >
TPZReferredCompEl< TCOMPEL >::TPZReferredCompEl ( TPZCompMesh mesh,
const TPZReferredCompEl< TCOMPEL > &  copy,
std::map< int64_t, int64_t > &  gl2lcConMap,
std::map< int64_t, int64_t > &  gl2lcElMap 
)

Definition at line 127 of file pzreferredcompel.cpp.

◆ ~TPZReferredCompEl()

template<class TCOMPEL >
TPZReferredCompEl< TCOMPEL >::~TPZReferredCompEl ( )

Class destructor.

Definition at line 138 of file pzreferredcompel.cpp.

Member Function Documentation

◆ AppendOtherSolution() [1/5]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::AppendOtherSolution ( TPZVec< REAL > &  qsi,
TPZSolVec sol,
TPZGradSolVec dsol,
TPZFMatrix< REAL > &  axes 
)
protected

◆ AppendOtherSolution() [2/5]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::AppendOtherSolution ( TPZVec< REAL > &  qsi,
TPZSolVec sol 
)
protected

Append solution of the referred element.

Definition at line 185 of file pzreferredcompel.cpp.

References Append(), TPZReferredCompEl< TCOMPEL >::ReferredElement(), and TPZVec< T >::size().

◆ AppendOtherSolution() [3/5]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::AppendOtherSolution ( TPZVec< REAL > &  qsi,
TPZSolVec sol,
TPZGradSolVec dsol,
const TPZFMatrix< REAL > &  axes 
)
protected

Append solution of the referred element.

Definition at line 203 of file pzreferredcompel.cpp.

References AdjustSolutionDerivatives(), Append(), TPZReferredCompEl< TCOMPEL >::ReferredElement(), and TPZVec< T >::size().

◆ AppendOtherSolution() [4/5]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::AppendOtherSolution ( TPZVec< REAL > &  qsi,
TPZVec< REAL > &  normal,
TPZSolVec leftsol,
TPZGradSolVec dleftsol,
TPZFMatrix< REAL > &  leftaxes,
TPZSolVec rightsol,
TPZGradSolVec drightsol,
TPZFMatrix< REAL > &  rightaxes 
)
protected

◆ AppendOtherSolution() [5/5]

template<>
void TPZReferredCompEl< TPZInterfaceElement >::AppendOtherSolution ( TPZVec< REAL > &  qsi,
TPZSolVec sol,
TPZGradSolVec dsol,
TPZFMatrix< REAL > &  axes 
)
protected

Definition at line 143 of file pzreferredcompel.cpp.

References DebugStop.

◆ ClassId()

template<class TCOMPEL >
int TPZReferredCompEl< TCOMPEL >::ClassId ( ) const
override

Definition at line 341 of file pzreferredcompel.cpp.

References Hash().

Referenced by TPZCompElPostProc< TCOMPEL >::ClassId().

◆ ComputeSolution() [1/2]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZMaterialData data 
)
overridevirtual

Computes solution and its derivatives in local coordinate qsi.

Parameters
qsimaster element coordinate
phimatrix containing shape functions compute in qsi point
dphixmatrix containing the derivatives of shape functions in the direction of the axes
axesdirection of the derivatives
solfinite element solution
dsolsolution derivatives Computes solution and its derivatives in local coordinate qsi
qsimaster element coordinate
phimatrix containing shape functions compute in qsi point
dphixmatrix containing the derivatives of shape functions in the direction of the axes
axesdirection of the derivatives
solfinite element solution
dsolsolution derivatives
qsimaster element coordinate
phimatrix containing shape functions compute in qsi point
dphixmatrix containing the derivatives of shape functions in the direction of the axes
axesdirection of the derivatives
solfinite element solution
dsolsolution derivatives

Definition at line 317 of file pzreferredcompel.cpp.

References TPZReferredCompEl< TCOMPEL >::AppendOtherSolution(), TPZMaterialData::axes, TPZMaterialData::dsol, TPZMaterialData::EVecandShape, TPZMaterialData::EVecShape, TPZMaterialData::fShapeType, and TPZMaterialData::sol.

◆ ComputeSolution() [2/2]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZVec< REAL > &  normal,
TPZSolVec leftsol,
TPZGradSolVec dleftsol,
TPZFMatrix< REAL > &  leftaxes,
TPZSolVec rightsol,
TPZGradSolVec drightsol,
TPZFMatrix< REAL > &  rightaxes 
)
overridevirtual

Computes solution and its derivatives in the local coordinate qsi.

Parameters
qsimaster element coordinate of the interface element
normalunit normal vector
leftsolfinite element solution
dleftsolsolution derivatives
leftaxesaxes associated with the left solution
rightsolfinite element solution
drightsolsolution derivatives
rightaxesaxes associated with the right solution This method will function for both volumetric and interface elements

Reimplemented in TPZCompElPostProc< TCOMPEL >.

Definition at line 332 of file pzreferredcompel.cpp.

References TPZReferredCompEl< TCOMPEL >::AppendOtherSolution().

◆ Print()

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::Print ( std::ostream &  out = std::cout) const
overridevirtual

Prints element data.

Parameters
outindicates the device where the data will be printed

Reimplemented in TPZCompElPostProc< TCOMPEL >.

Definition at line 94 of file pzreferredcompel.cpp.

References TPZCompMeshReferred::ReferredEl().

Referenced by TPZCompElPostProc< TCOMPEL >::Print().

◆ ReferredElement()

template<class TCOMPEL >
TPZCompEl * TPZReferredCompEl< TCOMPEL >::ReferredElement ( )

Returns referred element of this.

Definition at line 84 of file pzreferredcompel.cpp.

References TPZCompMeshReferred::ReferredEl().

Referenced by TPZReferredCompEl< TCOMPEL >::AppendOtherSolution(), and TPZCompElPostProc< TCOMPEL >::CalcResidual().

◆ SetCreateFunctions() [1/2]

template<class TCOMPEL >
void TPZReferredCompEl< TCOMPEL >::SetCreateFunctions ( TPZCompMesh mesh)
overridevirtual

Set create function in TPZCompMesh to create elements of this type.

Definition at line 290 of file pzreferredcompel.cpp.

References TPZCompMesh::SetAllCreateFunctionsContinuousReferred().

◆ SetCreateFunctions() [2/2]

template<>
void TPZReferredCompEl< TPZCompElDisc >::SetCreateFunctions ( TPZCompMesh mesh)

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