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

This class adds to the term of diffusion to the variacional formularization
of the differential equation partial compressible of Euler (hyperbolic). Analysis: Solving process Analysis. More...

#include <TPZDiffusionConsLaw.h>

Collaboration diagram for TPZDiffusionConsLaw:
[legend]

Public Member Functions

 TPZDiffusionConsLaw ()
 Default constructor. More...
 
 TPZDiffusionConsLaw (TPZVec< REAL > U, REAL gamma, int dim, const std::string &diff)
 Constructor for model dimension dim. More...
 
 ~TPZDiffusionConsLaw ()
 Destructor. More...
 
void GradientOfTheFlow (TPZFMatrix< REAL > &DF1, TPZFMatrix< REAL > &DF2, TPZFMatrix< REAL > &DF3)
 
REAL DeltaOtimo ()
 
REAL Delta ()
 
REAL CFL (int degree)
 
void Divergence (TPZVec< REAL > &dphi, TPZFMatrix< REAL > &diverg)
 
void PointOperator (TPZVec< REAL > &dphi, TPZFMatrix< REAL > &diff_term)
 Operation product point in the diffusion term. More...
 
void Tau (TPZFMatrix< REAL > &Tx, TPZFMatrix< REAL > &Ty, TPZFMatrix< REAL > &Tz)
 
void SUPG (TPZFMatrix< REAL > &Tx, TPZFMatrix< REAL > &Ty, TPZFMatrix< REAL > &Tz)
 
void LS (TPZFMatrix< REAL > &Tx, TPZFMatrix< REAL > &Ty, TPZFMatrix< REAL > &Tz)
 
void Bornhaus (TPZFMatrix< REAL > &Tx, TPZFMatrix< REAL > &Ty, TPZFMatrix< REAL > &Tz)
 

Static Public Member Functions

static void JacobFlux (TPZVec< REAL > U, TPZFMatrix< REAL > &A, TPZFMatrix< REAL > &B, TPZFMatrix< REAL > &C)
 Jacobiano of the tensor flux of Euler. More...
 
static void Roe_Flux (REAL rho_f, REAL rhou_f, REAL rhov_f, REAL rhow_f, REAL rhoE_f, REAL rho_t, REAL rhou_t, REAL rhov_t, REAL rhow_t, REAL rhoE_t, REAL nx, REAL ny, REAL nz, REAL gam, REAL &flux_rho, REAL &flux_rhou, REAL &flux_rhov, REAL &flux_rhow, REAL &flux_rhoE)
 Flux of Roe (MOUSE program) More...
 
static void Roe_Flux (REAL rho_f, REAL rhou_f, REAL rhov_f, REAL rhoE_f, REAL rho_t, REAL rhou_t, REAL rhov_t, REAL rhoE_t, REAL nx, REAL ny, REAL gam, REAL &flux_rho, REAL &flux_rhou, REAL &flux_rhov, REAL &flux_rhoE)
 

Static Public Attributes

static REAL fGamma
 Ratio between specific heat is constant and the specific heat the constant volume of a polytropic gas. More...
 
static REAL fDelta
 Coefficient of size ratio of the element in the diffusion term. More...
 
static REAL fCFL
 Parameter that it limits the condition of stability of the numerical approach. More...
 
static std::string fArtificialDiffusion
 Term that adds stability to the numerical method of approach: SUPG, LS, Bornhaus. More...
 

Private Attributes

TPZFMatrix< REAL > fA
 Matrix computation derivatives of fluxes: dFx/dx, dFy/dy, dFz/dz. More...
 
TPZFMatrix< REAL > fB
 
TPZFMatrix< REAL > fC
 
int fDimension
 Problem dimension. More...
 

Detailed Description

This class adds to the term of diffusion to the variacional formularization
of the differential equation partial compressible of Euler (hyperbolic). Analysis: Solving process Analysis.

This term is introduced to stabilize the numerical method of approach.

Definition at line 21 of file TPZDiffusionConsLaw.h.

Constructor & Destructor Documentation

◆ TPZDiffusionConsLaw() [1/2]

TPZDiffusionConsLaw::TPZDiffusionConsLaw ( )

