16#include <Frontiere_dis_base.h>
17#include <Navier_Stokes_std.h>
18#include <Equation_base.h>
39 param.ajouter(
"champ_front_normal_et_tangentiel_robin",&le_champ_front,
Param::REQUIRED);
41 param.lire_avec_accolades_depuis(is);
44 Cerr <<
"Reading Robin boundary condition, the value of the normal Robin coefficient is "
48 Process::exit(
"Error of Robin boundary conditions : Alpha and Beta parameters should be positive. \n ") ;
51 supp_discs = { Nom(
"VEF") , Nom(
"VEFPreP1B") };
63 assert( mon_dom_cl_dis);
66 Process::exit(
"Robin_VEF is not yet coded on scalar equations ... \n");
69 if (mon_dom_cl_dis->equation().operateur(0).l_op_base().que_suis_je() !=
"Op_Diff_VEF_P1NC")
70 Process::exit(
"Robin_VEF is now only available for the laminar Op_Diff_VEF_P1NC operator ... \n");
84 if ((le_champ_front->valeurs().dimension(1)==2 &&
dimension == 2) || (le_champ_front->valeurs().dimension(1)==4 &&
dimension == 3))
86 if (le_champ_front->valeurs().dimension(0)==1)
87 return le_champ_front->valeurs()(0,j);
89 return le_champ_front->valeurs()(i,j);
92 Cerr <<
"Robin::flux_robin_normal_et_tangentiel error" << finl;
116 Cerr <<
" Robin::flux_tangentiel_imp error, dimension does not match" << finl;
123 le_champ_front->mettre_a_jour(temps);
157 for (
int i = 0; i < size; i++)
183 for (
int i = 0; i < size; i++)
184 for (
int j = 0; j < nb_comp; j++)
classe Cond_lim_base Classe de base pour la hierarchie des classes qui representent les differentes c...
std::vector< Nom > supp_discs
virtual void completer()
NE FAIT RIEN A surcharger dans les classes derivees.
std::vector< Motcle > app_domains
virtual Frontiere_dis_base & frontiere_dis()
Renvoie la frontiere discretisee a laquelle les conditions aux limites s'appliquent.
Class defining operators and methods for all reading operation in an input flow (file,...
classe Navier_Stokes_std Cette classe porte les termes de l'equation de la dynamique
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.
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Class Robin_VEF for Robin boundary conditions.
double flux_tangentiel_imp(int i, int j) const
Returns the value of the imposed tangential flux on the (i,j)-th component of the field representing ...
double flux_robin_imp_au_temps(double temps, int i) const
const DoubleTab & flux_robin_tangentiel_imp() const
Updates and returns the imposed flux array.
double flux_robin_normal_et_trangentiel_imp(int i, int j) const
Returns the value of the imposed normal and tangential Robin flux on the (i,j)-th component of the fi...
DoubleTab flux_normal_impose_
void completer() override
NE FAIT RIEN A surcharger dans les classes derivees.
DoubleTab flux_tangentiel_impose_
const DoubleTab & flux_robin_normal_imp() const
Updates and returns the imposed flux array.
double flux_normal_imp(int i) const
Returns the value of the imposed normal flux on the i-th component of the field representing the flux...
void mettre_a_jour(double temps) override
Effectue une mise a jour en temps de la condition aux limites.
Classe de base des flux de sortie.