16#ifndef IJK_Thermal_base_included
17#define IJK_Thermal_base_included
20#include <IJK_Field_vector.h>
22#include <Boundary_Conditions_Thermique.h>
23#include <Domaine_IJK.h>
25#include <IJK_Lata_writer.h>
26#include <Operateur_IJK_elem_conv.h>
27#include <Operateur_IJK_elem_diff.h>
28#include <OpGradCentre2IJKScalar.h>
29#include <OpHessCentre2IJKScalar.h>
30#include <OpGradQuickIJKScalar.h>
31#include <Ouvrir_fichier.h>
32#include <Corrige_flux_FT_base.h>
34#include <IJK_Ghost_Fluid_Fields.h>
35#include <IJK_One_Dimensional_Subproblems_Interfaces_Fields.h>
36#include <Fluide_Diphasique_IJK.h>
84 void retrieve_ghost_fluid_params(
int& compute_distance,
int& compute_curvature,
int& n_iter_distance,
int& avoid_gfm_parallel_calls);
85 void get_boundary_fluxes(IJK_Field_local_double& boundary_flux_kmin, IJK_Field_local_double& boundary_flux_kmax);
88 const double total_timestep,
94 const double fractionnal_timestep,
const double time) { };
102 const double lambda_de_t_paroi,
103 const double T_paroi_impose,
104 IJK_Field_local_double& flux_bord,
105 const bool bord_kmax);
107 const double flux_paroi_impose,
108 IJK_Field_local_double& flux_bord,
109 const bool bord_kmax);
413 int& fill_rising_velocities,
414 int& use_bubbles_velocities_from_interface,
415 int& use_bubbles_velocities_from_barycentres);
417 virtual double get_rho_cp_u_ijk(
const IJK_Field_double& vx,
int i,
int j,
int k)
const;
436 ArrOfDouble& interfacial_temperature,
437 ArrOfDouble& flux_normal_interp);
450 const Nom& shell_quantities_thermal_probes,
451 const Nom& overall_bubbles_quantities,
452 const Nom& local_quantities_thermal_probes_time_index_folder) { }
458 const char *lata_name,
469 void post_process_std_thermal_field(
const Motcles& liste_post_instantanes,
const char *lata_name,
const int latastep,
const double current_time,
const int idx,
const Motcles& tested_names,
const Nom& name_field,
const Motcle& lata_suffix,
const IJK_Field_double& field, std::ostringstream& oss,
int& counter,
const int& first_thermal_rank = 0);
482 void thermal_subresolution_outputs(
const Nom& interfacial_quantities_thermal_probes,
const Nom& shell_quantities_thermal_probes,
const Nom& overall_bubbles_quantities,
const Nom& local_quantities_thermal_probes_time_index_folder,
const Nom& local_quantities_thermal_slices_time_index_folder,
const Nom& local_quantities_thermal_lines_time_index_folder);
503 void calculer_dT(
const IJK_Field_vector3_double& velocity);
549 IJK_Field_vector3_double& grad_T);
568 const IJK_Interfaces& interfaces,
double nb_diam,
int upstream_dir,
569 int gravity_dir,
int upstream_stencil);
639 double kl_ = -100000000000000.;
640 double kv_ = -200000000000000.;
: class Boundary_Conditions_Thermique
classe Champ_base Cette classe est la base de la hierarchie des champs.
Similar to Champs_compris_interface but for IJK scalar and vector fields.
std::tuple< Motcle, Entity, Nature_du_champ, bool > FieldInfo_t
Same as Champs_compris, but specialised for IJK fields and also supports quering for vectorial fields...
const Noms liste_noms_compris() const
: class Corrige_flux_FT API pour modifier un champ de flux à partir de donnees à l'interface....
This class encapsulates all the information related to the eulerian mesh for TrioIJK.
Class defining operators and methods for all reading operation in an input flow (file,...
Operateur_IJK_elem_conv rho_cp_convection_op_
virtual void set_thermal_subresolution_outputs(const Nom &interfacial_quantities_thermal_probes, const Nom &shell_quantities_thermal_probes, const Nom &overall_bubbles_quantities, const Nom &local_quantities_thermal_probes_time_index_folder)
virtual void compute_ghost_cell_numbers_for_subproblems(const Domaine_IJK &splitting, int ghost_init)
const IJK_Field_vector3_double & get_gradient_temperature_elem() const
const IJK_Field_vector3_double & get_tangential_gradient_temperature_elem_smooth() const
const IJK_Field_vector3_double & get_hessian_diag_temperature_elem() const
bool has_champ(const Motcle &nom, OBS_PTR(Champ_base)&ref_champ) const
virtual void echange_pure_vers_diph_cellules_initialement_pures()
virtual const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_convective_frame_of_ref() const
void set_fichier_reprise(const char *lataname)
virtual double compute_global_energy()
virtual const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_diffusive() const
IJK_Field_vector3_double div_coeff_grad_T_raw_
virtual void calculer_ecart_T_ana()
const int & get_latastep_reprise() const
int posttraiter_champs_instantanes_thermal(const Motcles &liste_post_instantanes, const char *lata_name, const int latastep, const double current_time, const int idx)
IJK_Field_double dummy_double_field_
const IJK_Field_double * eulerian_rising_velocities_
const IJK_Field_vector3_double & get_normal_vector_ft() const
const IJK_Field_double & get_grad_T_interface_ns() const
OpHessFluxCentre2IJKScalar_double temperature_hess_flux_op_centre_
static void typer_lire_thermal_equation(OWN_PTR(IJK_Thermal_base)&, Entree &)
virtual const IJK_Field_double & get_neighbours_temperature_colinearity_weighting() const
void compute_eulerian_curvature()
const IJK_Field_double * eulerian_interfacial_area_ns_
const DoubleTab * bubbles_barycentres_old_
int posttraiter_champs_instantanes_thermal_interface_ref(const Motcles &liste_post_instantanes, const char *lata_name, const int latastep, const double current_time, const int idx)
bool gfm_vapour_liquid_vapour_
void add_temperature_source()
const Noms noms_compris() const
const IJK_Field_int * eulerian_compo_connex_from_interface_ghost_int_ns_
bool store_flux_operators_for_energy_balance_
const IJK_Field_double * eulerian_curvature_ns_
virtual void correct_temperature_for_eulerian_fluxes()=0
const IJK_Field_double & get_eulerian_compo_connex_ft() const
const IJK_Field_double * eulerian_compo_connex_from_interface_ns_
const Motcles & get_thermal_suffix() const
void compute_mixed_cells_number(const IJK_Field_double &indicator)
const IJK_Field_int * eulerian_compo_connex_from_interface_int_ns_
std::shared_ptr< IJK_Field_double > div_coeff_grad_T_volume_
void calculer_Nusselt(const IJK_Field_double &vx)
IJK_Field_vector3_double grad_T_elem_smooth_
IJK_Field_double d_source_Tv_
void compute_eulerian_bounding_box_fill_compo()
virtual const IJK_Field_vector3_double & get_interfacial_heat_flux_dispatched() const
int type_temperature_convection_form_
virtual double get_rho_cp_u_ijk(const IJK_Field_double &vx, int i, int j, int k) const
virtual void initialize_switch(const Domaine_IJK &splitting, const int idx)
Nom thermal_problem_type_
const DoubleTab * bounding_box_
virtual const IJK_Field_vector3_double & get_cell_faces_corrected_diffusive() const
const IJK_Field_vector3_double & get_gradient_temperature_elem_smooth() const
virtual const IJK_Field_double & get_debug_lrs_cells() const
const Vecteur3 * liquid_velocity_
virtual void rk3_sub_step(const int rk_step, const double total_timestep, const double time)
const IJK_Field_double & get_eulerian_compo_connex_ghost_ns() const
const IJK_Field_double & get_temperature_adim_theta() const
int compute_grad_T_interface_
bool use_bubbles_velocities_from_barycentres_
const DoubleTab * min_max_larger_box_
bool gfm_recompute_field_ini_
virtual void compute_convective_fluxes_face_centre()
const DoubleTab * bubbles_barycentres_new_
virtual void compute_diffusion_increment()=0
bool use_bubbles_velocities_from_interface_
Champs_compris_IJK champs_compris_
virtual const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_velocity_temperature() const
Operateur_IJK_elem_conv temperature_convection_op_
int fill_rising_velocities_
const IJK_Field_double & get_eulerian_compo_connex_ns() const
const IJK_Field_double & get_ecart_t_ana() const
virtual bool get_conserv_energy_global()
const IJK_Field_double * eulerian_compo_connex_from_interface_ghost_ns_
IJK_Field_double temperature_ft_
virtual const IJK_Field_int & get_cell_neighbours_corrected() const
const IJK_Field_double & get_eulerian_compo_connex_ghost_ft() const
virtual void compute_diffusive_fluxes_face_centre()
void compute_temperature_diffusive_fluxes()
IJK_Field_vector3_double hess_diag_T_elem_
IJK_Field_double u_T_convective_volume_
void propagate_eulerian_grad_T_interface()
const IJK_Field_double & get_IJK_field(const Motcle &nom) override
IJK_Field_int dummy_int_field_
void associer_interface_intersections(const Intersection_Interface_ijk_cell &intersection_ijk_cell, const Intersection_Interface_ijk_face &intersection_ijk_face)
virtual const IJK_Field_vector3_double & get_cell_faces_corrected_convective() const
void associer_post(const Postprocessing_IJK &ijk_ft_post)
Operateur_IJK_elem_conv temperature_convection_op_uncorrected_
IJK_Field_vector3_double grad_T_
virtual void compute_convective_diffusive_fluxes_face_centre()
void calculer_temperature_physique_T(const IJK_Field_double &vx, const double dTm)
const IJK_Field_double * eulerian_distance_ns_
virtual void correct_temperature_for_visu()
virtual const IJK_Field_double & get_temperature_cell_neighbours_debug() const
virtual void compute_temperature_init()
int gfm_vapour_mixed_only_
void set_fichier_sauvegarde(const char *lataname)
Operateur_IJK_elem_diff temperature_diffusion_op_
void compute_temperature_hessian_diag_elem()
virtual const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_min_max_bool() const
Nom get_field_name_with_rank(Nom basename) const
const IJK_Field_double & get_grad_T_interface_ft() const
OBS_PTR(Intersection_Interface_ijk_face) ref_intersection_ijk_face_
virtual void update_thermal_properties()
void retrieve_ghost_fluid_params(int &compute_distance, int &compute_curvature, int &n_iter_distance, int &avoid_gfm_parallel_calls)
virtual void post_process_thermal_downstream_lines(const Nom &local_quantities_thermal_lines_time_index_folder)
int rank_reprise_temperature_
Nom expression_source_temperature_
const IJK_Field_vector3_double & get_gradient_temperature() const
const IJK_Field_double * eulerian_compo_connex_from_interface_ft_
virtual void clip_temperature_values()
double compute_variable_wall_temperature(const int kmin, const int kmax)
int posttraiter_champs_instantanes_thermal_interface(const Motcles &liste_post_instantanes, const char *lata_name, const int latastep, const double current_time, const int idx)
const IJK_Field_double * eulerian_compo_connex_ft_
int compute_hess_diag_T_elem_
OBS_PTR(Postprocessing_IJK) ref_ijk_ft_post_
OWN_PTR(Corrige_flux_FT_base) corrige_flux_
IJK_Field_double u_T_convective_
const IJK_Field_double & get_interfacial_area_ns() const
virtual void store_temperature_before_extrapolation()
virtual void compute_temperature_cell_centres(const int first_corr)
const IJK_Field_double & get_eulerian_curvature_ns() const
virtual void echange_diph_vers_pure_cellules_finalement_pures()
IJK_Field_double rho_cp_T_
OBS_PTR(Intersection_Interface_ijk_cell) ref_intersection_ijk_cell_
IJK_Field_double div_rho_cp_T_
virtual double get_div_lambda_ijk(int i, int j, int k) const
void ecrire_statistiques_bulles(int reset, const Nom &nom_cas, const double current_time, const ArrOfDouble &surface, const int idx)
const DoubleTab * rising_vectors_from_barycentres_
void get_noms_champs_postraitables(Noms &noms, Option opt=NONE) const
virtual void vide_phase_invalide_cellules_diphasiques()
const IJK_Field_vector3_double * eulerian_facets_barycentre_ft_
IJK_Field_vector3_double grad_T_elem_tangential_
const IJK_Field_double & get_u_T_convective() const
const IJK_Field_double * eulerian_compo_connex_ghost_ns_
double gaussian_smoothing_factors_[3][3][3]
const IJK_Field_double * eulerian_compo_connex_ghost_ft_
Motcles liste_post_instantanes_
bool avoid_gfm_parallel_calls_
void copy_previous_interface_state()
virtual void post_process_thermal_wake_slices(const Nom &local_quantities_thermal_slices_time_index_folder)
virtual const IJK_Field_vector3_double & get_neighbours_faces_weighting_colinearity() const
virtual const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_convective() const
const double & get_E0() const
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ghost_ft() const
IJK_Field_double d_source_Tl_
IJK_Field_double source_temperature_v_
double sharpen_smoothing_factors_[3][3][3]
virtual void compute_thermal_subproblems()
IJK_Field_double temperature_ana_
const int & get_ghost_cells() const
OpGradFluxQuickIJKScalar_double temperature_grad_flux_op_quick_
std::shared_ptr< IJK_Field_double > RK3_F_temperature_
IJK_Field_double & get_temperature_ft()
virtual const IJK_Field_vector3_double & get_interfacial_heat_flux_current() const
const IJK_Field_vector3_double * eulerian_facets_barycentre_ns_
virtual void initialize(const Domaine_IJK &splitting)
virtual void clean_thermal_subproblems()
bool compute_eulerian_compo_
void compute_eulerian_curvature_from_interface()
friend class IJK_One_Dimensional_Subproblem
void calculer_temperature_adim_bulles()
virtual const IJK_Field_double & get_probe_collision_debug_field() const
const IJK_Field_double & get_eulerian_rising_velocities() const
const int & get_latastep_reprise_ini() const
const IJK_Field_vector3_double * eulerian_normal_vectors_ns_normed_
bool gfm_zero_neighbour_value_mean_
IJK_Field_local_double boundary_flux_kmax_
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ft() const
virtual int get_first_step_thermals_post()
IJK_Field_local_double boundary_flux_kmin_
const IJK_Field_vector3_double & get_normal_vector_ns() const
void associer_milieu_base(const Milieu_base &, const int &idth)
double compute_timestep(const double timestep, const double dxmin)
const IJK_Field_double & get_ecart_t_ana_rel() const
virtual const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_all_bool() const
void thermal_subresolution_outputs(const Nom &interfacial_quantities_thermal_probes, const Nom &shell_quantities_thermal_probes, const Nom &overall_bubbles_quantities, const Nom &local_quantities_thermal_probes_time_index_folder, const Nom &local_quantities_thermal_slices_time_index_folder, const Nom &local_quantities_thermal_lines_time_index_folder)
virtual void enforce_periodic_temperature_boundary_value()
OBS_PTR(Milieu_base) le_fluide_
IJK_Field_double ecart_source_t_ana_
const IJK_Field_double * eulerian_interfacial_area_ft_
const IJK_Field_int & get_eulerian_compo_connex_int_from_interface_ns() const
const IJK_Field_double & get_div_lambda_grad_T() const
virtual void compute_temperature_convection_conservative(const IJK_Field_vector3_double &velocity)
virtual void clean_ijk_intersections()
const IJK_Field_double & get_temperature_ana() const
const IJK_Field_vector3_double * eulerian_normal_vectors_ft_
void calculer_source_temperature_ana()
virtual void prepare_ij_fluxes_k_layers()
virtual void compute_interfacial_temperature2(ArrOfDouble &interfacial_temperature, ArrOfDouble &flux_normal_interp)
IJK_Field_vector3_double grad_T_elem_
void compute_temperature_gradient_elem()
virtual const IJK_Field_vector3_double & get_interfacial_heat_flux_contrib() const
const IJK_Field_int & get_eulerian_compo_connex_int_from_interface_ghost_ns() const
void calculer_temperature_adimensionnelle_theta(const IJK_Field_double &vx, const double qw)
const Fluide_Diphasique_IJK & milieu_ijk() const
virtual void set_param(Param ¶m) const override
void calculer_dT(const IJK_Field_vector3_double &velocity)
void compute_eulerian_distance()
const Champs_compris_IJK & champs_compris() const
IJK_Field_vector3_int dummy_int_vect_
int latastep_reprise_ini_
virtual void set_field_T_ana()
void post_process_std_thermal_field(const Motcles &liste_post_instantanes, const char *lata_name, const int latastep, const double current_time, const int idx, const Motcles &tested_names, const Nom &name_field, const Motcle &lata_suffix, const IJK_Field_double &field, std::ostringstream &oss, int &counter, const int &first_thermal_rank=0)
IJK_Field_vector3_double hess_cross_T_elem_
const DoubleTab * rising_vectors_
virtual void clip_max_temperature_values()
OpGradCentre2IJKScalar_double temperature_grad_op_centre_
const char * get_fichier_sauvegarde() const
const Nom & get_fichier_reprise() const
void compute_min_cell_delta()
IJK_Field_double temperature_before_extrapolation_
virtual void rk3_rustine_sub_step(const int rk_step, const double total_timestep, const double fractionnal_timestep, const double time)
int compute_rising_velocities_
OBS_PTR(Probleme_FTD_IJK_base) ref_ijk_ft_
const IJK_Field_vector3_double & get_bary() const
double get_rhocp_v() const
IJK_One_Dimensional_Subproblems_Interfaces_Fields thermal_local_subproblems_interfaces_fields_
IJK_Field_double & set_temperature()
bool has_champ_vectoriel(const Motcle &nom) const override
const IJK_Field_double * eulerian_compo_connex_ns_
bool smoothing_remove_normal_compo_
const int & get_rank() const
const Vecteur3 * rising_velocity_overall_
Boundary_Conditions_Thermique boundary_conditions_
IJK_Field_double temperature_adimensionnelle_theta_
void enforce_zero_value_eulerian_curvature()
const std::shared_ptr< IJK_Field_double > & get_temperature() const
const DoubleTab * bubbles_barycentre_
void get_rising_velocities_parameters(int &compute_rising_velocities, int &fill_rising_velocities, int &use_bubbles_velocities_from_interface, int &use_bubbles_velocities_from_barycentres)
void force_upstream_temperature(IJK_Field_double &temperature, double T_imposed, const IJK_Interfaces &interfaces, double nb_diam, int upstream_dir, int gravity_dir, int upstream_stencil)
bool conv_temperature_negligible_
void associer_ghost_fluid_fields(const IJK_Ghost_Fluid_Fields &ghost_fluid_fields)
void associer_switch(const Switch_FT_double &ijk_ft_switch)
virtual void recompute_temperature_init()
const IJK_Ghost_Fluid_Fields * ghost_fluid_fields_
double get_rhocp_l() const
IJK_Field_double div_coeff_grad_T_volume_uncorrected_
virtual const IJK_Field_int & get_cell_neighbours_corrected_trimmed() const
IJK_Field_double eulerian_grad_T_interface_ns_
virtual void correct_operators_for_visu()
const IJK_Field_double * eulerian_compo_connex_from_interface_ghost_ft_
void set_latastep_reprise(const int latastep)
virtual void euler_time_step(const double timestep)
OBS_PTR(Switch_FT_double) ref_ijk_ft_switch_
int imposer_flux_thermique_bord(const IJK_Field_double &temperature, const double flux_paroi_impose, IJK_Field_local_double &flux_bord, const bool bord_kmax)
const Milieu_base & milieu() const
const IJK_Field_double & get_temperature_adim_bulles() const
const ArrOfDouble * bubbles_volume_
virtual const IJK_Field_double & get_temperature_cell_neighbours() const
std::shared_ptr< IJK_Field_double > d_temperature_
virtual void euler_rustine_step(const double timestep)
virtual void compare_fluxes_thermal_subproblems()
virtual const IJK_Field_vector3_int & get_cell_faces_corrected_bool() const
static void Fill_postprocessable_fields(std::vector< FieldInfo_t > &chps)
int calculer_flux_thermique_bord(const IJK_Field_double &temperature, const double lambda_de_t_paroi, const double T_paroi_impose, IJK_Field_local_double &flux_bord, const bool bord_kmax)
const IJK_Field_double & get_eulerian_curvature_ft() const
void compute_temperature_hessian_cross_elem()
virtual void clip_min_temperature_values()
virtual double compute_rho_cp_u_mean(const IJK_Field_double &vx)
const Motcles & get_thermal_words() const
void enforce_zero_value_eulerian_distance()
virtual int get_disable_post_processing_probes_out_files() const
bool conserv_energy_global_
void get_boundary_fluxes(IJK_Field_local_double &boundary_flux_kmin, IJK_Field_local_double &boundary_flux_kmax)
Nom & get_thermal_problem_type()
virtual void lire_temperature(const Domaine_IJK &splitting)
const IJK_Field_vector3_double & get_normal_vector_ns_normed() const
Nom fichier_reprise_temperature_
Fluide_Diphasique_IJK & milieu_ijk()
virtual const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_diag_bool() const
const IJK_Field_double & get_temperature_before_extrapolation() const
bool diff_temperature_negligible_
void compute_cell_volume()
virtual void post_process_after_temperature_increment()
double direct_smoothing_factors_[7]
virtual void set_subproblems_interfaces_fields(const Domaine_IJK &splitting)
virtual void add_temperature_diffusion()
const IJK_Field_double * eulerian_distance_ft_
virtual void set_zero_temperature_increment()
IJK_Field_double source_temperature_l_
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ns() const
int calculate_local_energy_
IJK_Field_double div_coeff_grad_T_
virtual void sauvegarder_temperature(Nom &lata_name, int idx, const int &stop=0)
IJK_Field_double tmp_smoothing_field_
virtual void remplir_tableau_pure_cellules_diphasiques(bool next_time)
void compute_eulerian_grad_T_interface(const int on_splitting_ns=0)
double upstream_temperature_
virtual double get_modified_time()
void compute_temperature_convection(const IJK_Field_vector3_double &velocity)
Champs_compris_IJK_interface::FieldInfo_t FieldInfo_t
const ArrOfDouble * rising_velocities_
IJK_Field_vector3_double dummy_double_vect_
IJK_Field_double temperature_physique_T_
Operateur_IJK_elem_diff temperature_diffusion_op_uncorrected_
IJK_Field_double ecart_t_ana_rel_
IJK_Field_double source_temperature_
const IJK_Field_vector3_double & get_IJK_field_vector(const Motcle &nom) override
int timestep_reprise_temperature_
const IJK_Field_double & get_u_T_convective_volume() const
bool has_champ(const Motcle &nom) const override
const IJK_Field_double & get_eulerian_distance_ns() const
IJK_Field_double temperature_gaussian_filtered_
void compute_temperature_convective_fluxes(const IJK_Field_vector3_double &velocity)
void calculer_gradient_temperature(const IJK_Field_double &temperature, IJK_Field_vector3_double &grad_T)
const IJK_Field_double & get_interfacial_area_ft() const
bool disable_relative_velocity_energy_balance_
IJK_Field_double ecart_t_ana_
bool smoothing_use_unique_phase_
void calculer_energies(double &E_liq_pure, double &E_liq, double &E_vap_pure, double &E_vap, double &E_mixt, double &E_tot)
void enforce_max_value_eulerian_curvature()
void posttraiter_tous_champs_thermal(Motcles &liste, const int idx) const
IJK_Field_double d_temperature_uncorrected_
OpHessCentre2IJKScalar_double temperature_hess_op_centre_
virtual void copie_pure_vers_diph_sans_interpolation()
const IJK_Field_vector3_double & get_rho_cp_u_T_convective_fluxes() const
const std::shared_ptr< IJK_Field_double > & get_div_lambda_grad_T_volume() const
const IJK_Field_vector3_double & get_div_coeff_grad_T_diffusive_fluxes() const
void compute_boundary_conditions_thermal()
const IJK_Field_vector3_double & get_grad_T() const
const IJK_Field_double * eulerian_curvature_ft_
void associer(const Probleme_FTD_IJK_base &ijk_ft)
bool get_ghost_fluid_flag() const
IJK_Field_vector3_double facets_barycentre
IJK_Field_double source_temperature_ana_
IJK_Field_double temperature_adim_bulles_
void compute_rising_velocities()
void compute_eulerian_temperature_ghost(const int on_splitting_ns=0)
IJK_Field_vector3_double rho_cp_u_T_convective_raw_
virtual void correct_temperature_increment_for_interface_leaving_cell()
virtual double compute_temperature_dimensionless_theta_mean(const IJK_Field_double &vx)
const IJK_Field_vector3_double & get_hessian_cross_temperature_elem() const
std::shared_ptr< IJK_Field_double > temperature_
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ghost_ns() const
IJK_Field_double temperature_for_ini_per_bubble_
const IJK_Field_vector3_double * eulerian_normal_vectors_ns_
IJK_Field_double eulerian_grad_T_interface_ft_
void compute_cell_diagonal(const Domaine_IJK &splitting)
IJK_Field_vector3_double storage_
const IJK_Field_double & get_eulerian_distance_ft() const
const ArrOfDouble * rising_velocities_from_barycentres_
friend class IJK_One_Dimensional_Subproblems
const IJK_Field_double & get_temperature_elem_smooth() const
virtual void update_intersections()
int compute_hess_cross_T_elem_
int calculer_k_pour_bord(const IJK_Field_double &temperature, const bool bord_kmax)
int post_process_quantities_from_subresolution(const Motcles &liste_post_instantanes, const char *lata_name, const int latastep)
classe Milieu_base Cette classe est la base de la hierarchie des milieux (physiques)
Une chaine de caractere (Nom) en majuscules.
Un tableau d'objets de la classe Motcle.
class Nom Une chaine de caractere pour nommer les objets de TRUST
Un tableau de chaine de caracteres (VECT(Nom)).
Objet_U()
Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_),...
Helper class to factorize the readOn method of Objet_U classes.