TrioCFD 1.9.9_beta
TrioCFD documentation
Loading...
Searching...
No Matches
Champ_P1NC Class Reference

#include <Champ_P1NC.h>

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

Public Member Functions

int fixer_nb_valeurs_nodales (int nb_noeuds) override
void mettre_a_jour (double temps) override
 Performs a time update of the unknown field.
void abortTimeStep () override
void calcul_y_plus (const Domaine_Cl_VEF &, DoubleVect &) const
void calcul_y_plus_diphasique (const Domaine_Cl_VEF &, DoubleVect &) const
void calcul_grad_T (const Domaine_Cl_VEF &, DoubleTab &) const
void calcul_grad_U (const Domaine_Cl_VEF &, DoubleTab &) const
void calcul_h_conv (const Domaine_Cl_VEF &, DoubleTab &, int temp_ref) const
int compo_normale_sortante (int) const
DoubleTab & trace (const Frontiere_dis_base &, DoubleTab &, double, int distant) const override
 See Champ_base. Special case (unfortunately) of Champ_P0_VDF:
void cal_rot_ordre1 (DoubleTab &) const
void gradient (DoubleTab &) const
int imprime (Sortie &, int) const override
void calcul_critere_Q (DoubleVect &) const
virtual double norme_L2 (const Domaine &) const
Champ_baseaffecter_ (const Champ_base &) override
 Assignment of a generic OWN_PTR(Champ_base) (Champ_base) to an unknown field.
void verifie_valeurs_cl () override
virtual double norme_H1 (const Domaine &) const
virtual double norme_L2_H1 (const Domaine &dom) const
const Domaine_VEFdomaine_vef () const override
DoubleVect & valeur_a_elem (const DoubleVect &position, DoubleVect &val, int le_poly) const override
 Causes an error! Must be overridden by derived classes.
double valeur_a_elem_compo (const DoubleVect &position, int le_poly, int ncomp) const override
 Causes an error! Must be overridden by derived classes.
double valeur_a_sommet_compo (int num_som, int le_poly, int ncomp) const override
 Returns the compo-th coordinate of the values at the element le_poly at the vertex sommet.
DoubleTab & valeur_aux_centres_de_gravite (const Domaine &dom, DoubleTab &tab_valeurs) const override
 This method, generic but slow (calculation of gravity centers, filling les_poly, use of shape functions in the discretized field) can be overridden by the discretized field for a much faster implementation.
DoubleTab & valeur_aux_elems (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) const override
 Causes an error! Must be overridden by derived classes.
DoubleVect & valeur_aux_elems_compo (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &tab_valeurs, int ncomp) const override
 Causes an error! Must be overridden by derived classes.
DoubleTab & valeur_aux_elems_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) override
DoubleVect & valeur_aux_elems_compo_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &tab_valeurs, int ncomp) override
DoubleTab & valeur_aux_sommets (const Domaine &dom, DoubleTab &val) const override
 Returns the values at the vertices of the Domain dom.
DoubleVect & valeur_aux_sommets_compo (const Domaine &dom, DoubleVect &val, int comp) const override
 Returns the compo-th value at the vertices of dom.
DoubleTab & remplir_coord_noeuds (DoubleTab &positions) const override
int remplir_coord_noeuds_et_polys (DoubleTab &positions, IntVect &polys) const override
 DOES NOTHING. Method to override.
void filtrer_L2 (DoubleTab &x) const
void filtrer_H1 (DoubleTab &x) const
void filtrer_resu (DoubleTab &x) const
Public Member Functions inherited from Champ_Inc_base
 Champ_Inc_base ()
double changer_temps (const double temps) override
 Sets the time of the field.
int reprendre (Entree &) override
 Reads an unknown field from an input stream for a restart.
int sauvegarder (Sortie &) const override
 Saves the unknown field to an output stream.
Champ_baseaffecter_compo (const Champ_base &, int compo) override
 Assignment of a component of a generic OWN_PTR(Champ_base) (Champ_base) to a component of an unknown field.
void resetTime (double time) override
DoubleTab & valeurs () override
 Returns the array of field values at the current time.
const DoubleTab & valeurs () const override
DoubleVect & valeur_a (const DoubleVect &position, DoubleVect &valeurs) const override
 Computes the value of the unknown field at the specified position.
DoubleTab & valeur_aux (const DoubleTab &positions, DoubleTab &valeurs) const override
 Computes the values of the unknown field at the specified positions.
