NeoPZ
Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
hdivCurvedJCompAppMath Class Reference

#include <hdivCurvedJCompAppMath.h>

Public Types

enum  ApproximationSpace { EH1, EHDiv, EHDivStar, EHDivStarStar }
 
enum  Eltype { EQuad, ETriang }
 
enum  geomDomain { ECircle, ECylinder, ESphere }
 

Public Member Functions

 hdivCurvedJCompAppMath ()
 
 hdivCurvedJCompAppMath (geomDomain geodomain)
 
 ~hdivCurvedJCompAppMath ()
 
void Run (geomDomain geodomain, ApproximationSpace problem, Eltype element, TPZVec< int > POrderBeginAndEnd, TPZVec< int > ndivinterval, TPZFMatrix< REAL > &errors)
 
void PrintErrors (geomDomain geodomain, ApproximationSpace problem, Eltype element, TPZVec< int > POrderBeginAndEnd, TPZVec< int > ndivinterval, TPZVec< REAL > &errors, std::ostream &output)
 

Private Member Functions

TPZGeoMeshMakeCircle (int ndiv)
 
TPZManVector< REAL, 3 > ParametricCircle (REAL radius, REAL theta)
 
TPZManVector< REAL, 3 > ParametricSphere (REAL radius, REAL phi, REAL theta)
 
TPZGeoMeshMakeSphereFromQuadrilateral (int dimensao, bool triang, int ndiv)
 
void RotateNode (TPZVec< REAL > &iCoords, REAL CounterClockwiseAngle, int &Axis)
 
TPZGeoMeshGMeshCilindricalMesh (int ndiv)
 
void RotateGeomesh (TPZGeoMesh *gmesh, REAL CounterClockwiseAngle, int &Axis)
 
TPZCompMeshCMeshH1 (TPZGeoMesh *gmesh, int pOrder, int dim)
 
TPZCompMeshCMeshFlux (TPZGeoMesh *gmesh, int pOrder, int dim)
 
TPZCompMeshCMeshPressure (TPZGeoMesh *gmesh, int pOrder, int dim)
 
TPZCompMeshCMeshMixed (TPZGeoMesh *gmesh, TPZVec< TPZCompMesh *> meshvec)
 
void SetupDisconnectedHdivboud (const int left, const int rigth, TPZCompMesh *cmesh)
 
void ErrorH1 (TPZCompMesh *l2mesh, int p, int ndiv, int pos, TPZFMatrix< REAL > &errors)
 
void ErrorH1 (TPZCompMesh *l2mesh, int p, int ndiv, std::ostream &out, int DoFT, int DofCond)
 
void ErrorPrimalDual (TPZCompMesh *l2mesh, TPZCompMesh *hdivmesh, int p, int ndiv, int pos, TPZFMatrix< REAL > &errors)
 
void ErrorPrimalDual (TPZCompMesh *l2mesh, TPZCompMesh *hdivmesh, int p, int ndiv, std::ostream &out, int DoFT, int DofCond)
 
void ChangeExternalOrderConnects (TPZCompMesh *mesh)
 
void SolveSyst (TPZAnalysis &an, TPZCompMesh *fCmesh)
 
void setTriangTrue ()
 
void setDimension (geomDomain geodomain)
 

Static Private Member Functions

static void SolExata (const TPZVec< REAL > &pt, TPZVec< STATE > &solp, TPZFMatrix< STATE > &flux)
 
static void SolExataH1 (const TPZVec< REAL > &pt, TPZVec< STATE > &solp, TPZFMatrix< STATE > &flux)
 
static void Forcing (const TPZVec< REAL > &pt, TPZVec< STATE > &ff)
 
static void ForcingH1 (const TPZVec< REAL > &pt, TPZVec< STATE > &ff, TPZFMatrix< STATE > &flux)
 
static void ForcingBC1D (const TPZVec< REAL > &pt, TPZVec< STATE > &disp)
 
static void ForcingBC2D (const TPZVec< REAL > &pt, TPZVec< STATE > &disp)
 
static void ForcingBC3D (const TPZVec< REAL > &pt, TPZVec< STATE > &disp)
 
static void ForcingBC4D (const TPZVec< REAL > &pt, TPZVec< STATE > &disp)
 
static void ForcingBC5D (const TPZVec< REAL > &pt, TPZVec< STATE > &solp)
 

Private Attributes

int fDim
 
int fmatId
 
