16#ifndef ComputeValParCompoInCell_included
17#define ComputeValParCompoInCell_included
19#include <Connectivite_frontieres.h>
20#include <FixedVector.h>
22#include <Linear_algebra_tools_impl.h>
23#include <Maillage_FT_IJK.h>
24#include <Parcours_interface.h>
26#include <Linear_algebra_tools_impl.h>
27#include <SurfaceVapeurIJKComputation.h>
36 ref_domaine_ = splitting;
37 mesh_ = &maillage_ft_ijk;
43 IJK_Field_int& nb_compo_trav,
53 const ArrOfDouble& val_on_sommet,
57 const ArrOfDouble& val_on_sommet,
64 const ArrOfDouble& val_on_fa7,
81 IJK_Field_int& nb_compo_traversante,
91 ArrOfInt& liste_composantes_connexes_dans_element)
const;
void initialize(const Domaine_IJK &splitting, const Maillage_FT_IJK &maillage_ft_ijk)
~ComputeValParCompoInCell()
ComputeValParCompoInCell()
void calculer_moyennes_interface_element_pour_compo(const int num_compo, const int elem, double &surface, Vecteur3 &normale, Vecteur3 &bary) const
void calculer_moy_field_fa7_par_compo(const ArrOfDouble &val_on_fa7, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &field_par_compo) const
void calculer_valeur_par_compo(const double time, const int itstep, IJK_Field_int &nb_compo_trav, FixedVector< IJK_Field_int, max_authorized_nb_of_components_ > &compos_trav, FixedVector< IJK_Field_double, 3 *max_authorized_nb_of_components_ > &normale_par_compo, FixedVector< IJK_Field_double, 3 *max_authorized_nb_of_components_ > &bary_par_compo, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &indicatrice_par_compo, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &surface_par_compo, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &courbure_par_compo)
OBS_PTR(Domaine_IJK) ref_domaine_
int compute_list_compo_connex_in_element(const int elem, ArrOfInt &liste_composantes_connexes_dans_element) const
int calculer_indic_elem_pour_compo(const int icompo, const int elem, double &indic) const
void calculer_moy_par_compo(IJK_Field_int &nb_compo_traversante, FixedVector< IJK_Field_int, max_authorized_nb_of_components_ > &compos_traversantes, FixedVector< IJK_Field_double, 3 *max_authorized_nb_of_components_ > &normale_par_compo, FixedVector< IJK_Field_double, 3 *max_authorized_nb_of_components_ > &bary_par_compo, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &indic_par_compo, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &surface_par_compo) const
void calculer_somme_field_sommet_par_compo(const ArrOfDouble &val_on_sommet, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &field_par_compo) const
const Maillage_FT_IJK * mesh_
void calculer_moy_field_sommet_par_compo(const ArrOfDouble &val_on_sommet, FixedVector< IJK_Field_double, max_authorized_nb_of_components_ > &field_par_compo) const
This class encapsulates all the information related to the eulerian mesh for TrioIJK.