DoubleVect & valeur_aux_compo (const DoubleTab &positions, DoubleVect &valeurs, int ncomp) const override
 Computes the values of the unknown field at the specified positions, for a given component of the field.
int nb_valeurs_nodales () const override
 Returns the number of "real" geometric positions of the degrees of freedom, or -1 if not applicable (fields with multiple localisations).
virtual int fixer_nb_valeurs_temporelles (int)
 Sets the number of temporal values to keep.
virtual int nb_valeurs_temporelles () const
 Returns the number of temporal values currently kept.
double changer_temps_futur (double, int i=1)
 Sets the time of the i-th future field.
double changer_temps_passe (double, int i=1)
 Sets the time of the i-th past field.
double recuperer_temps_futur (int i=1) const
 Returns the time of the i-th future field.
double recuperer_temps_passe (int i=1) const
 Returns the time of the i-th past field.
DoubleTab & valeurs (double temps) override
 Returns the field values at time instant.
const DoubleTab & valeurs (double temps) const override
 Returns the field values at time instant.
 operator DoubleTab & ()=delete
 operator const DoubleTab & () const =delete
DoubleTab & futur (int i=1) override
 Returns field values at instant t+i.
const DoubleTab & futur (int i=1) const override
DoubleTab & passe (int i=1) override
 Returns field values at instant t-i.
const DoubleTab & passe (int i=1) const override
Champ_Inc_baseavancer (int i=1)
 Advances the current pointer by i time steps, in the list of kept temporal values.
Champ_Inc_basereculer (int i=1)
 Rewinds the current pointer by i time steps, in the list of kept temporal values.
int lire_donnees (Entree &)
 Reads the field values from an input stream.
int a_un_domaine_dis_base () const override
virtual void associer_eqn (const Equation_base &)
 Associates the field with the equation of which it represents an unknown.
virtual void associer_domaine_cl_dis (const Domaine_Cl_dis_base &)
void associer_domaine_dis_base (const Domaine_dis_base &) override
const Domaine_Cl_dis_basedomaine_Cl_dis () const
Domaine_Cl_dis_basedomaine_Cl_dis ()
const Domaine_dis_basedomaine_dis_base () const override
const Domaine_VFdomaine_vf () const
virtual int remplir_coord_noeuds_et_polys_compo (DoubleTab &, IntVect &, int) const
 Simple call to: Champ_Inc_base::remplir_coord_noeuds_et_polys(DoubleTab&,IntVect& poly).
virtual DoubleTab & remplir_coord_noeuds_compo (DoubleTab &, int) const
 Simple call to Champ_Inc_base::remplir_coord_noeuds(DoubleTab&).
virtual double integrale_espace (int ncomp) const
const Domaine & domaine () const
const tabs_t & derivees () const
tabs_t & derivees ()
DoubleTab & val_bord ()
void init_champ_calcule (const Objet_U &obj, fonc_calc_t fonc)
void reset_champ_calcule ()
void resize_val_bord ()
void set_val_bord_fluide_multiphase (const bool flag)
DoubleTab valeur_aux_bords () const override
 Returns the field value at the boundary faces.
virtual void creer_espace_distant (int dummy)
void set_via_ch_fonc_reprise ()
bool via_ch_fonc_reprise () const
void PDI_save_type (bool b)
virtual std::vector< YAML_datadata_a_sauvegarder () const
 for PDI IO: retrieve name, type and dimensions of the field to save/restore.
Nom get_PDI_dname () const
 for PDI IO: retrieve the name of the HDF5 dataset in which the field will be saved or be restored from
void set_PDI_dname (const Nom &name)
Public Member Functions inherited from Champ_base
 Champ_base ()
 Default constructor of a Champ_base.
double temps () const
 Returns the time of the field.
Champ_baseaffecter (const Champ_base &)
 Assign a field to another.
void affecter_erreur ()
virtual double valeur_a_compo (const DoubleVect &position, int ncomp) const
 Computes the point value of the component "compo" of the field at the point with coordinates pos.
virtual DoubleTab & valeur_aux_elems_passe (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) const
virtual DoubleVect & valeur_a_sommet (int, const Domaine &, DoubleVect &) const
 Time update.
virtual DoubleTab & eval_elem (DoubleTab &valeurs) const
virtual DoubleTab & valeur_aux_faces (DoubleTab &result) const
 Returns the field value at the faces.
