16#ifndef IJK_Field_template_included
17#define IJK_Field_template_included
19#include <IJK_Shear_Periodic_helpler.h>
20#include <communications.h>
21#include <Domaine_IJK.h>
36template<
typename _TYPE_,
typename _TYPE_ARRAY_>
58 void allocate(
const Domaine_IJK& d,
Domaine_IJK::Localisation l,
int ghost_size,
int additional_k_layers=0,
int nb_compo=1,
const Nom& name=
Nom(),
bool external_storage =
false,
int monofluide=0,
double rov=0.,
double rol=0.,
int use_inv_rho_in_pressure_solver=0);
90 int is,
int js,
int ks,
92 int ir,
int jr,
int kr,
93 int isz,
int jsz,
int ksz,
94 double offset_i = 0.,
double jump_i=0.,
int nb_ghost=0);
97#include <IJK_Field_template.tpp>
This class encapsulates all the information related to the eulerian mesh for TrioIJK.
Localisation
Localisation sub class.
Class defining operators and methods for all reading operation in an input flow (file,...
IJK_Field_local_template()
IJK_Shear_Periodic_helpler shear_BC_helpler_
static int alloc_counter_
void ajouter_second_membre_shear_perio(IJK_Field_double &resu)
void allocate(const Domaine_IJK &d, Domaine_IJK::Localisation l, int ghost_size, int additional_k_layers=0, int nb_compo=1, const Nom &name=Nom(), bool external_storage=false, int monofluide=0, double rov=0., double rol=0., int use_inv_rho_in_pressure_solver=0)
void echange_espace_virtuel(int ghost)
Exchange data over "ghost" number of cells.
Domaine_IJK::Localisation get_localisation() const
Entree & readOn(Entree &is) override
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
void allocate(const Domaine_IJK &d, Domaine_IJK::Localisation l, int ghost_size, const Nom &name)
Domaine_IJK::Localisation localisation_
static int alloc_counter()
IJK_Shear_Periodic_helpler & get_shear_BC_helpler()
unsigned taille_memoire() const override
static void increase_alloc_counter(int i=1)
OBS_PTR(Domaine_IJK) domaine_ref_
void interpolation_for_shear_periodicity_I_sig_kappa(const int send_j, const int send_k_zmin, const int send_k_zmax, _TYPE_ &Isigkappazmin, _TYPE_ &Isigkappazmax)
void redistribute_with_shear_domain_ft(const IJK_Field_double &input, double DU_perio, const int ft_extension)
void exchange_data(int pe_imin_, int is, int js, int ks, int pe_imax_, int ir, int jr, int kr, int isz, int jsz, int ksz, double offset_i=0., double jump_i=0., int nb_ghost=0)
_TYPE_ interpolation_for_shear_periodicity_IJK_Field(const int send_j, const int send_k)
virtual void dumplata_scalar(const char *filename, int step) const
const Domaine_IJK & get_domaine() const
int duplique() const override
const IJK_Shear_Periodic_helpler & get_shear_BC_helpler() const
Sortie & printOn(Sortie &os) const override
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
class Nom Une chaine de caractere pour nommer les objets de TRUST
int numero() const
Renvoie l'indice de l'objet dans Memoire::data.
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Classe de base des flux de sortie.