16#ifndef Op_Conv_EF_VEF_P1NC_Stab_included
17#define Op_Conv_EF_VEF_P1NC_Stab_included
19#include <Op_Conv_VEF_Face.h>
20#include <Equation_base.h>
56 DoubleTab&
ajouter(
const DoubleTab& , DoubleTab& )
const override;
70 DoubleTab&
ajouter_diffusion(
const DoubleTab&,
const DoubleTab&, DoubleTab&)
const;
81 void reinit_conv_pour_Cl(
const DoubleTab&,
const IntList&,
const DoubleTabs&,
const DoubleTab&, DoubleTab&)
const;
83 KOKKOS_INLINE_FUNCTION
void calculer_senseur(CDoubleTabView3, CDoubleArrView,
const int,
const int, CIntTabView, CIntTabView, CIntTabView,
double*,
double*,
double*,
double*)
const;
84 inline void calculer_senseur(
const DoubleTab&,
const DoubleVect&,
const int,
const int,
const IntTab&,
const IntTab&,
const IntTab&, ArrOfDouble&, ArrOfDouble&, ArrOfDouble&, ArrOfDouble&)
const;
85 void ajouter_old(
const DoubleTab& , DoubleTab&,
const DoubleTab&
vitesse)
const;
86 void calculer_data_pour_dirichlet();
89 void ajouter_contribution_antidiffusion(
const DoubleTab&,
const DoubleTab&,
Matrice_Morse&)
const;
90 void ajouter_contribution_partie_compressible(
const DoubleTab&,
const DoubleTab&,
Matrice_Morse&)
const;
93 void test(
const DoubleTab&,
const DoubleTab&,
const DoubleTab&
vitesse)
const;
94 void test_difference_Kij(
const DoubleTab&,DoubleTab&,DoubleTab&,
const DoubleTab&
vitesse)
const;
95 void test_difference_resu(
const DoubleTab&,
const DoubleTab&,
const DoubleTab&,
const DoubleTab&,
const DoubleTab&
vitesse)
const;
96 void test_implicite()
const;
99 ArrOfInt elem_nb_faces_dirichlet_;
100 IntTab elem_faces_dirichlet_;
101 ArrsOfInt elem_faces_frontiere;
103 ArrOfDouble alpha_tab_;
109 int is_compressible_ = 0;
112 int volumes_etendus_ = 1;
114 bool sous_domaine =
false;
115 int new_jacobienne_ = 0;
116 Nom nom_sous_domaine;
119 int nb_ssz_alpha = -1;
120 DoubleVect alpha_ssz;
122 bool ssz_alpha =
false;
133 return is_compressible_;
Classe Matrice_Morse Represente une matrice M (creuse), non necessairement carree.
class Nom Une chaine de caractere pour nommer les objets de TRUST
Un tableau de chaine de caracteres (VECT(Nom)).
class Op_Conv_EF_VEF_P1NC_Stab
DoubleTab & ajouter(const DoubleTab &, DoubleTab &) const override
DoubleTab & ajouter_diffusion(const DoubleTab &, const DoubleTab &, DoubleTab &) const
void remplir_fluent() const override
int is_compressible() const
void completer() override
Associe l'operateur au domaine_dis, le domaine_Cl_dis, et a l'inconnue de son equation.
void ajouter_contribution_diffusion(const DoubleTab &, const DoubleTab &, Matrice_Morse &) const
void calculer_coefficients_operateur_centre(DoubleTab &, const int, const DoubleTab &vitesse) const
public_for_cuda void calculer_flux_bords(const DoubleTab &, const DoubleTab &, const DoubleTab &) const
void ajouter_contribution_operateur_centre(const DoubleTab &, const DoubleTab &, Matrice_Morse &) const
DoubleTab & ajouter_operateur_centre(const DoubleTab &, const DoubleTab &, DoubleTab &) const
void contribuer_a_avec(const DoubleTab &, Matrice_Morse &) const override
DOES NOTHING - to override in derived classes.
DoubleTab & ajouter_partie_compressible(const DoubleTab &, DoubleTab &, const DoubleTab &vitesse) const
DoubleTab & ajouter_antidiffusion(const DoubleTab &, const DoubleTab &, DoubleTab &) const
void modifier_pour_Cl(Matrice_Morse &, DoubleTab &) const override
DOES NOTHING - to override in derived classes.
void mettre_a_jour_pour_periodicite(DoubleTab &) const
void ajouter_contribution(const DoubleTab &, Matrice_Morse &) const override
const Champ_Inc_base & vitesse() const
Cette classe abstraite contient les informations geometrique de sous-domaine communes aux methodes de...