Documentation 6b54b78464
Loading...
Searching...
No Matches
CFluidModel Class Reference

Main class for defining the Thermo-Physical Model. More...

#include <CFluidModel.hpp>

Inheritance diagram for CFluidModel:
[legend]

Public Member Functions

virtual ~CFluidModel ()
 
su2double GetPressure () const
 Get fluid pressure.
 
su2double GetTemperature () const
 Get fluid temperature.
 
su2double GetEntropy () const
 Get fluid entropy.
 
su2double GetStaticEnergy () const
 Get fluid internal energy.
 
su2double GetEnthalpy () const
 Get fluid enthalpy.
 
su2double GetDensity () const
 Get fluid density.
 
su2double GetSoundSpeed () const
 Get fluid speed of sound.
 
su2double GetSoundSpeed2 () const
 Get fluid speed of sound squared.
 
su2double GetCp () const
 Get fluid specific heat at constant pressure.
 
su2double GetCv () const
 Get fluid specific heat at constant volume.
 
virtual unsigned short GetNScalars () const
 Flamelet LUT - Get the number of transported scalars.
 
virtual unsigned long EvaluateDataSet (const vector< su2double > &input_scalar, unsigned short lookup_type, vector< su2double > &output_refs)
 Evaluate data-set for flamelet or data-driven fluid simulations.
 
virtual su2double GetLaminarViscosity ()
 Get fluid dynamic viscosity.
 
virtual su2double GetThermalConductivity ()
 Get fluid thermal conductivity.
 
virtual su2double GetMassDiffusivity (int iVar)
 Get fluid mass diffusivity.
 
virtual void GetEnthalpyDiffusivity (su2double *enthalpy_diffusions=nullptr) const
 Get the enthalpy diffusivity terms for all species being solved.
 
virtual void GetGradEnthalpyDiffusivity (su2double *grad_enthalpy_diffusions=nullptr) const
 Get the gradient of enthalpy diffusivity terms for all species being solved.
 
su2double GetdPdrho_e () const
 Get fluid pressure partial derivative.
 
su2double GetdPde_rho () const
 Get fluid pressure partial derivative.
 
su2double GetdTdrho_e () const
 Get fluid temperature partial derivative.
 
su2double GetdTde_rho () const
 Get fluid temperature partial derivative.
 
su2double Getdhdrho_P () const
 Get fluid enthalpy partial derivative.
 
su2double GetdhdP_rho () const
 Get fluid enthalpy partial derivative.
 
su2double Getdsdrho_P () const
 Get fluid entropy partial derivative.
 
su2double GetdsdP_rho () const
 Get fluid entropy partial derivative.
 
su2double Getdmudrho_T ()
 Get fluid dynamic viscosity partial derivative.
 
su2double GetdmudT_rho ()
 Get fluid dynamic viscosity partial derivative.
 
su2double Getdktdrho_T () const
 Get fluid thermal conductivity partial derivative.
 
su2double GetdktdT_rho () const
 Get fluid thermal conductivity partial derivative.
 
virtual void SetCpModel (const CConfig *config, su2double val_Temperature_Ref)
 Set specific heat Cp model.
 
virtual void SetLaminarViscosityModel (const CConfig *config)
 Set viscosity model.
 
virtual void SetThermalConductivityModel (const CConfig *config)
 Set thermal conductivity model.
 
virtual void SetMassDiffusivityModel (const CConfig *config)
 Set mass diffusivity model.
 
virtual void SetTDState_rhoe (su2double rho, su2double e)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_PT (su2double P, su2double T)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_Prho (su2double P, su2double rho)
 virtual member that would be different for each gas model implemented
 
virtual void SetEnergy_Prho (su2double P, su2double rho)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_hs (su2double h, su2double s)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_rhoT (su2double rho, su2double T)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_Ps (su2double P, su2double s)
 virtual member that would be different for each gas model implemented
 
virtual void ComputeDerivativeNRBC_Prho (su2double P, su2double rho)
 virtual member that would be different for each gas model implemented
 
virtual void SetTDState_T (su2double val_Temperature, const su2double *val_scalars=nullptr)
 Virtual member.
 
virtual void SetTDState_h (su2double val_enthalpy, const su2double *val_scalars=nullptr)
 Virtual member.
 
void SetEddyViscosity (su2double val_Mu_Turb)
 Set fluid eddy viscosity provided by a turbulence model needed for computing effective thermal conductivity.
 
void SetPressure (su2double val_pressure)
 Set the thermodynamic pressure of the incompressible fluid models.
 
