TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Transport_Interfaces_FT_Disc Class Reference

#include <Transport_Interfaces_FT_Disc.h>

Inheritance diagram for Transport_Interfaces_FT_Disc:
[legend]
Collaboration diagram for Transport_Interfaces_FT_Disc:
[legend]

Public Member Functions

 Transport_Interfaces_FT_Disc ()
 constructeur par defaut
void set_param (Param &titi) const override
int lire_motcle_non_standard (const Motcle &, Entree &) override
 Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
int nombre_d_operateurs () const override
const Operateuroperateur (int i) const override
Operateuroperateur (int i) override
const Champ_Inc_baseinconnue () const override
Champ_Inc_baseinconnue () override
void associer_milieu_base (const Milieu_base &milieu) override
void associer_equation_ns (const Navier_Stokes_FT_Disc &ns)
Milieu_basemilieu () override
const Milieu_basemilieu () const override
void associer_pb_base (const Probleme_base &probleme) override
 S'associe au Probleme passe en parametre.
void discretiser () override
 Discretisation des champs: - indicatrice_ : champ scalaire discretise aux elements.
Entreelire_cond_init (Entree &is) override
 Lecture des conditions initiales.
int verif_Cl () const override
 Methode appelee par Equation_base::readOn On verifie que toutes les cl sont de type Paroi_FT_disc.
double calculer_pas_de_temps () const override
 Calcul du prochain pas de temps.
DoubleTab & derivee_en_temps_inco (DoubleTab &derivee) override
 Calcul de la derivee en temps de l'inconnue : zero.
void assembler (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) override
void mettre_a_jour (double temps) override
 La valeur de l'inconnue sur le pas de temps a ete calculee.
bool mettre_a_jour_deplacement (double temps)
void mettre_a_jour_hors_deplacement (double temps, const bool update_statio=true, const bool update_indic=true)
void deplacer_maillage (double temps)
bool injecter_supprimer_interfaces (double temps)
void completer_maillage_et_changer_temps (double temps)
std::vector< YAML_datadata_a_sauvegarder () const override
 for PDI IO: retrieve name and type and dimensions of the indicatrice tag
int sauvegarder (Sortie &) const override
 On sauvegarde l'inconnue, puis les sources sur un flot de sortie.
int reprendre (Entree &) override
 On reprend l'inconnue a partir d'un flot d'entree.
int impr (Sortie &os) const override
 Imprime les operateurs de l'equation sur un flot de sortie, de facon inconditionnelle.
void update_critere_statio ()
void init_save_file () override
void close_save_file () override
virtual void lire_maillage_ft_cao (Entree &is)
int preparer_calcul () override
 Tout ce qui ne depend pas des autres problemes eventuels.
int preparer_calcul_anticipated ()
virtual void preparer_pas_de_temps ()
const Maillage_FT_Discmaillage_interface () const
const Champ_baseget_indicatrice () override
 getter champ variables_internes_->indicatrice_cache a partir de la position des interfaces.
void update_indicatrice () override
 Recalcul du champ variables_internes_->indicatrice_cache a partir de la position des interfaces.
void check_indicatrice_is_up_to_date () override
 Checks if the indicator is up to date.
void update_indicatrice_normale_distance ()
 Updates normals and distances to interface, then updates indicatrice.
virtual const Champ_baseget_indicatrice_faces ()
virtual const Champ_baseupdate_indicatrice_faces ()
void update_normale_distance_interface () const
 Calcule la normale et la distance a l'interface, evaluees sur une epaisseur egale a n_iterations_distance aux elements et discretisee aux elements.
virtual const Champ_baseget_distance_interface () const
virtual const Champ_baseget_update_distance_interface_faces () const
virtual const Champ_baseget_normale_interface () const
virtual const DoubleTab & get_update_distance_interface_sommets () const
 Renvoi de la distance signee entre l'interface et les sommets du maillage eulerien.
virtual const Parcours_interfaceparcours_interface () const
virtual const Marching_Cubesmarching_cubes () const
virtual const Algorithmes_Transport_FT_Discalgorithmes_transport () const
virtual const Connectivite_frontieresconnectivite_frontieres () const
Remaillage_FTremaillage_interface ()
const Remaillage_FTremaillage_interface () const
const Topologie_Maillage_FTtopologie_interface () const
virtual double calculer_integrale_indicatrice (const DoubleVect &indicatrice, double &v_ph0) const
const Proprietes_part_volproprietes_particules () const
const Maillage_FT_Discmaillage_inject () const
const Proprietes_part_volproprietes_inject () const
void nettoyer_proprietes_particules (const ArrOfInt &som_utilises)
virtual void calculer_vitesse_transport_interpolee (const Champ_base &champ_vitesse, const Maillage_FT_Disc &m, DoubleTab &vitesse_noeuds, int nv_calc) const
virtual void calculer_vitesse_transport_interpolee (const Champ_base &champ_vitesse, const Maillage_FT_Disc &, DoubleTab &vitesse_noeuds, const int nv_calc, const int standard, const bool la_roue_de_vitesse_a_deja_tournee=false) const
 Calcul de la vitesse de deplacement des noeuds du maillage a partir d'un champ eulerien par interpolation.
void calculer_scalaire_interpole (const Champ_base &ch_scal, const Maillage_FT_Disc &, DoubleTab &ch_scal_noeuds, int nv_calc) const
virtual void remailler_interface ()
 Remaillage de l'interface : - amelioration petites et grandes facettes,.
virtual int get_champ_post_FT (const Motcle &champ, Postraitement_base::Localisation loc, DoubleTab *dtab=0) const
 Cherche le champ discret aux interfaces dont le nom est "champ", et verifie qu'il peut etre postraite a la localisation demandee (loc).
virtual int get_champ_post_FT (const Motcle &champ, Postraitement_base::Localisation loc, IntTab *itab=0) const
 Voir l'autre get_champ_post_FT.