virtual DoubleTab & valeur_aux_faces_post (DoubleTab &result) const
void calculer_valeurs_som_post (DoubleTab &valeurs, int nbsom, Nom &nom_post, const Domaine &dom) const
void calculer_valeurs_som_compo_post (DoubleTab &valeurs, int ncomp, int nbsom, Nom &nom_post, const Domaine &dom, int appliquer_cl=0) const
void calculer_valeurs_elem_post (DoubleTab &valeurs, int nbelem, Nom &nom_post, const Domaine &dom) const
void calculer_valeurs_elem_compo_post (DoubleTab &valeurs, int ncomp, int nbelem, Nom &nom_post, const Domaine &dom) const
void corriger_unite_nom_compo ()
 This method will set the units and the name of components, it is not actually const!!!
virtual int completer_post_champ (const Domaine &dom, const int axi, const Nom &loc_post, const Nom &le_nom_champ_post, Format_Post_base &format) const
virtual void completer (const Domaine_Cl_dis_base &zcl)
Public Member Functions inherited from Field_base
 Field_base ()
 Field_base (const Field_base &other)=default
void nommer (const Nom &) override
 Gives a name to the field.
const Nomle_nom () const override
 Returns the name of the field.
const Nomsget_synonyms () const
virtual void add_synonymous (const Nom &nom)
virtual int nb_comp () const
virtual void fixer_nb_comp (int i)
 Sets the number of components of the field.
virtual int nb_vect_comp () const
const Nomsnoms_compo () const
 Returns the array of names of the field components.
const Nomnom_compo (int) const
 Returns the name of the i-th component of the field.
const Nomnom_compo () const
 Returns the name of a scalar field.
virtual const Nomsfixer_noms_compo (const Noms &)
 Sets the names of the field components.
virtual const Nomfixer_nom_compo (int, const Nom &)
 Sets the name of the i-th component of the field.
virtual const Nomfixer_nom_compo (const Nom &)
 Sets the name of a scalar field.
const Nomsunites () const
 Returns the units of the field components.
const Nomunite () const
 Returns the unit of a scalar field whose all components have the same unit.
const Nomunite (int) const
 Returns the unit of the i-th component of the field.
virtual const Nomsfixer_unites (const Noms &)
 Specifies the units of the field components.
virtual const Nomfixer_unite (const Nom &)
 Specifies the unit of a scalar field or whose all components have the same unit.
virtual const Nomfixer_unite (int i, const Nom &)
 Specifies the unit of the i-th component of the field Meaning: the index of the field component whose unit we want to specify.
virtual Nature_du_champ nature_du_champ () const
virtual Nature_du_champ fixer_nature_du_champ (Nature_du_champ nat)
 Sets the nature of a field: scalar, multiscalar, vectorial.
bool is_basis_function () const
bool is_quadrature () const
bool is_vectorial () const
bool is_scalar () const
int order_field () const
 Returns the order of the basis functions.
Public Member Functions inherited from Objet_U
 ~Objet_U () override
 Destructor. Removes the object from the list of objects registered in "memory".
int numero () const
 Returns the index of the object in Memoire::data.
virtual int duplique () const =0
virtual SortieprintOn (Sortie &) const
 Writes the object to an output stream. Virtual method to override.
virtual EntreereadOn (Entree &)
 Reads an Objet_U from an input stream. Virtual method to override.
virtual unsigned taille_memoire () const =0
virtual int est_egal_a (const Objet_U &) const
 Returns 1 if x and *this are the same instance (same memory address).
int get_object_id () const
 Returns the unique identifier of the object (object_id_).
virtual const Type_infoget_info () const
 Returns type information for the Objet_U.
const Nomque_suis_je () const
 Returns the string identifying the class.
const char * le_type () const
 Returns the type name of the Objet_U.
virtual int change_num (const int *const)
 Changes the internal number of the Objet_U.
virtual int lire_motcle_non_standard (const Motcle &motlu, Entree &is)
 Reads non-simple-type parameters of an Objet_U from an input stream.
virtual int associer_ (Objet_U &)
 Associates the Objet_U with another Objet_U. Virtual method to override.
const Interpreteinterprete () const
Interpreteinterprete ()
Public Member Functions inherited from Process
virtual ~Process ()
Public Member Functions inherited from Champ_Proto
virtual ~Champ_Proto ()
int lire_dimension (Entree &, const Nom &)
 Verification of the field dimension Returns the dimension of the field.
int lire_dimension (int dim, const Nom &le_nom_)
 Verification of the field dimension Returns the dimension of the field.