virtual unsigned long GetExtrapolation () const
 Get fluid model extrapolation instance.
 
virtual bool GetPreferentialDiffusion () const
 Get the state of the Preferential diffusion model for flamelet simulations.
 
virtual unsigned long GetnIter_Newton ()
 Get number of Newton solver iterations.
 

Static Protected Member Functions

static unique_ptr< CViscosityModel > MakeLaminarViscosityModel (const CConfig *config, unsigned short iSpecies)
 Instantiate the right type of viscosity model based on config.
 
static unique_ptr< CConductivityModel > MakeThermalConductivityModel (const CConfig *config, unsigned short iSpecies)
 Instantiate the right type of conductivity model based on config.
 
static unique_ptr< CDiffusivityModel > MakeMassDiffusivityModel (const CConfig *config, unsigned short iSpecies)
 Instantiate the right type of mass diffusivity model based on config.
 

Protected Attributes

su2double StaticEnergy {0.0}
 Internal Energy.
 
su2double Enthalpy {0.0}
 Enthalpy.
 
su2double Entropy {0.0}
 Entropy.
 
su2double Density {0.0}
 Density.
 
su2double Pressure {0.0}
 Pressure.
 
su2double SoundSpeed2 {0.0}
 SpeedSound.
 
su2double Temperature {0.0}
 Temperature.
 
su2double dPdrho_e {0.0}
 DpDd_e.
 
su2double dPde_rho {0.0}
 DpDe_d.
 
su2double dTdrho_e {0.0}
 DTDd_e.
 
su2double dTde_rho {0.0}
 DTDe_d.
 
su2double dhdrho_P {0.0}
 DhDrho_p.
 
su2double dhdP_rho {0.0}
 DhDp_rho.
 
su2double dsdrho_P {0.0}
 DsDrho_p.
 
su2double dsdP_rho {0.0}
 DsDp_rho.
 
su2double Cp {0.0}
 Specific Heat Capacity at constant pressure.
 
su2double Cv {0.0}
 Specific Heat Capacity at constant volume.
 
su2double Mu {0.0}
 Laminar viscosity.
 
su2double Mu_Turb {0.0}
 Eddy viscosity provided by a turbulence model.
 
su2double dmudrho_T {0.0}
 Partial derivative of viscosity w.r.t. density.
 
su2double dmudT_rho {0.0}
 Partial derivative of viscosity w.r.t. temperature.
 
su2double Kt {0.0}
 Thermal conductivity.
 
su2double dktdrho_T {0.0}
 Partial derivative of conductivity w.r.t. density.
 
su2double dktdT_rho {0.0}
 Partial derivative of conductivity w.r.t. temperature.
 
su2double mass_diffusivity {0.0}
 Mass Diffusivity.
 
unique_ptr< CViscosityModel > LaminarViscosity
 Laminar Viscosity Model.
 
unique_ptr< CConductivityModel > ThermalConductivity
 Thermal Conductivity Model.
 
unique_ptr< CDiffusivityModel > MassDiffusivity
 Mass Diffusivity Model.
 

Detailed Description

Main class for defining the Thermo-Physical Model.

Author
: S.Vitale, G.Gori, M.Pini, T. Economon

Constructor & Destructor Documentation

◆ ~CFluidModel()

virtual CFluidModel::~CFluidModel ( )
inlinevirtual

Member Function Documentation

◆ ComputeDerivativeNRBC_Prho()

