16#include <Dirichlet_entree_fluide_leaves.h>
17#include <Champ_front_softanalytique.h>
18#include <Dirichlet_paroi_defilante.h>
19#include <Champ_Face_PolyMAC_HFV.h>
20#include <Dirichlet_paroi_fixe.h>
21#include <Discretisation_base.h>
22#include <Domaine_Cl_PolyMAC_family.h>
23#include <Champ_Face_PolyMAC_CDO.h>
24#include <Dirichlet_homogene.h>
25#include <Champ_Inc_P0_base.h>
26#include <Domaine_PolyMAC_CDO.h>
27#include <Equation_base.h>
28#include <Probleme_base.h>
29#include <Matrice_Morse.h>
30#include <Periodique.h>
48 DoubleTab& ch_tab = ch.
valeurs(temps);
57 int ndeb, nfin, num_face;
64 if (N > 1)
Process::exit(
"Periodique CLS not yet supported for multiphase pbs.");
76 for (num_face = ndeb; num_face < nfin; num_face++)
79 if (ch_tab[num_face] != ch_tab[voisine])
81 moy = 0.5 * (ch_tab[num_face] + ch_tab[voisine]);
82 ch_tab[num_face] = moy;
83 ch_tab[voisine] = moy;
95 for (num_face = ndeb; num_face < nfin; num_face++)
96 for (n = 0; n < N; n++)
97 ch_tab(num_face, n) = 0;
106 for (num_face = ndeb; num_face < nfin; num_face++)
107 for (n = 0; n < N; n++)
115 ch_tab(num_face, n) = vn;
123 for (num_face = ndeb; num_face < nfin; num_face++)
124 for (n = 0; n < N; n++)
125 ch_tab(num_face, n) = 0;
132 for (num_face = ndeb; num_face < nfin; num_face++)
133 for (n = 0; n < N; n++)
134 ch_tab(num_face, n) = 0;
141 Cerr <<
"Le type de OWN_PTR(Champ_Inc_base) " << ch.
que_suis_je() <<
" n'est pas prevu en PolyMAC_CDO family " << finl;
145 Debog::verifier(
"Domaine_Cl_PolyMAC_family::imposer_cond_lim ch_tab", ch_tab);
171 Cerr <<
" La periodicite n'est pas codee !!!" << finl;
: class Champ_Face_PolyMAC_HFV
: class Champ_Inc_P0_base
DoubleTab & valeurs() override
Renvoie le tableau des valeurs du champ au temps courant.
const Domaine_VF & domaine_vf() const
classe Cond_lim_base Classe de base pour la hierarchie des classes qui representent les differentes c...
virtual Frontiere_dis_base & frontiere_dis()
Renvoie la frontiere discretisee a laquelle les conditions aux limites s'appliquent.
static void verifier(const char *const msg, double)
classe Dirichlet_entree_fluide Cette classe represente une condition aux limite imposant une grandeur
classe Dirichlet_paroi_defilante Impose la vitesse de paroi dnas une equation de type Navier_Stokes.
classe Dirichlet_paroi_fixe Represente une paroi immobile dans une equation de type Navier_Stokes.
virtual double val_imp_au_temps(double temps, int i) const
Renvoie la valeur imposee sur la i-eme composante du champ a la frontiere au temps precise.
Domaine_VF & domaine_vf()
int nb_faces_sortie_libre() const
int initialiser(double temps) override
Initialise les CLs Contrairement aux methodes mettre_a_jour, les methodes.
void imposer_cond_lim(Champ_Inc_base &, double) override
int nb_bord_periodicite() const
classe Domaine_Cl_dis_base Les objets Domaine_Cl_dis_base representent les conditions aux limites
virtual int initialiser(double temps)
Initialise les CLs Contrairement aux methodes mettre_a_jour, les methodes.
int nb_cond_lim() const
Renvoie le nombre de conditions aux limites.
void completer()
Appel Cond_lim_base::completer() sur chaque condition aux limites.
Conds_lim & les_conditions_limites()
Renvoie le tableaux des conditions aux limites.
Domaine_dis_base & domaine_dis()
Renvoie une reference sur le domaine discretise associe aux conditions aux limites.
Conds_lim les_conditions_limites_
virtual const DoubleVect & face_surfaces() const
virtual double face_normales(int face, int comp) const
classe Domaine_dis_base Cette classe est la base de la hierarchie des domaines discretisees.
Class defining operators and methods for all reading operation in an input flow (file,...
virtual Nature_du_champ nature_du_champ() const
int num_premiere_face() const
const Nom & que_suis_je() const
renvoie la chaine identifiant la classe.
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 Periodique Cette classe represente une condition aux limites periodique.
int face_associee(int i) const
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Classe de base des flux de sortie.
classe Symetrie Sur les faces de symetrie on a les proprietes suivantes:
virtual void echange_espace_virtuel(IsExchangeBlocking exchange_type=IsExchangeBlocking::DefaultBlocking, const std::string kernel_name="noname")