double operator() (int i, int j) const =delete
double & operator() (int i, int j)=delete
double operator() (int i) const =delete
double & operator() (int i)=delete
Public Member Functions inherited from MorEqn
void associer_eqn (const Equation_base &)
 Associates an equation with the object.
virtual void calculer_pour_post (Champ_base &espace_stockage, const Nom &option, int comp) const
virtual Motcle get_localisation_pour_post (const Nom &option) const
const Equation_baseequation () const
 Returns the reference to the equation pointed to by MorEqn::mon_equation.
Equation_baseequation ()
 Returns the reference to the equation pointed to by MorEqn::mon_equation.
int mon_equation_non_nul () const
virtual void check_multiphase_compatibility () const
Public Member Functions inherited from Champ_P1NC_implementation
 Champ_P1NC_implementation ()
 ~Champ_P1NC_implementation () override
int fixer_nb_valeurs_nodales (int)
KOKKOS_INLINE_FUNCTION double fonction_forme_2D_v (double x, double y, int le_poly, int face, CIntTabView sommet_poly, CDoubleTabView coord) const
KOKKOS_INLINE_FUNCTION double fonction_forme_3D_v (double x, double y, double z, int le_poly, int face, CIntTabView sommet_poly, CDoubleTabView coord) const
double fonction_forme_2D (double x, double y, int le_poly, int face, const IntTab &sommet_poly, const DoubleTab &coord) const
double fonction_forme_3D (double x, double y, double z, int le_poly, int face, const IntTab &sommet_poly, const DoubleTab &coord) const
double coord_barycentrique (const IntTab &sommet_poly, const DoubleTab &coord, double x, double y, int le_poly, int face) const
double coord_barycentrique (const IntTab &sommet_poly, const DoubleTab &coord, double x, double y, double z, int le_poly, int face) const
DoubleVect & valeur_a_elem (const DoubleVect &position, DoubleVect &val, int le_poly) const override
double valeur_a_elem_compo (const DoubleVect &position, int le_poly, int ncomp) const override
DoubleTab & valeur_aux_centres_de_gravite (const Domaine &, DoubleTab &valeurs) const
 Computes values at the centers of gravity for a P1NC field.
DoubleTab & valeur_aux_elems (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &valeurs) const override
DoubleVect & valeur_aux_elems_compo (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &valeurs, int ncomp) const override
DoubleTab & valeur_aux_sommets (const Domaine &dom, DoubleTab &ch_som) const override
DoubleVect & valeur_aux_sommets_compo (const Domaine &dom, DoubleVect &ch_som, int ncomp) const override
double valeur_a_sommet_compo (int num_som, int le_poly, int ncomp) const
KOKKOS_INLINE_FUNCTION double valeur_a_sommet_compo (int num_som, int num_elem, int ncomp, CIntTabView elem_faces, CIntTabView sommet_elem, CDoubleTabView ch) const
DoubleTab & valeur_aux_elems_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &valeurs)
DoubleVect & valeur_aux_elems_compo_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &valeurs, int ncomp)
DoubleTab & remplir_coord_noeuds (DoubleTab &positions) const override
int remplir_coord_noeuds_et_polys (DoubleTab &positions, IntVect &polys) const override
int imprime_P1NC (Sortie &, int) const
void filtrer_L2 (DoubleTab &) const
void filtrer_H1 (DoubleTab &) const
void filtrer_resu (DoubleTab &) const
DoubleTab & ch_som ()
DoubleVect & ch_som_vect ()
const Matrice_Morse_Symget_MatP1NC2P1_L2 () const
const SolveurSysget_solveur_L2 () const
const Matrice_Morse_Symget_MatP1NC2P1_L2_H1 () const
const Matrice_Morse_Symget_MatP1NC2P1_H1 () const
const SolveurSysget_solveur_L2_H1 () const
const SolveurSysget_solveur_H1 () const
int nb_colonnes_tot ()
int nb_colonnes ()
void dimensionner_Mat_Bloc_Morse_Sym (Matrice &matrice_tmp)
void Mat_Morse_to_Mat_Bloc (Matrice &matrice_tmp)
Public Member Functions inherited from Champ_implementation
virtual ~Champ_implementation ()

Static Public Member Functions

static DoubleVect & calcul_S_barre (const DoubleTab &, DoubleVect &, const Domaine_Cl_VEF &)
static DoubleTab & calcul_gradient (const DoubleTab &, DoubleTab &, const Domaine_Cl_VEF &)
static DoubleTab & calcul_duidxj_paroi (DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const Domaine_Cl_VEF &)
static double calculer_integrale_volumique (const Domaine_VEF &, const DoubleVect &, Ok_Perio ok)
Static Public Member Functions inherited from Objet_U
static const Nomnom_du_cas ()
 Returns a constant reference to the case name. This method is static.