virtual void CFluidModel::ComputeDerivativeNRBC_Prho ( su2double  P,
su2double  rho 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("Pv").
[in]th1- first thermodynamic variable (P).
[in]th2- second thermodynamic variable (v).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ EvaluateDataSet()

virtual unsigned long CFluidModel::EvaluateDataSet ( const vector< su2double > &  input_scalar,
unsigned short  lookup_type,
vector< su2double > &  output_refs 
)
inlinevirtual

Evaluate data-set for flamelet or data-driven fluid simulations.

Parameters
[in]input_scalar- data manifold query data.
[in]lookup_type- look-up operation to be performed.
[in]output_refs- output variables where interpolated results are stored.
[out]Extrapolation- query data is within manifold bounds (0) or out of bounds (1).

Reimplemented in CFluidFlamelet.

◆ GetCp()

su2double CFluidModel::GetCp ( ) const
inline

Get fluid specific heat at constant pressure.

◆ GetCv()

su2double CFluidModel::GetCv ( ) const
inline

Get fluid specific heat at constant volume.

◆ GetDensity()

su2double CFluidModel::GetDensity ( ) const
inline

Get fluid density.

◆ GetdhdP_rho()

su2double CFluidModel::GetdhdP_rho ( ) const
inline

Get fluid enthalpy partial derivative.

◆ Getdhdrho_P()

su2double CFluidModel::Getdhdrho_P ( ) const
inline

Get fluid enthalpy partial derivative.

◆ Getdktdrho_T()

su2double CFluidModel::Getdktdrho_T ( ) const
inline

Get fluid thermal conductivity partial derivative.

◆ GetdktdT_rho()

su2double CFluidModel::GetdktdT_rho ( ) const
inline

Get fluid thermal conductivity partial derivative.

◆ Getdmudrho_T()

su2double CFluidModel::Getdmudrho_T ( )
inline

Get fluid dynamic viscosity partial derivative.

◆ GetdmudT_rho()

su2double CFluidModel::GetdmudT_rho ( )
inline

Get fluid dynamic viscosity partial derivative.

◆ GetdPde_rho()

su2double CFluidModel::GetdPde_rho ( ) const
inline

Get fluid pressure partial derivative.

◆ GetdPdrho_e()

su2double CFluidModel::GetdPdrho_e ( ) const
inline

Get fluid pressure partial derivative.

◆ GetdsdP_rho()

su2double CFluidModel::GetdsdP_rho ( ) const
inline

Get fluid entropy partial derivative.

◆ Getdsdrho_P()

su2double CFluidModel::Getdsdrho_P ( ) const
inline

Get fluid entropy partial derivative.

◆ GetdTde_rho()

su2double CFluidModel::GetdTde_rho ( ) const
inline

Get fluid temperature partial derivative.

◆ GetdTdrho_e()

su2double CFluidModel::GetdTdrho_e ( ) const
inline

Get fluid temperature partial derivative.

◆ GetEnthalpy()

su2double CFluidModel::GetEnthalpy ( ) const
inline

Get fluid enthalpy.

◆ GetEnthalpyDiffusivity()

virtual void CFluidModel::GetEnthalpyDiffusivity ( su2double *  enthalpy_diffusions = nullptr) const
inlinevirtual

Get the enthalpy diffusivity terms for all species being solved.

This function computes and retrieves the enthalpy diffusion terms required in the energy equation for multicomponent flows.

Parameters
[in,out]enthalpy_diffusions- Array containing the enthalpy diffusion terms for all species to be solved. The size of enthalpy_diffusions must be at least (n_species_mixture - 1), corresponding to the number of species transport equations in the system.

Reimplemented in CFluidScalar.

◆ GetEntropy()

su2double CFluidModel::GetEntropy ( ) const
inline

Get fluid entropy.

◆ GetExtrapolation()

virtual unsigned long CFluidModel::GetExtrapolation ( ) const
inlinevirtual

Get fluid model extrapolation instance.

Returns
Query point lies outside fluid model data range.

Reimplemented in CDataDrivenFluid, and CFluidFlamelet.

◆ GetGradEnthalpyDiffusivity()

virtual void CFluidModel::GetGradEnthalpyDiffusivity ( su2double *  grad_enthalpy_diffusions = nullptr) const
inlinevirtual

Get the gradient of enthalpy diffusivity terms for all species being solved.

This function computes and retrieves the gradient of the enthalpy diffusion terms with respect to temperature. These terms are required for implicit computations when solving the energy equation for multicomponent flows.

Parameters
[in,out]grad_enthalpy_diffusions- Array containing the gradient of enthalpy diffusion terms for all species to be solved. The size of grad_enthalpy_diffusions must be at least (n_species_mixture - 1), corresponding to the number of species transport equations in the system.

Reimplemented in CFluidScalar.

◆ GetLaminarViscosity()

virtual su2double CFluidModel::GetLaminarViscosity ( )
inlinevirtual

Get fluid dynamic viscosity.

Reimplemented in CFluidFlamelet, and CFluidScalar.

◆ GetMassDiffusivity()

virtual su2double CFluidModel::GetMassDiffusivity ( int  iVar)
inlinevirtual

Get fluid mass diffusivity.

Reimplemented in CFluidFlamelet, and CFluidScalar.

◆ GetnIter_Newton()

virtual unsigned long CFluidModel::GetnIter_Newton ( )
inlinevirtual

Get number of Newton solver iterations.

Returns
Newton solver iteration count at termination.

Reimplemented in CDataDrivenFluid.

◆ GetNScalars()

virtual unsigned short CFluidModel::GetNScalars ( ) const
inlinevirtual

Flamelet LUT - Get the number of transported scalars.

◆ GetPreferentialDiffusion()

virtual bool CFluidModel::GetPreferentialDiffusion ( ) const
inlinevirtual

Get the state of the Preferential diffusion model for flamelet simulations.

Returns
True if preferential diffusion model is active, false otherwise.

Reimplemented in CFluidFlamelet.

◆ GetPressure()

su2double CFluidModel::GetPressure ( ) const
inline

Get fluid pressure.

◆ GetSoundSpeed()

su2double CFluidModel::GetSoundSpeed ( ) const
inline

Get fluid speed of sound.

◆ GetSoundSpeed2()

su2double CFluidModel::GetSoundSpeed2 ( ) const
inline

Get fluid speed of sound squared.

◆ GetStaticEnergy()

su2double CFluidModel::GetStaticEnergy ( ) const
inline

Get fluid internal energy.

◆ GetTemperature()

su2double CFluidModel::GetTemperature ( ) const
inline

Get fluid temperature.

◆ GetThermalConductivity()

virtual su2double CFluidModel::GetThermalConductivity ( )
inlinevirtual

Get fluid thermal conductivity.

Reimplemented in CFluidFlamelet, and CFluidScalar.

◆ MakeLaminarViscosityModel()

unique_ptr< CViscosityModel > CFluidModel::MakeLaminarViscosityModel ( const CConfig *  config,
unsigned short  iSpecies 
)
staticprotected

Instantiate the right type of viscosity model based on config.

◆ MakeMassDiffusivityModel()

unique_ptr< CDiffusivityModel > CFluidModel::MakeMassDiffusivityModel ( const CConfig *  config,
unsigned short  iSpecies 
)
staticprotected

Instantiate the right type of mass diffusivity model based on config.

◆ MakeThermalConductivityModel()

unique_ptr< CConductivityModel > CFluidModel::MakeThermalConductivityModel ( const CConfig *  config,
unsigned short  iSpecies 
)
staticprotected

Instantiate the right type of conductivity model based on config.

◆ SetCpModel()

virtual void CFluidModel::SetCpModel ( const CConfig *  config,
su2double  val_Temperature_Ref 
)
inlinevirtual

Set specific heat Cp model.

Reimplemented in CIncIdealGasPolynomial< N >.

◆ SetEddyViscosity()

void CFluidModel::SetEddyViscosity ( su2double  val_Mu_Turb)
inline

Set fluid eddy viscosity provided by a turbulence model needed for computing effective thermal conductivity.

◆ SetEnergy_Prho()

virtual void CFluidModel::SetEnergy_Prho ( su2double  P,
su2double  rho 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("Pv").
[in]th1- first thermodynamic variable (P).
[in]th2- second thermodynamic variable (v).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetLaminarViscosityModel()

void CFluidModel::SetLaminarViscosityModel ( const CConfig *  config)
virtual

Set viscosity model.

Reimplemented in CFluidScalar.

◆ SetMassDiffusivityModel()

void CFluidModel::SetMassDiffusivityModel ( const CConfig *  config)
virtual

Set mass diffusivity model.

Reimplemented in CFluidScalar.

◆ SetPressure()

void CFluidModel::SetPressure ( su2double  val_pressure)
inline

Set the thermodynamic pressure of the incompressible fluid models.

◆ SetTDState_h()

virtual void CFluidModel::SetTDState_h ( su2double  val_enthalpy,
const su2double *  val_scalars = nullptr 
)
inlinevirtual

Virtual member.

Parameters
[in]val_enthalpy- Enthalpy value at the point.
[in]val_scalars- Scalar mass fractions.

Reimplemented in CConstantDensity, CFluidFlamelet, CFluidScalar, CIncIdealGas, and CIncIdealGasPolynomial< N >.

◆ SetTDState_hs()

virtual void CFluidModel::SetTDState_hs ( su2double  h,
su2double  s 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("hs").
[in]th1- first thermodynamic variable (h).
[in]th2- second thermodynamic variable (s).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_Prho()

virtual void CFluidModel::SetTDState_Prho ( su2double  P,
su2double  rho 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("Pv").
[in]th1- first thermodynamic variable (P).
[in]th2- second thermodynamic variable (v).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_Ps()

virtual void CFluidModel::SetTDState_Ps ( su2double  P,
su2double  s 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("Pv").
[in]th1- first thermodynamic variable (P).
[in]th2- second thermodynamic variable (s).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_PT()

virtual void CFluidModel::SetTDState_PT ( su2double  P,
su2double  T 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("PT").
[in]th1- first thermodynamic variable (P).
[in]th2- second thermodynamic variable (T).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_rhoe()

virtual void CFluidModel::SetTDState_rhoe ( su2double  rho,
su2double  e 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("e, rho").
[in]rho- first thermodynamic variable.
[in]e- second thermodynamic variable.

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_rhoT()

virtual void CFluidModel::SetTDState_rhoT ( su2double  rho,
su2double  T 
)
inlinevirtual

virtual member that would be different for each gas model implemented

Parameters
[in]InputSpec- Input pair for FLP calls ("rhoT").
[in]th1- first thermodynamic variable (rho).
[in]th2- second thermodynamic variable (T).

Reimplemented in CDataDrivenFluid, CIdealGas, CPengRobinson, and CVanDerWaalsGas.

◆ SetTDState_T()

virtual void CFluidModel::SetTDState_T ( su2double  val_Temperature,
const su2double *  val_scalars = nullptr 
)
inlinevirtual

Virtual member.

Parameters
[in]T- Temperature value at the point.

Reimplemented in CConstantDensity, CIncIdealGas, CIncIdealGasPolynomial< N >, CFluidScalar, and CFluidFlamelet.

◆ SetThermalConductivityModel()

void CFluidModel::SetThermalConductivityModel ( const CConfig *  config)
virtual

Set thermal conductivity model.

Reimplemented in CFluidScalar.

Member Data Documentation

◆ Cp

su2double CFluidModel::Cp {0.0}
protected

Specific Heat Capacity at constant pressure.

◆ Cv

su2double CFluidModel::Cv {0.0}
protected

Specific Heat Capacity at constant volume.

◆ Density

su2double CFluidModel::Density {0.0}
protected

Density.

◆ dhdP_rho

su2double CFluidModel::dhdP_rho {0.0}
protected

DhDp_rho.

◆ dhdrho_P

su2double CFluidModel::dhdrho_P {0.0}
protected

DhDrho_p.

◆ dktdrho_T

su2double CFluidModel::dktdrho_T {0.0}
protected

Partial derivative of conductivity w.r.t. density.

◆ dktdT_rho

su2double CFluidModel::dktdT_rho {0.0}
protected

Partial derivative of conductivity w.r.t. temperature.

◆ dmudrho_T

su2double CFluidModel::dmudrho_T {0.0}
protected

Partial derivative of viscosity w.r.t. density.

◆ dmudT_rho

su2double CFluidModel::dmudT_rho {0.0}
protected

Partial derivative of viscosity w.r.t. temperature.

◆ dPde_rho

su2double CFluidModel::dPde_rho {0.0}
protected

DpDe_d.

◆ dPdrho_e

su2double CFluidModel::dPdrho_e {0.0}
protected

DpDd_e.

◆ dsdP_rho

su2double CFluidModel::dsdP_rho {0.0}
protected

DsDp_rho.

◆ dsdrho_P

su2double CFluidModel::dsdrho_P {0.0}
protected

DsDrho_p.

◆ dTde_rho

su2double CFluidModel::dTde_rho {0.0}
protected

DTDe_d.

◆ dTdrho_e

su2double CFluidModel::dTdrho_e {0.0}
protected

DTDd_e.

◆ Enthalpy

su2double CFluidModel::Enthalpy {0.0}
protected

Enthalpy.

◆ Entropy

su2double CFluidModel::Entropy {0.0}
protected

Entropy.

◆ Kt

su2double CFluidModel::Kt {0.0}
protected

Thermal conductivity.

◆ LaminarViscosity

unique_ptr<CViscosityModel> CFluidModel::LaminarViscosity
protected

Laminar Viscosity Model.

◆ mass_diffusivity

su2double CFluidModel::mass_diffusivity {0.0}
protected

Mass Diffusivity.

◆ MassDiffusivity

unique_ptr<CDiffusivityModel> CFluidModel::MassDiffusivity
protected

Mass Diffusivity Model.

◆ Mu

su2double CFluidModel::Mu {0.0}
protected

Laminar viscosity.

◆ Mu_Turb

su2double CFluidModel::Mu_Turb {0.0}
protected

Eddy viscosity provided by a turbulence model.

◆ Pressure

su2double CFluidModel::Pressure {0.0}
protected

Pressure.

◆ SoundSpeed2

su2double CFluidModel::SoundSpeed2 {0.0}
protected

SpeedSound.

◆ StaticEnergy

su2double CFluidModel::StaticEnergy {0.0}
protected

Internal Energy.

◆ Temperature

su2double CFluidModel::Temperature {0.0}
protected

Temperature.

◆ ThermalConductivity

unique_ptr<CConductivityModel> CFluidModel::ThermalConductivity
protected

Thermal Conductivity Model.


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