|
TRUST 1.9.8
HPC thermohydraulic platform
|
classe Probleme_base C'est un Probleme_U qui n'est pas un couplage. More...
#include <Probleme_base.h>
Public Member Functions | |
| ~Probleme_base () | |
| virtual void | associer () |
| Associe le probleme a toutes ses equations. | |
| virtual Entree & | lire_equations (Entree &is, Motcle &dernier_mot) |
| Lecture des equations du probleme. | |
| virtual void | completer () |
| Complete les equations associees au probleme. | |
| virtual int | verifier () |
| Verifie que l'objet est complet, coherent, . | |
| virtual int | nombre_d_equations () const =0 |
| virtual const Equation_base & | equation (int) const =0 |
| virtual Equation_base & | equation (int)=0 |
| const Equation_base & | equation (const Nom &) const |
| Renvoie l'equation dont le nom est specifie. | |
| Equation_base & | equation (const Nom &) |
| Renvoie l'equation dont le nom est specifie. | |
| int | sauvegarder (Sortie &) const override |
| Ecriture du probleme sur fichier en vue d'une reprise. | |
| int | reprendre (Entree &) override |
| Lecture d'un flot d'entree (fichier) pour reprise apres une sauvegarde avec Probleme_base::sauvegarder(Sortie& os). | |
| int | is_sauvegarde_simple () const |
| const Nom & | restart_filename () const |
| const Nom & | checkpoint_filename () const |
| const Nom & | checkpoint_format () const |
| const Nom & | yaml_filename () const |
| virtual const Equation_base & | get_equation_by_name (const Nom &) const |
| (B. Math): Methode virtuelle ajoutee pour les problemes ayant plusieurs equations de meme type (Probleme_FT_Disc_gen). Dans ce cas, le nom de l'equation n'est pas son type... | |
| virtual Equation_base & | getset_equation_by_name (const Nom &) |
| (B. Math): Methode virtuelle ajoutee pour les problemes ayant plusieurs equations de meme type (Probleme_FT_Disc_gen). Dans ce cas, le nom de l'equation n'est pas son type... Version non const. Cette methode est notamment appelee a la lecture du probleme. | |
| virtual const Milieu_base & | milieu () const |
| Renvoie le milieu physique associe au probleme. | |
| virtual Milieu_base & | milieu () |
| Renvoie le milieu physique associe au probleme. | |
| virtual double | calculer_pas_de_temps () const |
| Calcul la valeur du prochain pas de temps du probleme. | |
| virtual void | mettre_a_jour (double temps) |
| Effectue une mise a jour en temps du probleme. | |
| virtual void | preparer_calcul () |
| Prepare le calcul: initialise les parametres du milieu et prepare le calcul de chacune des equations. | |
| virtual void | imprimer (Sortie &os) const |
| Imprime les equations associees au probleme si le schema en temps associe indique que c'est necessaire. | |
| int | associer_ (Objet_U &) override |
| surcharge Objet_U::associer_(Objet_U& ob) Associe differents objets au probleme en controlant | |
| virtual void | associer_sch_tps_base (const Schema_Temps_base &) |
| Associe un schema en temps au probleme. | |
| virtual void | associer_domaine (const Domaine &) |
| Associe un domaine au probleme. | |
| virtual void | associer_milieu_base (const Milieu_base &) |
| Associe un milieu physique aux equations du probleme. | |
| virtual void | discretiser (Discretisation_base &) |
| Affecte une discretisation au probleme Discretise le Domaine associe au probleme avec la discretisation. | |
| virtual void | discretiser_equations () |
| virtual void | finir () |
| Finit le postraitement et sauve le probleme dans un fichier. | |
| std::vector< OWN_PTR(Milieu_base)> & | milieu_vect () |
| const std::vector< OWN_PTR(Milieu_base)> & | milieu_vect () const |
| const Schema_Temps_base & | schema_temps () const |
| Renvoie le schema en temps associe au probleme. | |
| Schema_Temps_base & | schema_temps () |
| Renvoie le schema en temps associe au probleme. | |
| const Domaine & | domaine () const |
| Renvoie le domaine associe au probleme. | |
| Domaine & | domaine () |
| Renvoie le domaine associe au probleme. | |
| bool | has_domaine_dis () const |
| const Domaine_dis_base & | domaine_dis () const |
| Renvoie le domaine discretise associe au probleme. | |
| Domaine_dis_base & | domaine_dis () |
| Renvoie le domaine discretise associe au probleme. | |
| bool | is_dilatable () const |
| const Discretisation_base & | discretisation () const |
| Renvoie la discretisation associee au probleme. | |
| Postraitements & | postraitements () |
| const Postraitements & | postraitements () const |
| void | init_postraitements () |
| Flag le premier et le dernier postraitement pour chaque fichier Et initialise les postraitements. | |
| virtual int | expression_predefini (const Motcle &motlu, Nom &expression) |
| const char * | reprise_format_temps () const |
| bool & | reprise_effectuee () |
| bool | reprise_effectuee () const |
| 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 Champ_Generique_base & | get_champ_post (const Motcle &nom) const |
| virtual bool | has_champ_post (const Motcle &nom) const |
| virtual int | comprend_champ_post (const Motcle &nom) const |
| virtual int | a_pour_IntVect (const Motcle &, OBS_PTR(IntVect)&) const |
| virtual void | lire_postraitement_interfaces (Entree &is) |
| virtual void | postraiter_interfaces (const Nom &nom_fich, Sortie &s, const Nom &format, double temps) |
| virtual void | addInputField (Field_base &f) |
| bool | is_coupled () const |
| virtual bool | has_mod_rayo_transp () const |
| int | postraiter (int force=1) override |
| Si force=1, effectue le postraitement sans tenir compte des frequences de postraitement. | |
| int | limpr () const override |
| Demande au schema en temps s'il faut faire une impression. | |
| int | lsauv () const override |
| Demande au schema en temps s'il faut faire une sauvegarde. | |
| void | sauver () const override |
| Ecriture sur fichier en vue d'une reprise (sauvegarde). | |
| virtual void | allocation () const final |
| Verifie que la place necessaire existe sur le disque dur. | |
| void | initialize () override |
| This method is called once at the beginning, before any other one of the interface Problem. | |
| const bool & | is_probleme_base_initialized () const |
| void | terminate () override |
| This method is called once at the end, after any other one. | |
| double | presentTime () const override |
| Returns the present time. | |
| double | computeTimeStep (bool &stop) const override |
| Compute the value the Problem would like for the next time step. | |
| bool | initTimeStep (double dt) override |
| This method allocates and initializes the unknown and given fields for the future time step. | |
| bool | solveTimeStep () override |
| pour recodage eventuel et appel unifie en python | |
| bool | solveTimeStep_pbU () |
| bool | isStationary () const override |
| Tells if the Problem unknowns have changed during the last time step. | |
| std::string | newCompute () override |
| Recherche des champs parametriques, et pour chacun, passage au parametre suivant. | |
| void | validateTimeStep () override |
| Validates the calculated unknown by moving the present time at the end of the time step. | |
| void | setStationary (bool flag) override |
| Tells to the Problem that stationary is reached or not. | |
| void | abortTimeStep () override |
| Aborts the resolution of the current time step. | |
| void | resetTime (double time) override |
| Reset the current time of the Problem to a given value. | |
| void | getOutputPointValues (const Nom &name, const std::vector< double > &x, const std::vector< double > &y, const std::vector< double > &z, std::vector< double > &vals, int compo) override |
| bool | iterateTimeStep (bool &converged) override |
| In the case solveTimeStep uses an iterative process, this method executes a single iteration. | |
| void | getInputFieldsNames (Noms &noms) const override |
| This method is used to find the names of input fields understood by the Problem. | |
| void | getOutputFieldsNames (Noms &noms) const override |
| bool | updateGivenFields () override |
| ATTENTION : | |
| double | futureTime () const override |
| Returns the future time (end of current computing interval) This value is valid between initTimeStep and either. | |
| OBS_PTR (Field_base) findInputField(const Nom &name) const override | |
| OBS_PTR (Champ_Generique_base) findOutputField(const Nom &name) const override | |
| void | associer_pb_couple (const Probleme_Couple &pbc) |
| const Probleme_Couple & | get_pb_couple () const |
| Probleme_Couple & | get_pb_couple () |
| LIST (OBS_PTR(SFichier)) &get_set_out_files() const | |
| const Correlation_base & | get_correlation (std::string nom_correlation) const |
| int | has_correlation (std::string nom_correlation) const |
| 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 Probleme_U | |
| virtual void | getInputFieldTemplate (const Nom &name, ICoCo::TrioField &afield) const |
| virtual void | setInputField (const Nom &name, const ICoCo::TrioField &afield) |
| virtual void | getOutputField (const Nom &nameField, ICoCo::TrioField &afield) const |
| virtual void | setInputIntValue (const Nom &name, const int &val) |
| virtual int | getOutputIntValue (const Nom &name) const |
| virtual bool | checkOutputIntEntry (const Nom &name) const |
| double | getOutputPointValues (const Nom &name, const double x, const double y, const double z, int compo) |
| virtual void | setInputDoubleValue (const Nom &name, const double val) |
| virtual void | setInputStringValue (const std::string &name, const std::string &val) |
| virtual std::string | getOutputStringValue (const std::string &name) |
| virtual void | post_initialize () |
| virtual bool | run () |
| Cette methode est une sorte de main() du Problem Elle peut etre utilisee si le probleme n'est couple a aucun autre. | |
| virtual bool | runUntil (double time) |
| This method has the same role as the method run, but it stops when reaching the time given in parameter. | |
| void | nommer (const Nom &name) override |
| Donne un nom a l'Objet_U Methode virtuelle a surcharger. | |
| const Nom & | le_nom () const override |
| Donne le nom de l'Objet_U Methode a surcharger : renvoie "neant" dans cette implementation. | |
| Public Member Functions inherited from Objet_U | |
| ~Objet_U () override | |
| Destructeur, supprime l'objet de la liste d'objets enregistres dans "memoire". | |
| int | numero () const |
| Renvoie l'indice de l'objet dans Memoire::data. | |
| virtual int | duplique () const =0 |
| virtual Sortie & | printOn (Sortie &) const |
| Ecriture de l'objet sur un flot de sortie Methode a surcharger. | |
| virtual Entree & | readOn (Entree &) |
| Lecture d'un Objet_U sur un flot d'entree Methode a surcharger. | |
| virtual unsigned | taille_memoire () const =0 |
| virtual int | est_egal_a (const Objet_U &) const |
| Renvoie 1 si l'objet x et *this sont une seule et meme instance (meme adresse en memoire). | |
| int | get_object_id () const |
| Renvoie l'identifiant unique de l'objet object_id_. | |
| virtual const Type_info * | get_info () const |
| Donne des informations sur le type de l'Objet_U. | |
| const Nom & | que_suis_je () const |
| renvoie la chaine identifiant la classe. | |
| const char * | le_type () const |
| Donne le nom du type de l'Objet_U. | |
| virtual int | change_num (const int *const) |
| Change le numero interne de l'Objet_U. | |
| virtual int | lire_motcle_non_standard (const Motcle &motlu, Entree &is) |
| Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree. | |
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
| Public Member Functions inherited from Probleme_base_interface_proto | |
| bool | initTimeStep_impl (Probleme_base &pb, double dt) |
| bool | solveTimeStep_impl (Probleme_base &pb) |
| bool | isStationary_impl (const Probleme_base &pb) const |
| bool | iterateTimeStep_impl (Probleme_base &pb, bool &converged) |
| bool | updateGivenFields_impl (Probleme_base &pb) |
| const bool & | is_probleme_initialized_impl () const |
| void | initialize_impl (Probleme_base &pb) |
| void | terminate_impl (Probleme_base &pb) |
| void | validateTimeStep_impl (Probleme_base &pb) |
| void | abortTimeStep_impl (Probleme_base &pb) |
| void | getInputFieldsNames_impl (const Probleme_base &pb, Noms &noms) const |
| void | getOutputFieldsNames_impl (const Probleme_base &pb, Noms &noms) const |
| void | addInputField_impl (Probleme_base &pb, Field_base &f) |
| double | presentTime_impl (const Probleme_base &pb) const |
| double | computeTimeStep_impl (const Probleme_base &pb, bool &stop) const |
| double | futureTime_impl (const Probleme_base &pb) const |
| void | resetTimeWithDir_impl (Probleme_base &pb, double time, std::string direname) |
| OBS_PTR (Field_base) findInputField_impl(const Probleme_base &pb | |
| OBS_PTR (Champ_Generique_base) findOutputField_impl(const Probleme_base &pb | |
Protected Member Functions | |
| virtual void | typer_lire_milieu (Entree &is) |
| virtual void | lire_solved_equations (Entree &is) |
| Entree & | read_optional_equations (Entree &is, Motcle &mot) |
| virtual Entree & | lire_correlations (Entree &is) |
| virtual Entree & | lire_radiation_models (Entree &is, Motcle &mot) |
| OBS_PTR (Domaine_dis_base) le_domaine_dis_ | |
| OBS_PTR (Domaine) le_domaine_ | |
| OBS_PTR (Schema_Temps_base) le_schema_en_temps_ | |
| OBS_PTR (Discretisation_base) la_discretisation_ | |
| OBS_PTR (Probleme_Couple) pbc_ | |
| LIST (OBS_PTR(SFichier)) out_files_ | |
| LIST (OBS_PTR(Loi_Fermeture_base)) liste_loi_fermeture_ | |
| LIST (OBS_PTR(Champ_Parametrique)) Champs_Parametriques_ | |
| LIST (OWN_PTR(Equation_base)) eq_opt_ | |
| Protected Member Functions inherited from Objet_U | |
| Objet_U () | |
| Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_), et enregistre l'objet en "memoire". | |
| Objet_U (const Objet_U &) | |
| Constructeur par copie. | |
| const Objet_U & | operator= (const Objet_U &) |
| Operateur= : ne fait rien (on conserve le numero et l'identifiant). | |
| virtual void | set_param (Param &) const |
| Protected Member Functions inherited from Probleme_base_interface_proto | |
| LIST (OBS_PTR(Field_base)) input_fields | |
Protected Attributes | |
| Save_Restart | save_restart_ |
| std::vector< OWN_PTR(Milieu_base)> | le_milieu_ |
| Postraitements | les_postraitements_ |
| std::map< std::string, OWN_PTR(Correlation_base)> | correlations_ |
| Protected Attributes inherited from Probleme_U | |
| Nom | nom_ |
| ScalarRegister | reg_ |
| std::map< std::string, std::string > | str_params_ |
| Protected Attributes inherited from Probleme_base_interface_proto | |
| bool | initialized = false |
| bool | terminated = false |
| bool | dt_defined = false |
| bool | dt_validated = false |
Additional Inherited Members | |
| Static Public Member Functions inherited from Objet_U | |
| static const Nom & | nom_du_cas () |
| Renvoie une reference constante vers le nom du cas. | |
| static Nom & | get_set_nom_du_cas () |
| Renvoie une reference non constante vers le nom du cas (pour pouvoir le modifier). | |
| static const Type_info * | info () |
| Donne des informations sur le type de l'Objet_U. | |
| static const Objet_U & | self_cast (const Objet_U &) |
| methode ajoutee pour caster en python | |
| static Objet_U & | self_cast (Objet_U &) |
| Static Public Member Functions inherited from Process | |
| static int | me () |
| renvoie mon rang dans le groupe de communication courant. | |
| static int | nproc () |
| renvoie le nombre de processeurs dans le groupe courant Voir Comm_Group::nproc() et PE_Groups::current_group() | |
| static bool | is_parallel () |
| static void | exit (int exit_code=-1) |
| Routine de sortie de TRUST dans une region Kokkos. | |
| static double | mp_sum (double) |
| Calcule la somme de x sur tous les processeurs du groupe courant. | |
| static float | mp_sum (float) |
| static trustIdType | mp_sum (trustIdType) |
| Calcule la somme de x sur tous les processeurs du groupe courant. | |
| static double | mp_max (double) |
| static double | mp_min (double) |
| static int | mp_max (int) |
| renvoie le plus grand int i sur l'ensemble des processeurs du groupe courant. | |
| static int | mp_min (int) |
| renvoie le plus petit int i sur l'ensemble des processeurs du groupe courant. | |
| static double | mp_sum_as_double (int v) |
| static trustIdType | mppartial_sum (trustIdType i) |
| Calul de la somme partielle de i sur les processeurs 0 a me()-1 (renvoie 0 sur le processeur 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) |
| Calcule le 'et' logique de b sur tous les processeurs du groupe courant. | |
| static bool | mp_or (bool) |
| static int | check_int_overflow (trustIdType) |
| static int | je_suis_maitre () |
| renvoie 1 si on est sur le processeur maitre du groupe courant (c'est a dire me() == 0), 0 sinon. | |
| static KOKKOS_INLINE_FUNCTION void | Kokkos_exit (const char *) |
| Routine de sortie de TRUST dans une region Kokkos. | |
| static int | node_master () |
| renvoie 1 si on est sur le processeur maitre du noeud numa, 0 sinon. | |
| static void | exit (const Nom &message, int exit_code=-1) |
| static bool | is_sequential () |
| static void | barrier () |
| Synchronise tous les processeurs du groupe courant (attend que tous les processeurs soient arrives a la barriere). | |
| static void | abort () |
| Routine de sortie de Trio-U sur une erreur abort(). | |
| static Sortie & | Journal (int message_level=0) |
| Renvoie un objet statique de type Sortie qui sert de journal d'evenements. | |
| 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 inherited from Probleme_base_interface_proto | |
| const Nom &name | const |
| 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 |
classe Probleme_base C'est un Probleme_U qui n'est pas un couplage.
Le role d'un Probleme_base est la resolution sur un domaine des equations qui le compose. Ses membres sont les attributs et les methodes communs a toutes les classes qui representent des problemes. Un certains nombre d'objets sont associes au probleme pour le constituer: - 1 ou plusieurs equations: objet Equation - 1 Domaine discretise: objet Domaine_Dis - un postraitement: objet Postraitement - Une discretisation: objet Discretistaion - un schema en temps: objet Schema_temp
Definition at line 54 of file Probleme_base.h.
|
inline |
Definition at line 58 of file Probleme_base.h.
Definition at line 941 of file Probleme_base.cpp.
|
inlineoverridevirtual |
Aborts the resolution of the current time step.
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 172 of file Probleme_base.h.
|
inlinevirtual |
Definition at line 140 of file Probleme_base.h.
|
finalvirtual |
Verifie que la place necessaire existe sur le disque dur.
Definition at line 1054 of file Probleme_base.cpp.
|
virtual |
Associe le probleme a toutes ses equations.
Definition at line 285 of file Probleme_base.cpp.
|
overridevirtual |
surcharge Objet_U::associer_(Objet_U& ob) Associe differents objets au probleme en controlant
le type de l'objet a associer a l'execution. On peut ainsi associer: un schema en temps, un domaine de calcul. Utilise les routine de la classe Type_Info (Utilitaires)
| (Objet_U& | ob) l'objet a associer |
| Objet_U | de type inconnu (non prevu) |
Reimplemented from Objet_U.
Definition at line 303 of file Probleme_base.cpp.
|
virtual |
Associe un domaine au probleme.
Prend un_domaine comme support. apelle Domaine_dis::associer_dom(const Domaine& )
| (Domaine& | un_domaine) le domaine |
Definition at line 379 of file Probleme_base.cpp.
|
virtual |
Associe un milieu physique aux equations du probleme.
Choix du milieu physique.
| (Milieu_base& | mil) le milieu a associer (Solide, Fluide Incompressible ...) |
Reimplemented in Pb_Dilatable_base, Pb_Euler, Pb_Hydraulique, Pb_Hydraulique_Concentration, Pb_Hydraulique_Concentration_Turbulent, Pb_Hydraulique_IBM, Pb_Hydraulique_IBM_Turbulent, Pb_Hydraulique_Turbulent, Pb_Multiphase, Pb_Multiphase_Enthalpie, Pb_QC_base, Pb_Thermohydraulique, Pb_Thermohydraulique_Concentration, Pb_Thermohydraulique_Concentration_Turbulent, Pb_Thermohydraulique_IBM, Pb_Thermohydraulique_IBM_Turbulent, Pb_Thermohydraulique_Turbulent, Pb_WC_base, Probleme_Elasticite_Lineaire, TRUSTProblem_Cloned_Concentration_Gen< Pb_Hydraulique >, TRUSTProblem_Cloned_Concentration_Gen< Pb_Thermohydraulique >, TRUSTProblem_List_Concentration_Gen< Pb_Hydraulique >, TRUSTProblem_List_Concentration_Gen< Pb_Thermohydraulique >, TRUSTProblem_sup_eqns< Pb_Conduction >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_QC >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent_QC >, and TRUSTProblem_sup_eqns< Pb_Thermohydraulique_WC >.
Definition at line 653 of file Probleme_base.cpp.
|
inline |
Definition at line 195 of file Probleme_base.h.
|
virtual |
Associe un schema en temps au probleme.
Associe ensuite le schema en temps a toutes les equations du probleme.
| (Schema_Temps_base& | un_schema_en_temps) le schema en temps a associer |
Reimplemented in Pb_Dilatable_base, and Pb_rayo_semi_transp.
Definition at line 557 of file Probleme_base.cpp.
|
virtual |
Calcul la valeur du prochain pas de temps du probleme.
On calcule le minimum des pas de temps des equations associees au probleme.
Reimplemented in Pb_Multiphase, and Pb_rayo_semi_transp.
Definition at line 1024 of file Probleme_base.cpp.
Definition at line 77 of file Probleme_base.h.
Definition at line 78 of file Probleme_base.h.
|
virtual |
Complete les equations associees au probleme.
Remplissage des references, deleguee aux equations.
Reimplemented in Pb_Fluide_base, and Pb_rayo_semi_transp.
Definition at line 346 of file Probleme_base.cpp.
Definition at line 897 of file Probleme_base.cpp.
|
inlineoverridevirtual |
Compute the value the Problem would like for the next time step.
This value will not necessarily be used at the call of initTimeStep, but it is a hint. This method may use all the internal state of the Problem.
| (stop) | Does the Problem want to stop ? |
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 164 of file Probleme_base.h.
Implements Champs_compris_interface.
Definition at line 772 of file Probleme_base.cpp.
|
inline |
Renvoie la discretisation associee au probleme.
| la | discretisation n'est pas construite |
Definition at line 241 of file Probleme_base.h.
|
virtual |
Affecte une discretisation au probleme Discretise le Domaine associe au probleme avec la discretisation.
Associe le premier Domaine aux equations du probleme Discretise les equations associees au probleme
| (Discretisation_base& | discretisation) une discretisation pour le probleme |
Definition at line 402 of file Probleme_base.cpp.
|
virtual |
Definition at line 385 of file Probleme_base.cpp.
| Domaine & Probleme_base::domaine | ( | ) |
Renvoie le domaine associe au probleme.
Definition at line 622 of file Probleme_base.cpp.
| const Domaine & Probleme_base::domaine | ( | ) | const |
Renvoie le domaine associe au probleme.
(version const)
Definition at line 613 of file Probleme_base.cpp.
| Domaine_dis_base & Probleme_base::domaine_dis | ( | ) |
Renvoie le domaine discretise associe au probleme.
Definition at line 642 of file Probleme_base.cpp.
| const Domaine_dis_base & Probleme_base::domaine_dis | ( | ) | const |
Renvoie le domaine discretise associe au probleme.
(version const)
Definition at line 633 of file Probleme_base.cpp.
| Equation_base & Probleme_base::equation | ( | const Nom & | type | ) |
Renvoie l'equation dont le nom est specifie.
On indexe les equations avec leur nom associe. On cherche dans toutes les equations du probleme celle qui porte le nom specifie.
| (Nom& | type) le nom de l'equation a renvoyer |
| pas | d'equation du nom specifie |
Definition at line 748 of file Probleme_base.cpp.
| const Equation_base & Probleme_base::equation | ( | const Nom & | type | ) | const |
Renvoie l'equation dont le nom est specifie.
On indexe les equations avec leur nom associe. On cherche dans toutes les equations du probleme celle qui porte le nom specifie. (version const)
| (Nom& | type) le nom de l'equation a renvoyer |
| pas | d'equation du nom specifie |
Definition at line 693 of file Probleme_base.cpp.
|
pure virtual |
Implemented in Pb_Conduction, Pb_Conduction_IBM, Pb_Euler, Pb_Hydraulique, Pb_Hydraulique_Concentration, Pb_Hydraulique_Concentration_Turbulent, Pb_Hydraulique_IBM, Pb_Hydraulique_IBM_Turbulent, Pb_Hydraulique_Melange_Binaire_QC, Pb_Hydraulique_Melange_Binaire_Turbulent_QC, Pb_Hydraulique_Melange_Binaire_WC, Pb_Hydraulique_Turbulent, Pb_MED, Pb_Multiphase, Pb_Multiphase_Enthalpie, Pb_rayo_semi_transp, Pb_Thermohydraulique, Pb_Thermohydraulique_Concentration, Pb_Thermohydraulique_Concentration_Turbulent, Pb_Thermohydraulique_IBM, Pb_Thermohydraulique_IBM_Turbulent, Pb_Thermohydraulique_QC, Pb_Thermohydraulique_Turbulent, Pb_Thermohydraulique_Turbulent_QC, Pb_Thermohydraulique_WC, Probleme_Elasticite_Lineaire, TRUSTProblem_Concentration_Gen< Pb_Hydraulique, Convection_Diffusion_Concentration, Constituant >, TRUSTProblem_Concentration_Gen< Pb_Thermohydraulique, Convection_Diffusion_Concentration, Constituant >, TRUSTProblem_sup_eqns< Pb_Conduction >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_QC >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent_QC >, and TRUSTProblem_sup_eqns< Pb_Thermohydraulique_WC >.
|
pure virtual |
Implemented in Pb_Conduction, Pb_Conduction_IBM, Pb_Euler, Pb_Hydraulique, Pb_Hydraulique_Concentration, Pb_Hydraulique_Concentration_Turbulent, Pb_Hydraulique_IBM, Pb_Hydraulique_IBM_Turbulent, Pb_Hydraulique_Melange_Binaire_QC, Pb_Hydraulique_Melange_Binaire_Turbulent_QC, Pb_Hydraulique_Melange_Binaire_WC, Pb_Hydraulique_Turbulent, Pb_MED, Pb_Multiphase, Pb_Multiphase_Enthalpie, Pb_rayo_semi_transp, Pb_Thermohydraulique, Pb_Thermohydraulique_Concentration, Pb_Thermohydraulique_Concentration_Turbulent, Pb_Thermohydraulique_IBM, Pb_Thermohydraulique_IBM_Turbulent, Pb_Thermohydraulique_QC, Pb_Thermohydraulique_Turbulent, Pb_Thermohydraulique_Turbulent_QC, Pb_Thermohydraulique_WC, and Probleme_Elasticite_Lineaire.
Reimplemented in Pb_Fluide_base, Pb_Hydraulique_Melange_Binaire_Turbulent_QC, and Pb_Thermohydraulique_Turbulent_QC.
Definition at line 472 of file Probleme_base.cpp.
|
virtual |
Finit le postraitement et sauve le probleme dans un fichier.
Fermeture du fichier associe au postraitement.(Postraitement::finir())
Definition at line 1139 of file Probleme_base.cpp.
|
inlineoverridevirtual |
Returns the future time (end of current computing interval) This value is valid between initTimeStep and either.
validateTimeStep or abortTimeStep. A surcharger
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 190 of file Probleme_base.h.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 841 of file Probleme_base.cpp.
|
virtual |
Definition at line 923 of file Probleme_base.cpp.
|
inline |
Definition at line 200 of file Probleme_base.h.
|
virtual |
(B. Math): Methode virtuelle ajoutee pour les problemes ayant plusieurs equations de meme type (Probleme_FT_Disc_gen). Dans ce cas, le nom de l'equation n'est pas son type...
Reimplemented in Pb_rayo_semi_transp.
Definition at line 722 of file Probleme_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 881 of file Probleme_base.cpp.
|
inline |
Definition at line 197 of file Probleme_base.h.
|
inline |
Definition at line 196 of file Probleme_base.h.
|
inlineoverridevirtual |
This method is used to find the names of input fields understood by the Problem.
| (Noms) | list of names where the Problem appends its input field names. |
Reimplemented from Probleme_U.
Definition at line 185 of file Probleme_base.h.
|
inlineoverridevirtual |
Reimplemented from Probleme_U.
Definition at line 186 of file Probleme_base.h.
|
overridevirtual |
Reimplemented from Probleme_U.
Definition at line 1257 of file Probleme_base.cpp.
|
virtual |
(B. Math): Methode virtuelle ajoutee pour les problemes ayant plusieurs equations de meme type (Probleme_FT_Disc_gen). Dans ce cas, le nom de l'equation n'est pas son type... Version non const. Cette methode est notamment appelee a la lecture du probleme.
Reimplemented in Pb_rayo_semi_transp.
Definition at line 733 of file Probleme_base.cpp.
Implements Champs_compris_interface.
Definition at line 813 of file Probleme_base.cpp.
|
override |
Definition at line 785 of file Probleme_base.cpp.
Definition at line 910 of file Probleme_base.cpp.
|
inline |
Definition at line 206 of file Probleme_base.h.
|
inline |
Definition at line 106 of file Probleme_base.h.
|
inlinevirtual |
Reimplemented in Pb_Fluide_base.
Definition at line 143 of file Probleme_base.h.
|
virtual |
Imprime les equations associees au probleme si le schema en temps associe indique que c'est necessaire.
| (Sortie& | os) le flot de sortie |
Definition at line 544 of file Probleme_base.cpp.
| void Probleme_base::init_postraitements | ( | ) |
Flag le premier et le dernier postraitement pour chaque fichier Et initialise les postraitements.
Definition at line 426 of file Probleme_base.cpp.
|
inlineoverridevirtual |
This method is called once at the beginning, before any other one of the interface Problem.
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 158 of file Probleme_base.h.
|
inlineoverridevirtual |
This method allocates and initializes the unknown and given fields for the future time step.
The value of the interval is imposed through the parameter dt. In case of error, returns false.
| (double | dt) the time interval to allocate |
| WrongContext,WrongArgument |
Reimplemented from Probleme_U.
Definition at line 165 of file Probleme_base.h.
|
inline |
Definition at line 142 of file Probleme_base.h.
| bool Probleme_base::is_dilatable | ( | ) | const |
Definition at line 1046 of file Probleme_base.cpp.
|
inline |
Definition at line 159 of file Probleme_base.h.
|
inline |
Definition at line 75 of file Probleme_base.h.
|
inlineoverridevirtual |
Tells if the Problem unknowns have changed during the last time step.
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 168 of file Probleme_base.h.
|
inlineoverridevirtual |
In the case solveTimeStep uses an iterative process, this method executes a single iteration.
It is thus possible to modify the given fields between iterations. converged is set to true if the process has converged, ie if the unknown fields are solution to the problem on the next time step. Otherwise converged is set to false. The return value indicates if the convergence process behaves normally. If false, the Problem wishes to abort the time step resolution.
| (bool& | converged) It is a return value : true if the process has converged, false otherwise. |
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 182 of file Probleme_base.h.
|
overridevirtual |
Demande au schema en temps s'il faut faire une impression.
Reimplemented from Probleme_U.
Definition at line 526 of file Probleme_base.cpp.
Definition at line 1240 of file Probleme_base.cpp.
Lecture des equations du probleme.
Reimplemented in Pb_Euler, Pb_Multiphase, TRUSTProblem_Cloned_Concentration_Gen< Pb_Hydraulique >, TRUSTProblem_Cloned_Concentration_Gen< Pb_Thermohydraulique >, TRUSTProblem_List_Concentration_Gen< Pb_Hydraulique >, and TRUSTProblem_List_Concentration_Gen< Pb_Thermohydraulique >.
Definition at line 235 of file Probleme_base.cpp.
|
virtual |
Definition at line 1033 of file Probleme_base.cpp.
Reimplemented in Pb_Fluide_base.
Definition at line 274 of file Probleme_base.cpp.
|
inlineprotectedvirtual |
Definition at line 215 of file Probleme_base.h.
|
protected |
|
protected |
Definition at line 198 of file Probleme_base.h.
|
protected |
|
overridevirtual |
Demande au schema en temps s'il faut faire une sauvegarde.
Reimplemented from Probleme_U.
Definition at line 535 of file Probleme_base.cpp.
|
virtual |
Effectue une mise a jour en temps du probleme.
Effectue la mise a jour sur toutes les equations du probleme.
| (double | temps) le pas de temps de mise a jour |
Reimplemented in Pb_Dilatable_base, Pb_Euler, and Pb_rayo_semi_transp.
Definition at line 952 of file Probleme_base.cpp.
|
virtual |
Renvoie le milieu physique associe au probleme.
On renvoie le milieu associe a la premiere equation.
Reimplemented in Probleme_Elasticite_Lineaire.
Definition at line 677 of file Probleme_base.cpp.
|
virtual |
Renvoie le milieu physique associe au probleme.
(version const) On renvoie le milieu associe a la premiere equation.
Reimplemented in Probleme_Elasticite_Lineaire.
Definition at line 666 of file Probleme_base.cpp.
|
inline |
Definition at line 99 of file Probleme_base.h.
|
inline |
Definition at line 100 of file Probleme_base.h.
|
overridevirtual |
Recherche des champs parametriques, et pour chacun, passage au parametre suivant.
Reimplemented from Probleme_U.
Definition at line 1167 of file Probleme_base.cpp.
|
pure virtual |
Implemented in Pb_Conduction, Pb_Euler, Pb_Hydraulique, Pb_Hydraulique_Concentration, Pb_Hydraulique_Concentration_Turbulent, Pb_Hydraulique_IBM, Pb_Hydraulique_IBM_Turbulent, Pb_Hydraulique_Melange_Binaire_QC, Pb_Hydraulique_Melange_Binaire_Turbulent_QC, Pb_Hydraulique_Melange_Binaire_WC, Pb_Hydraulique_Turbulent, Pb_MED, Pb_Multiphase, Pb_rayo_semi_transp, Pb_Thermohydraulique, Pb_Thermohydraulique_Concentration, Pb_Thermohydraulique_Concentration_Turbulent, Pb_Thermohydraulique_IBM, Pb_Thermohydraulique_IBM_Turbulent, Pb_Thermohydraulique_QC, Pb_Thermohydraulique_Turbulent, Pb_Thermohydraulique_Turbulent_QC, Pb_Thermohydraulique_WC, Probleme_Elasticite_Lineaire, TRUSTProblem_Concentration_Gen< Pb_Hydraulique, Convection_Diffusion_Concentration, Constituant >, TRUSTProblem_Concentration_Gen< Pb_Thermohydraulique, Convection_Diffusion_Concentration, Constituant >, TRUSTProblem_sup_eqns< Pb_Conduction >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Hydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Concentration_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_QC >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent >, TRUSTProblem_sup_eqns< Pb_Thermohydraulique_Turbulent_QC >, and TRUSTProblem_sup_eqns< Pb_Thermohydraulique_WC >.
|
inlineoverridevirtual |
Reimplemented from Probleme_U.
Definition at line 193 of file Probleme_base.h.
|
protected |
|
protected |
|
protected |
|
inlineoverridevirtual |
Reimplemented from Probleme_U.
Definition at line 192 of file Probleme_base.h.
|
protected |
|
protected |
|
inline |
Definition at line 112 of file Probleme_base.h.
|
inline |
Definition at line 113 of file Probleme_base.h.
|
overridevirtual |
Si force=1, effectue le postraitement sans tenir compte des frequences de postraitement.
Le postraitement est mis a jour et les traitements eventuels sur les sondes, champs et statistiques sont effectues. Si force=0, tient compte des frequences d'impression demandees.
Reimplemented from Probleme_U.
Definition at line 1066 of file Probleme_base.cpp.
|
virtual |
Definition at line 1040 of file Probleme_base.cpp.
|
virtual |
Prepare le calcul: initialise les parametres du milieu et prepare le calcul de chacune des equations.
Reimplemented in Pb_Dilatable_base, Pb_Euler, Pb_Multiphase, and Pb_rayo_semi_transp.
Definition at line 989 of file Probleme_base.cpp.
|
inlineoverridevirtual |
Returns the present time.
This value may change only at the call of validateTimeStep. A surcharger
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 163 of file Probleme_base.h.
Definition at line 1217 of file Probleme_base.cpp.
|
overridevirtual |
Lecture d'un flot d'entree (fichier) pour reprise apres une sauvegarde avec Probleme_base::sauvegarder(Sortie& os).
| (Entree& | is) le flot d'entree sur lequel on lit la reprise |
Reimplemented from Objet_U.
Definition at line 507 of file Probleme_base.cpp.
|
inline |
Definition at line 118 of file Probleme_base.h.
|
inline |
Definition at line 119 of file Probleme_base.h.
|
inline |
Definition at line 117 of file Probleme_base.h.
|
overridevirtual |
Reset the current time of the Problem to a given value.
Particularly useful for the initialization of complex transients: the starting point of the transient of interest is computed first, the time is reset to 0, and then the actual transient of interest starts with proper initial conditions, and global time 0.
| [in] | time | the new current time. |
| ICoCo::WrongContext | exception if called before initialize() or after terminate(). |
| ICoCo::WrongContext | exception if called inside the TIME_STEP_DEFINED context (see Problem documentation) |
Reimplemented from Probleme_U.
Definition at line 1156 of file Probleme_base.cpp.
Definition at line 76 of file Probleme_base.h.
|
overridevirtual |
Ecriture du probleme sur fichier en vue d'une reprise.
Ecrit le nom du probleme et sauvegarde les equations.
| (Sortie& | os) flot de sortie pour sauvegarde |
Reimplemented from Objet_U.
Definition at line 485 of file Probleme_base.cpp.
|
overridevirtual |
Ecriture sur fichier en vue d'une reprise (sauvegarde).
Reimplemented from Probleme_U.
Definition at line 1125 of file Probleme_base.cpp.
| Schema_Temps_base & Probleme_base::schema_temps | ( | ) |
Renvoie le schema en temps associe au probleme.
(si il est non nul)
| le | schema en temps n'est pas associe au probleme, la reference est nulle |
Definition at line 596 of file Probleme_base.cpp.
| const Schema_Temps_base & Probleme_base::schema_temps | ( | ) | const |
Renvoie le schema en temps associe au probleme.
(si il est non nul) (version const)
| le | schema en temps n'est pas associe au probleme, la reference est nulle |
Definition at line 578 of file Probleme_base.cpp.
|
inlineoverridevirtual |
Tells to the Problem that stationary is reached or not.
Reimplemented from Probleme_U.
Definition at line 171 of file Probleme_base.h.
|
inlineoverridevirtual |
pour recodage eventuel et appel unifie en python
Reimplemented from Probleme_U.
Definition at line 166 of file Probleme_base.h.
|
inline |
Definition at line 167 of file Probleme_base.h.
|
inlineoverridevirtual |
This method is called once at the end, after any other one.
It frees the memory and saves anything that needs to be saved.
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 160 of file Probleme_base.h.
|
protectedvirtual |
Reimplemented in Pb_Euler, Pb_MED, Pb_Multiphase, Pb_rayo_semi_transp, TRUSTProblem_Cloned_Concentration_Gen< Pb_Hydraulique >, TRUSTProblem_Cloned_Concentration_Gen< Pb_Thermohydraulique >, TRUSTProblem_List_Concentration_Gen< Pb_Hydraulique >, and TRUSTProblem_List_Concentration_Gen< Pb_Thermohydraulique >.
Definition at line 174 of file Probleme_base.cpp.
|
inlineoverridevirtual |
ATTENTION :
Rentre ici tout ce qui ne correspond pas a l'API normale de Problem.
Actuellement on y met a jour les CLs et les termes sources, sachant que certains vont chercher eux-memes des informations dans les problemes voisins...
Programme de travail : tout ce qui est dans cette methode doit etre rendu independant de l'exterieur, et peut du coup rejoindre initTimeStep. Le reste passe dans l'interface d'echange de champs. Ce travail sera fini quand updateGivenFields sera vide et supprime !
Reimplemented from Probleme_U.
Definition at line 189 of file Probleme_base.h.
|
inlineoverridevirtual |
Validates the calculated unknown by moving the present time at the end of the time step.
This method is allowed to free past values of the unknown and given fields.
| WrongContext |
Reimplemented from Probleme_U.
Definition at line 170 of file Probleme_base.h.
|
virtual |
Verifie que l'objet est complet, coherent, .
.. NON DEVELOPPE RENVOIE TOUJOURS 1
Reimplemented in Pb_Euler, Pb_Hydraulique_Concentration, Pb_Hydraulique_Concentration_Turbulent, Pb_Hydraulique_IBM_Turbulent, Pb_Hydraulique_Melange_Binaire_QC, Pb_Hydraulique_Melange_Binaire_Turbulent_QC, Pb_Hydraulique_Melange_Binaire_WC, Pb_Hydraulique_Turbulent, Pb_Multiphase, Pb_Multiphase_Enthalpie, Pb_Thermohydraulique, Pb_Thermohydraulique_Concentration, Pb_Thermohydraulique_Concentration_Turbulent, Pb_Thermohydraulique_IBM, Pb_Thermohydraulique_IBM_Turbulent, Pb_Thermohydraulique_QC, Pb_Thermohydraulique_Turbulent, Pb_Thermohydraulique_Turbulent_QC, Pb_Thermohydraulique_WC, TRUSTProblem_Cloned_Concentration_Gen< Pb_Hydraulique >, TRUSTProblem_Cloned_Concentration_Gen< Pb_Thermohydraulique >, TRUSTProblem_List_Concentration_Gen< Pb_Hydraulique >, and TRUSTProblem_List_Concentration_Gen< Pb_Thermohydraulique >.
Definition at line 367 of file Probleme_base.cpp.
Definition at line 79 of file Probleme_base.h.
|
protected |
Definition at line 229 of file Probleme_base.h.
|
protected |
Definition at line 221 of file Probleme_base.h.
|
protected |
Definition at line 223 of file Probleme_base.h.
|
protected |
Definition at line 220 of file Probleme_base.h.