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();
class Champ_Don_base base class of Given Fields (not calculated)
DoubleTab & valeurs() override
Returns the array of field values at the current time.
Convection_Diffusion_Concentration Special case of Convection_Diffusion_std.
void set_param(Param &titi) const override
int lire_motcle_non_standard(const Motcle &, Entree &) override
Reads non-simple-type parameters of an Objet_U from an input stream.
const Champ_Inc_base & inconnue() const override
Returns the unknown field of the equation: the concentration.
classe Convection_Diffusion_Phase_field Cas particulier de Convection_Diffusion_Concentration
void discretiser() override
Discretise l'equation.
int preparer_calcul() override
Everything that does not depend on other possible problems.
void completer() override
Completes the construction (initialization) of objects associated with the equation.
Operateur_Grad & operateur_gradient()
DoubleTab div_alpha_rho_gradC_
DoubleTab div_alpha_gradC_
void mettre_a_jour(double) override
The value of the unknown at the time step has been calculated.
void associer_milieu_base(const Milieu_base &) override
Associates a physical medium to the equation; the medium is cast to Constituant and associated with t...
int lire_motcle_non_standard(const Motcle &, Entree &) override
Reads non-simple-type parameters of an Objet_U from an input stream.
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
Returns the physical medium of the equation.
Operateur_Diff terme_diffusif
virtual const Champ_base & diffusivite_pour_pas_de_temps() const
class Discret_Thyd This class is the base class representing a discretization
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
An input stream whose source is a character string.
Class defining operators and methods for all reading operation in an input flow (file,...
Sources & sources()
Returns the source terms associated with the equation.
const Discretisation_base & discretisation() const
Returns the discretization associated with the equation.
virtual void mettre_a_jour(double temps)
The value of the unknown at the time step has been calculated.
virtual void completer()
Completes the construction (initialization) of objects associated with the equation.
virtual int preparer_calcul()
Everything that does not depend on other possible problems.
Probleme_base & probleme()
Returns the problem associated with the equation.
Schema_Temps_base & schema_temps()
Returns the time scheme associated with the equation.
virtual void discretiser()
Discretizes the equation.
Champs_compris champs_compris_
Domaine_dis_base & domaine_dis()
Returns the discretized domain associated with the equation.
int get_nb_constituants() const
Base class for an incompressible fluid and its properties:
const Fermeture_Phase_field_base & get_fermeture() const
Milieu_base This class is the base of the (physical) medium hierarchy.
void associer_eqn(const Equation_base &)
Associates an equation with the object.
A character string (Nom) in uppercase.
Navier_Stokes_std This class carries the terms of the momentum equation.
virtual Entree & readOn(Entree &)
Reads an Objet_U from an input stream. Virtual method to override.
virtual Sortie & printOn(Sortie &) const
Writes the object to an output stream. Virtual method to override.
Operateur_Diff Generic class of the hierarchy of operators representing a diffusion.
void associer_diffusivite_pour_pas_de_temps(const Champ_base &)
void associer_diffusivite(const Champ_base &)
Associates the diffusivity to the operator.
Classe Operateur_Grad Generic class of the hierarchy of operators computing the 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)
Exit routine for TRUST within a Kokkos region.
Base class for output streams.
void mettre_a_jour(double temps)
Time update of all sources in the list.