Default constructor.

Definition at line 19 of file TPZDiffusionConsLaw.cpp.

◆ TPZDiffusionConsLaw() [2/2]

TPZDiffusionConsLaw::TPZDiffusionConsLaw ( TPZVec< REAL >  U,
REAL  gamma,
int  dim,
const std::string &  diff 
)

Constructor for model dimension dim.

Definition at line 27 of file TPZDiffusionConsLaw.cpp.

References fA, fArtificialDiffusion, fB, fC, fDimension, fGamma, gamma(), JacobFlux(), and TPZFMatrix< TVar >::Redim().

◆ ~TPZDiffusionConsLaw()

TPZDiffusionConsLaw::~TPZDiffusionConsLaw ( )

Destructor.

Definition at line 17 of file TPZDiffusionConsLaw.cpp.

Member Function Documentation

◆ Bornhaus()

void TPZDiffusionConsLaw::Bornhaus ( TPZFMatrix< REAL > &  Tx,
TPZFMatrix< REAL > &  Ty,
TPZFMatrix< REAL > &  Tz 
)

Definition at line 131 of file TPZDiffusionConsLaw.cpp.

Referenced by Tau().

◆ CFL()

REAL TPZDiffusionConsLaw::CFL ( int  degree)

Definition at line 46 of file TPZDiffusionConsLaw.cpp.

References fCFL.

Referenced by DeltaOtimo().

◆ Delta()

REAL TPZDiffusionConsLaw::Delta ( )

Definition at line 52 of file TPZDiffusionConsLaw.cpp.

References fDelta.

◆ DeltaOtimo()

REAL TPZDiffusionConsLaw::DeltaOtimo ( )

Definition at line 56 of file TPZDiffusionConsLaw.cpp.

References CFL(), degree(), and TPZCompEl::GetgOrder().

◆ Divergence()

void TPZDiffusionConsLaw::Divergence ( TPZVec< REAL > &  dphi,
TPZFMatrix< REAL > &  diverg 
)

◆ GradientOfTheFlow()

void TPZDiffusionConsLaw::GradientOfTheFlow ( TPZFMatrix< REAL > &  DF1,
TPZFMatrix< REAL > &  DF2,
TPZFMatrix< REAL > &  DF3 
)

Definition at line 39 of file TPZDiffusionConsLaw.cpp.

References fA, fB, and fC.

◆ JacobFlux()

void TPZDiffusionConsLaw::JacobFlux ( TPZVec< REAL >  U,
TPZFMatrix< REAL > &  A,
TPZFMatrix< REAL > &  B,
TPZFMatrix< REAL > &  C 
)
static

Jacobiano of the tensor flux of Euler.

Definition at line 135 of file TPZDiffusionConsLaw.cpp.

References fabs, fGamma, TPZFMatrix< TVar >::Redim(), and TPZMatrix< TVar >::Rows().

Referenced by TPZDiffusionConsLaw().

◆ LS()

void TPZDiffusionConsLaw::LS ( TPZFMatrix< REAL > &  Tx,
TPZFMatrix< REAL > &  Ty,
TPZFMatrix< REAL > &  Tz 
)

Definition at line 124 of file TPZDiffusionConsLaw.cpp.

References fA, fB, fC, and TPZFMatrix< TVar >::Transpose().

Referenced by Tau().

◆ PointOperator()

void TPZDiffusionConsLaw::PointOperator ( TPZVec< REAL > &  dphi,
TPZFMatrix< REAL > &  diff_term 
)

Operation product point in the diffusion term.

Definition at line 78 of file TPZDiffusionConsLaw.cpp.

References fDimension, TPZVec< T >::NElements(), TPZFMatrix< TVar >::Redim(), Tau(), TPZFMatrix< TVar >::Transpose(), and TPZFMatrix< TVar >::Zero().

Referenced by Divergence().

◆ Roe_Flux() [1/2]