virtual const Maillage_FT_Discmaillage_interface_pour_post () const
 Renvoie le maillage stocke specialement pour le postraitement (si on veut postraiter un etat intermediaire.
virtual const int & get_n_iterations_distance () const
int get_mesh_tag () const override
const Probleme_baseget_probleme_base () const
void modifier_vpoint_pour_imposer_vit (const DoubleTab &inco_val, DoubleTab &vpoint0, DoubleTab &vpoint, const DoubleTab &rho_faces, DoubleTab &terme_source, const double temps, const double dt, const int is_explicite, const double eta) override
void calcul_source (const DoubleTab &inco_val, const DoubleTab &vpoint, const DoubleTab &rho_faces, DoubleTab &source_val, const DoubleTab &vit_imposee, const DoubleTab &indicatrice_faces, const int is_QC, const double dt, const int is_explicite, const double eta)
void modifie_source (DoubleTab &so_modif, const DoubleTab &so_val, const DoubleTab &rho_faces, const int n, const int m, const int is_QC, const DoubleVect &vol_entrelaces, const Solveur_Masse_base &solv_masse)
void calcul_effort_fluide_interface (const DoubleTab &vpoint, const DoubleTab &rho_faces, DoubleTab &source_val, const int is_explicite, const double eta)
void impr_effort_fluide_interface (DoubleTab &source_val, DoubleTab &pressure_part, DoubleTab &friction_part, DoubleTab &diff_part)
virtual void calcul_vitesse (DoubleTab &vitesse_imp, const DoubleTab &champ_vitesse, const DoubleTab &vpoint, const double temps, const double dt)
virtual void get_expression_vitesse_imposee (DoubleTab &vitesse_imp)
void integrer_ensemble_lagrange (const double temps) override
virtual void interpoler_vitesse_face (const DoubleTab &distance_interface, const int phase, const int stencil_width, DoubleTab &champ, DoubleTab &gradient, const double t, const double dt)
void interpoler_simple_vitesse_face (const DoubleTab &distance_interface, const int phase, const int stencil_width, DoubleTab &champ, DoubleTab &gradient, const double t, const double dt)
virtual void calcul_nb_traverse (const DoubleTab &xe, const double dx, const int dim, const int ori, Maillage_FT_Disc &maillage, int elem, int &traverse)
virtual void calcul_OutElemFa7 (Maillage_FT_Disc &maillage, const DoubleTab &indicatrice, const int nb_elem, int &nb_fa7_accepted, IntList &OutElem, IntList &OutFa7)
virtual void PPP_face_interface (Maillage_FT_Disc &maillage, const DoubleTab &indicatrice, const DoubleTab &indicatrice_face, DoubleTab &Vertex)
virtual void PPP_face_interface_voisin (const DoubleTab &indicatrice, const DoubleTab &indicatrice_face, DoubleTab &Vertex, DoubleTab &PPP)
virtual void PPP_face_voisin (const DoubleTab &indicatrice, const DoubleTab &indicatrice_face, DoubleTab &PPP)
virtual void calcul_maxfa7 (Maillage_FT_Disc &maillage, const DoubleTab &indicatrice, const int nb_elem, int &max_fa7, const int exec_planfa7existan)
virtual void RenumFa7 (DoubleTab &Barycentre, DoubleTab &Tab110, DoubleTab &Tab111, DoubleTab &Tab112, IntTab &Tab12, IntTab &CptFacette, const int nb_facettes, const int nb_facettes_dim)
virtual void StockageFa7 (Maillage_FT_Disc &maillage, IntTab &CptFacette, DoubleTab &Tab100, DoubleTab &Tab101, DoubleTab &Tab102, DoubleTab &Tab103, DoubleTab &Tab110, DoubleTab &Tab111, DoubleTab &Tab112, IntTab &Tab12, DoubleTab &Barycentre, const DoubleTab &indicatrice, IntList &OutElem, ArrOfBit &fa7, const int exec_planfa7existant)
virtual void StockageFa7 (Maillage_FT_Disc &maillage, DoubleTab &Tab100, DoubleTab &Tab101, DoubleTab &Tab102, DoubleTab &Tab103, DoubleTab &Tab110, DoubleTab &Tab111, DoubleTab &Tab112, IntTab &Tab12, DoubleTab &Barycentre, IntList &OutElem, IntTab &TabOutFa7, ArrOfBit &fa7)
virtual void BaryFa7 (Maillage_FT_Disc &maillage, const int i_facette, DoubleTab &Barycentre)
virtual void plan_facette_existant (Maillage_FT_Disc &maillage, DoubleList A, DoubleList B, DoubleList C, DoubleList D, const int i_facette, int &test_liste)
virtual void calcul_eq_plan_facette (Maillage_FT_Disc &maillage, const int i_facette, double &a, double &b, double &c, double &d)
virtual void calcul_eq_plan_facette (const int i_facette, double &a, double &b, double &c, double &d)
virtual void calcul_tolerance_projete_monophasique (const int i_face, const int ori, const int voisin0, const int voisin1, const DoubleTab &indicatrice_face, const DoubleTab &indicatrice, double &tol)
virtual void calcul_tolerance_projete_diphasique (const int i_face, const int ori, const int voisin0, const int voisin1, const DoubleTab &indicatrice, double &tol)
void verifprojete (const int monophasique, const double Lref, double d, const DoubleTab &x, const DoubleTab &V, DoubleTab &coord_projete, int &cpt)
virtual void uzawa (const double d, const DoubleTab &matrice, const DoubleTab &x, const DoubleTab &secmem, DoubleTab &solution) const
virtual void projete_point_face_fluide (int &nb_proj_modif, const int dim_fa7, const DoubleTab &indicatrice_face, const DoubleTab &indicatrice, const DoubleTab &dist_face, const double t, const double dt, DoubleTab &Tab100, DoubleTab &Tab101, DoubleTab &Tab102, DoubleTab &Tab103, IntTab &Tab12, IntTab &CptFacette, DoubleTab &v_imp, DoubleTab &Vertex, Parser &parser_x, Parser &parser_y, Parser &parser_z)
virtual void projete_point_face_interface (int &nb_proj_modif, const int dim_fa7, const DoubleTab &indicatrice_face, const DoubleTab &indicatrice, const DoubleTab &dist_face, const double t, const double dt, DoubleTab &Tab100, DoubleTab &Tab101, DoubleTab &Tab102, DoubleTab &Tab103, IntTab &Tab12, IntTab &CptFacette, DoubleTab &v_imp, DoubleTab &Vertex, Parser &parser_x, Parser &parser_y, Parser &parser_z)
virtual void transporter_sans_changement_topologie (DoubleTab &vitesse, const double coeff, const double temps)
virtual int calculer_composantes_connexes_pour_suppression (IntVect &num_compo)
virtual double suppression_interfaces (const IntVect &num_compo, const ArrOfInt &flags_compo_a_supprimer)
const int & get_vimp_regul () const
void ramasse_miettes (const Maillage_FT_Disc &maillage, DoubleVect &flux, DoubleVect &valeurs)
void nettoyer_maillage ()
void parcourir_maillage ()
Collision_Model_FT_baseget_set_collision_model ()
const int & get_nb_particles_tot () const
const Collision_Model_FT_baseget_collision_model () const
const OWN_PTR (Collision_Model_FT_base) &get_ptr_collision_model() const
const DoubleTab & get_particles_position () const
const DoubleTab & get_particles_velocity () const
const ArrOfInt & get_gravity_center_elem () const
Post_Processing_Hydrodynamic_Forcesget_post_process_hydro_forces ()
void associate_temp_equation_post_processing (OBS_PTR(Convection_Diffusion_Temperature_FT_Disc) ref_eq_temp)
const bool & get_is_solid_particle () const
Public Member Functions inherited from Equation_base
void nommer (const Nom &nom) override
 Methode appelee lorsqu'on cree l'instance de l'objet dans le jeu de donnees (Interprete::ajouter).
virtual void avancer (int i=1)
virtual void reculer (int i=1)
virtual int nombre_d_operateurs_tot () const
virtual const Operateuroperateur_fonctionnel (int) const
virtual Operateuroperateur_fonctionnel (int)
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.
int limpr () const
 Demande au schema en temps si il faut effectuer une impression.
virtual void imprimer (Sortie &os) const
 Imprime les operateurs de l'equation si le schema en temps indique que c'est necessaire.
virtual void associer_milieu_equation ()
virtual DoubleTab & derivee_en_temps_inco_transport (DoubleTab &derivee)
virtual DoubleTab & corriger_derivee_expl (DoubleTab &)
virtual DoubleTab & corriger_derivee_impl (DoubleTab &)
virtual void abortTimeStep ()
 Reinitialiser ce qui doit l'etre.
virtual void resetTime (double time)
 Reset current time of the equation. Used from ICoCo. See documentation of Problem_base::resetTime().
virtual void valider_iteration ()
 methode virtuelle permettant de corriger l'onconnue lors d'iterations implicites par exemple K-eps doivent rester positifs
virtual bool initTimeStep (double dt)
 Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.
virtual bool updateGivenFields ()
virtual void completer ()
 Complete la construction (initialisation) des objets associes a l'equation.
void calculer_pas_de_temps_locaux (DoubleTab &) const
Sourcessources ()
 Renvoie les termes sources asssocies a l'equation.
const Sourcessources () const
 Renvoie les termes sources asssocies a l'equation (version const).
Solveur_Masse_basesolv_masse ()
 Renvoie le solveur de masse associe a l'equation.
const Solveur_Masse_basesolv_masse () const
 Renvoie le solveur de masse associe a l'equation.
Probleme_baseprobleme ()
 Renvoie le probleme associe a l'equation.
const Probleme_baseprobleme () const
 Renvoie le probleme associe a l'equation.
Schema_Temps_baseschema_temps ()
 Renvoie le schema en temps associe a l'equation.
const Schema_Temps_baseschema_temps () const
 Renvoie le schema en temps associe a l'equation.
virtual void associer_sch_tps_base (const Schema_Temps_base &)
 S'associe au schema_en_temps.
virtual void associer_domaine_dis (const Domaine_dis_base &)
 Associe le domaine discretise a l'equation.
const Discretisation_basediscretisation () const
 Renvoie la discretisation associee a l'equation.
virtual Domaine_Cl_dis_basedomaine_Cl_dis ()
 Renvoie le domaine des conditions aux limite discretisee associee a l'equation.
virtual const Domaine_Cl_dis_basedomaine_Cl_dis () const
 Renvoie le domaine des conditions aux limite discretisee associee a l'equation.
Domaine_dis_basedomaine_dis ()
 Renvoie le domaine discretise associe a l'equation.
const Domaine_dis_basedomaine_dis () const
 Renvoie le domaine discretise associe a l'equation.
const Nomle_nom () const override
 Renvoie le nom de l'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 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_basechamp_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_basechamp_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_baseget_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 Motcledomaine_application () const
 Renvoie "indetermine" Navier_Stokes_standard par exemple surcharge cette methode.
virtual void verifie_ch_init_nb_comp (const Champ_Inc_base &ch_ref, const int nb_comp) const
 Verification du nombre de composantes lues pour la specification d un champ.
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) &parametre_equation()
const OWN_PTR (Parametre_equation_base) &parametre_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_basederivee_en_temps () const
virtual Champ_Inc_basederivee_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
 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 SortieprintOn (Sortie &) const
 Ecriture de l'objet sur un flot de sortie Methode a surcharger.
