16#include <Convection_Diffusion_Phase_field.h>
17#include <Navier_Stokes_phase_field.h>
18#include <Frontiere_dis_base.h>
19#include <Milieu_Phase_field.h>
20#include <Matrice_Morse_Sym.h>
21#include <Probleme_base.h>
22#include <Fluide_base.h>
23#include <Discret_Thyd.h>
55 if (mot ==
"potentiel_chimique_generalise")
59 if (temp_mutype_ ==
"avec_energie_cinetique")
61 else if (temp_mutype_ ==
"sans_energie_cinetique")
64 Process::exit(
"Allowed keywords for potentiel_chimique_generalise are : avec_energie_cinetique or sans_energie_cinetique");
67 else if (mot==
"diffusion")
73 Cerr <<
"Reading and typing of the diffusion operator of Convection_Diffusion_Phase_field : " << finl;
74 EChaine ngl(
" { negligeable }");
79 Cerr <<
"Reading and typing a useless diffusion operator from data file : " << finl;
83 is >> terme_diffusif_bidon_;
100 Cerr <<
"Discretisation de mutilde " << finl;
107 gradient_.l_op_base().associer_eqn(*
this);
112 Cerr <<
"Transport concentration(s) equation discretization " << finl;
117 Cerr <<
"Convection_Diffusion_Phase_field::discretiser() ok" << finl;
142 Cerr <<
"Convection_Diffusion_Phase_field::preparer_calcul" << finl;
178 return le_fluide_->viscosite_cinematique();
183 return le_fluide_.valeur();
188 return le_fluide_.valeur();
classe Champ_Don_base classe de base des Champs donnes (non calcules)
DoubleTab & valeurs() override
Renvoie le tableau des valeurs du champ au temps courant.
classe Convection_Diffusion_Concentration Cas particulier de Convection_Diffusion_std
void set_param(Param &titi) const override
int lire_motcle_non_standard(const Motcle &, Entree &) override
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
const Champ_Inc_base & inconnue() const override
Renvoie le champ inconnue de l'equation: la concentration.
classe Convection_Diffusion_Phase_field Cas particulier de Convection_Diffusion_Concentration
void discretiser() override
Discretise l'equation.
int preparer_calcul() override
Tout ce qui ne depend pas des autres problemes eventuels.
void completer() override
Complete la construction (initialisation) des objets associes a l'equation.
Operateur_Grad & operateur_gradient()
DoubleTab div_alpha_rho_gradC_
DoubleTab div_alpha_gradC_
void mettre_a_jour(double) override
La valeur de l'inconnue sur le pas de temps a ete calculee.
void associer_milieu_base(const Milieu_base &) override
Associe un milieu physique a l'equation, le milieu est en fait caste en Constituant et associe a l'eq...
int lire_motcle_non_standard(const Motcle &, Entree &) override
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
const Champ_Don_base & diffusivite_pour_transport() const override
DoubleTab alpha_gradC_carre_
void set_param(Param &titi) const override
const Milieu_base & milieu() const override
Renvoie le milieu physique de l'equation.
Operateur_Diff terme_diffusif
virtual const Champ_base & diffusivite_pour_pas_de_temps() const
classe Discret_Thyd Cette classe est la classe de base representant une discretisation
void concentration(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&, int=1, const Nom nom_champ="concentration") const
void discretiser_champ(const Motcle &directive, const Domaine_dis_base &z, const Nom &nom, const Nom &unite, int nb_comp, int nb_pas_dt, double temps, OWN_PTR(Champ_Inc_base)&champ, const Nom &sous_type=NOM_VIDE) const
Une entree dont la source est une chaine de caracteres.
Class defining operators and methods for all reading operation in an input flow (file,...
Sources & sources()
Renvoie les termes sources asssocies a l'equation.
const Discretisation_base & discretisation() const
Renvoie la discretisation associee a l'equation.
virtual void mettre_a_jour(double temps)
La valeur de l'inconnue sur le pas de temps a ete calculee.
virtual void completer()
Complete la construction (initialisation) des objets associes a l'equation.
virtual int preparer_calcul()
Tout ce qui ne depend pas des autres problemes eventuels.
Probleme_base & probleme()
Renvoie le probleme associe a l'equation.
Schema_Temps_base & schema_temps()
Renvoie le schema en temps associe a l'equation.
virtual void discretiser()
Discretise l'equation.
Champs_compris champs_compris_
Domaine_dis_base & domaine_dis()
Renvoie le domaine discretise associe a l'equation.
int get_nb_constituants() const
classe Fluide_base Cette classe represente un d'un fluide incompressible ainsi que
const Fermeture_Phase_field_base & get_fermeture() const
classe Milieu_base Cette classe est la base de la hierarchie des milieux (physiques)
void associer_eqn(const Equation_base &)
Associe une equation a l'objet.
Une chaine de caractere (Nom) en majuscules.
classe Navier_Stokes_std Cette classe porte les termes de l'equation de la dynamique
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 Operateur_Diff Classe generique de la hierarchie des operateurs representant un terme
void associer_diffusivite_pour_pas_de_temps(const Champ_base &)
void associer_diffusivite(const Champ_base &)
Associe la diffusivite a l'operateur.
Classe Operateur_Grad Classe generique de la hierarchie des operateurs calculant le gradient.
Helper class to factorize the readOn method of Objet_U classes.
void ajouter_non_std(const char *keyword, const Objet_U *value, Param::Nature nat=Param::OPTIONAL)
Register a keyword handled by Objet_U::lire_motcle_non_standard.
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Classe de base des flux de sortie.
void mettre_a_jour(double temps)
Mise a jour en temps, de toute les sources de la liste.