NeoPZ
|
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>
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... | |
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.
TPZDiffusionConsLaw::TPZDiffusionConsLaw | ( | ) |
Default constructor.
Definition at line 19 of file TPZDiffusionConsLaw.cpp.
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 | ( | ) |
Destructor.
Definition at line 17 of file TPZDiffusionConsLaw.cpp.
void TPZDiffusionConsLaw::Bornhaus | ( | TPZFMatrix< REAL > & | Tx, |
TPZFMatrix< REAL > & | Ty, | ||
TPZFMatrix< REAL > & | Tz | ||
) |
Definition at line 131 of file TPZDiffusionConsLaw.cpp.
Referenced by Tau().
REAL TPZDiffusionConsLaw::CFL | ( | int | degree | ) |
REAL TPZDiffusionConsLaw::Delta | ( | ) |
Definition at line 52 of file TPZDiffusionConsLaw.cpp.
References fDelta.
REAL TPZDiffusionConsLaw::DeltaOtimo | ( | ) |
Definition at line 56 of file TPZDiffusionConsLaw.cpp.
References CFL(), degree(), and TPZCompEl::GetgOrder().
void TPZDiffusionConsLaw::Divergence | ( | TPZVec< REAL > & | dphi, |
TPZFMatrix< REAL > & | diverg | ||
) |
Definition at line 64 of file TPZDiffusionConsLaw.cpp.
References fArtificialDiffusion, fDimension, PointOperator(), TPZFMatrix< TVar >::Redim(), and TPZFMatrix< TVar >::Zero().
void TPZDiffusionConsLaw::GradientOfTheFlow | ( | TPZFMatrix< REAL > & | DF1, |
TPZFMatrix< REAL > & | DF2, | ||
TPZFMatrix< REAL > & | DF3 | ||
) |
Definition at line 39 of file TPZDiffusionConsLaw.cpp.
|
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().
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().
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().
|
static |
Flux of Roe (MOUSE program)
Definition at line 347 of file TPZDiffusionConsLaw.cpp.
References sqrt.
|
static |
Definition at line 557 of file TPZDiffusionConsLaw.cpp.
References sqrt.
void TPZDiffusionConsLaw::SUPG | ( | TPZFMatrix< REAL > & | Tx, |
TPZFMatrix< REAL > & | Ty, | ||
TPZFMatrix< REAL > & | Tz | ||
) |
Definition at line 120 of file TPZDiffusionConsLaw.cpp.
Referenced by 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().
|
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().
|
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().
|
private |
Definition at line 39 of file TPZDiffusionConsLaw.h.
Referenced by GradientOfTheFlow(), LS(), and TPZDiffusionConsLaw().
|
private |
Definition at line 39 of file TPZDiffusionConsLaw.h.
Referenced by GradientOfTheFlow(), LS(), and TPZDiffusionConsLaw().
|
static |
Parameter that it limits the condition of stability of the numerical approach.
Definition at line 32 of file TPZDiffusionConsLaw.h.
Referenced by CFL().
|
static |
Coefficient of size ratio of the element in the diffusion term.
Definition at line 29 of file TPZDiffusionConsLaw.h.
Referenced by Delta().
|
private |
Problem dimension.
Definition at line 42 of file TPZDiffusionConsLaw.h.
Referenced by Divergence(), PointOperator(), and TPZDiffusionConsLaw().
|
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().