16#include <Source_Meca_Grad_Pression_Thermique_EF.h>
17#include <Milieu_Elasticite.h>
18#include <Domaine_EF.h>
19#include <Equation_base.h>
20#include <Champ_Uniforme.h>
36 param.lire_avec_accolades_depuis(is);
42 T_ref_->initialiser(temps);
44 T_->initialiser(temps);
50 T_ref_->mettre_a_jour(temps);
51 T_->mettre_a_jour(temps);
58 const DoubleTab& Bij_thilde = domaine_ef.
Bij_thilde();
59 const DoubleTab& IPhi_thilde = domaine_ef.
IPhi_thilde();
68 const DoubleTab& val_T = T_->valeurs();
69 const DoubleTab& val_Tref = T_ref_->valeurs();
72 const int cTref = sub_type(
Champ_Uniforme, T_ref_.valeur()) ? 1 : 0;
76 for (
int e = 0; e < nb_elem_tot; e++)
78 const double alpha_e = val_alpha(0);
79 const double K_e = val_K(0);
80 const double dT_e = val_T(e * !cT) - val_Tref(e * !cTref);
81 const double s_e = 3.0 * K_e * alpha_e * dT_e;
83 if (s_e == 0.)
continue;
85 for (
int i = 0; i < nb_som_elem; i++)
87 const int s = elems(e, i);
89 for (
int d = 0; d < D; d++)
90 resu(s, d) += s_e * Bij_thilde(e, i, d);
94 resu(s, 0) += s_e * IPhi_thilde(e, i) / domaine_ef.
xp(e, 0);
void nommer_completer_champ_physique(const Domaine_dis_base &domaine_vdf, const Nom &nom_champ, const Nom &unite, Champ_base &champ, const Probleme_base &pbi) const
int nb_som_elem() const
Renvoie le nombre de sommets des elements geometriques constituants le domaine.
const DoubleTab & IPhi_thilde() const
const DoubleTab & Bij_thilde() const
double xp(int num_elem, int k) const
const Domaine & domaine() const
Class defining operators and methods for all reading operation in an input flow (file,...
const Discretisation_base & discretisation() const
Renvoie la discretisation associee a l'equation.
Isotropic small-strain linear elastic medium.
const Equation_base & equation() const
Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
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.
Classe de base des flux de sortie.
Source couplant gradient de pression et dilatation thermique pour la formulation thermomécanique.
int initialiser(double temps) override
Contrairement aux methodes mettre_a_jour, les methodes initialiser des sources ne peuvent pas dependr...
void mettre_a_jour(double temps) override
DOES NOTHING - to override in derived classes.
DoubleTab & ajouter(DoubleTab &) const override
classe Source_base Un objet Source_base est un terme apparaissant au second membre d'une
virtual int initialiser(double temps)
Contrairement aux methodes mettre_a_jour, les methodes initialiser des sources ne peuvent pas dependr...