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

#include <IJK_Thermal_Multiple_Subresolutions.h>

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

Public Member Functions

void initialize (const Domaine_IJK &splitting) override
void update_thermal_properties () override
void set_param (Param &param) const override
Public Member Functions inherited from IJK_Thermal_Subresolution
void initialize (const Domaine_IJK &splitting) override
void update_thermal_properties () override
void post_process_after_temperature_increment () override
void set_param (Param &param) const override
void compute_ghost_cell_numbers_for_subproblems (const Domaine_IJK &splitting, int ghost_init) override
double get_probes_length ()
int lire_motcle_non_standard (const Motcle &, Entree &) override
 Reads non-simple-type parameters of an Objet_U from an input stream.
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) override
void post_process_thermal_downstream_lines (const Nom &local_quantities_thermal_lines_time_index_folder) override
void initialise_thermal_dowstreamlines_tabs (std::vector< std::vector< FixedVector< ArrOfInt, 3 > > > &parameters, const int &nb_thermal_circles, const int &nb_thermal_lines)
void initialise_thermal_dowstreamlines_tabs (std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &parameters, const int &nb_thermal_circles, const int &nb_thermal_lines)
void initialise_thermal_dowstreamlines_tabs (std::vector< std::vector< ArrOfInt > > &parameters, const int &nb_thermal_circles, const int &nb_thermal_lines)
void initialise_thermal_dowstreamlines_tabs (std::vector< std::vector< ArrOfDouble > > &parameters, const int &nb_thermal_circles, const int &nb_thermal_lines)
void initialise_thermal_line_points (const int &line_dir, ArrOfDouble &linear_coord, FixedVector< ArrOfDouble, 3 > &coordinates_line, double &diameter)
void find_thermal_line_points_in_procs (std::vector< std::vector< ArrOfInt > > &parameters)
void find_cocentric_line_coordinates (const int &nb_thermal_circles, const int &nb_thermal_lines, const double &diameter_approx, std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides)
void find_points_on_proc (std::vector< std::vector< ArrOfInt > > &is_point_on_proc, std::vector< std::vector< FixedVector< ArrOfInt, 3 > > > &ijk_indices, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, const int &line_dir)
void min_max_ldir (const int &dir, const Domaine_IJK &geom, double &min_dir, double &max_dir)
void interpolate_fields_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, const IJK_Field_double &field, const IJK_Field_vector3_double &field_gradient, const IJK_Field_vector3_double &velocity, DoubleVect &values, const int field_type)
void interpolate_temperature_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, DoubleVect &values)
void interpolate_velocity_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, DoubleVect &values)
void interpolate_convective_term_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, DoubleVect &values)
void interpolate_diffusive_term_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, DoubleVect &values)
void interpolate_temperature_increment_on_downstream_line (const int &dir, const int &nb_thermal_circles, const int &index_circle, const int &index_line, const std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, DoubleVect &values)
void post_processed_fields_on_downstream_line (const Nom &local_quantities_thermal_lines_time_index_folder, const int &line_dir, const int &linear_circle_line_index, const int &index_circle, const int &index_line, const double &diameter_approx, std::vector< std::vector< ArrOfInt > > &is_point_on_proc, const std::vector< std::vector< FixedVector< ArrOfInt, 3 > > > &indices_ijk, const ArrOfDouble &linear_coord, const FixedVector< ArrOfDouble, 3 > &coordinates_line, const std::vector< std::vector< FixedVector< ArrOfDouble, 2 > > > &coordinates_sides, const DoubleVect &temperature_line, const DoubleVect &velocity_line, const DoubleVect &convective_term_line, const DoubleVect &diffusive_term_line, const DoubleVect &temperature_incr_line)
void post_process_thermal_wake_slices (const Nom &local_quantities_thermal_slices_time_index_folder) override
void post_process_thermal_wake_slice (const int &slice, const double &nb_diam_slice, const Nom &local_quantities_thermal_slices_time_index_folder)
double post_process_thermal_wake_slice_index_dir (int &index_dir_local, int &index_dir_global, int &n_cross_section_1, int &n_cross_section_2, int &dir, const double &nb_diam, int upstream_dir, int gravity_dir, double &diameter)
void complete_field_thermal_wake_slice_ij_values (int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, const IJK_Field_double &field, const IJK_Field_vector3_double &field_gradient, const IJK_Field_vector3_double &velocity, DoubleTab &values, const int field_type, const int slice_to_nearest_plane, const int compute_indices=0)
void complete_field_thermal_wake_slice_ij_indices_coords (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &values, const Nom &local_quantities_thermal_slices_time_index_folder)
void complete_field_thermal_wake_slice_ij_temperature (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &values, const Nom &local_quantities_thermal_slices_time_index_folder)
void complete_field_thermal_wake_slice_ij_velocity (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &velocity_values, const Nom &local_quantities_thermal_slices_time_index_folder)
void complete_field_thermal_wake_slice_ij_convection (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &values, DoubleTab &velocity_values, const Nom &local_quantities_thermal_slices_time_index_folder)
void complete_field_thermal_wake_slice_ij_diffusion (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &values, const Nom &local_quantities_thermal_slices_time_index_folder)
void complete_field_thermal_wake_slice_ij_temperature_incr (const int &slice, int &index_dir_local, const int &dir, const double &slice_pos, FixedVector< IntTab, 2 > &ij_indices, FixedVector< DoubleTab, 3 > &ij_coords, DoubleTab &values, const Nom &local_quantities_thermal_slices_time_index_folder)
void post_processed_field_thermal_wake_slice_ij (const int &slice, const Nom &local_quantities_thermal_slices_time_index_folder, const double &diameter_approx, const double &nb_diam_slice, const int &n_cross_section_1, const int &n_cross_section_2, const FixedVector< IntTab, 2 > ij_indices, const FixedVector< DoubleTab, 3 > &ij_coords, const DoubleTab &temperature_slice, const DoubleTab &velocity_slice, const DoubleTab &convection_slice, const DoubleTab &diffusion_slice, const DoubleTab &temperature_incr_slice)
const IJK_Field_double & get_debug_lrs_cells () const override
const IJK_Field_double & get_temperature_cell_neighbours_debug () const override
const IJK_Field_double & get_temperature_cell_neighbours () const override
const IJK_Field_int & get_cell_neighbours_corrected () const override
const IJK_Field_double & get_neighbours_temperature_colinearity_weighting () const override
const IJK_Field_vector3_double & get_cell_faces_corrected_diffusive () const override
const IJK_Field_vector3_double & get_cell_faces_corrected_convective () const override
const IJK_Field_vector3_int & get_cell_faces_corrected_bool () const override
const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_diag_bool () const override
const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_all_bool () const override
const IJK_Field_vector3_int & get_cell_faces_neighbours_corrected_min_max_bool () const override
const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_convective () const override
const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_convective_frame_of_ref () const override
const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_velocity_temperature () const override
const IJK_Field_vector3_double & get_cell_faces_neighbours_corrected_diffusive () const override
const IJK_Field_vector3_double & get_neighbours_faces_weighting_colinearity () const override
const IJK_Field_int & get_cell_neighbours_corrected_trimmed () const override
const IJK_Field_double & get_probe_collision_debug_field () const override
const IJK_Field_vector3_double & get_interfacial_heat_flux_dispatched () const override
const IJK_Field_vector3_double & get_interfacial_heat_flux_contrib () const override
const IJK_Field_vector3_double & get_interfacial_heat_flux_current () const override
int get_disable_post_processing_probes_out_files () const override
int get_first_step_thermals_post () override
void set_subproblems_interfaces_fields (const Domaine_IJK &splitting) override
Public Member Functions inherited from IJK_Thermal_base
const Milieu_basemilieu () const
Milieu_basemilieu ()
void associer_milieu_base (const Milieu_base &, const int &idth)
Fluide_Diphasique_IJKmilieu_ijk ()
const Fluide_Diphasique_IJKmilieu_ijk () const
virtual void initialize_switch (const Domaine_IJK &splitting, const int idx)
double compute_timestep (const double timestep, const double dxmin)
void set_fichier_reprise (const char *lataname)
const Nomget_fichier_reprise () const
void associer (const Probleme_FTD_IJK_base &ijk_ft)
void associer_post (const Postprocessing_IJK &ijk_ft_post)
void associer_switch (const Switch_FT_double &ijk_ft_switch)
bool has_champ (const Motcle &nom) const override
bool has_champ (const Motcle &nom, OBS_PTR(Champ_base)&ref_champ) const
bool has_champ_vectoriel (const Motcle &nom) const override
const IJK_Field_double & get_IJK_field (const Motcle &nom) override
const IJK_Field_vector3_double & get_IJK_field_vector (const Motcle &nom) override
void get_noms_champs_postraitables (Noms &noms, Option opt=NONE) const
Nom get_field_name_with_rank (Nom basename) const
void associer_interface_intersections (const Intersection_Interface_ijk_cell &intersection_ijk_cell, const Intersection_Interface_ijk_face &intersection_ijk_face)
void associer_ghost_fluid_fields (const IJK_Ghost_Fluid_Fields &ghost_fluid_fields)
void retrieve_ghost_fluid_params (int &compute_distance, int &compute_curvature, int &n_iter_distance, int &avoid_gfm_parallel_calls)
void get_boundary_fluxes (IJK_Field_local_double &boundary_flux_kmin, IJK_Field_local_double &boundary_flux_kmax)
virtual void euler_time_step (const double timestep)
virtual void rk3_sub_step (const int rk_step, const double total_timestep, const double time)
virtual void sauvegarder_temperature (Nom &lata_name, int idx, const int &stop=0)
virtual void euler_rustine_step (const double timestep)
virtual void rk3_rustine_sub_step (const int rk_step, const double total_timestep, const double fractionnal_timestep, const double time)
double compute_global_energy (const IJK_Field_double &temperature)
virtual double compute_global_energy ()
int calculer_k_pour_bord (const IJK_Field_double &temperature, const bool bord_kmax)
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)
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)
void set_latastep_reprise (const int latastep)
const int & get_latastep_reprise () const
const int & get_latastep_reprise_ini () const
double get_rhocp_l () const
double get_rhocp_v () const
const int & get_rank () const
const std::shared_ptr< IJK_Field_double > & get_temperature () const
const IJK_Field_double & get_temperature_before_extrapolation () const
IJK_Field_double & get_temperature_ft ()
const IJK_Field_vector3_double & get_grad_T () const
IJK_Field_double & set_temperature ()
const IJK_Field_double & get_temperature_ana () const
const IJK_Field_double & get_ecart_t_ana () const
const IJK_Field_double & get_ecart_t_ana_rel () const
const IJK_Field_double & get_div_lambda_grad_T () const
const std::shared_ptr< IJK_Field_double > & get_div_lambda_grad_T_volume () const
const IJK_Field_double & get_u_T_convective () const
const IJK_Field_double & get_u_T_convective_volume () const
const IJK_Field_double & get_eulerian_distance_ft () const
const IJK_Field_double & get_eulerian_curvature_ft () const
const IJK_Field_double & get_interfacial_area_ft () const
const IJK_Field_double & get_grad_T_interface_ft () const
const IJK_Field_double & get_eulerian_compo_connex_ft () const
const IJK_Field_double & get_eulerian_compo_connex_ghost_ft () const
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ft () const
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ghost_ft () const
const IJK_Field_double & get_eulerian_compo_connex_ns () const
const IJK_Field_double & get_eulerian_compo_connex_ghost_ns () const
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ns () const
const IJK_Field_double & get_eulerian_compo_connex_from_interface_ghost_ns () const
const IJK_Field_int & get_eulerian_compo_connex_int_from_interface_ns () const
const IJK_Field_int & get_eulerian_compo_connex_int_from_interface_ghost_ns () const
const IJK_Field_double & get_eulerian_distance_ns () const
const IJK_Field_double & get_eulerian_curvature_ns () const
const IJK_Field_double & get_interfacial_area_ns () const
const IJK_Field_double & get_grad_T_interface_ns () const
const IJK_Field_double & get_eulerian_rising_velocities () const
const IJK_Field_double & get_temperature_adim_bulles () const
const IJK_Field_double & get_temperature_adim_theta () const
const IJK_Field_vector3_double & get_gradient_temperature () const
const IJK_Field_vector3_double & get_gradient_temperature_elem () const
const IJK_Field_vector3_double & get_gradient_temperature_elem_smooth () const
const IJK_Field_vector3_double & get_tangential_gradient_temperature_elem_smooth () const
const IJK_Field_double & get_temperature_elem_smooth () const
const IJK_Field_vector3_double & get_normal_vector_ns () const
const IJK_Field_vector3_double & get_normal_vector_ns_normed () const
const IJK_Field_vector3_double & get_normal_vector_ft () const
const IJK_Field_vector3_double & get_hessian_diag_temperature_elem () const
const IJK_Field_vector3_double & get_hessian_cross_temperature_elem () const
const IJK_Field_vector3_double & get_bary () const
bool get_ghost_fluid_flag () const
const int & get_ghost_cells () const
bool get_debug () const
const IJK_Field_vector3_double & get_rho_cp_u_T_convective_fluxes () const
const IJK_Field_vector3_double & get_div_coeff_grad_T_diffusive_fluxes () const
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)
virtual double get_rho_cp_u_ijk (const IJK_Field_double &vx, int i, int j, int k) const
virtual double get_div_lambda_ijk (int i, int j, int k) const
virtual double compute_temperature_dimensionless_theta_mean (const IJK_Field_double &vx)
const char * get_fichier_sauvegarde () const
void set_fichier_sauvegarde (const char *lataname)
virtual bool get_conserv_energy_global ()
const double & get_E0 () const
virtual void compute_interfacial_temperature2 (ArrOfDouble &interfacial_temperature, ArrOfDouble &flux_normal_interp)
void compute_eulerian_distance ()
void compute_eulerian_curvature ()
void compute_eulerian_curvature_from_interface ()
void copy_previous_interface_state ()
int post_process_quantities_from_subresolution (const Motcles &liste_post_instantanes, const char *lata_name, const int latastep)
virtual void copie_pure_vers_diph_sans_interpolation ()
virtual void echange_pure_vers_diph_cellules_initialement_pures ()
virtual void echange_diph_vers_pure_cellules_finalement_pures ()
virtual void vide_phase_invalide_cellules_diphasiques ()
virtual void remplir_tableau_pure_cellules_diphasiques (bool next_time)
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)
int posttraiter_champs_instantanes_thermal (const Motcles &liste_post_instantanes, const char *lata_name, const int latastep, const double current_time, const int idx)
Nomget_thermal_problem_type ()
int & get_thermal_rank ()
const Motclesget_thermal_words () const
const Motclesget_thermal_suffix () const
void posttraiter_tous_champs_thermal (Motcles &liste, const int idx) const
void ecrire_statistiques_bulles (int reset, const Nom &nom_cas, const double current_time, const ArrOfDouble &surface, const int idx)
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)
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)
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)
const Noms noms_compris () const
const Champs_compris_IJKchamps_compris () const
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).
virtual const Nomle_nom () const
 Returns the name of the Objet_U. Virtual method to override: returns "neant" in this implementation.
