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>
100 inline const DoubleTab&
rho_n()
const {
return loi_etat_->rho_n(); }
101 inline const DoubleTab&
rho_np1()
const {
return loi_etat_->rho_np1(); }
118 inline double calculer_H(
double hh)
const {
return loi_etat_->calculer_H(
Pth_,hh); }
122 inline const DoubleTab&
rho_discvit()
const {
return eos_tools_->rho_discvit(); }
123 inline const DoubleTab&
rho_face_n()
const {
return eos_tools_->rho_face_n(); }
124 inline const DoubleTab&
rho_face_np1()
const {
return eos_tools_->rho_face_np1(); }
125 inline void calculer_rho_face(
const DoubleTab& tab_rho) { eos_tools_->calculer_rho_face_np1(tab_rho); }
126 inline void divu_discvit(DoubleTab& secmem1, DoubleTab& secmem2) { eos_tools_->divu_discvit(secmem1,secmem2); }
127 inline double moyenne_vol(
const DoubleTab& A)
const {
return eos_tools_->moyenne_vol(A); }
149 loi_etat_->remplir_T();
classe Champ_Don_base classe de base des Champs donnes (non calcules)
classe Champ_base Cette classe est la base de la hierarchie des champs.
classe Discretisation_base Cette classe represente un schema de discretisation en espace,...
classe Domaine_Cl_dis_base Les objets Domaine_Cl_dis_base representent les conditions aux limites
classe EDO_Pression_th_base Cette classe est la base de la hierarchie des EDO sur la pression
classe Fluide_Dilatable_base Cette classe represente un d'un fluide dilatable,
const Champ_Don_base & ch_temperature() const
Renvoie le champ de le temperature.
const Champ_base & get_champ(const Motcle &nom) const override
void creer_champ(const Motcle &motlu) override
int initialiser(const double temps) override
Initialise les parametres du fluide.
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
Renvoie le tableau des valeurs de le temperature.
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
Effectue une mise a jour en temps du milieu, et donc de ses parametres caracteristiques.
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
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
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()
Calcule la pression totale : pression thermodynamique + pression hydrodynamique.
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
Calcul de 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
Prepare le fluide au calcul.
void preparer_pas_temps()
Prepare le pas de temps.
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)
Complete le fluide avec un Cp constant.
void verifier_coherence_champs(int &err, Nom &message) override
Verifie que les champs lus l'ont ete correctement.
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 &)
Complete le fluide avec les champs inconnus associes au probleme.
void calculer_rho_face(const DoubleTab &tab_rho)
classe Fluide_base Cette classe represente un d'un fluide incompressible ainsi que
classe Loi_Etat_base Cette classe est la base de la hierarchie des lois d'etat.
Une chaine de caractere (Nom) en majuscules.
class Nom Une chaine de caractere pour nommer les objets de TRUST
Un tableau de chaine de caracteres (VECT(Nom)).
Helper class to factorize the readOn method of Objet_U classes.
classe Probleme_base C'est un Probleme_U qui n'est pas un couplage.