static Nomget_set_nom_du_cas ()
 Returns a non-constant reference to the case name (to allow modification). This method is static.
static const Type_infoinfo ()
 Returns type information for the Objet_U (static version).
static const Objet_Uself_cast (const Objet_U &)
 Method added for casting in Python.
static Objet_Uself_cast (Objet_U &)
Static Public Member Functions inherited from Process
static int me ()
 Returns the rank of the local processor in the current communication group. See Comm_Group::rank() and PE_Groups::current_group().
static int nproc ()
 Returns the number of processors in the current group. See Comm_Group::nproc() and PE_Groups::current_group().
static bool is_parallel ()
static void exit (int exit_code=-1)
 Exit routine for TRUST within a Kokkos region.
static double mp_sum (double)
 Computes the sum of x over all processors in the current group.
static float mp_sum (float)
static trustIdType mp_sum (trustIdType)
 Computes the sum of x over all processors in the current group.
static double mp_max (double)
static double mp_min (double)
static int mp_max (int)
 Returns the maximum value of x across all processors in the current group.
static int mp_min (int)
 Returns the minimum value of x across all processors in the current group.
static double mp_sum_as_double (int v)
static trustIdType mppartial_sum (trustIdType i)
 Computes the partial sum of x over processors 0 to me()-1 (returns 0 on processor 0).
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2)
 C++14 compatible mp_sum_for_each: combine multiple mp_sum calls into one collective operation Usage: mp_sum_for_each(a, b); mp_sum_for_each(a, b, c); mp_sum_for_each(a, b, c, d); mp_sum_for_each(a, b, c, d, e); All arguments must be of the same type (double or int) and are modified in place. Supports 2-5 parameters.
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2)
 C++14 compatible mp_max_for_each: combine multiple mp_max calls into one collective operation.
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2)
 C++14 compatible mp_min_for_each: combine multiple mp_min calls into one collective operation.
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename _TYPE_>
static void mp_sum_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
template<typename _TYPE_>
static void mp_max_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
template<typename _TYPE_>
static void mp_min_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
static bool mp_and (bool)
 Computes the logical AND of b across all processors in the current group.
static bool mp_or (bool)
static int check_int_overflow (trustIdType)
static int je_suis_maitre ()
 Returns 1 if on the master processor of the current group (i.e. me() == 0), 0 otherwise.
static KOKKOS_INLINE_FUNCTION void Kokkos_exit (const char *)
 Exit routine for TRUST within a Kokkos region.
static int node_master ()
 Returns 1 if on the NUMA node master processor, 0 otherwise.
static void exit (const Nom &message, int exit_code=-1)
static bool is_sequential ()
static void barrier ()
 Synchronizes all processors in the current group (waits until all processors have reached the barrier).
static void abort ()
 Abort routine for TRUST on a fatal error.
static SortieJournal (int message_level=0)
 Returns a static Sortie object used as an event journal.
static double ram_processeur ()
static void imprimer_ram_totale (int all_process=0)
static bool force_single_file (const int ranks, const Nom &filename)

Additional Inherited Members

Static Public Attributes inherited from Objet_U
static double precision_geom = 1e-10
static constexpr bool HAS_POINTER = false
static int dimension =0
static int format_precision_geom =11
static int axi =0
static int bidim_axi =0
static int DEACTIVATE_SIGINT_CATCH =0
static Type_info info_obj
static bool disable_TU =false
 Flag to disable or not the writing of the .TU files.
static bool stat_per_proc_perf_log =false
 Flag to enable the writing of the statistics detailed per processor in _csv.TU file.
Static Public Attributes inherited from Process
static int exception_sur_exit =0
static int multiple_files =5120
Protected Member Functions inherited from Champ_Inc_base
virtual void creer_tableau_distribue (const MD_Vector &, RESIZE_OPTIONS=RESIZE_OPTIONS::COPY_INIT)
 OBS_PTR (Domaine_Cl_dis_base) mon_dom_cl_dis
 OBS_PTR (Domaine_VF) le_dom_VF
Protected Member Functions inherited from Objet_U
 Objet_U ()
 Default constructor: assigns a unique identifier to the object (object_id_) and registers the object in "memory" by giving it a num_obj number.
 Objet_U (const Objet_U &)
 Copy constructor.