virtual void nommer (const Nom &)
 Assigns a name to the Objet_U. Virtual method to override.
virtual int reprendre (Entree &)
 Restores an Objet_U from an input stream. Virtual method to override.
virtual int sauvegarder (Sortie &) const
 Saves an Objet_U to an output stream. Virtual method to override.
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 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 Champs_compris_IJK_interface
virtual ~Champs_compris_IJK_interface ()

Protected Member Functions

void correct_temperature_vapour_for_eulerian_fluxes ()
Protected Member Functions inherited from IJK_Thermal_Subresolution
void reset_subresolution_distributed_vectors ()
void compute_thermal_subproblems () override
void compute_diffusion_increment () override
void correct_temperature_increment_for_interface_leaving_cell () override
void correct_any_temperature_fields_for_eulerian_fluxes (IJK_Field_double &temperature)
void correct_temperature_for_eulerian_fluxes () override
void store_temperature_before_extrapolation () override
void compare_temperature_fields (const IJK_Field_double &temperature, const IJK_Field_double &temperature_ana, IJK_Field_double &error_temperature_ana, IJK_Field_double &error_temperature_ana_rel)
void evaluate_total_liquid_absolute_parameter (const IJK_Field_double &field, double &total_parameter)
void evaluate_total_liquid_parameter_squared (const IJK_Field_double &field, double &total_parameter)
void correct_any_temperature_field_for_visu (IJK_Field_double &temperature)
void correct_temperature_for_visu () override
void clip_min_temperature_values () override
void clip_max_temperature_values () override
void compute_mean_liquid_temperature ()
void compute_overall_probes_parameters ()
void pre_initialise_thermal_subproblems_any_matrices ()
void pre_initialise_thermal_subproblems_matrices ()
void interpolate_indicator_on_probes ()
void clear_sort_problems_colliding_bubbles ()
void interpolate_project_velocities_on_probes ()
void reajust_probes_length_collisions ()
void reajust_probes_length ()
void compute_radial_subresolution_convection_diffusion_operators ()
void compute_local_substep ()
void prepare_temporal_schemes ()
void compute_source_terms_impose_subresolution_boundary_conditions ()
void compute_add_subresolution_source_terms ()
void compute_subresolution_temporal_explicit_implicit_matrices ()
void approximate_temperature_increment_material_derivative ()
void compute_radial_first_second_order_operators (Matrice &radial_first_order_operator_raw, Matrice &radial_second_order_operator_raw, Matrice &radial_first_order_operator, Matrice &radial_second_order_operator)
void compute_first_order_operator_raw (Matrice &radial_first_order_operator)
void compute_first_order_operator (Matrice &radial_first_order_operator, double dr)
void compute_second_order_operator (Matrice &radial_second_order_operator, double dr)
void compute_second_order_operator_raw (Matrice &radial_second_order_operator)
void initialise_identity_matrices (Matrice &identity_matrix, Matrice &identity_matrix_subproblems)
void initialise_identity_matrices_sparse (Matrice &identity_matrix, Matrice &identity_matrix_subproblems)
void initialise_radial_convection_operator (Matrice &radial_first_order_operator, Matrice &radial_convection_matrix)
void initialise_radial_convection_operator_sparse (Matrice &radial_first_order_operator, Matrice &radial_convection_matrix)
void initialise_radial_diffusion_operator (Matrice &radial_second_order_operator, Matrice &radial_diffusion_matrix)
void initialise_radial_diffusion_operator_sparse (Matrice &radial_second_order_operator, Matrice &radial_diffusion_matrix)
void convert_into_sparse_matrix ()
void compute_md_vector ()
void retrieve_temperature_solution ()
void store_previous_temperature_indicator_velocities ()
void check_wrong_values_rhs ()
void initialise_thermal_subproblems_list ()
void initialise_thermal_subproblems ()
void detect_probe_collision ()
void solve_thermal_subproblems ()
void prepare_thermal_flux_correction ()
void compute_min_max_reachable_fluxes ()
void complete_convective_flux_frame_of_reference ()
void update_intersections () override
void compute_convective_diffusive_fluxes_face_centre () override
void compute_convective_fluxes_face_centre () override
void compute_diffusive_fluxes_face_centre () override
void complete_thermal_fluxes_face_centre (const int &fluxes_correction_conservations)
void compute_temperature_cell_centres (const int first_corr) override
void compute_temperature_cell_centres_first_correction ()
void compute_temperature_cell_centres_second_correction ()
void replace_temperature_cell_centres_neighbours (const int &use_neighbours_temperature_to_correct_trimmed)
void prepare_ij_fluxes_k_layers () override
void set_zero_temperature_increment () override
void clean_thermal_subproblems () override
void clean_ijk_intersections () override
void clean_add_thermal_subproblems ()
void enforce_periodic_temperature_boundary_value () override
void correct_operators_for_visu () override
double get_modified_time () override
void compute_temperature_init () override
void recompute_temperature_init () override
void set_field_temperature_per_bubble (const int index_bubble)
Nom compute_quasi_static_spherical_diffusion_expression (const double &time_scope, const int index_bubble, const int index_bubble_real)
Nom generate_expression_temperature_ini (const double &time_scope, const double x, const double y, const double z)
void approx_erf_inverse (const double &x, double &res)
void set_field_T_ana () override
void calculer_ecart_T_ana () override
double compute_spherical_steady_dirichlet_left_right_value (const double &r)
double compute_spherical_steady_dirichlet_left_right_derivative_value (const double &r, const double &temperature_prev)
double compute_spherical_steady_dirichlet_left_right_integral (const double &temperature_end_prev)
double find_time_dichotomy_integral (const double &temperature_integral, double &temperature_end_prev)
void compute_Nusselt_spherical_diffusion ()
double get_time_inflection_derivative (double &temperature_end_min)
double find_time_dichotomy_derivative (const double &temperature_derivative, double &temperature_limit_left, double &temperature_limit_right)
double compute_rho_cp_u_mean (const IJK_Field_double &vx) override
void compare_fluxes_thermal_subproblems () override
Protected Member Functions inherited from IJK_Thermal_base
 OBS_PTR (Milieu_base) le_fluide_
