16#ifndef Fluide_Dilatable_base_included
17#define Fluide_Dilatable_base_included
19#include <EDO_Pression_th_base.h>
20#include <EOS_Tools_base.h>
22#include <Loi_Etat_base.h>
23#include <Fluide_base.h>
24#include <TRUST_Deriv.h>
98 inline const DoubleTab&
rho_n()
const {
return loi_etat_->rho_n(); }
99 inline const DoubleTab&
rho_np1()
const {
return loi_etat_->rho_np1(); }
116 inline double calculer_H(
double hh)
const {
return loi_etat_->calculer_H(
Pth_,hh); }
120 inline const DoubleTab&
rho_discvit()
const {
return eos_tools_->rho_discvit(); }
121 inline const DoubleTab&
rho_face_n()
const {
return eos_tools_->rho_face_n(); }
122 inline const DoubleTab&
rho_face_np1()
const {
return eos_tools_->rho_face_np1(); }
123 inline void calculer_rho_face(
const DoubleTab& tab_rho) { eos_tools_->calculer_rho_face_np1(tab_rho); }
124 inline void divu_discvit(DoubleTab& secmem1, DoubleTab& secmem2) { eos_tools_->divu_discvit(secmem1,secmem2); }
125 inline double moyenne_vol(
const DoubleTab& A)
const {
return eos_tools_->moyenne_vol(A); }
147 loi_etat_->remplir_T();
class Champ_Don_base base class of Given Fields (not calculated)
class Champ_base This class is the base of the fields hierarchy.
class Discretisation_base This class represents a spatial discretization scheme, which
class Domaine_Cl_dis_base Domaine_Cl_dis_base objects represent discretized boundary conditions
Base class of the ODE hierarchy for thermodynamic pressure associated with the scheme resolution for ...
Base class for a dilatable fluid, inheriting from Fluide_base.
const Champ_Don_base & ch_temperature() const
Returns the temperature field.
const Champ_base & get_champ(const Motcle &nom) const override
void creer_champ(const Motcle &motlu) override
int initialiser(const double temps) override
Initializes the fluid parameters.
bool has_champ(const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override
OBS_PTR(Champ_Inc_base) ch_inco_chaleur_
void set_pression_th(double Pth)
double pression_th() const
void warn_syntax_Sutherland()
const DoubleTab & temperature() const
Returns the array of temperature values.
Probleme_base & get_problem()
const DoubleTab & rho_n() const
bool has_source_masse_espece_champ() const
const Champ_Don_base & source_masse_projection() const
void abortTimeStep() override
virtual void Resoudre_EDO_PT()=0
int getTraitementPth() const
double moyenne_vol(const DoubleTab &A) const
void calculer_mu_sur_Sc()
void mettre_a_jour(double) override
Performs a time update of the medium and therefore of its characteristic parameters.
const DoubleTab & rho_face_n() const
void calculer_nu() override
Champ_Don_base & nu_sur_Schmidt()
const DoubleTab & rho_discvit() const
OWN_PTR(Loi_Etat_base) loi_etat_
const double & get_pression_th() const
void creer_champs_non_lus() override
int lire_motcle_non_standard(const Motcle &, Entree &) override
Reads non-simple-type parameters of an Objet_U from an input stream.
bool has_source_masse_projection_champ() const
OWN_PTR(Loi_Etat_base) &loi_etat()
Champ_Inc_base & inco_chaleur()
Champ_Don_base & mu_sur_Schmidt()
Champ_Don_base & pression_tot()
Champ_Don_base & source_masse_espece()
void initialiser_inco_ch()
virtual void calculer_pression_tot()
Computes the total pressure: thermodynamic pressure + hydrodynamic pressure.
virtual void checkTraitementPth(const Domaine_Cl_dis_base &)
void completer_edo(const Probleme_base &)
const Champ_Inc_base & inco_chaleur() const
virtual void remplir_champ_pression_tot(int n, const DoubleTab &PHydro, DoubleTab &PTot)=0
const Champ_Don_base & source_masse_espece() const
virtual void secmembre_divU_Z(DoubleTab &) const =0
const Champ_Don_base & nu_sur_Schmidt() const
virtual void update_pressure_fields(double)
const Champ_Don_base & mu_sur_Schmidt() const
void calculer_alpha() override
Computes alpha=lambda/(rho*Cp).
virtual void write_mean_edo(double)
void discretiser(const Probleme_base &pb, const Discretisation_base &dis) override
void prepare_pressure_edo()
void preparer_calcul() override
Prepares the fluid for computation.
void preparer_pas_temps()
Prepares the time step.
const OWN_PTR(Loi_Etat_base) &loi_etat() const
OWN_PTR(EDO_Pression_th_base) EDO_Pth_
void update_rho_cp(double temps) override
void calculer_nu_sur_Sc()
const Champ_Inc_base & vitesse() const
const DoubleTab & rho_np1() const
OBS_PTR(Probleme_base) le_probleme_
const DoubleTab & rho_face_np1() const
void calculer_masse_volumique()
double calculer_H(double hh) const
double pression_th1() const
void initialiser_radiatives(const double temps)
OWN_PTR(EOS_Tools_base) eos_tools_
void set_Cp(double)
Completes the fluid with a constant Cp.
void verifier_coherence_champs(int &err, Nom &message) override
Verifies that the fields read have been correctly set.
Champ_Don_base & source_masse_projection()
void set_param(Param ¶m) const override
virtual void write_header_edo()
const Nom type_fluide() const
bool is_dilatable() const override
void divu_discvit(DoubleTab &secmem1, DoubleTab &secmem2)
double pression_thn() const
const Champ_Don_base & pression_tot() const
void get_noms_champs_postraitables(Noms &nom, Option opt=NONE) const override
virtual void completer(const Probleme_base &)
Completes the fluid with the unknown fields associated with the problem.
void calculer_rho_face(const DoubleTab &tab_rho)
Base class for an incompressible fluid and its properties:
Base class for the state law hierarchy defining a dilatable fluid.
A character string (Nom) in uppercase.
class Nom: a character string for naming TRUST objects.
An array of character strings (VECT(Nom)).
Helper class to factorize the readOn method of Objet_U classes.
class Probleme_base It is a Probleme_U that is not a coupling.