const Objet_Uoperator= (const Objet_U &)
 Assignment operator: does nothing (the number and identifier are preserved).
virtual void set_param (Param &) const
Protected Member Functions inherited from MorEqn
 OBS_PTR (Equation_base) mon_equation
virtual ~MorEqn ()
Protected Member Functions inherited from Champ_P1NC_implementation
DoubleTab & trace (const Frontiere_dis_base &fr, const DoubleTab &y, DoubleTab &x, int distant) const
Protected Member Functions inherited from Champ_implementation_divers
DoubleTab & valeur_aux_sommets_impl (DoubleTab &result) const override
DoubleVect & valeur_aux_sommets_compo_impl (DoubleVect &result, int ncomp) const override
Protected Member Functions inherited from Champ_implementation
const Domaine_VFget_domaine_dis () const
const Domaine & get_domaine_geom () const
Protected Attributes inherited from Champ_Inc_base
Roue_ptr les_valeurs
fonc_calc_t fonc_calc_
int fonc_calc_init_ = 0
RefObjU obj_calc_
DoubleTab val_bord_
tabs_t deriv_
bool bord_fluide_multiphase_ = false
bool via_ch_fonc_reprise_ = false
bool PDI_save_type_ = false
Nom PDI_dname_
Protected Attributes inherited from Champ_base
double temps_
Protected Attributes inherited from Field_base
Nom nom_
Noms noms_synonymes_
Noms noms_compo_
Noms unite_
int nb_compo_
Nature_du_champ nature_
Protected Attributes inherited from Champ_P1NC_implementation
Matrice_Morse_Sym MatP1NC2P1_L2
Matrice MatP1NC2P1_L2_Parallele
SolveurSys solveur_L2
Matrice_Morse_Sym MatP1NC2P1_H1
SolveurSys solveur_H1
DoubleTab ch_som_
DoubleVect ch_som_vect_
int filtrer_L2_deja_appele_
Matrice_Morse_Sym MatP1NC2P1_L2_H1
SolveurSys solveur_L2_H1

Detailed Description

Definition at line 34 of file Champ_P1NC.h.

Member Function Documentation

◆ abortTimeStep()

void Champ_P1NC::abortTimeStep ( )
overridevirtual

Reimplemented from Champ_base.

Definition at line 60 of file Champ_P1NC.cpp.

◆ affecter_()

Champ_base & Champ_P1NC::affecter_ ( const Champ_base & ch)
overridevirtual

Assignment of a generic OWN_PTR(Champ_base) (Champ_base) to an unknown field.

Parameters
(Champ_base&ch) the field on the right side of the assignment
Returns
(Champ_base&) the result of the assignment (*this)

Reimplemented from Champ_Inc_base.

Definition at line 413 of file Champ_P1NC.cpp.

◆ cal_rot_ordre1()

void Champ_P1NC::cal_rot_ordre1 ( DoubleTab & tab_vorticite) const

Definition at line 78 of file Champ_P1NC.cpp.

◆ calcul_critere_Q()

void Champ_P1NC::calcul_critere_Q ( DoubleVect & tab_Critere_Q) const

Definition at line 502 of file Champ_P1NC.cpp.

◆ calcul_duidxj_paroi()

DoubleTab & Champ_P1NC::calcul_duidxj_paroi ( DoubleTab & tab_gij,
const DoubleTab & tab_nu,
const DoubleTab & tab_nu_turb,
const DoubleTab & tab_tau_tan,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 920 of file Champ_P1NC.cpp.

◆ calcul_grad_T()

void Champ_P1NC::calcul_grad_T ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & grad_T ) const

Definition at line 683 of file Champ_P1NC.cpp.

◆ calcul_grad_U()

void Champ_P1NC::calcul_grad_U ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & tab_grad_u ) const

Definition at line 658 of file Champ_P1NC.cpp.

◆ calcul_gradient()

DoubleTab & Champ_P1NC::calcul_gradient ( const DoubleTab & champ,
DoubleTab & gij,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 912 of file Champ_P1NC.cpp.

◆ calcul_h_conv()

void Champ_P1NC::calcul_h_conv ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & h_conv,
int temp_ref ) const

Definition at line 730 of file Champ_P1NC.cpp.

◆ calcul_S_barre()

DoubleVect & Champ_P1NC::calcul_S_barre ( const DoubleTab & la_vitesse,
DoubleVect & SMA_barre,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 1049 of file Champ_P1NC.cpp.

◆ calcul_y_plus()

void Champ_P1NC::calcul_y_plus ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleVect & y_plus ) const

