32 Debog::verifier(
"Source_Transport_Realisable_VEF_Face_base::ajouter resu 0", resu);
38 const DoubleTab& tab_visco = ch_visco_cin.
valeurs();
42 if (is_visco_const) visco = std::max(tab_visco(0, 0), DMINFLOAT);
44 const DoubleTab& vit = eq_hydraulique->inconnue().valeurs();
45 const DoubleVect& vol_ent = le_dom_VEF->volumes_entrelaces();
47 DoubleTab vitesse_filtree(vit);
48 ref_cast(
Champ_P1NC,eq_hydraulique->inconnue()).filtrer_L2(vitesse_filtree);
50 const int nb_faces = le_dom_VEF->nb_faces();
51 DoubleTrav P(nb_faces);
53 const DoubleTab& CC1 = mon_modele_fonc.
get_C1(), &S = mon_modele_fonc.
get_S();
55 calculer_terme_production_real(vitesse_filtree, visco_turb, P);
57 Debog::verifier(
"Source_Transport_Realisable_VEF_Face_base::ajouter P 0", P);
58 Debog::verifier(
"Source_Transport_Realisable_VEF_Face_base::ajouter C1 0", CC1);
60 for (
int num_face = 0; num_face < nb_faces; num_face++)
64 const int elem0 = le_dom_VEF->face_voisins(num_face, 0), elem1 = le_dom_VEF->face_voisins(num_face, 1);
67 visco = tab_visco(elem0) * le_dom_VEF->volumes(elem0) + tab_visco(elem1) * le_dom_VEF->volumes(elem1);
68 visco /= le_dom_VEF->volumes(elem0) + le_dom_VEF->volumes(elem1);
70 else visco = tab_visco(elem0);
74 fill_resu_real(num_face, vol_ent, P, CC1, S, visco, resu);
82 const int size = get_size_k_eps();
85 const DoubleTab& tab_visco = ch_visco_cin.
valeurs();
88 if (is_visco_const) visco = std::max(tab_visco(0, 0), DMINFLOAT);
90 const Domaine_VEF& domaine_VEF = le_dom_VEF.valeur();
92 for (
int face = 0; face < size; face++)
99 visco = tab_visco(elem0) * domaine_VEF.
volumes(elem0) + tab_visco(elem1) * domaine_VEF.
volumes(elem1);
102 else visco = tab_visco(elem0);
106 fill_coeff_matrice(face,porosite_face,volumes_entrelaces,visco,matrice);
DoubleVect & volumes_entrelaces()
double volumes(int i) const
int face_voisins(int num_face, int i) const
renvoie l'element voisin de numface dans la direction i.