int fdirichlet
 
int fneumann
 
int fbc0
 
int fbc1
 
int fbc2
 
int fbc3
 
int fbc4
 
int fbc5
 
int fmatskeleton
 
bool ftriang
 
bool isgeoblend
 

Static Private Attributes

static bool probAtCircle
 
static bool probAtCylinder
 
static bool probAtSphere
 

Detailed Description

Definition at line 99 of file hdivCurvedJCompAppMath.h.

Member Enumeration Documentation

◆ ApproximationSpace

Enumerator
EH1 
EHDiv 
EHDivStar 
EHDivStarStar 

Definition at line 128 of file hdivCurvedJCompAppMath.h.

◆ Eltype

Enumerator
EQuad 
ETriang 

Definition at line 130 of file hdivCurvedJCompAppMath.h.

◆ geomDomain

Enumerator
ECircle 
ECylinder 
ESphere 

Definition at line 132 of file hdivCurvedJCompAppMath.h.

Constructor & Destructor Documentation

◆ hdivCurvedJCompAppMath() [1/2]

hdivCurvedJCompAppMath::hdivCurvedJCompAppMath ( )

◆ hdivCurvedJCompAppMath() [2/2]

hdivCurvedJCompAppMath::hdivCurvedJCompAppMath ( geomDomain  geodomain)

◆ ~hdivCurvedJCompAppMath()

hdivCurvedJCompAppMath::~hdivCurvedJCompAppMath ( )

Definition at line 102 of file hdivCurvedJCompAppMath.cpp.

Member Function Documentation

◆ ChangeExternalOrderConnects()

void hdivCurvedJCompAppMath::ChangeExternalOrderConnects ( TPZCompMesh mesh)
private

◆ CMeshFlux()

TPZCompMesh * hdivCurvedJCompAppMath::CMeshFlux ( TPZGeoMesh gmesh,
int  pOrder,
int  dim 
)
private

◆ CMeshH1()

TPZCompMesh * hdivCurvedJCompAppMath::CMeshH1 ( TPZGeoMesh gmesh,
int  pOrder,
int  dim 
)
private

◆ CMeshMixed()

TPZCompMesh * hdivCurvedJCompAppMath::CMeshMixed ( TPZGeoMesh gmesh,
TPZVec< TPZCompMesh *>  meshvec 
)
private

Definition at line 2189 of file hdivCurvedJCompAppMath.cpp.

References TPZBuildMultiphysicsMesh::AddConnects(), TPZElementGroup::AddElement(), TPZBuildMultiphysicsMesh::AddElements(), TPZBuildMultiphysicsMesh::AddWrap(), TPZCompMesh::AdjustBoundaryElements(), TPZCompMesh::AutoBuild(), TPZCompMesh::CleanUpUnconnectedNodes(), TPZCompMesh::ComputeNodElCon(), TPZCompEl::Connect(), TPZMaterial::CreateBC(), TPZMultiphysicsElement::CreateInterfaces(), DebugStop, TPZCompMesh::Dimension(), TPZCompEl::Dimension(), TPZGeoMesh::Dimension(), TPZGeoElSide::Element(), TPZCompMesh::Element(), TPZCompMesh::ElementVec(), TPZCompMesh::ExpandSolution(), fbc0, fbc1, fbc2, fbc3, fbc4, fdirichlet, fmatId, Forcing(), ForcingBC1D(), ForcingBC2D(), ForcingBC3D(), ForcingBC4D(), ForcingBC5D(), TPZConnect::IncrementElConnected(), TPZCompEl::Index(), TPZCompMesh::InsertMaterialObject(), TPZConnect::LagrangeMultiplier(), TPZCompMesh::LoadReferences(), TPZGeoEl::MaterialId(), TPZElementGroup::NConnects(), TPZGeoElSide::Neighbour(), TPZVec< T >::NElements(), TPZChunkVector< T, EXP >::NElements(), TPZGeoEl::NSides(), probAtCircle, probAtCylinder, probAtSphere, TPZStack< T, NumExtAlloc >::Push(), TPZCompEl::Reference(), TPZCompMesh::Reference(), TPZGeoEl::Reference(), TPZGeoMesh::ResetReference(), TPZCompMesh::SetAllCreateFunctionsMultiphysicElem(), TPZCompMesh::SetDimModel(), TPZMaterial::SetForcingFunction(), TPZMaterial::SetForcingFunctionExact(), TPZMatMixedPoisson3D::SetPermeabilityTensor(), TPZDummyFunction< TVar >::SetPolynomialOrder(), TPZVec< T >::size(), SolExata(), and TPZBuildMultiphysicsMesh::TransferFromMeshes().

Referenced by PrintErrors(), and Run().

◆ CMeshPressure()

TPZCompMesh * hdivCurvedJCompAppMath::CMeshPressure ( TPZGeoMesh gmesh,
int  pOrder,
int  dim 
)
private

◆ ErrorH1() [1/2]

void hdivCurvedJCompAppMath::ErrorH1 ( TPZCompMesh l2mesh,
int  p,
int  ndiv,
int  pos,
TPZFMatrix< REAL > &  errors 
)
private

◆ ErrorH1() [2/2]

void hdivCurvedJCompAppMath::ErrorH1 ( TPZCompMesh l2mesh,
int  p,
int  ndiv,
std::ostream &  out,
int  DoFT,
int  DofCond 
)
private

◆ ErrorPrimalDual() [1/2]

void hdivCurvedJCompAppMath::ErrorPrimalDual ( TPZCompMesh l2mesh,
TPZCompMesh hdivmesh,
int  p,
int  ndiv,
int  pos,
TPZFMatrix< REAL > &  errors 
)
private

◆ ErrorPrimalDual() [2/2]

void hdivCurvedJCompAppMath::ErrorPrimalDual ( TPZCompMesh l2mesh,
TPZCompMesh hdivmesh,
int  p,
int  ndiv,
std::ostream &  out,
int  DoFT,
int  DofCond 
)
private

◆ Forcing()

void hdivCurvedJCompAppMath::Forcing ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  ff 
)
staticprivate

◆ ForcingBC1D()

void hdivCurvedJCompAppMath::ForcingBC1D ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  disp 
)
staticprivate

◆ ForcingBC2D()

void hdivCurvedJCompAppMath::ForcingBC2D ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  disp 
)
staticprivate

◆ ForcingBC3D()

void hdivCurvedJCompAppMath::ForcingBC3D ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  disp 
)
staticprivate

◆ ForcingBC4D()

void hdivCurvedJCompAppMath::ForcingBC4D ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  disp 
)
staticprivate

◆ ForcingBC5D()

void hdivCurvedJCompAppMath::ForcingBC5D ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  solp 
)
staticprivate

Definition at line 1666 of file hdivCurvedJCompAppMath.cpp.

References acos, atan2(), cos(), norder, sin, and sqrt.

Referenced by CMeshMixed().

◆ ForcingH1()

void hdivCurvedJCompAppMath::ForcingH1 ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  ff,
TPZFMatrix< STATE > &  flux 
)
staticprivate

Definition at line 1432 of file hdivCurvedJCompAppMath.cpp.

References DebugStop, probAtCircle, probAtCylinder, and probAtSphere.

Referenced by CMeshH1().

◆ GMeshCilindricalMesh()

TPZGeoMesh * hdivCurvedJCompAppMath::GMeshCilindricalMesh ( int  ndiv)
private

◆ MakeCircle()

TPZGeoMesh * hdivCurvedJCompAppMath::MakeCircle ( int  ndiv)
private

◆ MakeSphereFromQuadrilateral()

TPZGeoMesh * hdivCurvedJCompAppMath::MakeSphereFromQuadrilateral ( int  dimensao,
bool  triang,
int  ndiv 
)
private

◆ ParametricCircle()

TPZManVector< REAL, 3 > hdivCurvedJCompAppMath::ParametricCircle ( REAL  radius,
REAL  theta 
)
private

Definition at line 682 of file hdivCurvedJCompAppMath.cpp.

References cos(), and sin.

Referenced by MakeCircle().

◆ ParametricSphere()

TPZManVector< REAL, 3 > hdivCurvedJCompAppMath::ParametricSphere ( REAL  radius,
REAL  phi,
REAL  theta 
)
private

Definition at line 926 of file hdivCurvedJCompAppMath.cpp.

References cos(), and sin.

Referenced by MakeSphereFromQuadrilateral().

◆ PrintErrors()

void hdivCurvedJCompAppMath::PrintErrors ( geomDomain  geodomain,
ApproximationSpace  problem,
Eltype  element,
TPZVec< int >  POrderBeginAndEnd,
TPZVec< int >  ndivinterval,
TPZVec< REAL > &  errors,
std::ostream &  output 
)