Definition at line 531 of file Champ_P1NC.cpp.

◆ calcul_y_plus_diphasique()

void Champ_P1NC::calcul_y_plus_diphasique ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleVect & y_plus ) const

Definition at line 18 of file Champ_P1NC_bis.cpp.

◆ calculer_integrale_volumique()

double Champ_P1NC::calculer_integrale_volumique ( const Domaine_VEF & domaine,
const DoubleVect & v,
Ok_Perio ok )
static

Definition at line 1079 of file Champ_P1NC.cpp.

◆ compo_normale_sortante()

int Champ_P1NC::compo_normale_sortante ( int num_face) const

Definition at line 65 of file Champ_P1NC.cpp.

◆ domaine_vef()

const Domaine_VEF & Champ_P1NC::domaine_vef ( ) const
inlineoverridevirtual

Implements Champ_P1NC_implementation.

Definition at line 66 of file Champ_P1NC.h.

◆ filtrer_H1()

void Champ_P1NC::filtrer_H1 ( DoubleTab & x) const
inline

Definition at line 132 of file Champ_P1NC.h.

◆ filtrer_L2()

void Champ_P1NC::filtrer_L2 ( DoubleTab & x) const
inline

Definition at line 127 of file Champ_P1NC.h.

◆ filtrer_resu()

void Champ_P1NC::filtrer_resu ( DoubleTab & x) const
inline

Definition at line 137 of file Champ_P1NC.h.

◆ fixer_nb_valeurs_nodales()

int Champ_P1NC::fixer_nb_valeurs_nodales ( int nb_noeuds)
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 1094 of file Champ_P1NC.cpp.

◆ gradient()

void Champ_P1NC::gradient ( DoubleTab & gradient_elem) const

Definition at line 399 of file Champ_P1NC.cpp.

◆ imprime()

int Champ_P1NC::imprime ( Sortie & os,
int ncomp ) const
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 407 of file Champ_P1NC.cpp.

◆ mettre_a_jour()

void Champ_P1NC::mettre_a_jour ( double un_temps)
overridevirtual

Performs a time update of the unknown field.

WEC : Now if we call it 2 times in a row with the same argument, the 2nd one does nothing.

Parameters
(doubletemps) the new time

Reimplemented from Champ_Inc_base.

Definition at line 52 of file Champ_P1NC.cpp.

◆ norme_H1()

double Champ_P1NC::norme_H1 ( const Domaine & dom) const
virtual

Definition at line 850 of file Champ_P1NC.cpp.

◆ norme_L2()

double Champ_P1NC::norme_L2 ( const Domaine & dom) const
virtual

Definition at line 838 of file Champ_P1NC.cpp.

◆ norme_L2_H1()

double Champ_P1NC::norme_L2_H1 ( const Domaine & dom) const
virtual

Definition at line 899 of file Champ_P1NC.cpp.

◆ remplir_coord_noeuds()

DoubleTab & Champ_P1NC::remplir_coord_noeuds ( DoubleTab & positions) const
inlineoverridevirtual

Implements Champ_Inc_base.

Definition at line 117 of file Champ_P1NC.h.

◆ remplir_coord_noeuds_et_polys()

int Champ_P1NC::remplir_coord_noeuds_et_polys ( DoubleTab & ,
IntVect &  ) const
inlineoverridevirtual

DOES NOTHING. Method to override.

Parameters
(DoubleTab&)
(IntVect&)
Returns
(int) always returns 0

Reimplemented from Champ_Inc_base.

Definition at line 122 of file Champ_P1NC.h.

◆ trace()

DoubleTab & Champ_P1NC::trace ( const Frontiere_dis_base & ,
DoubleTab & x,
double tps,
int distant ) const
overridevirtual

See Champ_base. Special case (unfortunately) of Champ_P0_VDF:

If the boundary is a connector, the result is computed on the associated connector. In this case, the DoubleTab x must be dimensioned on the associated connector.

Reimplemented from Champ_Inc_base.

Definition at line 73 of file Champ_P1NC.cpp.

◆ valeur_a_elem()

DoubleVect & Champ_P1NC::valeur_a_elem ( const DoubleVect & position,
DoubleVect & les_valeurs,
int le_poly ) const
inlineoverridevirtual

Causes an error! Must be overridden by derived classes.

Not pure virtual for convenience of development! Returns the value of the field at the point specified by its coordinates, indicating that this point is located in a specified element.

