16#include <Convection_Diffusion_std.h>
17#include <Terme_Boussinesq_base.h>
18#include <Fluide_base.h>
22#include <Pb_Multiphase.h>
44 Cerr <<
"Reading Boussinesq source term parameters." << finl;
46 param.lire_avec_accolades_depuis(is);
63 Cerr <<
"Error: The boussinesq source term can't be defined for a problem of kind " << pb.
que_suis_je() << finl;
64 Cerr <<
" Use source_qdm if you want to add this source term!" << finl;
68 for (
int eq=0; eq<n_eq; eq++)
79 Cerr <<
"Error. The Boussinesq source term can't be defined on a problem of kind " << pb.
que_suis_je() << finl;
87 int valid_beta_field = 0;
88 Nom beta_field_name=
"??";
93 beta_field_name =
"thermal expansion value (beta_th)";
99 beta_field_name =
"volume expansion coefficient values in concentration (beta_co)";
103 if( ! valid_beta_field )
105 Cerr <<
"Error. Boussinesq source term is not able to access to the "<<beta_field_name<<
" associated to the fluid."<<finl;
106 Cerr <<
"Please check your data file. " << finl;
107 Cerr <<
"Aborting..."<<finl;
118 std::transform(ss.begin(), ss.end(), ss.begin(), ::toupper);
121 fct_Scalaire0_.
addVar(
"t");
133 fct_Scalaire0_.dimensionner(1);
135 read(is, fct_Scalaire0_[0]);
143 fct_Scalaire0_.dimensionner(dim);
145 for (
int i=0; i<dim; i++) read(is, fct_Scalaire0_[i]);
Convection_Diffusion_std This class is the base for equations modelling the transport.
Class defining operators and methods for all reading operation in an input flow (file,...
class Equation_base The role of an equation is the calculation of one or more fields....
virtual const Champ_Inc_base & inconnue() const =0
const Nom & le_nom() const override
Returns the name of the field.
Base class for an incompressible fluid and its properties:
const Champ_Don_base & beta_c() const
virtual const Champ_Don_base & beta_t() const
Returns beta_t of the medium (const version).
virtual const Champ_Don_base & gravite() const
Returns the gravity of the medium if it has been associated, raises an error otherwise (const version...
const Equation_base & equation() const
Returns the reference to the equation pointed to by MorEqn::mon_equation.
A character string (Nom) in uppercase.
class Nom: a character string for naming TRUST objects.
const std::string & getString() const
const Nom & que_suis_je() const
Returns the string identifying the class.
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.
Helper class to factorize the readOn method of Objet_U classes.
void ajouter(const char *keyword, const int *value, Param::Nature nat=Param::OPTIONAL)
Register an integer parameter.
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.
class Parser_U Version of the Parser class, deriving from Objet_U.
void setString(const std::string &s)
void addVar(const char *v)
Multiphase thermohydraulics problem of type "3*N equations":
class Probleme_base It is a Probleme_U that is not a coupling.
virtual int nombre_d_equations() const =0
virtual const Equation_base & equation(int) const =0
static void abort()
Abort routine for TRUST on a fatal error.
static void exit(int exit_code=-1)
Exit routine for TRUST within a Kokkos region.
Base class for output streams.
Source_base A Source_base object is a term appearing on the right-hand side of an.
Classe Terme_Boussinesq_base This class represents the gravity term appearing in the momentum equatio...
void set_param(Param ¶m) const override
void associer_pb(const Probleme_base &pb) override
int lire_motcle_non_standard(const Motcle &, Entree &) override
Reads non-simple-type parameters of an Objet_U from an input stream.