◆ RotateGeomesh()

void hdivCurvedJCompAppMath::RotateGeomesh ( TPZGeoMesh gmesh,
REAL  CounterClockwiseAngle,
int &  Axis 
)
private

◆ RotateNode()

void hdivCurvedJCompAppMath::RotateNode ( TPZVec< REAL > &  iCoords,
REAL  CounterClockwiseAngle,
int &  Axis 
)
private

Definition at line 1172 of file hdivCurvedJCompAppMath.cpp.

References cos(), RotationMatrix(), and sin.

Referenced by GMeshCilindricalMesh().

◆ Run()

void hdivCurvedJCompAppMath::Run ( geomDomain  geodomain,
ApproximationSpace  problem,
Eltype  element,
TPZVec< int >  POrderBeginAndEnd,
TPZVec< int >  ndivinterval,
TPZFMatrix< REAL > &  errors 
)

◆ setDimension()

void hdivCurvedJCompAppMath::setDimension ( geomDomain  geodomain)
inlineprivate

Definition at line 193 of file hdivCurvedJCompAppMath.h.

◆ setTriangTrue()

void hdivCurvedJCompAppMath::setTriangTrue ( )
inlineprivate

Definition at line 188 of file hdivCurvedJCompAppMath.h.

◆ SetupDisconnectedHdivboud()

void hdivCurvedJCompAppMath::SetupDisconnectedHdivboud ( const int  left,
const int  rigth,
TPZCompMesh cmesh 
)
private

◆ SolExata()

void hdivCurvedJCompAppMath::SolExata ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  solp,
TPZFMatrix< STATE > &  flux 
)
staticprivate

◆ SolExataH1()

void hdivCurvedJCompAppMath::SolExataH1 ( const TPZVec< REAL > &  pt,
TPZVec< STATE > &  solp,
TPZFMatrix< STATE > &  flux 
)
staticprivate

◆ SolveSyst()

void hdivCurvedJCompAppMath::SolveSyst ( TPZAnalysis an,
TPZCompMesh fCmesh 
)
private

Member Data Documentation

◆ fbc0

int hdivCurvedJCompAppMath::fbc0
private

◆ fbc1

int hdivCurvedJCompAppMath::fbc1
private

◆ fbc2

int hdivCurvedJCompAppMath::fbc2
private

◆ fbc3

int hdivCurvedJCompAppMath::fbc3
private

◆ fbc4

int hdivCurvedJCompAppMath::fbc4
private

◆ fbc5

int hdivCurvedJCompAppMath::fbc5
private

Definition at line 114 of file hdivCurvedJCompAppMath.h.

Referenced by CMeshFlux(), and hdivCurvedJCompAppMath().

◆ fDim

int hdivCurvedJCompAppMath::fDim
private

◆ fdirichlet

int hdivCurvedJCompAppMath::fdirichlet
private

Definition at line 106 of file hdivCurvedJCompAppMath.h.

Referenced by CMeshFlux(), CMeshH1(), CMeshMixed(), and hdivCurvedJCompAppMath().

◆ fmatId

int hdivCurvedJCompAppMath::fmatId
private

◆ fmatskeleton

int hdivCurvedJCompAppMath::fmatskeleton
private

Definition at line 120 of file hdivCurvedJCompAppMath.h.

Referenced by CMeshFlux(), and hdivCurvedJCompAppMath().

◆ fneumann

int hdivCurvedJCompAppMath::fneumann
private

Definition at line 107 of file hdivCurvedJCompAppMath.h.

Referenced by hdivCurvedJCompAppMath().

◆ ftriang

bool hdivCurvedJCompAppMath::ftriang
private

Definition at line 122 of file hdivCurvedJCompAppMath.h.

Referenced by CMeshPressure(), and hdivCurvedJCompAppMath().

◆ isgeoblend

bool hdivCurvedJCompAppMath::isgeoblend
private

Definition at line 124 of file hdivCurvedJCompAppMath.h.

Referenced by hdivCurvedJCompAppMath().

◆ probAtCircle

bool hdivCurvedJCompAppMath::probAtCircle
staticprivate

◆ probAtCylinder

bool hdivCurvedJCompAppMath::probAtCylinder
staticprivate

◆ probAtSphere

bool hdivCurvedJCompAppMath::probAtSphere
staticprivate

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