Parameters
(DoubleVect&)the coordinates of the calculation point
(DoubleVect&les_valeurs) the value of the field at the specified point
(int)the element in which the calculation point is located
Returns
(DoubleVect&) the value of the field at the specified point

Reimplemented from Champ_base.

Definition at line 67 of file Champ_P1NC.h.

◆ valeur_a_elem_compo()

double Champ_P1NC::valeur_a_elem_compo ( const DoubleVect & position,
int le_poly,
int ncomp ) const
inlineoverridevirtual

Causes an error! Must be overridden by derived classes.

Not pure virtual for convenience of development!

Reimplemented from Champ_base.

Definition at line 72 of file Champ_P1NC.h.

◆ valeur_a_sommet_compo()

double Champ_P1NC::valeur_a_sommet_compo ( int sommet,
int le_poly,
int compo ) const
inlineoverridevirtual

Returns the compo-th coordinate of the values at the element le_poly at the vertex sommet.

Reimplemented from Champ_base.

Definition at line 77 of file Champ_P1NC.h.

◆ valeur_aux_centres_de_gravite()

DoubleTab & Champ_P1NC::valeur_aux_centres_de_gravite ( const Domaine & dom,
DoubleTab & valeurs ) const
inlineoverridevirtual

This method, generic but slow (calculation of gravity centers, filling les_poly, use of shape functions in the discretized field) can be overridden by the discretized field for a much faster implementation.

Reimplemented from Champ_base.

Definition at line 82 of file Champ_P1NC.h.

◆ valeur_aux_elems()

DoubleTab & Champ_P1NC::valeur_aux_elems ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleTab & les_valeurs ) const
inlineoverridevirtual

Causes an error! Must be overridden by derived classes.

Not pure virtual for convenience of development! Returns the values of the field at the specified points by their coordinates, indicating that the calculation points are located in the specified elements.

Parameters
(DoubleTab&)the array of coordinates of the calculation points
(IntVect&)the array of elements in which the calculation points are located
(DoubleTab&les_valeurs) the array of field values at the specified points
Returns
(DoubleTab&) the array of field values at the specified points

Reimplemented from Champ_base.

Definition at line 87 of file Champ_P1NC.h.

◆ valeur_aux_elems_compo()

DoubleVect & Champ_P1NC::valeur_aux_elems_compo ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleVect & les_valeurs,
int ncomp ) const
inlineoverridevirtual

Causes an error! Must be overridden by derived classes.

Not pure virtual for convenience of development! Returns the values of a component of the field at the specified points by their coordinates, indicating that the calculation points are located in the specified elements.

Parameters
(DoubleTab&)the array of coordinates of the calculation points
(IntVect&)the array of elements in which the calculation points are located
(DoubleVect&les_valeurs) the array of values of the component of the field at the specified points
(int)the index of the component of the field to calculate
Returns
(DoubleVect&) the array of values of the component of the field at the specified points

Reimplemented from Champ_base.

Definition at line 92 of file Champ_P1NC.h.

◆ valeur_aux_elems_compo_smooth()

DoubleVect & Champ_P1NC::valeur_aux_elems_compo_smooth ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleVect & tab_valeurs,
int ncomp )
inlineoverridevirtual

Reimplemented from Champ_base.

Definition at line 102 of file Champ_P1NC.h.

◆ valeur_aux_elems_smooth()

DoubleTab & Champ_P1NC::valeur_aux_elems_smooth ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleTab & tab_valeurs )
inlineoverridevirtual

Reimplemented from Champ_base.

Definition at line 97 of file Champ_P1NC.h.

◆ valeur_aux_sommets()

DoubleTab & Champ_P1NC::valeur_aux_sommets ( const Domaine & dom,
DoubleTab & val ) const
inlineoverridevirtual

Returns the values at the vertices of the Domain dom.

Reimplemented from Champ_base.

Definition at line 107 of file Champ_P1NC.h.

◆ valeur_aux_sommets_compo()

DoubleVect & Champ_P1NC::valeur_aux_sommets_compo ( const Domaine & dom,
DoubleVect & val,
int compo ) const
inlineoverridevirtual

Returns the compo-th value at the vertices of dom.

Reimplemented from Champ_base.

Definition at line 112 of file Champ_P1NC.h.

◆ verifie_valeurs_cl()

void Champ_P1NC::verifie_valeurs_cl ( )
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 464 of file Champ_P1NC.cpp.


The documentation for this class was generated from the following files: