16#include <Op_Conv_ALE_PolyMAC_HFV_Elem.h>
17#include <Domaine_ALE.h>
18#include <Probleme_base.h>
28 const DoubleTab& u = vitesse_->valeurs();
29 const DoubleTab& w = ref_cast(
Domaine_ALE,
equation().inconnue().domaine()).vitesse_faces();
30 DoubleTab u_moins_w(u);
31 if (w.
nb_dim() == 1)
return u_moins_w;
34 const DoubleTab& nf = domaine.face_normales();
35 const DoubleVect& fs = domaine.face_surfaces();
37 for (
int f = 0; f < nface; f++)
41 for (
int d = 0; d < D; d++) w_n += w(f, d) * nf(f, d) / fs(f);
42 for (
int n = 0; n < N; n++) u_moins_w(f, n) -= w_n;
Class defining operators and methods for all reading operation in an input flow (file,...
const Equation_base & equation() const
Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
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.
void mettre_a_jour(double temps) override
DOES NOTHING - to override in derived classes.
DoubleTab get_u_minus_w() const
void ajouter_blocs(matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl={}) const override
double calculer_dt_stab() const override
Calcul dt_stab.
: class Op_Conv_EF_Stab_PolyMAC_HFV_Elem
void ajouter_blocs_gen(matrices_t mats, DoubleTab &secmem, const DoubleTab &vit, const tabs_t &semi_impl) const
void mettre_a_jour_gen(double temps, const DoubleTab &vit)
double calculer_dt_stab_gen(const DoubleTab &vit) const
Classe de base des flux de sortie.