void compute_cell_volume ()
void compute_min_cell_delta ()
void compute_cell_diagonal (const Domaine_IJK &splitting)
virtual void lire_temperature (const Domaine_IJK &splitting)
void calculer_dT (const IJK_Field_vector3_double &velocity)
void compute_temperature_convective_fluxes (const IJK_Field_vector3_double &velocity)
void compute_temperature_convection (const IJK_Field_vector3_double &velocity)
virtual void compute_temperature_convection_conservative (const IJK_Field_vector3_double &velocity)
void compute_boundary_conditions_thermal ()
void compute_temperature_diffusive_fluxes ()
virtual void add_temperature_diffusion ()
void enforce_zero_value_eulerian_distance ()
void enforce_zero_value_eulerian_curvature ()
void enforce_max_value_eulerian_curvature ()
void compute_eulerian_grad_T_interface (const int on_splitting_ns=0)
void propagate_eulerian_grad_T_interface ()
void compute_eulerian_temperature_ghost (const int on_splitting_ns=0)
void compute_eulerian_bounding_box_fill_compo ()
void compute_rising_velocities ()
void compute_temperature_gradient_elem ()
void compute_temperature_hessian_diag_elem ()
void compute_temperature_hessian_cross_elem ()
virtual void clip_temperature_values ()
void calculer_gradient_temperature (const IJK_Field_double &temperature, IJK_Field_vector3_double &grad_T)
void calculer_energies (double &E_liq_pure, double &E_liq, double &E_vap_pure, double &E_vap, double &E_mixt, double &E_tot)
void source_callback ()
void calculer_temperature_physique_T (const IJK_Field_double &vx, const double dTm)
void calculer_temperature_adim_bulles ()
void add_temperature_source ()
void calculer_Nusselt (const IJK_Field_double &vx)
void calculer_temperature_adimensionnelle_theta (const IJK_Field_double &vx, const double qw)
void calculer_source_temperature_ana ()
double compute_variable_wall_temperature (const int kmin, const int kmax)
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)
 OBS_PTR (Probleme_FTD_IJK_base) ref_ijk_ft_
 OBS_PTR (Postprocessing_IJK) ref_ijk_ft_post_
 OBS_PTR (Switch_FT_double) ref_ijk_ft_switch_
 OBS_PTR (Intersection_Interface_ijk_cell) ref_intersection_ijk_cell_
 OBS_PTR (Intersection_Interface_ijk_face) ref_intersection_ijk_face_
 OWN_PTR (Corrige_flux_FT_base) corrige_flux_