virtual EntreereadOn (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_infoget_info () const
 Donne des informations sur le type de l'Objet_U.
const Nomque_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 associer_ (Objet_U &)
 Associe l'Objet_U a un autre Objet_U Methode virtuelle a surcharger.
const Interpreteinterprete () const
Interpreteinterprete ()
Public Member Functions inherited from Process
virtual ~Process ()

Static Public Member Functions

static void transfert_conservatif_eulerien_vers_lagrangien_sommets (const Maillage_FT_Disc &maillage, const DoubleVect &valeurs_euler, ArrOfDouble &valeurs_lagrange)
Static Public Member Functions inherited from Equation_base
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 Nomnom_du_cas ()
 Renvoie une reference constante vers le nom du cas.
static Nomget_set_nom_du_cas ()
 Renvoie une reference non constante vers le nom du cas (pour pouvoir le modifier).
static const Type_infoinfo ()
 Donne des informations sur le type de l'Objet_U.
static const Objet_Uself_cast (const Objet_U &)
 methode ajoutee pour caster en python
static Objet_Uself_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 SortieJournal (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)

Protected Member Functions

bool injecter_interfaces_par_ajout_phase (double temps)
bool injecter_interfaces_pour_TCL (double temps)
bool test_suppression_interfaces_sous_domaine ()
virtual void calculer_vmoy_composantes_connexes (const Maillage_FT_Disc &maillage, const ArrOfInt &compo_connexes_facettes, const int nb_compo_tot, const DoubleTab &vitesse_sommets, DoubleTab &vitesses, DoubleTab &positions) const
void ajouter_contribution_saut_vitesse (DoubleTab &deplacement, const bool la_roue_de_vitesse_a_deja_tournee) const
virtual void deplacer_maillage_ft_v_fluide (const double temps)
virtual void calculer_distance_interface (const Maillage_FT_Disc &maillage, DoubleTab &distance_elements, DoubleTab &normale_elements, const int n_iter) const
 Calcul d'un champ scalaire aux elements contenant une distance signee entre le centre de l'element et l'interface.
virtual void calculer_distance_interface_sommets (const DoubleTab &dist_elem, const DoubleTab &normale_elem, DoubleTab &dist_som) const
 Calcule dist_som, la distance entre l'interface et les sommets du maillage eulerien a partir de dist_elem et normale_elem,.
virtual void calculer_vitesse_repere_local (const Maillage_FT_Disc &maillage, DoubleTab &deplacement, DoubleTab &Positions, DoubleTab &Vitesses) const
virtual void calculer_distance_interface_faces (const DoubleTab &dist_elem, const DoubleTab &normale_elem, DoubleTab &dist_faces) const
void calcul_indicatrice_faces (const DoubleTab &indicatrice, const IntTab &face_voisins)
const DoubleTab & get_mean_particles_volumic_velocity () const
const DoubleTab & get_mean_particles_volumic_squared_velocity () const
const DoubleTab & get_rms_particles_volumic_velocity () const
const DoubleTab & get_particles_purely_solid_mesh_volume () const
void set_is_solid_particle (const bool is_solid_particle)
void init_particles_position_velocity ()
void swap_particles_lagrangian_position_velocity ()
 WARNING, particles_position_collision_ and particles_velocity_collision_ are not used to transport particles but only for the computation of contact forces. Thus, be aware that tables Vitesses and Positions from the method calculer_vitesse_repere_local() are different from those of the present method. Indeed, it is not required to conserve the same lagrangian number to transport particles. To merge tables from both methods, one should modify the following methods: search_connex_components_local_FT and compute_global_connex_components_FT. If a particle is numbered 0 by proc 0, its global Lagrangian number will be 0. However, if it passes to proc 1 and is assigned the number 0, its global number will be 0 + the number of particles of proc 0. This method swap rows of particles_position_collision_ and particles_velocity_collision_ to conserve the particles lagrangian ID number between two successive times steps using the particles eulerian ID number. Indeed, after calling the function search_connex_components_local_FT and compute_global_connex_components_FT, their lagrangian number has changed. The method is base on the assumption that the element in which the gravity center of a given particle conserve its eulerian ID number between two successive time steps, which is always verified for resolved particles. We then attribute the eulerian ID number of this elem to the lagrangian particle ID number by swapping table rows. /!\ /!\ /!\ At the moment, this method is performed sequentially only All processors know the tables particles_position_collision_ and particles_velocity_collision_.
void compute_particles_rms ()
void add_fields_to_post_FT (Motcles &fields) const
void fill_ftab_vertices_curvature (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_velocity (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_local_reference_frame_velocity (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_normal_unit (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_pressure (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_pressure_force (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_friction_force (DoubleTab *ftab, const DoubleTab &dummytab) const
void fill_ftab_Stokes_pressure_interp (DoubleTab *ftab, const DoubleTab &values) const
void fill_ftab_Stokes_pressure_th (DoubleTab *ftab, const DoubleTab &values) const
void fill_ftab_Stokes (DoubleTab *ftab, const DoubleTab &values) const
 OBS_PTR (Probleme_base) probleme_base_
 OBS_PTR (Navier_Stokes_FT_Disc) equation_ns_
 OWN_PTR (Champ_Inc_base) indicatrice_
 OWN_PTR (Champ_Inc_base) indicatrice_faces_
Maillage_FT_Discmaillage_interface ()
Marching_Cubesmarching_cubes ()
Topologie_Maillage_FTtopologie_interface ()
Proprietes_part_volproprietes_particules ()
Maillage_FT_Discmaillage_inject ()
Proprietes_part_volproprietes_inject ()
DoubleTab & tableaux_positions ()
IntVect & vecteur_elements ()
DoubleTab & deplacement_som ()
 OWN_PTR (Champ_Fonc_base) vitesse_imp_interp_
 OWN_PTR (Collision_Model_FT_base) collision_model_
Protected Member Functions inherited from Equation_base
 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 Entreelire_sources (Entree &)
 Lecture des termes sources dans un flot d'entree.
virtual Entreelire_cl (Entree &)
 Lecture des conditions limites sur un flot d'entree.
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 ()
 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_Uoperator= (const Objet_U &)
 Operateur= : ne fait rien (on conserve le numero et l'identifiant).

Protected Attributes

Nom suppression_interfaces_sous_domaine_
bool is_solid_particle_ = false
bool compute_particles_rms_ = false
DoubleTab particles_position_collision_
DoubleTab particles_velocity_collision_
ArrOfInt gravity_center_elem_
DoubleTab mean_particles_volumic_velocity_
DoubleTab mean_particles_volumic_squared_velocity_
DoubleTab rms_particles_volumic_velocity_
DoubleTab particles_purely_solid_mesh_volume_
Post_Processing_Hydrodynamic_Forces post_process_hydro_forces_
Post_Processing_Hydrodynamic_Forces_Stokes post_process_hydro_forces_Stokes_
Protected Attributes inherited from Equation_base
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

Friends

class Post_Processing_Hydrodynamic_Forces

Additional Inherited Members

Public Attributes inherited from Equation_base
Matrice_Morse_Diag diag_
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

Detailed Description

Definition at line 49 of file Transport_Interfaces_FT_Disc.h.

Constructor & Destructor Documentation

◆ Transport_Interfaces_FT_Disc()

Transport_Interfaces_FT_Disc::Transport_Interfaces_FT_Disc ( )

constructeur par defaut

TODO: remove the new Transport_Interfaces_FT_Disc_interne in there. why do that ?

Definition at line 376 of file Transport_Interfaces_FT_Disc.cpp.

Member Function Documentation

◆ add_fields_to_post_FT()

void Transport_Interfaces_FT_Disc::add_fields_to_post_FT ( Motcles & fields) const
protected

◆ ajouter_contribution_saut_vitesse()

void Transport_Interfaces_FT_Disc::ajouter_contribution_saut_vitesse ( DoubleTab & deplacement,
const bool la_roue_de_vitesse_a_deja_tournee ) const
protected

Definition at line 7539 of file Transport_Interfaces_FT_Disc.cpp.

◆ algorithmes_transport()

const Algorithmes_Transport_FT_Disc & Transport_Interfaces_FT_Disc::algorithmes_transport ( ) const
virtual

Definition at line 8557 of file Transport_Interfaces_FT_Disc.cpp.

◆ assembler()

void Transport_Interfaces_FT_Disc::assembler ( Matrice_Morse & mat_morse,
const DoubleTab & present,
DoubleTab & secmem )
overridevirtual

Reimplemented from Equation_base.

Definition at line 2738 of file Transport_Interfaces_FT_Disc.cpp.

◆ associate_temp_equation_post_processing()

void Transport_Interfaces_FT_Disc::associate_temp_equation_post_processing ( OBS_PTR(Convection_Diffusion_Temperature_FT_Disc) ref_eq_temp)
inline

Definition at line 324 of file Transport_Interfaces_FT_Disc.h.

◆ associer_equation_ns()

void Transport_Interfaces_FT_Disc::associer_equation_ns ( const Navier_Stokes_FT_Disc & ns)

Definition at line 8267 of file Transport_Interfaces_FT_Disc.cpp.

◆ associer_milieu_base()

void Transport_Interfaces_FT_Disc::associer_milieu_base ( const Milieu_base & milieu)
overridevirtual

Implements Equation_base.

Definition at line 8260 of file Transport_Interfaces_FT_Disc.cpp.

◆ associer_pb_base()

void Transport_Interfaces_FT_Disc::associer_pb_base ( const Probleme_base & pb)
overridevirtual

S'associe au Probleme passe en parametre.

Associe egalement les sources, les operateurs et le solveur de masse a l'equation.

Parameters
(Probleme_base&pb) le probleme auquel l'equation doit s'associer

Reimplemented from Equation_base.

Definition at line 1443 of file Transport_Interfaces_FT_Disc.cpp.

◆ BaryFa7()

void Transport_Interfaces_FT_Disc::BaryFa7 ( Maillage_FT_Disc & maillage,
const int i_facette,
DoubleTab & Barycentre )
virtual

Definition at line 6136 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_effort_fluide_interface()

void Transport_Interfaces_FT_Disc::calcul_effort_fluide_interface ( const DoubleTab & vpoint,
const DoubleTab & rho_faces,
DoubleTab & source_val,
const int is_explicite,
const double eta )

Definition at line 3818 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_eq_plan_facette() [1/2]

void Transport_Interfaces_FT_Disc::calcul_eq_plan_facette ( const int i_facette,
double & a,
double & b,
double & c,
double & d )
virtual

Definition at line 6248 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_eq_plan_facette() [2/2]

void Transport_Interfaces_FT_Disc::calcul_eq_plan_facette ( Maillage_FT_Disc & maillage,
const int i_facette,
double & a,
double & b,
double & c,
double & d )
virtual

Definition at line 6216 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_indicatrice_faces()

void Transport_Interfaces_FT_Disc::calcul_indicatrice_faces ( const DoubleTab & indicatrice,
const IntTab & face_voisins )
protected

Definition at line 2906 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_maxfa7()

void Transport_Interfaces_FT_Disc::calcul_maxfa7 ( Maillage_FT_Disc & maillage,
const DoubleTab & indicatrice,
const int nb_elem,
int & max_fa7,
const int exec_planfa7existan )
virtual

Definition at line 5912 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_nb_traverse()

void Transport_Interfaces_FT_Disc::calcul_nb_traverse ( const DoubleTab & xe,
const double dx,
const int dim,
const int ori,
Maillage_FT_Disc & maillage,
int elem,
int & traverse )
virtual

Definition at line 5402 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_OutElemFa7()

void Transport_Interfaces_FT_Disc::calcul_OutElemFa7 ( Maillage_FT_Disc & maillage,
const DoubleTab & indicatrice,
const int nb_elem,
int & nb_fa7_accepted,
IntList & OutElem,
IntList & OutFa7 )
virtual

Definition at line 5566 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_source()

void Transport_Interfaces_FT_Disc::calcul_source ( const DoubleTab & inco_val,
const DoubleTab & vpoint,
const DoubleTab & rho_faces,
DoubleTab & source_val,
const DoubleTab & vit_imposee,
const DoubleTab & indicatrice_faces,
const int is_QC,
const double dt,
const int is_explicite,
const double eta )

Definition at line 3129 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_tolerance_projete_diphasique()

void Transport_Interfaces_FT_Disc::calcul_tolerance_projete_diphasique ( const int i_face,
const int ori,
const int voisin0,
const int voisin1,
const DoubleTab & indicatrice,
double & tol )
virtual

Definition at line 6280 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_tolerance_projete_monophasique()

void Transport_Interfaces_FT_Disc::calcul_tolerance_projete_monophasique ( const int i_face,
const int ori,
const int voisin0,
const int voisin1,
const DoubleTab & indicatrice_face,
const DoubleTab & indicatrice,
double & tol )
virtual

Definition at line 6322 of file Transport_Interfaces_FT_Disc.cpp.

◆ calcul_vitesse()

void Transport_Interfaces_FT_Disc::calcul_vitesse ( DoubleTab & vitesse_imp,
const DoubleTab & champ_vitesse,
const DoubleTab & vpoint,
const double temps,
const double dt )
virtual

Definition at line 3991 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_composantes_connexes_pour_suppression()

int Transport_Interfaces_FT_Disc::calculer_composantes_connexes_pour_suppression ( IntVect & num_compo)
virtual

Definition at line 7577 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_distance_interface()

void Transport_Interfaces_FT_Disc::calculer_distance_interface ( const Maillage_FT_Disc & maillage,
DoubleTab & distance_elements,
DoubleTab & normale_elements,
const int n_iter ) const
protectedvirtual

Calcul d'un champ scalaire aux elements contenant une distance signee entre le centre de l'element et l'interface.

La distance est positive dans la phase 1 et negative dans la phase 0. On calcule aussi un champ vectoriel aux elements contenant une normale a l'interface. Ce champ est evalue en resolvant moralement laplacien(normale) = gradient(indicatrice) ou gradient(indicatrice) est le gradient de l'indicatrice continue c'est a dire un dirac localise a la surface de l'interface. Pour l'instant, cette normale est calculee de facon approchee avec quelques iterations d'un lisseur. Le support est donc limite au voisinage de l'interface. Pour les autres elements, la distance vaut -1.e30 Precondition : le maillage doit etre parcouru

Definition at line 9133 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_distance_interface_faces()

void Transport_Interfaces_FT_Disc::calculer_distance_interface_faces ( const DoubleTab & dist_elem,
const DoubleTab & normale_elem,
DoubleTab & dist_faces ) const
protectedvirtual

Definition at line 4145 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_distance_interface_sommets()

void Transport_Interfaces_FT_Disc::calculer_distance_interface_sommets ( const DoubleTab & dist_elem,
const DoubleTab & normale_elem,
DoubleTab & dist_som ) const
protectedvirtual

Calcule dist_som, la distance entre l'interface et les sommets du maillage eulerien a partir de dist_elem et normale_elem,.

distance et normale a l'interface aux centres des elements euleriens. Pour un element, on evalue la distance entre chaque sommet de l'element et l'interface comme : d = d1 + d2, d2 = normale scalaire (position_sommet - centre_element) d1 est la distance entre l'interface et le centre de l'element, normale est la normale a l'interface evaluee au centre de l'element Ensuite, la distance entre un sommet et l'interface est la moyenne de toutes les distances calculee a l'aide des elements adjacents a ce sommet. La distance est invalide au-dela d'une certaine epaisseur autour de l'interface (voir iterations de lissage dans calculer_distance_interface). Dans ce cas on met une distance de +1e30 si l'indicatrice est >0.5, sinon on met -1e30 (ce choix permet d'utiliser la fonction distance dans les marching-cubes sans avoir a calculer une vraie distance partout). Parametre : dist_elem Signification : tableau contenant pour chaque element reel et virtuel la distance entre l'interface et le centre de l'element (calculee par calculer_distance_interface). L'espace virtuel doit etre a jour. Parametre : normale_elem Signification : idem pour la normale a l'interface Parametre : dist_som Signification : tableau ou on stocke le resultat du calcul. Le tableau doit avoir la bonne taille et un descripteur adequat (voir "discretiser", a priori un tableau avec une epaisseur de joint de zero et uniquement des items communs).

Definition at line 9044 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_integrale_indicatrice()

double Transport_Interfaces_FT_Disc::calculer_integrale_indicatrice ( const DoubleVect & indicatrice,
double & v_ph0 ) const
virtual

Definition at line 2317 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_pas_de_temps()

double Transport_Interfaces_FT_Disc::calculer_pas_de_temps ( ) const
overridevirtual

Calcul du prochain pas de temps.

Renvoie l'inverse de la somme des inverses des pas de temps calcules par les operateurs. Ces pas de temps sont ceux pour le schema d'Euler explicite. Le pas de temps n'est pas majore par dt_max, ceci est fait dans corriger_dt_calcule

Returns
(double) inverse de la somme des inverses des pas de temps calcules par les operateurs

Reimplemented from Equation_base.

Definition at line 1823 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_scalaire_interpole()

void Transport_Interfaces_FT_Disc::calculer_scalaire_interpole ( const Champ_base & ch_scal,
const Maillage_FT_Disc & maillage,
DoubleTab & ch_scal_noeuds,
int nv_calc ) const

DoubleTab & les_vitesses = variables_internes_->doubletab_vitesses;

Definition at line 2629 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_vitesse_repere_local()

void Transport_Interfaces_FT_Disc::calculer_vitesse_repere_local ( const Maillage_FT_Disc & maillage,
DoubleTab & deplacement,
DoubleTab & Positions,
DoubleTab & Vitesses ) const
protectedvirtual

Definition at line 7102 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_vitesse_transport_interpolee() [1/2]

void Transport_Interfaces_FT_Disc::calculer_vitesse_transport_interpolee ( const Champ_base & champ_vitesse,
const Maillage_FT_Disc & maillage,
DoubleTab & vitesse_noeuds,
const int nv_calc,
const int standard,
const bool la_roue_de_vitesse_a_deja_tournee = false ) const
virtual

Calcul de la vitesse de deplacement des noeuds du maillage a partir d'un champ eulerien par interpolation.

Le deplacement fourni n'a aucune propriete particuliere de conservation du volume. Les lignes de contact sont deplacees avec une vitesse qui n'a pas de propriete particuliere non plus...

ATTENTION : on evalue simplement la vitesse a l'endroit ou sont les sommets. Param nv_calc : si =1 : recalcule le champ eulerien de la vitesse par filtrage L2 sinon, reutilise celui stocke dans variables_internes_

Definition at line 2348 of file Transport_Interfaces_FT_Disc.cpp.

◆ calculer_vitesse_transport_interpolee() [2/2]

virtual void Transport_Interfaces_FT_Disc::calculer_vitesse_transport_interpolee ( const Champ_base & champ_vitesse,
const Maillage_FT_Disc & m,
DoubleTab & vitesse_noeuds,
int nv_calc ) const
inlinevirtual

Definition at line 137 of file Transport_Interfaces_FT_Disc.h.

◆ calculer_vmoy_composantes_connexes()

void Transport_Interfaces_FT_Disc::calculer_vmoy_composantes_connexes ( const Maillage_FT_Disc & maillage,
const ArrOfInt & compo_connexes_facettes,
const int nb_compo_tot,
const DoubleTab & vitesse_sommets,
DoubleTab & vitesses,
DoubleTab & positions ) const
protectedvirtual

Definition at line 9375 of file Transport_Interfaces_FT_Disc.cpp.

◆ check_indicatrice_is_up_to_date()

void Transport_Interfaces_FT_Disc::check_indicatrice_is_up_to_date ( )
overridevirtual

Checks if the indicator is up to date.

Exits if it is not the case. To be used when we want to be sure that update_indicatrice has been called recently enough. The same test is also done in Transport_Interfaces_FT_Disc::get_indicatrice

Implements Transport_Interfaces_base.

Definition at line 1933 of file Transport_Interfaces_FT_Disc.cpp.

◆ close_save_file()

void Transport_Interfaces_FT_Disc::close_save_file ( )
overridevirtual

Reimplemented from Equation_base.

Definition at line 1813 of file Transport_Interfaces_FT_Disc.cpp.

◆ completer_maillage_et_changer_temps()

void Transport_Interfaces_FT_Disc::completer_maillage_et_changer_temps ( double temps)

Definition at line 7787 of file Transport_Interfaces_FT_Disc.cpp.

◆ compute_particles_rms()

void Transport_Interfaces_FT_Disc::compute_particles_rms ( )
protected

Definition at line 9861 of file Transport_Interfaces_FT_Disc.cpp.

◆ connectivite_frontieres()

const Connectivite_frontieres & Transport_Interfaces_FT_Disc::connectivite_frontieres ( ) const
virtual

Definition at line 8552 of file Transport_Interfaces_FT_Disc.cpp.

◆ data_a_sauvegarder()

std::vector< YAML_data > Transport_Interfaces_FT_Disc::data_a_sauvegarder ( ) const
overridevirtual

for PDI IO: retrieve name and type and dimensions of the indicatrice tag

Reimplemented from Equation_base.

Definition at line 8412 of file Transport_Interfaces_FT_Disc.cpp.

◆ deplacement_som()

DoubleTab & Transport_Interfaces_FT_Disc::deplacement_som ( )
protected

Definition at line 8369 of file Transport_Interfaces_FT_Disc.cpp.

◆ deplacer_maillage()

void Transport_Interfaces_FT_Disc::deplacer_maillage ( double temps)

Definition at line 7699 of file Transport_Interfaces_FT_Disc.cpp.

◆ deplacer_maillage_ft_v_fluide()

void Transport_Interfaces_FT_Disc::deplacer_maillage_ft_v_fluide ( const double temps)
protectedvirtual

Definition at line 7209 of file Transport_Interfaces_FT_Disc.cpp.

◆ derivee_en_temps_inco()

DoubleTab & Transport_Interfaces_FT_Disc::derivee_en_temps_inco ( DoubleTab & derivee)
overridevirtual

Calcul de la derivee en temps de l'inconnue : zero.

Reimplemented from Equation_base.

Definition at line 2732 of file Transport_Interfaces_FT_Disc.cpp.

◆ discretiser()

void Transport_Interfaces_FT_Disc::discretiser ( )
overridevirtual

Discretisation des champs: - indicatrice_ : champ scalaire discretise aux elements.

  • typage du maillage et de l'algorithme marching cubes

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 1468 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_friction_force()

void Transport_Interfaces_FT_Disc::fill_ftab_friction_force ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 10047 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_local_reference_frame_velocity()

void Transport_Interfaces_FT_Disc::fill_ftab_local_reference_frame_velocity ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 10003 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_normal_unit()

void Transport_Interfaces_FT_Disc::fill_ftab_normal_unit ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 10035 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_pressure()

void Transport_Interfaces_FT_Disc::fill_ftab_pressure ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 10059 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_pressure_force()

void Transport_Interfaces_FT_Disc::fill_ftab_pressure_force ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 10041 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_Stokes()

void Transport_Interfaces_FT_Disc::fill_ftab_Stokes ( DoubleTab * ftab,
const DoubleTab & values ) const
protected

Definition at line 10053 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_Stokes_pressure_interp()

void Transport_Interfaces_FT_Disc::fill_ftab_Stokes_pressure_interp ( DoubleTab * ftab,
const DoubleTab & values ) const
protected

Definition at line 10065 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_Stokes_pressure_th()

void Transport_Interfaces_FT_Disc::fill_ftab_Stokes_pressure_th ( DoubleTab * ftab,
const DoubleTab & values ) const
protected

Definition at line 10070 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_velocity()

void Transport_Interfaces_FT_Disc::fill_ftab_velocity ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 9965 of file Transport_Interfaces_FT_Disc.cpp.

◆ fill_ftab_vertices_curvature()

void Transport_Interfaces_FT_Disc::fill_ftab_vertices_curvature ( DoubleTab * ftab,
const DoubleTab & dummytab ) const
protected

Definition at line 9959 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_champ_post_FT() [1/2]

int Transport_Interfaces_FT_Disc::get_champ_post_FT ( const Motcle & champ,
Postraitement_base::Localisation loc,
DoubleTab * ftab = 0 ) const
virtual

Cherche le champ discret aux interfaces dont le nom est "champ", et verifie qu'il peut etre postraite a la localisation demandee (loc).

Si oui on renvoie 1 et, si ftab est non nul, on remplit le champ ftab avec le champ demande. Si non, on renvoie 0. (la fonction est appelee avec ftab=0 lors de la lecture du postraitement, car on n'a pas besoin de la valeur du champ, on veut seulement verifier qu'il existe).

Reimplemented in Transport_Marqueur_FT.

Definition at line 8780 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_champ_post_FT() [2/2]

int Transport_Interfaces_FT_Disc::get_champ_post_FT ( const Motcle & champ,
Postraitement_base::Localisation loc,
IntTab * itab = 0 ) const
virtual

Voir l'autre get_champ_post_FT.

Cette fonction est specifique aux champs d'entiers.

Reimplemented in Transport_Marqueur_FT.

Definition at line 8853 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_collision_model()

const Collision_Model_FT_base & Transport_Interfaces_FT_Disc::get_collision_model ( ) const
inline

Definition at line 317 of file Transport_Interfaces_FT_Disc.h.

◆ get_distance_interface()

const Champ_base & Transport_Interfaces_FT_Disc::get_distance_interface ( ) const
virtual

Definition at line 1960 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_expression_vitesse_imposee()

void Transport_Interfaces_FT_Disc::get_expression_vitesse_imposee ( DoubleTab & vitesse_imp)
virtual

Definition at line 3930 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_gravity_center_elem()

const ArrOfInt & Transport_Interfaces_FT_Disc::get_gravity_center_elem ( ) const
inline

Definition at line 321 of file Transport_Interfaces_FT_Disc.h.

◆ get_indicatrice()

const Champ_base & Transport_Interfaces_FT_Disc::get_indicatrice ( )
overridevirtual

getter champ variables_internes_->indicatrice_cache a partir de la position des interfaces.

ATTENTION, ce n'est pas l'inconnue du probleme. L'inconnue est mise a jour a partir de ce champ dans mettre_a_jour.

Implements Transport_Interfaces_base.

Definition at line 1949 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_indicatrice_faces()

const Champ_base & Transport_Interfaces_FT_Disc::get_indicatrice_faces ( )
virtual

Definition at line 3107 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_is_solid_particle()

const bool & Transport_Interfaces_FT_Disc::get_is_solid_particle ( ) const
inline

Definition at line 326 of file Transport_Interfaces_FT_Disc.h.

◆ get_mean_particles_volumic_squared_velocity()

const DoubleTab & Transport_Interfaces_FT_Disc::get_mean_particles_volumic_squared_velocity ( ) const
inlineprotected

Definition at line 372 of file Transport_Interfaces_FT_Disc.h.

◆ get_mean_particles_volumic_velocity()

const DoubleTab & Transport_Interfaces_FT_Disc::get_mean_particles_volumic_velocity ( ) const
inlineprotected

Definition at line 370 of file Transport_Interfaces_FT_Disc.h.

◆ get_mesh_tag()

int Transport_Interfaces_FT_Disc::get_mesh_tag ( ) const
inlineoverridevirtual

Implements Transport_Interfaces_base.

Definition at line 163 of file Transport_Interfaces_FT_Disc.h.

◆ get_n_iterations_distance()

const int & Transport_Interfaces_FT_Disc::get_n_iterations_distance ( ) const
virtual

Definition at line 8986 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_nb_particles_tot()

const int & Transport_Interfaces_FT_Disc::get_nb_particles_tot ( ) const
inline

Definition at line 316 of file Transport_Interfaces_FT_Disc.h.

◆ get_normale_interface()

const Champ_base & Transport_Interfaces_FT_Disc::get_normale_interface ( ) const
virtual

Definition at line 1971 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_particles_position()

const DoubleTab & Transport_Interfaces_FT_Disc::get_particles_position ( ) const
inline

Definition at line 319 of file Transport_Interfaces_FT_Disc.h.

◆ get_particles_purely_solid_mesh_volume()

const DoubleTab & Transport_Interfaces_FT_Disc::get_particles_purely_solid_mesh_volume ( ) const
inlineprotected

Definition at line 376 of file Transport_Interfaces_FT_Disc.h.

◆ get_particles_velocity()

const DoubleTab & Transport_Interfaces_FT_Disc::get_particles_velocity ( ) const
inline

Definition at line 320 of file Transport_Interfaces_FT_Disc.h.

◆ get_post_process_hydro_forces()

Post_Processing_Hydrodynamic_Forces & Transport_Interfaces_FT_Disc::get_post_process_hydro_forces ( )
inline

Definition at line 322 of file Transport_Interfaces_FT_Disc.h.

◆ get_probleme_base()

const Probleme_base & Transport_Interfaces_FT_Disc::get_probleme_base ( ) const

Definition at line 8542 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_rms_particles_volumic_velocity()

const DoubleTab & Transport_Interfaces_FT_Disc::get_rms_particles_volumic_velocity ( ) const
inlineprotected

Definition at line 374 of file Transport_Interfaces_FT_Disc.h.

◆ get_set_collision_model()

Collision_Model_FT_base & Transport_Interfaces_FT_Disc::get_set_collision_model ( )
inline

Definition at line 313 of file Transport_Interfaces_FT_Disc.h.

◆ get_update_distance_interface_faces()

const Champ_base & Transport_Interfaces_FT_Disc::get_update_distance_interface_faces ( ) const
virtual

Definition at line 4222 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_update_distance_interface_sommets()

const DoubleTab & Transport_Interfaces_FT_Disc::get_update_distance_interface_sommets ( ) const
virtual

Renvoi de la distance signee entre l'interface et les sommets du maillage eulerien.

Si cette distance n'a pas encore ete calculee, appel a calculer_distance_interface_sommets. C'est un DoubleTab parce qu'il n'existe pas (encore) de champ aux sommets en VDF ...

Definition at line 8998 of file Transport_Interfaces_FT_Disc.cpp.

◆ get_vimp_regul()

const int & Transport_Interfaces_FT_Disc::get_vimp_regul ( ) const

Definition at line 3103 of file Transport_Interfaces_FT_Disc.cpp.

◆ impr()

int Transport_Interfaces_FT_Disc::impr ( Sortie & os) const
overridevirtual

Imprime les operateurs de l'equation sur un flot de sortie, de facon inconditionnelle.

appelle Operateur_base::impr(os)

Parameters
(Sortie&os) le flot de sortie
Returns
(int) renvoie toujours 1

Reimplemented from Equation_base.

Definition at line 3554 of file Transport_Interfaces_FT_Disc.cpp.

◆ impr_effort_fluide_interface()

void Transport_Interfaces_FT_Disc::impr_effort_fluide_interface ( DoubleTab & source_val,
DoubleTab & pressure_part,
DoubleTab & friction_part,
DoubleTab & diff_part )

Definition at line 3440 of file Transport_Interfaces_FT_Disc.cpp.

◆ inconnue() [1/2]

const Champ_Inc_base & Transport_Interfaces_FT_Disc::inconnue ( ) const
overridevirtual

Implements Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 8311 of file Transport_Interfaces_FT_Disc.cpp.

◆ inconnue() [2/2]

Champ_Inc_base & Transport_Interfaces_FT_Disc::inconnue ( )
overridevirtual

Implements Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 8316 of file Transport_Interfaces_FT_Disc.cpp.

◆ init_particles_position_velocity()

void Transport_Interfaces_FT_Disc::init_particles_position_velocity ( )
protected

Definition at line 9741 of file Transport_Interfaces_FT_Disc.cpp.

◆ init_save_file()

void Transport_Interfaces_FT_Disc::init_save_file ( )
overridevirtual

Reimplemented from Equation_base.

Definition at line 1807 of file Transport_Interfaces_FT_Disc.cpp.

◆ injecter_interfaces_par_ajout_phase()

bool Transport_Interfaces_FT_Disc::injecter_interfaces_par_ajout_phase ( double temps)
protected

Definition at line 7805 of file Transport_Interfaces_FT_Disc.cpp.

◆ injecter_interfaces_pour_TCL()

bool Transport_Interfaces_FT_Disc::injecter_interfaces_pour_TCL ( double temps)
protected

Definition at line 7872 of file Transport_Interfaces_FT_Disc.cpp.

◆ injecter_supprimer_interfaces()

bool Transport_Interfaces_FT_Disc::injecter_supprimer_interfaces ( double temps)

Definition at line 7795 of file Transport_Interfaces_FT_Disc.cpp.

◆ integrer_ensemble_lagrange()

void Transport_Interfaces_FT_Disc::integrer_ensemble_lagrange ( const double temps)
overridevirtual

Implements Transport_Interfaces_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 7668 of file Transport_Interfaces_FT_Disc.cpp.

◆ interpoler_simple_vitesse_face()

void Transport_Interfaces_FT_Disc::interpoler_simple_vitesse_face ( const DoubleTab & distance_interface,
const int phase,
const int stencil_width,
DoubleTab & champ,
DoubleTab & gradient,
const double t,
const double dt )

◆ interpoler_vitesse_face()

void Transport_Interfaces_FT_Disc::interpoler_vitesse_face ( const DoubleTab & distance_interface,
const int phase,
const int stencil_width,
DoubleTab & champ,
DoubleTab & gradient,
const double t,
const double dt )
virtual

--— variables pour post-traitement

Definition at line 4273 of file Transport_Interfaces_FT_Disc.cpp.

◆ lire_cond_init()

Entree & Transport_Interfaces_FT_Disc::lire_cond_init ( Entree & is)
overridevirtual

Lecture des conditions initiales.

On s'attend a trouver ceci : { fonction EXPRESSION } ou expression depend de x, y et z et sera interpretee par le parser de TRUST. L'expression est envoyee a Marching_Cubes pour construire l'interface. Voir aussi parser et Marching_Cubes.

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 1306 of file Transport_Interfaces_FT_Disc.cpp.

◆ lire_maillage_ft_cao()

void Transport_Interfaces_FT_Disc::lire_maillage_ft_cao ( Entree & is)
virtual

Definition at line 998 of file Transport_Interfaces_FT_Disc.cpp.

◆ lire_motcle_non_standard()

int Transport_Interfaces_FT_Disc::lire_motcle_non_standard ( const Motcle & motlu,
Entree & is )
overridevirtual

Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.

Parameters
(Motcle&motlu) le nom du terme a lire
(Entree&is) un flot d'entree
Returns
(int) negative value if the keyword is not understood, otherwise positive value.

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 454 of file Transport_Interfaces_FT_Disc.cpp.

◆ maillage_inject() [1/2]

Maillage_FT_Disc & Transport_Interfaces_FT_Disc::maillage_inject ( )
protected

Definition at line 8384 of file Transport_Interfaces_FT_Disc.cpp.

◆ maillage_inject() [2/2]

const Maillage_FT_Disc & Transport_Interfaces_FT_Disc::maillage_inject ( ) const

Definition at line 8389 of file Transport_Interfaces_FT_Disc.cpp.

◆ maillage_interface() [1/2]

Maillage_FT_Disc & Transport_Interfaces_FT_Disc::maillage_interface ( )
protected

Definition at line 8331 of file Transport_Interfaces_FT_Disc.cpp.

◆ maillage_interface() [2/2]

const Maillage_FT_Disc & Transport_Interfaces_FT_Disc::maillage_interface ( ) const

Definition at line 8336 of file Transport_Interfaces_FT_Disc.cpp.

◆ maillage_interface_pour_post()

const Maillage_FT_Disc & Transport_Interfaces_FT_Disc::maillage_interface_pour_post ( ) const
virtual

Renvoie le maillage stocke specialement pour le postraitement (si on veut postraiter un etat intermediaire.

..)

Definition at line 8980 of file Transport_Interfaces_FT_Disc.cpp.

◆ marching_cubes() [1/2]

Marching_Cubes & Transport_Interfaces_FT_Disc::marching_cubes ( )
protected

Definition at line 8321 of file Transport_Interfaces_FT_Disc.cpp.

◆ marching_cubes() [2/2]

const Marching_Cubes & Transport_Interfaces_FT_Disc::marching_cubes ( ) const
virtual

Definition at line 8326 of file Transport_Interfaces_FT_Disc.cpp.

◆ mettre_a_jour()

void Transport_Interfaces_FT_Disc::mettre_a_jour ( double temps)
overridevirtual

La valeur de l'inconnue sur le pas de temps a ete calculee.

Cette methode avance le present jusqu'au temps passe en parametre. Elle met aussi a jour les proprietes du milieu.

Parameters
(doubletemps) le pas de temps de mise a jour

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 7675 of file Transport_Interfaces_FT_Disc.cpp.

◆ mettre_a_jour_deplacement()

bool Transport_Interfaces_FT_Disc::mettre_a_jour_deplacement ( double temps)

Definition at line 7692 of file Transport_Interfaces_FT_Disc.cpp.

◆ mettre_a_jour_hors_deplacement()

void Transport_Interfaces_FT_Disc::mettre_a_jour_hors_deplacement ( double temps,
const bool update_statio = true,
const bool update_indic = true )

Definition at line 8025 of file Transport_Interfaces_FT_Disc.cpp.

◆ milieu() [1/2]

const Milieu_base & Transport_Interfaces_FT_Disc::milieu ( ) const
overridevirtual

Implements Equation_base.

Definition at line 8282 of file Transport_Interfaces_FT_Disc.cpp.

◆ milieu() [2/2]

Milieu_base & Transport_Interfaces_FT_Disc::milieu ( )
overridevirtual

Implements Equation_base.

Definition at line 8272 of file Transport_Interfaces_FT_Disc.cpp.

◆ modifie_source()

void Transport_Interfaces_FT_Disc::modifie_source ( DoubleTab & so_modif,
const DoubleTab & so_val,
const DoubleTab & rho_faces,
const int n,
const int m,
const int is_QC,
const DoubleVect & vol_entrelaces,
const Solveur_Masse_base & solv_masse )

Definition at line 3416 of file Transport_Interfaces_FT_Disc.cpp.

◆ modifier_vpoint_pour_imposer_vit()

void Transport_Interfaces_FT_Disc::modifier_vpoint_pour_imposer_vit ( const DoubleTab & inco_val,
DoubleTab & vpoint0,
DoubleTab & vpoint,
const DoubleTab & rho_faces,
DoubleTab & terme_source,
const double temps,
const double dt,
const int is_explicite,
const double eta )
overridevirtual

Implements Transport_Interfaces_base.

Definition at line 2804 of file Transport_Interfaces_FT_Disc.cpp.

◆ nettoyer_maillage()

void Transport_Interfaces_FT_Disc::nettoyer_maillage ( )
inline

Definition at line 296 of file Transport_Interfaces_FT_Disc.h.

◆ nettoyer_proprietes_particules()

void Transport_Interfaces_FT_Disc::nettoyer_proprietes_particules ( const ArrOfInt & som_utilises)

Definition at line 8404 of file Transport_Interfaces_FT_Disc.cpp.

◆ nombre_d_operateurs()

int Transport_Interfaces_FT_Disc::nombre_d_operateurs ( ) const
overridevirtual

Implements Equation_base.

Definition at line 8292 of file Transport_Interfaces_FT_Disc.cpp.

◆ OBS_PTR() [1/2]

Transport_Interfaces_FT_Disc::OBS_PTR ( Navier_Stokes_FT_Disc )
protected

◆ OBS_PTR() [2/2]

Transport_Interfaces_FT_Disc::OBS_PTR ( Probleme_base )
protected

◆ operateur() [1/2]

const Operateur & Transport_Interfaces_FT_Disc::operateur ( int i) const
overridevirtual

Implements Equation_base.

Definition at line 8297 of file Transport_Interfaces_FT_Disc.cpp.

◆ operateur() [2/2]

Operateur & Transport_Interfaces_FT_Disc::operateur ( int i)
overridevirtual

Implements Equation_base.

Definition at line 8304 of file Transport_Interfaces_FT_Disc.cpp.

◆ OWN_PTR() [1/5]

Transport_Interfaces_FT_Disc::OWN_PTR ( Champ_Fonc_base )
protected

◆ OWN_PTR() [2/5]

Transport_Interfaces_FT_Disc::OWN_PTR ( Champ_Inc_base )
protected

◆ OWN_PTR() [3/5]

Transport_Interfaces_FT_Disc::OWN_PTR ( Champ_Inc_base )
protected

◆ OWN_PTR() [4/5]

const Transport_Interfaces_FT_Disc::OWN_PTR ( Collision_Model_FT_base ) const &
inline

Definition at line 318 of file Transport_Interfaces_FT_Disc.h.

◆ OWN_PTR() [5/5]

Transport_Interfaces_FT_Disc::OWN_PTR ( Collision_Model_FT_base )
protected

◆ parcourir_maillage()

void Transport_Interfaces_FT_Disc::parcourir_maillage ( )
inline

Definition at line 300 of file Transport_Interfaces_FT_Disc.h.

◆ parcours_interface()

const Parcours_interface & Transport_Interfaces_FT_Disc::parcours_interface ( ) const
virtual

Definition at line 8547 of file Transport_Interfaces_FT_Disc.cpp.

◆ plan_facette_existant()

void Transport_Interfaces_FT_Disc::plan_facette_existant ( Maillage_FT_Disc & maillage,
DoubleList A,
DoubleList B,
DoubleList C,
DoubleList D,
const int i_facette,
int & test_liste )
virtual

Definition at line 6167 of file Transport_Interfaces_FT_Disc.cpp.

◆ PPP_face_interface()

void Transport_Interfaces_FT_Disc::PPP_face_interface ( Maillage_FT_Disc & maillage,
const DoubleTab & indicatrice,
const DoubleTab & indicatrice_face,
DoubleTab & Vertex )
virtual

Definition at line 5640 of file Transport_Interfaces_FT_Disc.cpp.

◆ PPP_face_interface_voisin()

void Transport_Interfaces_FT_Disc::PPP_face_interface_voisin ( const DoubleTab & indicatrice,
const DoubleTab & indicatrice_face,
DoubleTab & Vertex,
DoubleTab & PPP )
virtual

Definition at line 5748 of file Transport_Interfaces_FT_Disc.cpp.

◆ PPP_face_voisin()

void Transport_Interfaces_FT_Disc::PPP_face_voisin ( const DoubleTab & indicatrice,
const DoubleTab & indicatrice_face,
DoubleTab & PPP )
virtual

Definition at line 5839 of file Transport_Interfaces_FT_Disc.cpp.

◆ preparer_calcul()

int Transport_Interfaces_FT_Disc::preparer_calcul ( )
overridevirtual

Tout ce qui ne depend pas des autres problemes eventuels.

Returns
(int) renvoie toujours 1

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 1700 of file Transport_Interfaces_FT_Disc.cpp.

◆ preparer_calcul_anticipated()

int Transport_Interfaces_FT_Disc::preparer_calcul_anticipated ( void )

Definition at line 1714 of file Transport_Interfaces_FT_Disc.cpp.

◆ preparer_pas_de_temps()

void Transport_Interfaces_FT_Disc::preparer_pas_de_temps ( )
virtual

Definition at line 1818 of file Transport_Interfaces_FT_Disc.cpp.

◆ projete_point_face_fluide()

void Transport_Interfaces_FT_Disc::projete_point_face_fluide ( int & nb_proj_modif,
const int dim_fa7,
const DoubleTab & indicatrice_face,
const DoubleTab & indicatrice,
const DoubleTab & dist_face,
const double t,
const double dt,
DoubleTab & Tab100,
DoubleTab & Tab101,
DoubleTab & Tab102,
DoubleTab & Tab103,
IntTab & Tab12,
IntTab & CptFacette,
DoubleTab & v_imp,
DoubleTab & Vertex,
Parser & parser_x,
Parser & parser_y,
Parser & parser_z )
virtual

Definition at line 6675 of file Transport_Interfaces_FT_Disc.cpp.

◆ projete_point_face_interface()

void Transport_Interfaces_FT_Disc::projete_point_face_interface ( int & nb_proj_modif,
const int dim_fa7,
const DoubleTab & indicatrice_face,
const DoubleTab & indicatrice,
const DoubleTab & dist_face,
const double t,
const double dt,
DoubleTab & Tab100,
DoubleTab & Tab101,
DoubleTab & Tab102,
DoubleTab & Tab103,
IntTab & Tab12,
IntTab & CptFacette,
DoubleTab & v_imp,
DoubleTab & Vertex,
Parser & parser_x,
Parser & parser_y,
Parser & parser_z )
virtual

Definition at line 6831 of file Transport_Interfaces_FT_Disc.cpp.

◆ proprietes_inject() [1/2]

Proprietes_part_vol & Transport_Interfaces_FT_Disc::proprietes_inject ( )
protected

Definition at line 8394 of file Transport_Interfaces_FT_Disc.cpp.

◆ proprietes_inject() [2/2]

const Proprietes_part_vol & Transport_Interfaces_FT_Disc::proprietes_inject ( ) const

Definition at line 8399 of file Transport_Interfaces_FT_Disc.cpp.

◆ proprietes_particules() [1/2]

Proprietes_part_vol & Transport_Interfaces_FT_Disc::proprietes_particules ( )
protected

Definition at line 8374 of file Transport_Interfaces_FT_Disc.cpp.

◆ proprietes_particules() [2/2]

const Proprietes_part_vol & Transport_Interfaces_FT_Disc::proprietes_particules ( ) const

Definition at line 8379 of file Transport_Interfaces_FT_Disc.cpp.

◆ ramasse_miettes()

void Transport_Interfaces_FT_Disc::ramasse_miettes ( const Maillage_FT_Disc & maillage,
DoubleVect & flux,
DoubleVect & valeurs )

Definition at line 9522 of file Transport_Interfaces_FT_Disc.cpp.

◆ remaillage_interface() [1/2]

Remaillage_FT & Transport_Interfaces_FT_Disc::remaillage_interface ( )

Definition at line 8340 of file Transport_Interfaces_FT_Disc.cpp.

◆ remaillage_interface() [2/2]

const Remaillage_FT & Transport_Interfaces_FT_Disc::remaillage_interface ( ) const

Definition at line 8345 of file Transport_Interfaces_FT_Disc.cpp.

◆ remailler_interface()

void Transport_Interfaces_FT_Disc::remailler_interface ( )
virtual

Remaillage de l'interface : - amelioration petites et grandes facettes,.

  • barycentrage,
  • gestion des coalescences-fragmentations.

Definition at line 1688 of file Transport_Interfaces_FT_Disc.cpp.

◆ RenumFa7()

void Transport_Interfaces_FT_Disc::RenumFa7 ( DoubleTab & Barycentre,
DoubleTab & Tab110,
DoubleTab & Tab111,
DoubleTab & Tab112,
IntTab & Tab12,
IntTab & CptFacette,
const int nb_facettes,
const int nb_facettes_dim )
virtual

Definition at line 5972 of file Transport_Interfaces_FT_Disc.cpp.

◆ reprendre()

int Transport_Interfaces_FT_Disc::reprendre ( Entree & fich)
overridevirtual

On reprend l'inconnue a partir d'un flot d'entree.

[ON CHERCHE L'INCONNUE PAR SON NOM] [ON LIT L'INCONNUE] Voir Champ_Inc::reprendre(Entree&)

Parameters
(Entree&fich) le flot d'entree (fichier) a lire
Returns
(int) renvoie toujours 1
Exceptions
erreurde reprise, fin de fichier atteinte sans trouver l'inconnue

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 8485 of file Transport_Interfaces_FT_Disc.cpp.

◆ sauvegarder()

int Transport_Interfaces_FT_Disc::sauvegarder ( Sortie & os) const
overridevirtual

On sauvegarde l'inconnue, puis les sources sur un flot de sortie.

Parameters
(Sortie&os)
Returns
(int) le code de retour de Champ_Inc::sauvegarder()

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 8423 of file Transport_Interfaces_FT_Disc.cpp.

◆ set_is_solid_particle()

void Transport_Interfaces_FT_Disc::set_is_solid_particle ( const bool is_solid_particle)
inlineprotected

Definition at line 379 of file Transport_Interfaces_FT_Disc.h.

◆ set_param()

void Transport_Interfaces_FT_Disc::set_param ( Param & titi) const
overridevirtual

Reimplemented from Equation_base.

Reimplemented in Transport_Marqueur_FT.

Definition at line 418 of file Transport_Interfaces_FT_Disc.cpp.

◆ StockageFa7() [1/2]

void Transport_Interfaces_FT_Disc::StockageFa7 ( Maillage_FT_Disc & maillage,
DoubleTab & Tab100,
DoubleTab & Tab101,
DoubleTab & Tab102,
DoubleTab & Tab103,
DoubleTab & Tab110,
DoubleTab & Tab111,
DoubleTab & Tab112,
IntTab & Tab12,
DoubleTab & Barycentre,
IntList & OutElem,
IntTab & TabOutFa7,
ArrOfBit & fa7 )
virtual

Definition at line 6098 of file Transport_Interfaces_FT_Disc.cpp.

◆ StockageFa7() [2/2]

void Transport_Interfaces_FT_Disc::StockageFa7 ( Maillage_FT_Disc & maillage,
IntTab & CptFacette,
DoubleTab & Tab100,
DoubleTab & Tab101,
DoubleTab & Tab102,
DoubleTab & Tab103,
DoubleTab & Tab110,
DoubleTab & Tab111,
DoubleTab & Tab112,
IntTab & Tab12,
DoubleTab & Barycentre,
const DoubleTab & indicatrice,
IntList & OutElem,
ArrOfBit & fa7,
const int exec_planfa7existant )
virtual

Definition at line 6015 of file Transport_Interfaces_FT_Disc.cpp.

◆ suppression_interfaces()

double Transport_Interfaces_FT_Disc::suppression_interfaces ( const IntVect & num_compo,
const ArrOfInt & flags_compo_a_supprimer )
virtual

Definition at line 7585 of file Transport_Interfaces_FT_Disc.cpp.

◆ swap_particles_lagrangian_position_velocity()

void Transport_Interfaces_FT_Disc::swap_particles_lagrangian_position_velocity ( )
protected

WARNING, particles_position_collision_ and particles_velocity_collision_ are not used to transport particles but only for the computation of contact forces. Thus, be aware that tables Vitesses and Positions from the method calculer_vitesse_repere_local() are different from those of the present method. Indeed, it is not required to conserve the same lagrangian number to transport particles. To merge tables from both methods, one should modify the following methods: search_connex_components_local_FT and compute_global_connex_components_FT. If a particle is numbered 0 by proc 0, its global Lagrangian number will be 0. However, if it passes to proc 1 and is assigned the number 0, its global number will be 0 + the number of particles of proc 0. This method swap rows of particles_position_collision_ and particles_velocity_collision_ to conserve the particles lagrangian ID number between two successive times steps using the particles eulerian ID number. Indeed, after calling the function search_connex_components_local_FT and compute_global_connex_components_FT, their lagrangian number has changed. The method is base on the assumption that the element in which the gravity center of a given particle conserve its eulerian ID number between two successive time steps, which is always verified for resolved particles. We then attribute the eulerian ID number of this elem to the lagrangian particle ID number by swapping table rows. /!\ /!\ /!\ At the moment, this method is performed sequentially only All processors know the tables particles_position_collision_ and particles_velocity_collision_.

Definition at line 9819 of file Transport_Interfaces_FT_Disc.cpp.

◆ tableaux_positions()

DoubleTab & Transport_Interfaces_FT_Disc::tableaux_positions ( )
protected

Definition at line 8359 of file Transport_Interfaces_FT_Disc.cpp.

◆ test_suppression_interfaces_sous_domaine()

bool Transport_Interfaces_FT_Disc::test_suppression_interfaces_sous_domaine ( )
protected

Definition at line 7594 of file Transport_Interfaces_FT_Disc.cpp.

◆ topologie_interface() [1/2]

Topologie_Maillage_FT & Transport_Interfaces_FT_Disc::topologie_interface ( )
protected

Definition at line 8349 of file Transport_Interfaces_FT_Disc.cpp.

◆ topologie_interface() [2/2]

const Topologie_Maillage_FT & Transport_Interfaces_FT_Disc::topologie_interface ( ) const

Definition at line 8354 of file Transport_Interfaces_FT_Disc.cpp.

◆ transfert_conservatif_eulerien_vers_lagrangien_sommets()

void Transport_Interfaces_FT_Disc::transfert_conservatif_eulerien_vers_lagrangien_sommets ( const Maillage_FT_Disc & maillage,
const DoubleVect & valeurs_euler,
ArrOfDouble & valeurs_lagrange )
static

Definition at line 9647 of file Transport_Interfaces_FT_Disc.cpp.

◆ transporter_sans_changement_topologie()

void Transport_Interfaces_FT_Disc::transporter_sans_changement_topologie ( DoubleTab & vitesse,
const double coeff,
const double temps )
virtual

Definition at line 8225 of file Transport_Interfaces_FT_Disc.cpp.

◆ update_critere_statio()

void Transport_Interfaces_FT_Disc::update_critere_statio ( )

Definition at line 3804 of file Transport_Interfaces_FT_Disc.cpp.

◆ update_indicatrice()

void Transport_Interfaces_FT_Disc::update_indicatrice ( )
overridevirtual

Recalcul du champ variables_internes_->indicatrice_cache a partir de la position des interfaces.

ATTENTION, ce n'est pas l'inconnue du probleme. L'inconnue est mise a jour a partir de ce champ dans mettre_a_jour.

Implements Transport_Interfaces_base.

Definition at line 1888 of file Transport_Interfaces_FT_Disc.cpp.

◆ update_indicatrice_faces()

const Champ_base & Transport_Interfaces_FT_Disc::update_indicatrice_faces ( )
virtual

Definition at line 3112 of file Transport_Interfaces_FT_Disc.cpp.

◆ update_indicatrice_normale_distance()

void Transport_Interfaces_FT_Disc::update_indicatrice_normale_distance ( )

Updates normals and distances to interface, then updates indicatrice.

calls Maillage_FT_Disc::parcourir_maillage() first. calls update_normale_distance_interface then update_indicatrice

Definition at line 1846 of file Transport_Interfaces_FT_Disc.cpp.

◆ update_normale_distance_interface()

void Transport_Interfaces_FT_Disc::update_normale_distance_interface ( ) const

Calcule la normale et la distance a l'interface, evaluees sur une epaisseur egale a n_iterations_distance aux elements et discretisee aux elements.

Definition at line 1861 of file Transport_Interfaces_FT_Disc.cpp.

◆ uzawa()

void Transport_Interfaces_FT_Disc::uzawa ( const double d,
const DoubleTab & matrice,
const DoubleTab & x,
const DoubleTab & secmem,
DoubleTab & solution ) const
virtual

Definition at line 6566 of file Transport_Interfaces_FT_Disc.cpp.

◆ vecteur_elements()

IntVect & Transport_Interfaces_FT_Disc::vecteur_elements ( )
protected

Definition at line 8364 of file Transport_Interfaces_FT_Disc.cpp.

◆ verif_Cl()

int Transport_Interfaces_FT_Disc::verif_Cl ( ) const
overridevirtual

Methode appelee par Equation_base::readOn On verifie que toutes les cl sont de type Paroi_FT_disc.

Fait Process::exit() si erreur.

Reimplemented from Equation_base.

Definition at line 933 of file Transport_Interfaces_FT_Disc.cpp.

◆ verifprojete()

void Transport_Interfaces_FT_Disc::verifprojete ( const int monophasique,
const double Lref,
double d,
const DoubleTab & x,
const DoubleTab & V,
DoubleTab & coord_projete,
int & cpt )

Definition at line 6478 of file Transport_Interfaces_FT_Disc.cpp.

◆ Post_Processing_Hydrodynamic_Forces

Definition at line 55 of file Transport_Interfaces_FT_Disc.h.

Member Data Documentation

◆ compute_particles_rms_

bool Transport_Interfaces_FT_Disc::compute_particles_rms_ = false
protected

Definition at line 422 of file Transport_Interfaces_FT_Disc.h.

◆ gravity_center_elem_

ArrOfInt Transport_Interfaces_FT_Disc::gravity_center_elem_
mutableprotected

Definition at line 426 of file Transport_Interfaces_FT_Disc.h.

◆ is_solid_particle_

bool Transport_Interfaces_FT_Disc::is_solid_particle_ = false
protected

Definition at line 421 of file Transport_Interfaces_FT_Disc.h.

◆ mean_particles_volumic_squared_velocity_

DoubleTab Transport_Interfaces_FT_Disc::mean_particles_volumic_squared_velocity_
protected

Definition at line 428 of file Transport_Interfaces_FT_Disc.h.

◆ mean_particles_volumic_velocity_

DoubleTab Transport_Interfaces_FT_Disc::mean_particles_volumic_velocity_
protected

Definition at line 427 of file Transport_Interfaces_FT_Disc.h.

◆ particles_position_collision_

DoubleTab Transport_Interfaces_FT_Disc::particles_position_collision_
mutableprotected

Definition at line 424 of file Transport_Interfaces_FT_Disc.h.

◆ particles_purely_solid_mesh_volume_

DoubleTab Transport_Interfaces_FT_Disc::particles_purely_solid_mesh_volume_
protected

Definition at line 430 of file Transport_Interfaces_FT_Disc.h.

◆ particles_velocity_collision_

DoubleTab Transport_Interfaces_FT_Disc::particles_velocity_collision_
mutableprotected

Definition at line 425 of file Transport_Interfaces_FT_Disc.h.

◆ post_process_hydro_forces_

Post_Processing_Hydrodynamic_Forces Transport_Interfaces_FT_Disc::post_process_hydro_forces_
mutableprotected

Definition at line 432 of file Transport_Interfaces_FT_Disc.h.

◆ post_process_hydro_forces_Stokes_

Post_Processing_Hydrodynamic_Forces_Stokes Transport_Interfaces_FT_Disc::post_process_hydro_forces_Stokes_
mutableprotected

Definition at line 433 of file Transport_Interfaces_FT_Disc.h.

◆ rms_particles_volumic_velocity_

DoubleTab Transport_Interfaces_FT_Disc::rms_particles_volumic_velocity_
protected

Definition at line 429 of file Transport_Interfaces_FT_Disc.h.

◆ suppression_interfaces_sous_domaine_

Nom Transport_Interfaces_FT_Disc::suppression_interfaces_sous_domaine_
protected

Definition at line 416 of file Transport_Interfaces_FT_Disc.h.


The documentation for this class was generated from the following files:
  • /home/docs/checkouts/readthedocs.org/user_builds/triocfd-documentation/checkouts/next/src/Multiphase/Front_tracking_discontinu/VDF_VEF/Equations/Transport_Interfaces_FT_Disc.h
  • /home/docs/checkouts/readthedocs.org/user_builds/triocfd-documentation/checkouts/next/src/Multiphase/Front_tracking_discontinu/VDF_VEF/Equations/Transport_Interfaces_FT_Disc.cpp