16#include <Convection_Diffusion_Fluide_Dilatable_base.h>
17#include <Source_Masse_Fluide_Dilatable_VDF.h>
18#include <Fluide_Weakly_Compressible.h>
20#include <Domaine_VF.h>
93 DoubleTrav val_flux(zvf.
nb_faces(), 1);
97 for (
int n_bord = 0; n_bord < domaine_cl_dis_->nb_cond_lim(); n_bord++)
99 const Cond_lim& la_cl = domaine_cl_dis_->les_conditions_limites(n_bord);
105 for (
int num_face = ndeb; num_face < nfin; num_face++)
107 const int elem1 = face_voisins(num_face, 0), elem2 = face_voisins(num_face, 1);
108 int elem = elem1 == -1 ? elem2 : elem1;
110 double srcmass = -(Y(elem) * val_flux(num_face, 0) * surface_elem) / rho(elem);
113 resu(elem) += srcmass;
116 (*post_src_ch).valeurs()(elem) = srcmass;
137 DoubleTrav val_flux(zvf.
nb_faces(), 1);
141 for (
int n_bord = 0; n_bord < domaine_cl_dis_->nb_cond_lim(); n_bord++)
143 const Cond_lim& la_cl = domaine_cl_dis_->les_conditions_limites(n_bord);
150 for (
int num_face = ndeb; num_face < nfin; num_face++)
152 const int elem1 = face_voisins(num_face, 0), elem2 = face_voisins(num_face, 1);
153 int elem = elem1 == -1 ? elem2 : elem1;
155 const double source_per_dv = val_flux(num_face, 0) * surf / zvf.
volumes(elem);
156 resu(elem) -= source_per_dv;
159 (*post_src_ch).valeurs()(elem) = source_per_dv;
classe Champ_Don_base classe de base des Champs donnes (non calcules)
DoubleTab & valeurs() override
Renvoie le tableau des valeurs du champ au temps courant.
virtual DoubleTab & valeurs()=0
double temps() const
Renvoie le temps du champ.
classe Cond_lim Classe generique servant a representer n'importe quelle classe
classe Convection_Diffusion_Fluide_Dilatable_base pour un fluide dilatable
const Champ_Inc_base & inconnue() const override
classe Domaine_Cl_dis_base Les objets Domaine_Cl_dis_base representent les conditions aux limites
Domaine_dis_base & domaine_dis()
Renvoie une reference sur le domaine discretise associe aux conditions aux limites.
virtual const DoubleVect & face_surfaces() const
int nb_faces() const
renvoie le nombre global de faces.
double volumes(int i) const
int face_voisins(int num_face, int i) const
renvoie l'element voisin de numface dans la direction i.
Class defining operators and methods for all reading operation in an input flow (file,...
classe Fluide_Dilatable_base Cette classe represente un d'un fluide dilatable,
bool has_source_masse_espece_champ() const
bool has_source_masse_projection_champ() const
const Champ_Inc_base & inco_chaleur() const
classe Fluide_Weakly_Compressible Cette classe represente un d'un fluide faiblement compressible
int num_premiere_face() const
const Nom & le_nom() const override
Renvoie le nom de la frontiere geometrique.
virtual const Champ_base & masse_volumique() const
Renvoie la masse volumique du milieu.
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
Classe de base des flux de sortie.
void ajouter_eq_espece(const Convection_Diffusion_Fluide_Dilatable_base &eqn, const Fluide_Dilatable_base &fluide, const bool is_expl, DoubleVect &resu) const override
void ajouter_projection(const Fluide_Dilatable_base &fluide, DoubleVect &resu) const override
: classe Source_Masse_Fluide_Dilatable_base Une source speciale pour l'equation de masse (utilisee se...
void fill_val_flux_tab(DoubleTrav &val_flux) const