void compute_mixed_cells_number (const IJK_Field_double &indicator)
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).

Protected Attributes

IJK_Field_double temperature_vapour_
IJK_Field_double div_coeff_grad_T_vapour_volume_
IJK_Field_vector3_double grad_T_vapour_
OpDiffUniformIJKScalar_double diffusion_temperature_vapour_op_
bool main_phase_ = false
int diffusion_flux_vapour_correction_ = 0
int convective_flux_vapour_correction_ = 0
double uniform_lambda_vap_ = 0
double uniform_alpha_vap_ = 0
Protected Attributes inherited from IJK_Thermal_Subresolution
bool enable_probe_collision_detection_ = false
bool enable_resize_probe_collision_ = false
bool debug_probe_collision_ = false
IJK_Field_double probe_collision_debug_field_
bool reference_gfm_on_probes_ = false
bool compute_normal_derivatives_on_reference_probes_ = false
bool disable_probe_weak_gradient_ = false
bool disable_probe_weak_gradient_gfm_ = false
bool reconstruct_previous_probe_field_ = false
bool implicit_solver_from_previous_probe_field_ = false
bool disable_spherical_diffusion_start_ = false
bool single_centred_bubble_ = true
bool computed_centred_bubble_start_ = true
double single_centred_bubble_radius_ini_ = 1.e-3
double probes_end_value_start_ = -1
double probes_end_value_coeff_ = 0.05
int temperature_ini_type_ = 1
double modified_time_init_ = 0.
int spherical_diffusion_ = 1
double nusselt_spherical_diffusion_ = 2.
double nusselt_spherical_diffusion_liquid_ = 2.
double heat_flux_spherical_ = 0.
double mean_liquid_temperature_ = -1
double time_ini_user_ = 0.
bool disable_mixed_cells_increment_ = false
bool enable_mixed_cells_increment_ = true
bool allow_temperature_correction_for_visu_ = false
bool disable_subresolution_ = false
bool diffusive_flux_correction_ = false
bool convective_flux_correction_ = false
bool fluxes_correction_conservations_ = false
bool conserve_max_interfacial_fluxes_ = false
int fluxes_corrections_weighting_ = 0
int impose_fo_flux_correction_ = 1
bool disable_fo_flux_correction_ = false
int subproblem_temperature_extension_ = 0
bool override_vapour_mixed_values_ = false
IJK_One_Dimensional_Subproblems thermal_local_subproblems_
int points_per_thermal_subproblem_ = 32
double coeff_distance_diagonal_ = 2.
double probe_length_ = 0.
double dr_ = 0.
DoubleVect radial_coordinates_
Matrice identity_matrix_explicit_implicit_
Matrice radial_first_order_operator_raw_
Matrice radial_second_order_operator_raw_
Matrice radial_first_order_operator_
Matrice radial_second_order_operator_
Matrice identity_matrix_subproblems_
Matrice radial_diffusion_matrix_
Matrice radial_convection_matrix_
Matrice radial_diffusion_matrix_test_
FixedVector< ArrOfInt, 6 > first_indices_sparse_matrix_
int initialise_sparse_indices_ = 0
IJK_Finite_Difference_One_Dimensional_Matrix_Assembler finite_difference_assembler_
Matrice thermal_subproblems_matrix_assembly_
DoubleVect thermal_subproblems_temperature_solution_ini_
DoubleVect thermal_subproblems_rhs_assembly_
DoubleVect thermal_subproblems_temperature_solution_
Matricethermal_subproblems_matrix_assembly_for_solver_ref_ = nullptr
Matrice thermal_subproblems_matrix_assembly_for_solver_
Matrice thermal_subproblems_matrix_assembly_for_solver_reduced_
IJK_SolveSys_FD_thermal one_dimensional_advection_diffusion_thermal_solver_
IJK_SolveSys_FD_thermal one_dimensional_advection_diffusion_thermal_solver_implicit_
MD_Vector md_
Motcles fd_solvers_
Motcles fd_solvers_jdd_
int fd_solver_rank_ = 0
Nom fd_solver_type_
bool discrete_integral_ = false
int quadtree_levels_ = 1
int compute_tangential_variables_ = 0
int boundary_condition_interface_ = -1
Motcles boundary_condition_interface_dict_
double interfacial_boundary_condition_value_ = 0.
bool impose_boundary_condition_interface_from_simulation_ = false
int boundary_condition_end_ = 0
Motcles boundary_condition_end_dict_
double end_boundary_condition_value_ = -1.
bool impose_user_boundary_condition_end_value_ = false
int source_terms_type_ = 2
Motcles source_terms_type_dict_
bool source_terms_correction_ = false
bool advected_frame_of_reference_ = false
bool neglect_frame_of_reference_radial_advection_ = false
bool approximate_temperature_increment_ = false
bool is_first_time_step_ = false
bool first_time_step_temporal_ = false
bool first_time_step_explicit_ = false
bool first_time_step_implicit_ = false
bool local_diffusion_fourier_priority_ = false
int nb_iter_explicit_local_ = 0
double local_fourier_ = 1.
double local_cfl_ = 1.
double delta_T_subcooled_overheated_ =-1.
double convection_diffusion_time_scale_factor_ = 1.
double local_fourier_time_step_probe_length_ = 0.
double local_cfl_time_step_probe_length_ = 0.
double local_dt_cfl_ = 0.
double local_dt_cfl_min_delta_xyz_ = 0.
double local_dt_cfl_counter_ = 0.
double local_dt_fourier_counter_ = 0.
double error_temperature_ana_total_ = 0.
double error_temperature_ana_squared_total_ = 0.
double error_temperature_ana_rel_total_ = 0.
bool first_time_step_varying_probes_ = false
bool probe_variations_enabled_ = false
bool probe_variations_priority_ = false
bool disable_interpolation_in_mixed_cells_ = false
bool keep_temperature_extrapolated_from_LRS_ = false
bool max_u_radial_ = false
IJK_Field_double debug_LRS_cells_
int distance_cell_faces_from_lrs_ = 1
bool disable_distance_cell_faces_from_lrs_ = false
bool pre_initialise_thermal_subproblems_list_ = false
double pre_factor_subproblems_number_ = 3.
bool remove_append_subproblems_ = false
bool use_sparse_matrix_ = false
int global_probes_characteristics_ = 1
bool correct_temperature_cell_neighbours_first_iter_ = false
int correct_first_iter_deactivate_cell_neighbours_ = 0
bool find_temperature_cell_neighbours_ = false
bool use_temperature_cell_neighbours_ = false
bool correct_neighbours_using_probe_length_ = false
int neighbours_corrected_rank_ = 1
int neighbours_weighting_ = 0
bool neighbours_colinearity_weighting_ = false
bool neighbours_distance_weighting_ = false
bool neighbours_colinearity_distance_weighting_ = false
bool smooth_temperature_field_ = false
bool readjust_probe_length_from_vertices_ = false
IJK_Field_double temperature_cell_neighbours_
IJK_Field_double temperature_cell_neighbours_debug_
IJK_Field_int neighbours_temperature_to_correct_
IJK_Field_double neighbours_temperature_colinearity_weighting_
bool keep_max_flux_correction_ = false
bool clip_temperature_values_ = false
bool enforce_periodic_boundary_value_ = false
int stencil_periodic_boundary_value_ = 2
bool disable_post_processing_probes_out_files_ = false
IJK_Field_vector3_double cell_faces_corrected_diffusive_
IJK_Field_vector3_double cell_faces_corrected_convective_
IJK_Field_vector3_int cell_faces_corrected_bool_
bool store_cell_faces_corrected_ = false
IJK_Field_vector3_int cell_faces_neighbours_corrected_diag_bool_
bool find_cell_neighbours_for_fluxes_spherical_correction_ = false
bool use_cell_neighbours_for_fluxes_spherical_correction_ = false
bool find_reachable_fluxes_ = false
bool use_reachable_fluxes_ = false
bool keep_first_reachable_fluxes_ = false
IJK_Field_vector3_int cell_faces_neighbours_corrected_all_bool_
IJK_Field_vector3_double cell_faces_neighbours_corrected_velocity_temperature_
IJK_Field_vector3_double cell_faces_neighbours_corrected_convective_frame_of_reference_
IJK_Field_vector3_double cell_faces_neighbours_corrected_convective_
IJK_Field_vector3_double cell_faces_neighbours_corrected_diffusive_
IJK_Field_vector3_double neighbours_faces_weighting_colinearity_
IJK_Field_vector3_int cell_faces_neighbours_corrected_min_max_bool_
IJK_Field_int neighbours_temperature_to_correct_trimmed_
int neighbours_last_faces_weighting_ = 0
bool neighbours_last_faces_colinearity_weighting_ = false
bool neighbours_last_faces_colinearity_face_weighting_ = false
bool neighbours_last_faces_distance_weighting_ = false
bool neighbours_last_faces_distance_colinearity_weighting_ = false
bool neighbours_last_faces_distance_colinearity_face_weighting_ = false
bool post_process_all_probes_ = false
int nb_theta_post_pro_ = 10
int nb_phi_post_pro_ = 4
int nb_probes_post_pro_ = 40
bool interp_eulerian_ = false
int first_step_thermals_post_ = 1
bool disable_first_step_thermals_post_ = false
bool copy_fluxes_on_every_procs_ = true
bool copy_temperature_on_every_procs_ = true
bool post_process_thermal_slices_ = false
bool thermal_slices_regions_ = false
double nb_diam_slice_ = -1
int nb_slices_ = 1
int upstream_dir_slice_ = -1
bool disable_slice_to_nearest_plane_ = false
bool post_process_thermal_lines_ = false
int upstream_dir_line_ = -1
int nb_thermal_lines_ = 1
int nb_thermal_concentric_circles_ = 1
int nb_thermal_line_points_ = 100
double nb_diam_thermal_line_length_ = -1
bool use_corrected_velocity_convection_ = false
bool use_velocity_cartesian_grid_ = false
bool compute_radial_displacement_ = false
bool use_normal_gradient_for_flux_corr_ = false
IJK_Field_vector3_double interfacial_heat_flux_dispatched_
FixedVector< ArrOfInt, 3 > ijk_indices_flux_out_
FixedVector< ArrOfDouble, 3 > thermal_flux_out_
IJK_Field_int zero_liquid_neighbours_
IJK_Field_vector3_double interfacial_heat_flux_contrib_
IJK_Field_vector3_double interfacial_heat_flux_current_
FixedVector< ArrOfInt, 4 > ijk_indices_flux_contrib_
ArrOfDouble thermal_flux_out_contrib_
Protected Attributes inherited from IJK_Thermal_base
int needs_op_unform_ = 1
int thermal_rank_ = 0
Nom thermal_problem_type_ = "subresolution"
Motcles thermal_words_
Motcles lata_suffix_
Champs_compris_IJK champs_compris_
bool debug_ = false
int latastep_reprise_ = 0
int latastep_reprise_ini_ = 0
double E0_ = 0.
int rank_ = 0
double dt_fo_ = 1.e20
double fo_ = 1.
double cp_liquid_ = -123.
double cp_vapour_ = -123.
double lambda_liquid_ = -123.
double lambda_vapour_ = -123.
double uniform_lambda_ = 0.
double uniform_alpha_ = 0.
double prandtl_number_ = 0.
Boundary_Conditions_Thermique boundary_conditions_
IJK_Field_local_double boundary_flux_kmin_
IJK_Field_local_double boundary_flux_kmax_
Nom expression_T_init_ = "??"
double upstream_temperature_ = -1.1e20
double nb_diam_upstream_ = 0
int side_temperature_ = 0
int stencil_side_ = 0
Nom fichier_reprise_temperature_ = "??"
int timestep_reprise_temperature_ = 1
int rank_reprise_temperature_ = -1
Nom expression_source_temperature_
Nom type_T_source_ = "??"
bool lambda_variable_ = false
bool wall_flux_ = false
IJK_Field_double source_temperature_
IJK_Field_double source_temperature_v_
IJK_Field_double source_temperature_l_
IJK_Field_double d_source_Tl_
IJK_Field_double d_source_Tv_
double dTl_ = 0.
double dTv_ = 1.
double Tl_ = 0.
double Tv_ = 1.
double Tv0_ = 1.
double kl_ = -100000000000000.
double kv_ = -200000000000000.
double T0v_ = 1.
double T0l_ = 0.
IJK_Field_double source_temperature_ana_
IJK_Field_double ecart_source_t_ana_
IJK_Field_double temperature_physique_T_
IJK_Field_double temperature_adimensionnelle_theta_
IJK_Field_double temperature_adim_bulles_
bool diff_temperature_negligible_ = false
bool conv_temperature_negligible_ = false
int type_temperature_convection_form_ = 1
Operateur_IJK_elem_conv temperature_convection_op_
Operateur_IJK_elem_conv rho_cp_convection_op_
Operateur_IJK_elem_diff temperature_diffusion_op_
IJK_Field_vector3_double div_coeff_grad_T_raw_
std::shared_ptr< IJK_Field_double > div_coeff_grad_T_volume_
IJK_Field_double div_coeff_grad_T_
IJK_Field_vector3_double rho_cp_u_T_convective_raw_
IJK_Field_double u_T_convective_volume_
IJK_Field_double u_T_convective_
OpGradFluxQuickIJKScalar_double temperature_grad_flux_op_quick_
OpGradCentre2IJKScalar_double temperature_grad_op_centre_
OpHessCentre2IJKScalar_double temperature_hess_op_centre_
OpHessFluxCentre2IJKScalar_double temperature_hess_flux_op_centre_
double vol_ = 0.
double min_delta_xyz_ = 0.
double cell_diagonal_ = 0.
int ghost_cells_ = 4
IJK_Field_double rho_cp_
IJK_Field_double rho_cp_T_
IJK_Field_double div_rho_cp_T_
std::shared_ptr< IJK_Field_double > temperature_
IJK_Field_double temperature_for_ini_per_bubble_
IJK_Field_double temperature_before_extrapolation_
std::shared_ptr< IJK_Field_double > d_temperature_
std::shared_ptr< IJK_Field_double > RK3_F_temperature_
IJK_Field_vector3_double storage_
int calculate_local_energy_ = 0
bool conserv_energy_global_ = false
IJK_Field_double temperature_ft_
Nom expression_T_ana_ = "??"
Motcles liste_post_instantanes_
IJK_Field_double temperature_ana_
IJK_Field_double ecart_t_ana_
IJK_Field_double ecart_t_ana_rel_
IJK_Field_vector3_double grad_T_
int calulate_grad_T_ = 0
int rho_cp_post_ = 0
bool ghost_fluid_ = false
int n_iter_distance_ = 3
bool gfm_recompute_field_ini_ = true
bool gfm_zero_neighbour_value_mean_ = false
int gfm_vapour_mixed_only_ = 1
bool gfm_vapour_liquid_vapour_ = false
int gfm_smooth_factor_ = 20
bool avoid_gfm_parallel_calls_ = false
int compute_distance_ = 0
int compute_curvature_ = 0
int compute_grad_T_interface_ = 0
const DoubleTab * bounding_box_ = nullptr
const DoubleTab * min_max_larger_box_ = nullptr
const IJK_Ghost_Fluid_Fieldsghost_fluid_fields_ = nullptr
const IJK_Field_double * eulerian_distance_ft_ = nullptr
const IJK_Field_double * eulerian_distance_ns_ = nullptr
const IJK_Field_vector3_double * eulerian_normal_vectors_ft_ = nullptr
const IJK_Field_vector3_double * eulerian_facets_barycentre_ft_ = nullptr
const IJK_Field_vector3_double * eulerian_normal_vectors_ns_ = nullptr
const IJK_Field_vector3_double * eulerian_normal_vectors_ns_normed_ = nullptr
const IJK_Field_vector3_double * eulerian_facets_barycentre_ns_ = nullptr
const IJK_Field_double * eulerian_curvature_ft_ = nullptr
const IJK_Field_double * eulerian_curvature_ns_ = nullptr
const IJK_Field_double * eulerian_interfacial_area_ft_ = nullptr
const IJK_Field_double * eulerian_interfacial_area_ns_ = nullptr
IJK_Field_double eulerian_grad_T_interface_ft_
IJK_Field_double eulerian_grad_T_interface_ns_
int compute_grad_T_elem_ = 0
IJK_Field_vector3_double grad_T_elem_
bool smooth_grad_T_elem_ = false
IJK_Field_vector3_double grad_T_elem_smooth_
IJK_Field_vector3_double hess_diag_T_elem_
IJK_Field_vector3_double hess_cross_T_elem_
IJK_Field_vector3_double facets_barycentre
IJK_Field_double d_temperature_uncorrected_
IJK_Field_double div_coeff_grad_T_volume_uncorrected_
Operateur_IJK_elem_conv temperature_convection_op_uncorrected_
Operateur_IJK_elem_diff temperature_diffusion_op_uncorrected_
int compute_hess_T_elem_ = 0
int compute_hess_diag_T_elem_ = 0
int compute_hess_cross_T_elem_ = 0
int mixed_cells_number_ = 0
bool compute_eulerian_compo_ = false
int spherical_approx_ = 1
bool spherical_exact_ = false
const IJK_Field_double * eulerian_compo_connex_ft_ = nullptr
const IJK_Field_double * eulerian_compo_connex_ns_ = nullptr
const IJK_Field_double * eulerian_compo_connex_ghost_ft_ = nullptr
const IJK_Field_double * eulerian_compo_connex_ghost_ns_ = nullptr
const IJK_Field_double * eulerian_compo_connex_from_interface_ft_ = nullptr
const IJK_Field_double * eulerian_compo_connex_from_interface_ns_ = nullptr
const IJK_Field_double * eulerian_compo_connex_from_interface_ghost_ft_ = nullptr
const IJK_Field_double * eulerian_compo_connex_from_interface_ghost_ns_ = nullptr
const IJK_Field_int * eulerian_compo_connex_from_interface_int_ns_ = nullptr
const IJK_Field_int * eulerian_compo_connex_from_interface_ghost_int_ns_ = nullptr
int compute_rising_velocities_ = 0
int fill_rising_velocities_ = 0
bool use_bubbles_velocities_from_interface_ = false
bool use_bubbles_velocities_from_barycentres_ = false
const Vecteur3liquid_velocity_ = nullptr
const Vecteur3rising_velocity_overall_ = nullptr
const ArrOfDouble * rising_velocities_ = nullptr
const ArrOfDouble * rising_velocities_from_barycentres_ = nullptr
const DoubleTab * rising_vectors_ = nullptr
const DoubleTab * rising_vectors_from_barycentres_ = nullptr
const IJK_Field_double * eulerian_rising_velocities_ = nullptr
const ArrOfDouble * bubbles_volume_ = nullptr
const DoubleTab * bubbles_barycentre_ = nullptr
const DoubleTab * bubbles_barycentres_old_ = nullptr
const DoubleTab * bubbles_barycentres_new_ = nullptr
IJK_Field_vector3_int dummy_int_vect_
IJK_Field_vector3_double dummy_double_vect_
IJK_Field_int dummy_int_field_
IJK_Field_double dummy_double_field_
bool store_flux_operators_for_energy_balance_ = false
bool disable_relative_velocity_energy_balance_ = false
IJK_One_Dimensional_Subproblems_Interfaces_Fields thermal_local_subproblems_interfaces_fields_
IJK_Field_double temperature_gaussian_filtered_
IJK_Field_double tmp_smoothing_field_
IJK_Field_vector3_double grad_T_elem_tangential_
int smoothing_numbers_ = 1
bool smoothing_remove_normal_compo_ = false
bool smoothing_use_unique_phase_ = false
double direct_smoothing_factors_ [7] = {1.,1.,1.,1.,1.,1.,2.}
double gaussian_smoothing_factors_ [3][3][3]
double sharpen_smoothing_factors_ [3][3][3]