void TPZDiffusionConsLaw::Roe_Flux ( REAL  rho_f,
REAL  rhou_f,
REAL  rhov_f,
REAL  rhow_f,
REAL  rhoE_f,
REAL  rho_t,
REAL  rhou_t,
REAL  rhov_t,
REAL  rhow_t,
REAL  rhoE_t,
REAL  nx,
REAL  ny,
REAL  nz,
REAL  gam,
REAL &  flux_rho,
REAL &  flux_rhou,
REAL &  flux_rhov,
REAL &  flux_rhow,
REAL &  flux_rhoE 
)
static

Flux of Roe (MOUSE program)

Definition at line 347 of file TPZDiffusionConsLaw.cpp.

References sqrt.

◆ Roe_Flux() [2/2]

void TPZDiffusionConsLaw::Roe_Flux ( REAL  rho_f,
REAL  rhou_f,
REAL  rhov_f,
REAL  rhoE_f,
REAL  rho_t,
REAL  rhou_t,
REAL  rhov_t,
REAL  rhoE_t,
REAL  nx,
REAL  ny,
REAL  gam,
REAL &  flux_rho,
REAL &  flux_rhou,
REAL &  flux_rhov,
REAL &  flux_rhoE 
)
static

Definition at line 557 of file TPZDiffusionConsLaw.cpp.

References sqrt.

◆ SUPG()

void TPZDiffusionConsLaw::SUPG ( TPZFMatrix< REAL > &  Tx,
TPZFMatrix< REAL > &  Ty,
TPZFMatrix< REAL > &  Tz 
)

Definition at line 120 of file TPZDiffusionConsLaw.cpp.

Referenced by Tau().

◆ Tau()

void TPZDiffusionConsLaw::Tau ( TPZFMatrix< REAL > &  Tx,
TPZFMatrix< REAL > &  Ty,
TPZFMatrix< REAL > &  Tz 
)

Definition at line 103 of file TPZDiffusionConsLaw.cpp.

References Bornhaus(), fArtificialDiffusion, LS(), and SUPG().

Referenced by PointOperator().

Member Data Documentation

◆ fA

TPZFMatrix<REAL> TPZDiffusionConsLaw::fA
private

Matrix computation derivatives of fluxes: dFx/dx, dFy/dy, dFz/dz.

Definition at line 39 of file TPZDiffusionConsLaw.h.

Referenced by GradientOfTheFlow(), LS(), and TPZDiffusionConsLaw().

◆ fArtificialDiffusion

std::string TPZDiffusionConsLaw::fArtificialDiffusion
static

Term that adds stability to the numerical method of approach: SUPG, LS, Bornhaus.

Definition at line 35 of file TPZDiffusionConsLaw.h.

Referenced by Divergence(), Tau(), and TPZDiffusionConsLaw().

◆ fB

TPZFMatrix<REAL> TPZDiffusionConsLaw::fB
private

Definition at line 39 of file TPZDiffusionConsLaw.h.

Referenced by GradientOfTheFlow(), LS(), and TPZDiffusionConsLaw().

◆ fC

TPZFMatrix<REAL> TPZDiffusionConsLaw::fC
private

Definition at line 39 of file TPZDiffusionConsLaw.h.

Referenced by GradientOfTheFlow(), LS(), and TPZDiffusionConsLaw().

◆ fCFL

REAL TPZDiffusionConsLaw::fCFL
static

Parameter that it limits the condition of stability of the numerical approach.

Definition at line 32 of file TPZDiffusionConsLaw.h.

Referenced by CFL().

◆ fDelta

REAL TPZDiffusionConsLaw::fDelta
static

Coefficient of size ratio of the element in the diffusion term.

Definition at line 29 of file TPZDiffusionConsLaw.h.

Referenced by Delta().

◆ fDimension

int TPZDiffusionConsLaw::fDimension
private

Problem dimension.

Definition at line 42 of file TPZDiffusionConsLaw.h.

Referenced by Divergence(), PointOperator(), and TPZDiffusionConsLaw().

◆ fGamma

REAL TPZDiffusionConsLaw::fGamma
static

Ratio between specific heat is constant and the specific heat the constant volume of a polytropic gas.

Definition at line 26 of file TPZDiffusionConsLaw.h.

Referenced by JacobFlux(), and TPZDiffusionConsLaw().


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