|
TrioCFD 1.9.9_beta
TrioCFD documentation
|
class Equation_base The role of an equation is the calculation of one or more fields. This class is the base of the equations hierarchy. More...
#include <Equation_base.h>
Public Member Functions | |
| void | nommer (const Nom &nom) override |
| Method called when the object instance is created in the data file (Interprete::ajouter). | |
| virtual void | avancer (int i=1) |
| virtual void | reculer (int i=1) |
| virtual int | nombre_d_operateurs () const =0 |
| virtual int | nombre_d_operateurs_tot () const |
| virtual const Operateur & | operateur (int) const =0 |
| virtual Operateur & | operateur (int)=0 |
| virtual const Operateur & | operateur_fonctionnel (int) const |
| virtual Operateur & | operateur_fonctionnel (int) |
| virtual const Champ_Inc_base & | inconnue () const =0 |
| virtual Champ_Inc_base & | inconnue ()=0 |
| virtual void | associer_milieu_base (const Milieu_base &)=0 |
| virtual const Milieu_base & | milieu () const =0 |
| virtual Milieu_base & | milieu ()=0 |
| virtual std::vector< YAML_data > | data_a_sauvegarder () const |
| for PDI IO: retrieve name, type and dimensions of the data to save/restore. This has to be overrode for all the equations that either: | |
| int | sauvegarder (Sortie &) const override |
| We save the unknown, then the source terms to an output stream. | |
| int | reprendre (Entree &) override |
| We resume the unknown from an input stream. | |
| Nom | create_polymacfamily_syno (const Nom &field_tag) const |
| Create a synonym of a field name in order to ensure backward compatibility with old names of the PolyMAC discretisation family. | |
| virtual void | init_save_file () |
| virtual void | close_save_file () |
| int | limpr () const |
| Ask the time scheme if an output is needed. | |
| virtual void | imprimer (Sortie &os) const |
| Prints the equation operators if the time scheme indicates it is necessary. | |
| virtual int | impr (Sortie &os) const |
| Prints the equation operators to an output stream, unconditionally. | |
| virtual void | associer_milieu_equation () |
| virtual DoubleTab & | derivee_en_temps_inco (DoubleTab &) |
| Returns the time derivative of the unknown I of the equation: dI/dt = M-1*(sum(operators(I) + sources)). | |
| virtual DoubleTab & | derivee_en_temps_inco_transport (DoubleTab &derivee) |
| virtual DoubleTab & | corriger_derivee_expl (DoubleTab &) |
| virtual DoubleTab & | corriger_derivee_impl (DoubleTab &) |
| virtual void | mettre_a_jour (double temps) |
| The value of the unknown at the time step has been calculated. | |
| virtual void | abortTimeStep () |
| Reinitialize what must be. | |
| virtual void | resetTime (double time) |
| Reset current time of the equation. Used from ICoCo. See documentation of Problem_base::resetTime(). | |
| virtual void | valider_iteration () |
| virtual method to correct the unknown during implicit iterations for example K-eps must remain positive | |
| virtual int | preparer_calcul () |
| Everything that does not depend on other possible problems. | |
| virtual bool | initTimeStep (double dt) |
| Allocation and initialization of the unknown and boundary conditions until present+dt. | |
| virtual bool | updateGivenFields () |
| virtual void | discretiser () |
| Discretizes the equation. | |
| virtual void | associer_pb_base (const Probleme_base &) |
| Associates with the Problem passed as parameter. | |
| virtual void | completer () |
| Completes the construction (initialization) of objects associated with the equation. | |
| virtual double | calculer_pas_de_temps () const |
| Calculation of the next time step. | |
| void | calculer_pas_de_temps_locaux (DoubleTab &) const |
| Sources & | sources () |
| Returns the source terms associated with the equation. | |
| const Sources & | sources () const |
| Returns the source terms associated with the equation (const version). | |
| Solveur_Masse_base & | solv_masse () |
| Returns the mass solver associated with the equation. | |
| const Solveur_Masse_base & | solv_masse () const |
| Returns the mass solver associated with the equation (const version). | |
| Probleme_base & | probleme () |
| Returns the problem associated with the equation. | |
| const Probleme_base & | probleme () const |
| Returns the problem associated with the equation. | |
| Schema_Temps_base & | schema_temps () |
| Returns the time scheme associated with the equation. | |
| const Schema_Temps_base & | schema_temps () const |
| Returns the time scheme associated with the equation. | |
| virtual void | associer_sch_tps_base (const Schema_Temps_base &) |
| Associates the time scheme with the equation. | |
| virtual void | associer_domaine_dis (const Domaine_dis_base &) |
| Associates the discretized domain with the equation. | |
| const Discretisation_base & | discretisation () const |
| Returns the discretization associated with the equation. | |
| virtual Domaine_Cl_dis_base & | domaine_Cl_dis () |
| Returns the discretized boundary condition domain associated with the equation. | |
| virtual const Domaine_Cl_dis_base & | domaine_Cl_dis () const |
| Returns the discretized boundary condition domain associated with the equation (const version). | |
| Domaine_dis_base & | domaine_dis () |
| Returns the discretized domain associated with the equation. | |
| const Domaine_dis_base & | domaine_dis () const |
| Returns the discretized domain associated with the equation. | |
| const Nom & | le_nom () const override |
| Returns the name of the equation. | |
| DoubleVect & | get_residu () |
| DoubleVect & | residu_initial () |
| void | initialise_residu (int=0) |
| virtual void | imprime_residu (SFichier &) |
| virtual Nom | expression_residu () |
| virtual void | dimensionner_matrice (Matrice_Morse &mat_morse) |
| virtual void | dimensionner_matrice_sans_mem (Matrice_Morse &mat_morse) |
| virtual void | assembler (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) |
| virtual void | modifier_pour_Cl (Matrice_Morse &mat_morse, DoubleTab &secmem) const |
| virtual void | assembler_avec_inertie (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) |
| virtual void | dimensionner_termes_croises (Matrice_Morse &matrice, const Probleme_base &autre_pb, int nl, int nc) |
| virtual void | ajouter_termes_croises (const DoubleTab &inco, const Probleme_base &autre_pb, const DoubleTab &autre_inco, DoubleTab &resu) const |
| virtual void | contribuer_termes_croises (const DoubleTab &inco, const Probleme_base &autre_pb, const DoubleTab &autre_inco, Matrice_Morse &matrice) const |
| virtual int | has_interface_blocs () const |
| virtual double | get_time_factor () const |
| virtual void | dimensionner_blocs (matrices_t matrices, const tabs_t &semi_impl={}) const |
| virtual void | assembler_blocs (matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl={}) const |
| virtual void | assembler_blocs_avec_inertie (matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl={}) |
| Champ_Inc_base & | champ_conserve () const |
| int | has_champ_conserve () const |
| void | init_champ_conserve () const |
| virtual std::pair< std::string, fonc_calc_t > | get_fonc_champ_conserve () const |
| virtual Champ_Inc_base & | champ_convecte () const |
| virtual int | has_champ_convecte () const |
| virtual void | init_champ_convecte () const |
| virtual void | mettre_a_jour_champs_conserves (double temps, int reset=0) |
| void | creer_champ (const Motcle &motlu) override |
| const Champ_base & | get_champ (const Motcle &nom) const override |
| void | get_noms_champs_postraitables (Noms &nom, Option opt=NONE) const override |
| bool | has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override |
| bool | has_champ (const Motcle &nom) const override |
| virtual const Motcle & | domaine_application () const |
| Returns "indeterminate" Navier_Stokes_standard for example overrides this method. | |
| virtual void | verifie_ch_init_nb_comp (const Champ_Inc_base &ch_ref, const int nb_comp) const |
| Verification of the number of components read for the specification of a field. | |
| virtual void | verifie_ch_init_nb_comp_cl (const Champ_Inc_base &ch_ref, const int nb_comp, const Cond_lim_base &cl) const |
| DoubleTab & | derivee_en_temps_conv (DoubleTab &, const DoubleTab &) |
| Add convection term In: solution is the unknown I. | |
| void | Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution) |
| void | Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution, const DoubleTab &terme_mul) |
| OWN_PTR (Parametre_equation_base) ¶metre_equation() | |
| const | OWN_PTR (Parametre_equation_base) ¶metre_equation() const |
| virtual const RefObjU & | get_modele (Type_modele type) const |
| virtual int | equation_non_resolue () const |
| int | disable_equation_residual () const |
| virtual const Champ_Inc_base & | derivee_en_temps () const |
| virtual Champ_Inc_base & | derivee_en_temps () |
| void | set_calculate_time_derivative (int i) |
| int | calculate_time_derivative () const |
| void | set_residuals (const DoubleTab &residual) |
| virtual bool | positive_unkown () |
| void | add_champs_compris (const Champ_base &ch) |
| void | set_diffusion_multi_scalaire (bool flg=true) |
| const bool & | diffusion_multi_scalaire () const |
| public_for_cuda void | Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution, int size_terme_mul, const DoubleTab &term_mul) |
| Solve: (1/dt + M-1*L)*dI = M-1 * secmem with a Conjugate Gradient matrix-free algorithm by default. | |
| Public Member Functions inherited from Champs_compris_interface | |
| virtual | ~Champs_compris_interface () |
| virtual bool | has_champ (const Motcle &nom, OBS_PTR(Champ_base)&ref_champ) const =0 |
| Public Member Functions inherited from Objet_U | |
| ~Objet_U () override | |
| Destructor. Removes the object from the list of objects registered in "memory". | |
| int | numero () const |
| Returns the index of the object in Memoire::data. | |
| virtual int | duplique () const =0 |
| virtual Sortie & | printOn (Sortie &) const |
| Writes the object to an output stream. Virtual method to override. | |
| virtual Entree & | readOn (Entree &) |
| Reads an Objet_U from an input stream. Virtual method to override. | |
| virtual unsigned | taille_memoire () const =0 |
| virtual int | est_egal_a (const Objet_U &) const |
| Returns 1 if x and *this are the same instance (same memory address). | |
| int | get_object_id () const |
| Returns the unique identifier of the object (object_id_). | |
| virtual const Type_info * | get_info () const |
| Returns type information for the Objet_U. | |
| const Nom & | que_suis_je () const |
| Returns the string identifying the class. | |
| const char * | le_type () const |
| Returns the type name of the Objet_U. | |
| virtual int | change_num (const int *const) |
| Changes the internal number of the Objet_U. | |
| virtual int | associer_ (Objet_U &) |
| Associates the Objet_U with another Objet_U. Virtual method to override. | |
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
Static Public Member Functions | |
| static void | calculer_champ_conserve (const Objet_U &obj, DoubleTab &val, DoubleTab &bval, tabs_t &deriv) |
| Static Public Member Functions inherited from Objet_U | |
| static const Nom & | nom_du_cas () |
| Returns a constant reference to the case name. This method is static. | |
| static Nom & | get_set_nom_du_cas () |
| Returns a non-constant reference to the case name (to allow modification). This method is static. | |
| static const Type_info * | info () |
| Returns type information for the Objet_U (static version). | |
| static const Objet_U & | self_cast (const Objet_U &) |
| Method added for casting in Python. | |
| static Objet_U & | self_cast (Objet_U &) |
| Static Public Member Functions inherited from Process | |
| static int | me () |
| Returns the rank of the local processor in the current communication group. See Comm_Group::rank() and PE_Groups::current_group(). | |
| static int | nproc () |
| Returns the number of processors in the current group. See Comm_Group::nproc() and PE_Groups::current_group(). | |
| static bool | is_parallel () |
| static void | exit (int exit_code=-1) |
| Exit routine for TRUST within a Kokkos region. | |
| static double | mp_sum (double) |
| Computes the sum of x over all processors in the current group. | |
| static float | mp_sum (float) |
| static trustIdType | mp_sum (trustIdType) |
| Computes the sum of x over all processors in the current group. | |
| static double | mp_max (double) |
| static double | mp_min (double) |
| static int | mp_max (int) |
| Returns the maximum value of x across all processors in the current group. | |
| static int | mp_min (int) |
| Returns the minimum value of x across all processors in the current group. | |
| static double | mp_sum_as_double (int v) |
| static trustIdType | mppartial_sum (trustIdType i) |
| Computes the partial sum of x over processors 0 to me()-1 (returns 0 on processor 0). | |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_sum_for_each: combine multiple mp_sum calls into one collective operation Usage: mp_sum_for_each(a, b); mp_sum_for_each(a, b, c); mp_sum_for_each(a, b, c, d); mp_sum_for_each(a, b, c, d, e); All arguments must be of the same type (double or int) and are modified in place. Supports 2-5 parameters. | |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_max_for_each: combine multiple mp_max calls into one collective operation. | |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_min_for_each: combine multiple mp_min calls into one collective operation. | |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename _TYPE_> | |
| static void | mp_sum_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| template<typename _TYPE_> | |
| static void | mp_max_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| template<typename _TYPE_> | |
| static void | mp_min_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| static bool | mp_and (bool) |
| Computes the logical AND of b across all processors in the current group. | |
| static bool | mp_or (bool) |
| static int | check_int_overflow (trustIdType) |
| static int | je_suis_maitre () |
| Returns 1 if on the master processor of the current group (i.e. me() == 0), 0 otherwise. | |
| static KOKKOS_INLINE_FUNCTION void | Kokkos_exit (const char *) |
| Exit routine for TRUST within a Kokkos region. | |
| static int | node_master () |
| Returns 1 if on the NUMA node master processor, 0 otherwise. | |
| static void | exit (const Nom &message, int exit_code=-1) |
| static bool | is_sequential () |
| static void | barrier () |
| Synchronizes all processors in the current group (waits until all processors have reached the barrier). | |
| static void | abort () |
| Abort routine for TRUST on a fatal error. | |
| static Sortie & | Journal (int message_level=0) |
| Returns a static Sortie object used as an event journal. | |
| static double | ram_processeur () |
| static void | imprimer_ram_totale (int all_process=0) |
| static bool | force_single_file (const int ranks, const Nom &filename) |
Public Attributes | |
| Matrice_Morse_Diag | diag_ |
Protected Member Functions | |
| OWN_PTR (Solveur_Masse_base) solveur_masse | |
| OBS_PTR (Schema_Temps_base) le_schema_en_temps | |
| OBS_PTR (Domaine_dis_base) le_dom_dis | |
| OWN_PTR (Domaine_Cl_dis_base) le_dom_Cl_dis | |
| OBS_PTR (Probleme_base) mon_probleme | |
| virtual 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. | |
| virtual Entree & | lire_sources (Entree &) |
| Reading of source terms in an input stream. | |
| virtual Entree & | lire_cond_init (Entree &) |
| Reading of initial conditions in an input stream. | |
| virtual Entree & | lire_cl (Entree &) |
| Reading of boundary conditions in an input stream. | |
| virtual int | verif_Cl () const |
| Verifies the compatibility of boundary conditions with the equation. | |
| virtual void | lire () |
| OWN_PTR (Parametre_equation_base) parametre_equation_ | |
| LIST (RefObjU) liste_modeles_ | |
| OWN_PTR (Champ_Inc_base) champ_conserve_ | |
| OWN_PTR (Champ_Inc_base) champ_convecte_ | |
| OWN_PTR (Champ_Inc_base) derivee_en_temps_ | |
| Protected Member Functions inherited from Objet_U | |
| Objet_U () | |
| Default constructor: assigns a unique identifier to the object (object_id_) and registers the object in "memory" by giving it a num_obj number. | |
| Objet_U (const Objet_U &) | |
| Copy constructor. | |
| const Objet_U & | operator= (const Objet_U &) |
| Assignment operator: does nothing (the number and identifier are preserved). | |
Protected Attributes | |
| Nom | nom_ |
| Sources | les_sources |
| DoubleList | dt_op_bak |
| int | sys_invariant_ |
| int | implicite_ |
| bool | has_time_factor_ |
| Champs_compris | champs_compris_ |
| Champs_Fonc | list_champ_combi |
| Matrice_Morse | matrice_stockee |
| int | matrice_init |
| int | calculate_time_derivative_ |
| bool | diffusion_multi_scalaire_ = false |
Additional Inherited Members | |
| Static Public Attributes inherited from Objet_U | |
| static double | precision_geom = 1e-10 |
| static constexpr bool | HAS_POINTER = false |
| static int | dimension =0 |
| static int | format_precision_geom =11 |
| static int | axi =0 |
| static int | bidim_axi =0 |
| static int | DEACTIVATE_SIGINT_CATCH =0 |
| static Type_info | info_obj |
| static bool | disable_TU =false |
| Flag to disable or not the writing of the .TU files. | |
| static bool | stat_per_proc_perf_log =false |
| Flag to enable the writing of the statistics detailed per processor in _csv.TU file. | |
| Static Public Attributes inherited from Process | |
| static int | exception_sur_exit =0 |
| static int | multiple_files =5120 |
class Equation_base The role of an equation is the calculation of one or more fields. This class is the base of the equations hierarchy.
Its members are the attributes and methods common to all classes that represent equations.
An equation is modeled in the following way:
M * dU_h/dt + Sum_i(Op_i(U_h)) = Sum(Sources);
M is the mass matrix represented by a "Solveur_Masse" object
U_h is the unknown represented by a "Champ_Inc" object
Op_i is the i-th operator of the equation represented by an "Operateur" object
Sources are the source terms (possibly non-existent) of the equation represented by "Source" objects.
An equation is linked to a problem by a reference contained in the member OBS_PTR(Probleme_base) mon_probleme.
Abstract class from which all equations must derive.
Abstract methods:
int nombre_d_operateurs() const
const Operateur& operateur(int) const
Operateur& operateur(int)
const Champ_Inc_base& inconnue() const
Champ_Inc_base& inconnue()
void associer_milieu_base(const Milieu_base&)
const Milieu_base& milieu() const
Milieu_base& milieu()
Entree& lire(const Motcle&, Entree&) [protected]
Definition at line 75 of file Equation_base.h.
|
virtual |
Reinitialize what must be.
This method is called when a time step is abandoned, for example because the calculation has diverged. So you must clean up what could pollute the new resolution.
| WrongContext |
Reimplemented in Cahn_Hilliard, Momentum_Euler, Navier_Stokes_std, and QDM_Multiphase.
Definition at line 939 of file Equation_base.cpp.
|
inline |
Definition at line 250 of file Equation_base.h.
|
virtual |
Definition at line 2022 of file Equation_base.cpp.
|
virtual |
Reimplemented in Conduction_IBM, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Espece_Multi_QC, Convection_Diffusion_Espece_Multi_WC, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_IBM, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_IBM, Navier_Stokes_Turbulent_QC, and Transport_Interfaces_FT_Disc.
Definition at line 2035 of file Equation_base.cpp.
|
virtual |
Reimplemented in Navier_Stokes_Fluide_Dilatable_base, and Navier_Stokes_Turbulent_QC.
Definition at line 2127 of file Equation_base.cpp.
|
virtual |
Reimplemented in Convection_Diffusion_Temperature, and Navier_Stokes_std.
Definition at line 2157 of file Equation_base.cpp.
|
virtual |
Reimplemented in Conservation_Euler_base, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Multi_QC, Convection_Diffusion_Espece_Multi_WC, Energie_Multiphase, Masse_Multiphase, Navier_Stokes_Fluide_Dilatable_base, and QDM_Multiphase.
Definition at line 2184 of file Equation_base.cpp.
|
virtual |
Associates the discretized domain with the equation.
| (Domaine_dis_base& | z) the discretized domain to associate |
Definition at line 896 of file Equation_base.cpp.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Conservation_Euler_base, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_base, Convection_Diffusion_Temperature_FT_Disc, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Eq_rayo_semi_transp, Equation_Navier_Cauchy, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_2eq_base, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps_Bas_Reynolds, Transport_K_Eps_Realisable, and Transport_K_KEps.
|
virtual |
Reimplemented in List_Equations_Scalaires_Passifs_Especes.
Definition at line 846 of file Equation_base.cpp.
|
virtual |
Associates with the Problem passed as parameter.
Also associates the sources, operators and mass solver with the equation.
| (Probleme_base& | pb) the problem with which the equation must be associated |
Reimplemented in Cahn_Hilliard, Eq_rayo_semi_transp, IJK_Interfaces, IJK_Thermals, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_std, and Transport_Interfaces_FT_Disc.
Definition at line 778 of file Equation_base.cpp.
|
virtual |
Associates the time scheme with the equation.
| (Schema_Temps_base& | un_schema_en_temps) the time scheme to associate with the equation |
Reimplemented in Cahn_Hilliard, and Navier_Stokes_Variable_Density.
Definition at line 855 of file Equation_base.cpp.
|
virtual |
Definition at line 1901 of file Equation_base.cpp.
|
inline |
Definition at line 245 of file Equation_base.h.
|
static |
Definition at line 2216 of file Equation_base.cpp.
|
virtual |
Calculation of the next time step.
Returns the inverse of the sum of the inverses of the time steps calculated by the operators. These time steps are those for the explicit Euler scheme. The time step is not limited by dt_max, this is done in corriger_dt_calcule
Reimplemented in Cahn_Hilliard, Conservation_Euler_base, Momentum_Euler, Navier_Stokes_phase_field, Transport_2eq_base, and Transport_Interfaces_FT_Disc.
Definition at line 1256 of file Equation_base.cpp.
| void Equation_base::calculer_pas_de_temps_locaux | ( | DoubleTab & | dt_op | ) | const |
Definition at line 1330 of file Equation_base.cpp.
|
inline |
Definition at line 188 of file Equation_base.h.
|
inlinevirtual |
Reimplemented in Energie_Multiphase, and Masse_Multiphase.
Definition at line 201 of file Equation_base.h.
|
inlinevirtual |
Reimplemented in Transport_Interfaces_FT_Disc.
Definition at line 106 of file Equation_base.h.
|
virtual |
Completes the construction (initialization) of objects associated with the equation.
Completes the sources, associates the equation with the unknown, completes the operators, completes the discretized boundary conditions. See the methods Source_base::completer(), Operateur_base::completer() Domaine_Cl_dis_base::completer() Domaine_Cl_dis_base::completer(const Domaine_dis_base& )
Reimplemented in Cahn_Hilliard, Conservation_Euler_base, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Chaleur_WC, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Binaire_QC, Convection_Diffusion_Espece_Binaire_WC, Convection_Diffusion_Espece_Multi_QC, Convection_Diffusion_Espece_Multi_WC, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature_FT_Disc, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, Convection_diffusion_turbulence_multiphase, Eq_rayo_semi_transp, IJK_Interfaces, IJK_Thermals, Masse_Multiphase, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FTD_IJK, Navier_Stokes_IBM_Turbulent, Navier_Stokes_QC, Navier_Stokes_std, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, Navier_Stokes_WC, QDM_Multiphase, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_K_Eps_Bas_Reynolds, Transport_K_Eps_Realisable, Transport_K_Omega, and Transport_Marqueur_FT.
Definition at line 134 of file Equation_base.cpp.
|
virtual |
Definition at line 2028 of file Equation_base.cpp.
|
virtual |
Reimplemented in Momentum_Euler, and Navier_Stokes_std.
Definition at line 1885 of file Equation_base.cpp.
|
virtual |
Reimplemented in Momentum_Euler, Navier_Stokes_std, Transport_K_Eps, Transport_K_Omega, Transport_K_ou_Eps, and Transport_K_ou_Eps_Realisable.
Definition at line 1889 of file Equation_base.cpp.
Create a synonym of a field name in order to ensure backward compatibility with old names of the PolyMAC discretisation family.
| field_tag |
Definition at line 507 of file Equation_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Reimplemented in Momentum_Euler, Navier_Stokes_Aposteriori, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, QDM_Multiphase, and Transport_Marqueur_FT.
Definition at line 1103 of file Equation_base.cpp.
|
virtual |
for PDI IO: retrieve name, type and dimensions of the data to save/restore. This has to be overrode for all the equations that either:
Reimplemented in Cahn_Hilliard, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Espece_Binaire_WC, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, Navier_Stokes_FT_Disc, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, and Transport_Interfaces_FT_Disc.
Definition at line 460 of file Equation_base.cpp.
|
inlinevirtual |
Definition at line 243 of file Equation_base.h.
|
inlinevirtual |
Definition at line 242 of file Equation_base.h.
| DoubleTab & Equation_base::derivee_en_temps_conv | ( | DoubleTab & | secmem, |
| const DoubleTab & | solution ) |
Add convection term In: solution is the unknown I.
Out: secmem is increased by convection(I)
Definition at line 1481 of file Equation_base.cpp.
|
virtual |
Returns the time derivative of the unknown I of the equation: dI/dt = M-1*(sum(operators(I) + sources)).
In : derivee contains I (but immediatly set to 0) Out: derivee contains dI/dt
Reimplemented in Cahn_Hilliard, Cahn_Hilliard_Convection, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Espece_Multi_QC, Convection_Diffusion_Espece_Multi_WC, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_FT_Disc, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_phase_field, Navier_Stokes_std, Navier_Stokes_Turbulent_QC, Navier_Stokes_Variable_Density, and Transport_Interfaces_FT_Disc.
Definition at line 577 of file Equation_base.cpp.
|
inlinevirtual |
Definition at line 114 of file Equation_base.h.
|
inline |
Definition at line 258 of file Equation_base.h.
|
virtual |
Reimplemented in Conservation_Euler_base, Energie_Multiphase, Masse_Multiphase, Navier_Stokes_std, and QDM_Multiphase.
Definition at line 2148 of file Equation_base.cpp.
|
virtual |
Definition at line 1922 of file Equation_base.cpp.
|
virtual |
Reimplemented in Conservation_Euler_base, Energie_Multiphase, Masse_Multiphase, Navier_Stokes_std, and QDM_Multiphase.
Definition at line 1958 of file Equation_base.cpp.
|
virtual |
Definition at line 2011 of file Equation_base.cpp.
|
inline |
Definition at line 239 of file Equation_base.h.
| const Discretisation_base & Equation_base::discretisation | ( | ) | const |
Returns the discretization associated with the equation.
| no | problem associated |
Definition at line 1093 of file Equation_base.cpp.
|
virtual |
Discretizes the equation.
Type the domaine_Cl_dis, the format, associate it with the equation. Type the mass solver, associate the discretized domain and the discretized boundary condition domain with it.
Reimplemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Concentration, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_FT_Disc, Density_Euler, Echelle_temporelle_turbulente, Energie_cinetique_turbulente, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Energie_Multiphase_Enthalpie, Energy_Euler, Eq_rayo_semi_transp, Equation_Navier_Cauchy, Fraction_Euler, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_Aposteriori, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_phase_field, Navier_Stokes_std, Navier_Stokes_Turbulent_QC, Navier_Stokes_Variable_Density, Taux_dissipation_turbulent, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps_base, Transport_K_Omega_base, Transport_K_ou_Eps_base, and Transport_Marqueur_FT.
Definition at line 807 of file Equation_base.cpp.
|
virtual |
Returns "indeterminate" Navier_Stokes_standard for example overrides this method.
to return "Hydraulic"
Reimplemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Concentration, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Temperature, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Equation_Navier_Cauchy, Masse_Multiphase, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_K_Eps, Transport_K_Eps_Bas_Reynolds, Transport_K_Eps_Realisable, Transport_K_KEps, Transport_K_Omega, Transport_K_ou_Eps, and Transport_K_ou_Eps_Realisable.
Definition at line 1373 of file Equation_base.cpp.
|
inlinevirtual |
Returns the discretized boundary condition domain associated with the equation.
Definition at line 343 of file Equation_base.h.
|
inlinevirtual |
Returns the discretized boundary condition domain associated with the equation (const version).
Definition at line 353 of file Equation_base.h.
| Domaine_dis_base & Equation_base::domaine_dis | ( | ) |
Returns the discretized domain associated with the equation.
| the | discretized domain object (Domaine_dis) is invalid, associated problem not discretized. |
Definition at line 92 of file Equation_base.cpp.
| const Domaine_dis_base & Equation_base::domaine_dis | ( | ) | const |
Returns the discretized domain associated with the equation.
(const version)
| the | discretized domain object (Domaine_dis) is invalid, associated problem not discretized. |
Definition at line 112 of file Equation_base.cpp.
|
virtual |
Definition at line 68 of file Equation_base.cpp.
|
virtual |
Reimplemented in Navier_Stokes_IBM_Turbulent, and Navier_Stokes_Turbulent.
Definition at line 2267 of file Equation_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Reimplemented in Navier_Stokes_Aposteriori, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, Transport_K_ou_Eps_base, and Transport_Marqueur_FT.
Definition at line 1193 of file Equation_base.cpp.
|
inlinevirtual |
Reimplemented in Echelle_temporelle_turbulente, Energie_cinetique_turbulente, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Masse_Multiphase, and Taux_dissipation_turbulent.
Definition at line 195 of file Equation_base.h.
|
virtual |
Reimplemented in Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Espece_Binaire_Turbulent_QC, Convection_Diffusion_Espece_Multi_Turbulent_QC, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, Navier_Stokes_IBM_Turbulent, and Navier_Stokes_Turbulent.
Definition at line 1894 of file Equation_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Reimplemented in IJK_Interfaces, IJK_Thermals, Momentum_Euler, Navier_Stokes_Aposteriori, Navier_Stokes_FTD_IJK, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, QDM_Multiphase, and Transport_Marqueur_FT.
Definition at line 1230 of file Equation_base.cpp.
|
inline |
Definition at line 148 of file Equation_base.h.
|
inlinevirtual |
Reimplemented in Convection_Diffusion_Temperature.
Definition at line 178 of file Equation_base.h.
|
inline |
Definition at line 227 of file Equation_base.h.
|
inline |
Definition at line 231 of file Equation_base.h.
| void Equation_base::Gradient_conjugue_diff_impl | ( | DoubleTrav & | secmem, |
| DoubleTab & | solution, | ||
| int | size_terme_mul, | ||
| const DoubleTab & | terme_mul ) |
Solve: (1/dt + M-1*L)*dI = M-1 * secmem with a Conjugate Gradient matrix-free algorithm by default.
L is the diffusion M is the mass In : solution=I(n) Out: solution=dI/dt
Definition at line 1540 of file Equation_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Reimplemented in IJK_Interfaces, IJK_Thermals, Navier_Stokes_Aposteriori, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FTD_IJK, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, Transport_K_ou_Eps_base, and Transport_Marqueur_FT.
Definition at line 1162 of file Equation_base.cpp.
|
override |
Definition at line 1125 of file Equation_base.cpp.
|
inline |
Definition at line 189 of file Equation_base.h.
|
inlinevirtual |
Reimplemented in Energie_Multiphase, and Masse_Multiphase.
Definition at line 202 of file Equation_base.h.
|
virtual |
Reimplemented in Conservation_Euler_base, Energie_Multiphase, Masse_Multiphase, Momentum_Euler, Navier_Stokes_std, and QDM_Multiphase.
Definition at line 2137 of file Equation_base.cpp.
|
virtual |
Prints the equation operators to an output stream, unconditionally.
calls Operateur_base::impr(os)
| (Sortie& | os) output stream |
Reimplemented in Aire_interfaciale, Conduction, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Eq_rayo_semi_transp, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_QC, Navier_Stokes_std, Navier_Stokes_Turbulent_QC, Navier_Stokes_WC, QDM_Multiphase, and Transport_Interfaces_FT_Disc.
Definition at line 549 of file Equation_base.cpp.
|
virtual |
Reimplemented in Navier_Stokes_IBM_Turbulent, and Navier_Stokes_Turbulent.
Definition at line 2237 of file Equation_base.cpp.
|
virtual |
Prints the equation operators if the time scheme indicates it is necessary.
[IF limpr() THEN impr(os)]
| (Sortie& | os) output stream |
Reimplemented in Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, Navier_Stokes_IBM_Turbulent, Navier_Stokes_Turbulent, and Navier_Stokes_Turbulent_QC.
Definition at line 564 of file Equation_base.cpp.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Conservation_Euler_base, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_std, Convection_Diffusion_Temperature, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Eq_rayo_semi_transp, Equation_Navier_Cauchy, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps_base, Transport_K_Omega_base, Transport_K_ou_Eps_base, and Transport_Marqueur_FT.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Conservation_Euler_base, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_std, Convection_Diffusion_Temperature, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Energie_Multiphase, Eq_rayo_semi_transp, Equation_Navier_Cauchy, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps_base, Transport_K_Omega_base, Transport_K_ou_Eps_base, and Transport_Marqueur_FT.
| void Equation_base::init_champ_conserve | ( | ) | const |
Definition at line 2201 of file Equation_base.cpp.
|
inlinevirtual |
Reimplemented in Energie_Multiphase, and Masse_Multiphase.
Definition at line 203 of file Equation_base.h.
|
inlinevirtual |
Reimplemented in Transport_Interfaces_FT_Disc.
Definition at line 105 of file Equation_base.h.
| void Equation_base::initialise_residu | ( | int | size = 0 | ) |
Definition at line 2312 of file Equation_base.cpp.
|
virtual |
Allocation and initialization of the unknown and boundary conditions until present+dt.
Reimplemented in Cahn_Hilliard, Conduction_IBM, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Espece_Binaire_Turbulent_QC, Convection_Diffusion_Temperature_IBM, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, Eq_rayo_semi_transp, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_IBM, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, QDM_Multiphase, and Transport_Marqueur_FT.
Definition at line 1020 of file Equation_base.cpp.
|
inlineoverridevirtual |
Returns the name of the equation.
Reimplemented from Objet_U.
Definition at line 334 of file Equation_base.h.
| int Equation_base::limpr | ( | ) | const |
Ask the time scheme if an output is needed.
Returns 1 if an output is needed. Simple call to Schema_Temps_base::limpr()
Definition at line 537 of file Equation_base.cpp.
|
inlineprotectedvirtual |
Definition at line 282 of file Equation_base.h.
Reading of boundary conditions in an input stream.
see Domaine_Cl_dis_base::readOn
| (Entree& | is) input stream |
| the | discretized boundary condition domain is empty |
Reimplemented in Transport_Marqueur_FT.
Definition at line 424 of file Equation_base.cpp.
Reading of initial conditions in an input stream.
The reading format is as follows: { Name [MUST BE THE NAME OF THE UNKNOWN] [READ A GIVEN FIELD] }
| (Entree& | is) input stream |
| format | error, opening brace expected |
| bad | name for the unknown |
| format | error, closing brace expected |
Reimplemented in Density_Euler, Energy_Euler, Momentum_Euler, Navier_Stokes_std, QDM_Multiphase, Transport_Interfaces_FT_Disc, and Transport_Marqueur_FT.
Definition at line 376 of file Equation_base.cpp.
|
overrideprotectedvirtual |
Reads non-simple-type parameters of an Objet_U from an input stream.
| motlu | The name of the keyword to read. |
| is | An input stream. |
Reimplemented from Objet_U.
Reimplemented in Equation_Navier_Cauchy, IJK_Interfaces, Masse_Multiphase, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_std_sensibility, Navier_Stokes_Turbulent, QDM_Multiphase, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps, Transport_K_Eps_non_std, Transport_K_Eps_Realisable, Transport_K_KEps, Transport_K_Omega, Transport_K_ou_Eps, Transport_K_ou_Eps_non_std, Transport_K_ou_Eps_Realisable, and Transport_Marqueur_FT.
Definition at line 274 of file Equation_base.cpp.
Reading of source terms in an input stream.
| (Entree& | is) input stream to read source terms |
Definition at line 327 of file Equation_base.cpp.
|
protected |
|
virtual |
The value of the unknown at the time step has been calculated.
This method advances the present until the time passed as parameter. It also updates the properties of the medium.
| (double | temps) the time step for update |
Reimplemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Convection_Diffusion_Chaleur_QC, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Concentration, Convection_Diffusion_Concentration_FT_Disc, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Concentration_Turbulent_FT_Disc, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature_FT_Disc, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_sensibility, Convection_Diffusion_Temperature_Turbulent, Energie_cinetique_turbulente, Equation_Navier_Cauchy, Fraction_Euler, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_IBM_Turbulent, Navier_Stokes_phase_field, Navier_Stokes_std, Navier_Stokes_std_sensibility, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, QDM_Multiphase, Transport_Interfaces_FT_Disc, Transport_K_Omega_base, and Transport_Marqueur_FT.
Definition at line 908 of file Equation_base.cpp.
|
virtual |
Reimplemented in Density_Euler, and Momentum_Euler.
Definition at line 923 of file Equation_base.cpp.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Conservation_Euler_base, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature_base, Convection_Diffusion_Temperature_FT_Disc, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Eq_rayo_semi_transp, Equation_Navier_Cauchy, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_2eq_base, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, and Transport_Interfaces_FT_Disc.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Conduction, Conservation_Euler_base, Convection_Diffusion_Concentration, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature_base, Convection_Diffusion_Temperature_FT_Disc, Convection_diffusion_turbulence_multiphase, Energie_cinetique_turbulente_WIT, Eq_rayo_semi_transp, Equation_Navier_Cauchy, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_2eq_base, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, and Transport_Interfaces_FT_Disc.
|
virtual |
Definition at line 2119 of file Equation_base.cpp.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Cahn_Hilliard_Convection, Conduction, Conservation_Euler_base, Convection_Diffusion_std, Density_Euler, Energy_Euler, Eq_rayo_semi_transp, Equation_Navier_Cauchy, Fraction_Euler, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps, Transport_K_Eps_non_std, Transport_K_Eps_Realisable, Transport_K_Omega, Transport_K_ou_Eps, Transport_K_ou_Eps_non_std, and Transport_K_ou_Eps_Realisable.
|
virtual |
Reimplemented in Cahn_Hilliard, Cahn_Hilliard_Convection, and Navier_Stokes_std.
Definition at line 2353 of file Equation_base.cpp.
|
overridevirtual |
Method called when the object instance is created in the data file (Interprete::ajouter).
Reimplemented from Objet_U.
Definition at line 766 of file Equation_base.cpp.
|
protected |
|
protected |
|
protected |
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Cahn_Hilliard_Convection, Conduction, Conservation_Euler_base, Convection_Diffusion_std, Density_Euler, Energy_Euler, Eq_rayo_semi_transp, Equation_Navier_Cauchy, Fraction_Euler, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps, Transport_K_Eps_non_std, Transport_K_Eps_Realisable, Transport_K_Omega, Transport_K_ou_Eps, Transport_K_ou_Eps_non_std, and Transport_K_ou_Eps_Realisable.
|
pure virtual |
Implemented in Aire_interfaciale, Cahn_Hilliard, Cahn_Hilliard_Convection, Conduction, Conservation_Euler_base, Convection_Diffusion_std, Density_Euler, Energy_Euler, Eq_rayo_semi_transp, Equation_Navier_Cauchy, Fraction_Euler, IJK_Interfaces, IJK_Thermals, List_Equations_Scalaires_Passifs_Especes, Masse_Multiphase, Momentum_Euler, Navier_Stokes_FTD_IJK, Navier_Stokes_std, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps, Transport_K_Eps_non_std, Transport_K_Eps_Realisable, Transport_K_Omega, Transport_K_ou_Eps, Transport_K_ou_Eps_non_std, and Transport_K_ou_Eps_Realisable.
|
virtual |
Reimplemented in Navier_Stokes_std.
Definition at line 2346 of file Equation_base.cpp.
|
virtual |
Reimplemented in Navier_Stokes_std.
Definition at line 2339 of file Equation_base.cpp.
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
inline |
Definition at line 235 of file Equation_base.h.
|
inline |
Definition at line 236 of file Equation_base.h.
|
protected |
|
protected |
|
inlinevirtual |
Reimplemented in Aire_interfaciale, Convection_diffusion_turbulence_multiphase, and Energie_cinetique_turbulente_WIT.
Definition at line 248 of file Equation_base.h.
|
virtual |
Everything that does not depend on other possible problems.
Reimplemented in Cahn_Hilliard, Conduction_IBM, Convection_Diffusion_Chaleur_Fluide_Dilatable_base, Convection_Diffusion_Chaleur_QC, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Chaleur_WC, Convection_Diffusion_Concentration, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_FT_Disc, Convection_Diffusion_Temperature_IBM, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_Turbulent, IJK_Interfaces, IJK_Thermals, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_IBM, Navier_Stokes_IBM_Turbulent, Navier_Stokes_phase_field, Navier_Stokes_std, Navier_Stokes_Turbulent, Navier_Stokes_Turbulent_QC, Navier_Stokes_Variable_Density, QDM_Multiphase, Transport_Interfaces_FT_Disc, and Transport_Marqueur_FT.
Definition at line 977 of file Equation_base.cpp.
| Probleme_base & Equation_base::probleme | ( | ) |
Returns the problem associated with the equation.
Definition at line 747 of file Equation_base.cpp.
| const Probleme_base & Equation_base::probleme | ( | ) | const |
Returns the problem associated with the equation.
(const version)
Definition at line 758 of file Equation_base.cpp.
|
virtual |
Definition at line 1908 of file Equation_base.cpp.
|
overridevirtual |
We resume the unknown from an input stream.
[WE SEARCH FOR THE UNKNOWN BY ITS NAME] [WE READ THE UNKNOWN] See Champ_Inc::reprendre(Entree&)
| (Entree& | fich) input stream (file) to read |
| restart | error, end of file reached without finding the unknown |
Reimplemented from Objet_U.
Reimplemented in Navier_Stokes_FT_Disc, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, Transport_Interfaces_FT_Disc, and Transport_Marqueur_FT.
Definition at line 476 of file Equation_base.cpp.
|
virtual |
Reset current time of the equation. Used from ICoCo. See documentation of Problem_base::resetTime().
Reimplemented in Cahn_Hilliard, and Navier_Stokes_std.
Definition at line 951 of file Equation_base.cpp.
|
inline |
Definition at line 149 of file Equation_base.h.
|
overridevirtual |
We save the unknown, then the source terms to an output stream.
| (Sortie& | os) |
Reimplemented from Objet_U.
Reimplemented in Momentum_Euler, Navier_Stokes_FT_Disc, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_Turbulent, Transport_Interfaces_FT_Disc, and Transport_Marqueur_FT.
Definition at line 443 of file Equation_base.cpp.
| Schema_Temps_base & Equation_base::schema_temps | ( | ) |
Returns the time scheme associated with the equation.
| no | time scheme associated with the equation |
Definition at line 865 of file Equation_base.cpp.
| const Schema_Temps_base & Equation_base::schema_temps | ( | ) | const |
Returns the time scheme associated with the equation.
| no | time scheme associated with the equation |
Definition at line 881 of file Equation_base.cpp.
|
inline |
Definition at line 244 of file Equation_base.h.
|
inline |
Definition at line 253 of file Equation_base.h.
|
overrideprotectedvirtual |
Reimplemented from Objet_U.
Reimplemented in Cahn_Hilliard, Cahn_Hilliard_Convection, Conduction, Conduction_IBM, Convection_Diffusion_Chaleur_QC, Convection_Diffusion_Chaleur_Turbulent_QC, Convection_Diffusion_Chaleur_WC, Convection_Diffusion_Concentration, Convection_Diffusion_Concentration_FT_Disc, Convection_Diffusion_Concentration_Turbulent, Convection_Diffusion_Concentration_Turbulent_FT_Disc, Convection_Diffusion_Espece_Binaire_base, Convection_Diffusion_Espece_Binaire_Turbulent_QC, Convection_Diffusion_Espece_Multi_base, Convection_Diffusion_Espece_Multi_QC, Convection_Diffusion_Espece_Multi_Turbulent_QC, Convection_Diffusion_Fluide_Dilatable_base, Convection_Diffusion_Phase_field, Convection_Diffusion_std, Convection_Diffusion_Temperature, Convection_Diffusion_Temperature_FT_Disc, Convection_Diffusion_Temperature_IBM, Convection_Diffusion_Temperature_IBM_Turbulent, Convection_Diffusion_Temperature_sensibility, Convection_Diffusion_Temperature_Turbulent, Density_Euler, Energie_cinetique_turbulente, Energie_Multiphase, Energy_Euler, Eq_rayo_semi_transp, Equation_Navier_Cauchy, Fraction_Euler, IJK_Interfaces, IJK_Thermals, Masse_Multiphase, Momentum_Euler, Navier_Stokes_Fluide_Dilatable_base, Navier_Stokes_FT_Disc, Navier_Stokes_FTD_IJK, Navier_Stokes_IBM, Navier_Stokes_IBM_Turbulent, Navier_Stokes_std, Navier_Stokes_std_sensibility, Navier_Stokes_Turbulent, QDM_Multiphase, Transport_2eq_base, Transport_Fluctuation_Temperature, Transport_Fluctuation_Temperature_W, Transport_Fluctuation_Temperature_W_Bas_Re, Transport_Flux_Chaleur_Turbulente, Transport_Interfaces_FT_Disc, Transport_K_Eps, Transport_K_Eps_base, Transport_K_Eps_non_std, Transport_K_Eps_Realisable, Transport_K_KEps, Transport_K_Omega, Transport_K_Omega_base, Transport_K_ou_Eps, Transport_K_ou_Eps_base, Transport_K_ou_Eps_non_std, Transport_K_ou_Eps_Realisable, and Transport_Marqueur_FT.
Definition at line 258 of file Equation_base.cpp.
| void Equation_base::set_residuals | ( | const DoubleTab & | residual | ) |
Definition at line 2323 of file Equation_base.cpp.
|
inline |
Returns the mass solver associated with the equation.
Definition at line 363 of file Equation_base.h.
|
inline |
Returns the mass solver associated with the equation (const version).
Definition at line 372 of file Equation_base.h.
| Sources & Equation_base::sources | ( | ) |
Returns the source terms associated with the equation.
Definition at line 348 of file Equation_base.cpp.
| const Sources & Equation_base::sources | ( | ) | const |
Returns the source terms associated with the equation (const version).
Definition at line 357 of file Equation_base.cpp.
|
virtual |
Reimplemented in Cahn_Hilliard.
Definition at line 1061 of file Equation_base.cpp.
|
virtual |
virtual method to correct the unknown during implicit iterations for example K-eps must remain positive
mass fractions between 0 and 1
Reimplemented in Equation_Navier_Cauchy, Transport_K_Eps_base, Transport_K_Omega_base, and Transport_K_ou_Eps_base.
Definition at line 969 of file Equation_base.cpp.
|
protectedvirtual |
Verifies the compatibility of boundary conditions with the equation.
see Conds_lim::compatible_avec_eqn().
Reimplemented in Density_Euler, Energy_Euler, Fraction_Euler, Navier_Stokes_std, and Transport_Interfaces_FT_Disc.
Definition at line 1360 of file Equation_base.cpp.
|
virtual |
Verification of the number of components read for the specification of a field.
Currently used for reading an initial or boundary condition.
| (ch_ref | : an unknown field of the considered equation) |
Reimplemented in Momentum_Euler.
Definition at line 1385 of file Equation_base.cpp.
|
inlinevirtual |
Reimplemented in Energie_Multiphase.
Definition at line 219 of file Equation_base.h.
|
protected |
Definition at line 303 of file Equation_base.h.
|
protected |
Definition at line 290 of file Equation_base.h.
| Matrice_Morse_Diag Equation_base::diag_ |
Definition at line 226 of file Equation_base.h.
|
protected |
Definition at line 308 of file Equation_base.h.
|
mutableprotected |
Definition at line 278 of file Equation_base.h.
|
protected |
Definition at line 286 of file Equation_base.h.
|
protected |
Definition at line 285 of file Equation_base.h.
|
protected |
Definition at line 267 of file Equation_base.h.
|
protected |
Definition at line 291 of file Equation_base.h.
|
mutableprotected |
Definition at line 295 of file Equation_base.h.
|
mutableprotected |
Definition at line 294 of file Equation_base.h.
|
protected |
Definition at line 265 of file Equation_base.h.
|
protected |
Definition at line 284 of file Equation_base.h.