Additional Inherited Members

Public Types inherited from IJK_Thermal_base
using FieldInfo_t = Champs_compris_IJK_interface::FieldInfo_t
Public Types inherited from Champs_compris_IJK_interface
using FieldInfo_t = std::tuple<Motcle, Entity, Nature_du_champ, bool>
Static Public Member Functions inherited from IJK_Thermal_base
static void Fill_postprocessable_fields (std::vector< FieldInfo_t > &chps)
static void typer_lire_thermal_equation (OWN_PTR(IJK_Thermal_base)&, Entree &)
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)
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 Types inherited from IJK_Thermal_Subresolution
enum  temperature_ini_dict { local_criteria , integral_criteria , derivative_criteria , time_criteria }
Protected Types inherited from IJK_Thermal_base
enum  THERMAL_TYPE {
  SUBRES , MSUBRES , ONEFLUID , ONEFLUIDE ,
  CUTCELL
}

Detailed Description

Definition at line 46 of file IJK_Thermal_Multiple_Subresolutions.h.

Member Function Documentation

◆ correct_temperature_vapour_for_eulerian_fluxes()

void IJK_Thermal_Multiple_Subresolutions::correct_temperature_vapour_for_eulerian_fluxes ( )
protected

Definition at line 81 of file IJK_Thermal_Multiple_Subresolutions.cpp.

