16#ifndef Op_Diff_negligeable_included
17#define Op_Diff_negligeable_included
19#include <Operateur_negligeable.h>
20#include <Operateur_Diff_base.h>
44 inline DoubleTab&
ajouter(
const DoubleTab&, DoubleTab& )
const override;
45 inline DoubleTab&
calculer(
const DoubleTab&, DoubleTab& )
const override;
57 void ajouter_flux(
const DoubleTab& inconnue, DoubleTab& contribution)
const override;
58 void calculer_flux(
const DoubleTab& inconnue, DoubleTab& flux)
const override;
65 void ajouter_blocs(matrices_t matrices, DoubleTab& resu,
const tabs_t& semi_impl = { })
const override { };
class Champ_base This class is the base of the fields hierarchy.
class Domaine_Cl_dis_base Domaine_Cl_dis_base objects represent discretized boundary conditions
class Domaine_dis_base This class is the base of the hierarchy of discretized domains.
Matrice_Morse class - Represents a (sparse) matrix M, not necessarily square,.
A character string (Nom) in uppercase.
class Nom: a character string for naming TRUST objects.
Classe Op_Diff_negligeable This class represents a negligible diffusion operator.
void dimensionner(Matrice_Morse &) const override
DOES NOTHING - to override in derived classes.
OBS_PTR(Champ_base) la_diffusivite
DoubleTab & ajouter(const DoubleTab &, DoubleTab &) const override
Adds the contribution of the operator to an array passed as parameter.
void calculer_pour_post(Champ_base &espace_stockage, const Nom &option, int comp) const override
Motcle get_localisation_pour_post(const Nom &option) const override
void modifier_pour_Cl(Matrice_Morse &, DoubleTab &) const override
DOES NOTHING - to override in derived classes.
int has_interface_blocs() const override
void check_multiphase_compatibility() const override
void dimensionner_blocs(matrices_t matrices, const tabs_t &semi_impl={ }) const override
void associer_diffusivite(const Champ_base &) override
Associates the diffusivity to the operator.
void contribuer_a_avec(const DoubleTab &, Matrice_Morse &) const override
Time update of a negligible operator: DOES NOTHING. Simple call to Operateur_negligeable::mettre_a_jo...
DoubleTab & calculer(const DoubleTab &, DoubleTab &) const override
Initializes the array parameter with the contribution of the negligible operator: initializes the arr...
void calculer_flux(const DoubleTab &inconnue, DoubleTab &flux) const override
void contribuer_au_second_membre(DoubleTab &) const override
Adds the contribution to the right-hand side.
void ajouter_blocs(matrices_t matrices, DoubleTab &resu, const tabs_t &semi_impl={ }) const override
void ajouter_flux(const DoubleTab &inconnue, DoubleTab &contribution) const override
void associer_champ_masse_volumique(const Champ_base &) override
Method to be called during problem preparation to ask the object to take into account the density fie...
void mettre_a_jour(double) override
DOES NOTHING - to override in derived classes.
const Champ_base & diffusivite() const override
Returns the field representing the diffusivity.
void associer(const Domaine_dis_base &, const Domaine_Cl_dis_base &, const Champ_Inc_base &) override
Associates various objects to a negligible operator: DOES NOTHING Simple call to Operateur_negligeabl...
Operateur_Diff_base This class is the base of the hierarchy of operators representing.
Classe Opnegligeable This class defines the interface of a negligible operator.
DoubleTab & calculer(const DoubleTab &, DoubleTab &) const
Initializes the array parameter with the contribution of the negligible operator: initializes the arr...
void mettre_a_jour(double)
Time update of a negligible operator: DOES NOTHING.
void associer(const Domaine_dis_base &, const Domaine_Cl_dis_base &, const Champ_Inc_base &)
Associates various objects to a negligible operator: DOES NOTHING.
DoubleTab & ajouter(const DoubleTab &, DoubleTab &) const
Adds the contribution of a negligible operator to an array.