16#ifndef IJK_switch_included
17#define IJK_switch_included
19#include <Domaine_IJK.h>
20#include <IJK_Field_vector.h>
21#include <Interprete.h>
22#include <Linear_algebra_tools.h>
24#include <Interprete_bloc.h>
27#include <IJK_Lata_writer.h>
28#include <IJK_Navier_Stokes_tools.h>
29#include <communications.h>
30#include <LecFicDiffuse_JDD.h>
57 DoubleTab& coeff_j, IntTab Indice_j,
58 DoubleTab& coeff_k, IntTab Indice_k) = 0;
60 DoubleTab& coeff_i, IntTab Indice_i,
61 DoubleTab& coeff_j, IntTab Indice_j,
62 DoubleTab& coeff_k, IntTab Indice_k) = 0;
74 DoubleTab& coeff_j,IntTab& Indice_j ,
75 DoubleTab& coeff_k,IntTab& Indice_k ) ;
76 void switch_vit(DoubleTab coeff_i, IntTab Indice_i,
77 DoubleTab coeff_j ,IntTab Indice_j,
78 DoubleTab coeff_k ,IntTab Indice_k,
81 DoubleTab coeff_i, IntTab Indice_i,
82 DoubleTab coeff_j ,IntTab Indice_j,
83 DoubleTab coeff_k ,IntTab Indice_k)
const;
85 const IJK_Field_double& fld,
86 DoubleTab coeff_i, IntTab Indice_i,
87 DoubleTab coeff_j ,IntTab Indice_j,
88 DoubleTab coeff_k ,IntTab Indice_k);
This class encapsulates all the information related to the eulerian mesh for TrioIJK.
Localisation
Localisation sub class.
Base class for "interpreter" objects.
A character string (Nom) in uppercase.
class Nom: a character string for naming TRUST objects.
Helper class to factorize the readOn method of Objet_U classes.
SFichier is to the C++ ofstream class what Sortie is to the C++ ostream class.
virtual void ecrire_fichier_reprise(const char *fichier_sauvegarde, const bool and_lata=true)=0
int lire_motcle_non_standard(const Motcle &mot, Entree &is) override
Reads non-simple-type parameters of an Objet_U from an input stream.
void calculer_coeff(DoubleTab &coeff_i, IntTab &Indice_i, DoubleTab &coeff_j, IntTab &Indice_j, DoubleTab &coeff_k, IntTab &Indice_k)
virtual void set_param_reprise(Param ¶m)
virtual void compute_and_write_extra_fields(const Nom &lata_name, DoubleTab &coeff_i, IntTab Indice_i, DoubleTab &coeff_j, IntTab Indice_j, DoubleTab &coeff_k, IntTab Indice_k)=0
void switch_vit_direct(SFichier &binary_file)
void switch_vit(DoubleTab coeff_i, IntTab Indice_i, DoubleTab coeff_j, IntTab Indice_j, DoubleTab coeff_k, IntTab Indice_k, const int dir)
virtual void ecrire_header_lata(const Nom lata_name)
void calculer_coords_Vi(const int dir)
ArrOfDouble_with_ghost new_x_
virtual void initialise()
double terme_source_acceleration_
ArrOfDouble_with_ghost old_z_
virtual void lire_fichier_reprise(const char *fichier_reprise)
IJK_Field_vector3_double new_velocity_
virtual void prepare_run()
double terme_source_acceleration_z_
int timestep_reprise_vitesse_
ArrOfDouble_with_ghost old_x_
IJK_Field_vector3_double old_velocity_
void calculer_coords_elem()
virtual void init_thermals()
Entree & interpreter(Entree &) override
void switch_scalar_field_direct(SFichier &binary_file, const IJK_Field_double &fld, DoubleTab coeff_i, IntTab Indice_i, DoubleTab coeff_j, IntTab Indice_j, DoubleTab coeff_k, IntTab Indice_k)
IJK_Field_double new_rho_
IJK_Field_double old_rho_
virtual void set_param(Param ¶m) const override
virtual void compute_and_write_extra_fields_direct(SFichier &file, DoubleTab &coeff_i, IntTab Indice_i, DoubleTab &coeff_j, IntTab Indice_j, DoubleTab &coeff_k, IntTab Indice_k)=0
virtual void allocate_fields(double &sz_arr)
void write_velocity(const Nom lata_name) const
ArrOfDouble_with_ghost old_y_
void switch_scalar_field(const IJK_Field_double &oldf, IJK_Field_double &newf, DoubleTab coeff_i, IntTab Indice_i, DoubleTab coeff_j, IntTab Indice_j, DoubleTab coeff_k, IntTab Indice_k) const
ArrOfDouble_with_ghost new_z_
virtual void prepare_thermals(const Nom lata_name)
void calculer_coords(const Domaine_IJK::Localisation loc)
ArrOfDouble_with_ghost new_y_