◆ initialize()

void IJK_Thermal_Multiple_Subresolutions::initialize ( const Domaine_IJK & splitting)
overridevirtual

Reimplemented from IJK_Thermal_base.

Definition at line 63 of file IJK_Thermal_Multiple_Subresolutions.cpp.

◆ set_param()

void IJK_Thermal_Multiple_Subresolutions::set_param ( Param & param) const
overridevirtual

Reimplemented from IJK_Thermal_base.

Definition at line 58 of file IJK_Thermal_Multiple_Subresolutions.cpp.

◆ update_thermal_properties()

void IJK_Thermal_Multiple_Subresolutions::update_thermal_properties ( )
overridevirtual

Reimplemented from IJK_Thermal_base.

Definition at line 76 of file IJK_Thermal_Multiple_Subresolutions.cpp.

Member Data Documentation

◆ convective_flux_vapour_correction_

int IJK_Thermal_Multiple_Subresolutions::convective_flux_vapour_correction_ = 0
protected

Definition at line 73 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ diffusion_flux_vapour_correction_

int IJK_Thermal_Multiple_Subresolutions::diffusion_flux_vapour_correction_ = 0
protected

Definition at line 72 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ diffusion_temperature_vapour_op_

OpDiffUniformIJKScalar_double IJK_Thermal_Multiple_Subresolutions::diffusion_temperature_vapour_op_
protected

Definition at line 69 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ div_coeff_grad_T_vapour_volume_

IJK_Field_double IJK_Thermal_Multiple_Subresolutions::div_coeff_grad_T_vapour_volume_
protected

Definition at line 64 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ grad_T_vapour_

IJK_Field_vector3_double IJK_Thermal_Multiple_Subresolutions::grad_T_vapour_
protected

Definition at line 65 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ main_phase_

bool IJK_Thermal_Multiple_Subresolutions::main_phase_ = false
protected

Definition at line 71 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ temperature_vapour_

IJK_Field_double IJK_Thermal_Multiple_Subresolutions::temperature_vapour_
protected

Definition at line 63 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ uniform_alpha_vap_

double IJK_Thermal_Multiple_Subresolutions::uniform_alpha_vap_ = 0
protected

Definition at line 76 of file IJK_Thermal_Multiple_Subresolutions.h.

◆ uniform_lambda_vap_

double IJK_Thermal_Multiple_Subresolutions::uniform_lambda_vap_ = 0
protected

Definition at line 75 of file IJK_Thermal_Multiple_Subresolutions.h.


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