Parallel_Info Class Reference

#include <parallel.h>

Inheritance diagram for Parallel_Info:

Inheritance graph
[legend]
Collaboration diagram for Parallel_Info:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Parallel_Info (int n_max, All_Domains *dom, int number_processes, Grid_gen_parameters &gpara)
 Parallel_Info (double meshsize, All_Domains *dom, int number_processes, Grid_gen_parameters &gpara)
int Give_my_rank () const
Index3D Give_my_index () const
Index3D Give_my_level_index (int level)
Index3D Give_level_index_of (int rang, int level)
int Give_coarsest_level_of (int rang)
int Give_n_parallel () const
int Give_my_coarsest_level ()
bool exists_process (Index3D I)
bool I_am_active ()
int give_number_of_processes ()
int give_number_of_active_processes ()
void process_info ()
void Print_processors ()
void Print_region_processes_UCD_normalized (ofstream *Datei)
MPI_Comm Give_comm ()
bool I_am_responsible_for (Index3D I)
bool I_am_responsible_for (Index3D I, int level)
bool I_am_responsible_for (IndexBo Ib)
All_DomainsGive_domain ()
 ~Parallel_Info ()

Protected Member Functions

 Parallel_Info (All_Domains *dom, MPI_Comm comm)
void Generate_processes ()
void Generate_seriel_process ()
void Add_proc_cell (Index3D I)
void Add_proc_corner (Index3D I, int l)
D3vector coord_in_domain (const Index3D I) const
void make_grid_with_grid_point (D3vector gp, double fms)
bool contained_in_old_bounding_box (Index3D I) const
bool contained_in_boxes (Index3D I) const
Index3D Give_next_on_level (int d, Index3D me)
void Calc_coarse_processors ()
void Recursion_calc_coarse_processors (Index3D I)
int * Give_buffer_send_info (int l)
int * Give_buffer_receive_info (int l)
void Set_rank_3D ()
int give_next_rank_source (dir_3D d, int level)
int give_next_rank_destination (dir_3D d, int level)
int give_next_rank_source (Edges_cell ed)
int give_next_rank_destination (Edges_cell ed)
int give_next_rank_source (Edges_cell ed, int level)
int give_next_rank_destination (Edges_cell ed, int level)
int give_next_rank_source (dir_sons ed)
int give_next_rank_destination (dir_sons ed)
int give_next_rank_source (dir_sons ed, int level)
int give_next_rank_destination (dir_sons ed, int level)
double * Give_buffer_send (int d, int l)
double * Give_buffer_receive (int d, int l)
void Recursion_study_cells (Index3D I, Partitioning *parti)
int Give_proc_number (Index3D I)
bool Exists_proc (Index3D I)
int Give_proc_corner_number (Index3D I)
bool Exists_proc_corner (Index3D I)
Point_hashtable_prochashtable_proc_point (Index3D I) const
Point_hashtable_proc_cornerhashtable_proc_corner_point (Index3D I) const
void Initialize_hash_proc (int lenght)
void Initialize_hash_proc_corner (int lenght)

Protected Attributes

All_Domainsdomain
MPI_Comm comm
int p
int n_parallel
double H_bounding
D3vector A_bounding
int max_level
int min_level
int my_rank
Index3D my_index
int my_coarsest_level
Index3Dmy_level_index
int ** number_receive_face
int ** number_send_face
int ** number_receive_face_prolongation
int ** number_send_face_prolongation
double **** var_receive
double **** var_send
double **** var_receive_prolongation
double **** var_send_prolongation
int number_receive_bo_stencil [Max_number_levels][26]
int number_send_bo_stencil [Max_number_levels][26]
double ** bo_stencil_receive [Max_number_levels][26]
double ** bo_stencil_send [Max_number_levels][26]
int number_receive_stencil [Max_number_levels][26]
int number_send_stencil [Max_number_levels][26]
double ** stencil_receive [Max_number_levels][26]
double ** stencil_send [Max_number_levels][26]
int refine_level
int p_level
int number_of_active_procs
Index1D Ixl
Index1D Ixr
Index1D Iyl
Index1D Iyr
Index1D Izl
Index1D Izr
double pxl
double pxr
double pyl
double pyr
double pzl
double pzr
IndexSurface coarse_faces [6]
bool info_coarse_faces [6]
IndexEdge coarse_edges [12]
bool info_coarse_edges [12]
Index3D coarse_corners [8]
bool info_coarse_corners [8]
int * buffer_send_info
int * buffer_receive_info
int length_send_info
int length_receive_info
int next_rank_source [6]
int next_rank_destination [6]
int next_rank_source_edges [12]
int next_rank_destination_edges [12]
int next_rank_source_corners [8]
int next_rank_destination_corners [8]
int * next_rank_source_coarse [6]
int * next_rank_destination_coarse [6]
int * next_rank_source_coarse_edges [12]
int * next_rank_destination_coarse_edges [12]
int * next_rank_source_coarse_corners [8]
int * next_rank_destination_coarse_corners [8]
double * buffer_send [26]
double * buffer_receive [26]
int length_send [26]
int length_receive [26]
int p_iter
int p_iter_corner
Point_hashtable_procpoint_proc
int hashtable_proc_leng
int hashtable_proc_occ
Point_hashtable_proc ** hashtable_proc_start
Point_hashtable_proc_cornerpoint_proc_corner
int hashtable_proc_corner_leng
int hashtable_proc_corner_occ
Point_hashtable_proc_corner ** hashtable_proc_corner_start

Detailed Description

Definition at line 230 of file parallel.h.


Constructor & Destructor Documentation

Parallel_Info::Parallel_Info int  n_max,
All_Domains dom,
int  number_processes,
Grid_gen_parameters gpara
 

Definition at line 111 of file parallel.cc.

References A_bounding, Grid_gen_parameters::Give_grid_point(), Grid_gen_parameters::Give_offset_square(), Grid_gen_parameters::Give_r_parallel(), Grid_gen_parameters::Give_stretch_square(), All_Domains::GiveA(), All_Domains::GiveH(), H_bounding, Grid_gen_parameters::Is_there_grid_point(), make_grid_with_grid_point(), max_level, refine_level, and Zweipotenz().

Here is the call graph for this function:

Parallel_Info::Parallel_Info double  meshsize,
All_Domains dom,
int  number_processes,
Grid_gen_parameters gpara
 

Definition at line 162 of file parallel.cc.

References A_bounding, endl(), Grid_gen_parameters::Give_grid_point(), Grid_gen_parameters::Give_offset_square(), Grid_gen_parameters::Give_r_parallel(), Grid_gen_parameters::Give_stretch_square(), All_Domains::GiveA(), All_Domains::GiveH(), H_bounding, Grid_gen_parameters::Is_there_grid_point(), make_grid_with_grid_point(), and refine_level.

Here is the call graph for this function:

Parallel_Info::~Parallel_Info  ) 
 

Definition at line 57 of file parallel.cc.

References buffer_receive, and buffer_send.

Parallel_Info::Parallel_Info All_Domains dom,
MPI_Comm  comm
[protected]
 

Definition at line 82 of file parallel.cc.

References buffer_receive, buffer_send, length_receive, and length_send.


Member Function Documentation

void Parallel_Info::Add_proc_cell Index3D  I  )  [protected]
 

Definition at line 1299 of file parallel.cc.

References hashtable_proc_function(), hashtable_proc_leng, hashtable_proc_occ, hashtable_proc_start, Point_hashtable_proc::ind, Index3D::ind_x, Index3D::ind_y, Index3D::ind_z, Index1D::index, and Point_hashtable_proc::next.

Referenced by Recursion_calc_coarse_processors().

Here is the call graph for this function:

void Parallel_Info::Add_proc_corner Index3D  I,
int  l
[protected]
 

Definition at line 1320 of file parallel.cc.

References hashtable_proc_corner_function(), hashtable_proc_corner_leng, hashtable_proc_corner_occ, hashtable_proc_corner_start, Point_hashtable_proc_corner::ind, Index3D::ind_x, Index3D::ind_y, Index3D::ind_z, Index1D::index, Point_hashtable_proc_corner::maximal_level, and Point_hashtable_proc_corner::next.

Referenced by Calc_coarse_processors().

Here is the call graph for this function:

void Parallel_Info::Calc_coarse_processors  )  [protected]
 

Definition at line 824 of file parallel.cc.

References Add_proc_corner(), ENDd, ENTd, ESDd, ESTd, Point_hashtable_proc::Give_Index(), iterate_hash_proc, min_level, n_parallel, Index3D::neighbour(), point_proc, Recursion_calc_coarse_processors(), Index3D::Tiefe(), Point_hashtable_proc::used_on_coarser_grid, WNDd, WNTd, WSDd, and WSTd.

Here is the call graph for this function:

bool Parallel_Info::contained_in_boxes Index3D  I  )  const [protected]
 

Definition at line 634 of file parallel.cc.

References coarse_faces, contained_in_old_bounding_box(), info_coarse_faces, and my_index.

Here is the call graph for this function:

bool Parallel_Info::contained_in_old_bounding_box Index3D  I  )  const [protected]
 

Definition at line 618 of file parallel.cc.

References Index1D::coordinate(), Index3D::I_x(), Index3D::I_y(), Index3D::I_z(), Ixl, Ixr, Iyl, Iyr, Izl, Izr, pxr, pyr, and pzr.

Referenced by contained_in_boxes().

Here is the call graph for this function:

D3vector Parallel_Info::coord_in_domain const Index3D  I  )  const [inline, protected]
 

Definition at line 487 of file parallel.h.

References A_bounding, Index3D::coordinate(), H_bounding, D3vector::x, D3vector::y, and D3vector::z.

Here is the call graph for this function:

bool Parallel_Info::Exists_proc Index3D  I  )  [protected]
 

Definition at line 1278 of file parallel.cc.

References hashtable_proc_point().

Here is the call graph for this function:

bool Parallel_Info::Exists_proc_corner Index3D  I  )  [protected]
 

Definition at line 1292 of file parallel.cc.

References hashtable_proc_corner_point().

Here is the call graph for this function:

bool Parallel_Info::exists_process Index3D  I  )  [inline]
 

Definition at line 539 of file parallel.h.

References hashtable_proc_point().

Referenced by Recursion_calc_coarse_processors().

Here is the call graph for this function:

void Parallel_Info::Generate_processes  )  [protected]
 

Definition at line 267 of file parallel.cc.

References A_bounding, rough_domain::Calc_optimal_partitioning(), DEBUG, domain, endl(), rough_domain::Give_n_interior(), H_bounding, max_level, MPI_Barrier(), MPI_COMM_WORLD, my_rank, p, p_level, Partitioning::Print(), refine_level, and Zweipotenz().

Here is the call graph for this function:

void Parallel_Info::Generate_seriel_process  )  [protected]
 

Definition at line 560 of file parallel.cc.

References coarse_faces, give_next_rank_destination(), info_coarse_faces, my_coarsest_level, my_index, my_rank, n_parallel, pxl, pxr, pyl, pyr, pzl, pzr, and Index3D::surface().

Here is the call graph for this function:

double * Parallel_Info::Give_buffer_receive int  d,
int  l
[protected]
 

Definition at line 1245 of file parallel.cc.

References buffer_receive, and length_receive.

Referenced by Grid::Sum_ghost_nodes_Variable(), Grid::Update_boundary_stencil(), Grid::Update_global_stencil(), Grid::Update_Variable(), and Grid::Update_Variable_for_prolongation().

int * Parallel_Info::Give_buffer_receive_info int  l  )  [protected]
 

Definition at line 1228 of file parallel.cc.

References buffer_receive_info, and length_receive_info.

double * Parallel_Info::Give_buffer_send int  d,
int  l
[protected]
 

Definition at line 1237 of file parallel.cc.

References buffer_send, and length_send.

Referenced by Grid::Sum_ghost_nodes_Variable(), Grid::Update_boundary_stencil(), Grid::Update_global_stencil(), Grid::Update_Variable(), and Grid::Update_Variable_for_prolongation().

int * Parallel_Info::Give_buffer_send_info int  l  )  [protected]
 

Definition at line 1220 of file parallel.cc.

References buffer_send_info, and length_send_info.

int Parallel_Info::Give_coarsest_level_of int  rang  ) 
 

MPI_Comm Parallel_Info::Give_comm  )  [inline]
 

Definition at line 259 of file parallel.h.

References comm.

Referenced by Print().

All_Domains* Parallel_Info::Give_domain  )  [inline]
 

Definition at line 264 of file parallel.h.

References domain.

Index3D Parallel_Info::Give_level_index_of int  rang,
int  level
 

Definition at line 241 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), iterate_hash_proc, n_parallel, Point_hashtable_proc::num_proc, point_proc, and Index3D::Tiefe().

Here is the call graph for this function:

int Parallel_Info::Give_my_coarsest_level  )  [inline]
 

Definition at line 246 of file parallel.h.

References my_coarsest_level.

Referenced by Grid_base::Calc_multigrid_points_part2().

Index3D Parallel_Info::Give_my_index  )  const [inline]
 

Definition at line 239 of file parallel.h.

References my_index.

Index3D Parallel_Info::Give_my_level_index int  level  ) 
 

Definition at line 1027 of file parallel.cc.

References my_index, my_level_index, and n_parallel.

Referenced by Grid_base::Calc_multigrid_points_part2(), I_am_responsible_for(), Grid_base::Prepare_communication_all_grids(), Grid_base::Prepare_communication_boundary_stencils(), Grid_base::Prepare_communication_interior_stencils(), Grid_base::Send_cells_parallel(), Grid_base::Send_coarse_grid_points_parallel(), Grid_base::Send_label_parallel(), and Grid_base::Send_multi_grid_points_parallel().

int Parallel_Info::Give_my_rank  )  const [inline]
 

Definition at line 238 of file parallel.h.

References my_rank.

Referenced by Variable::my_rank(), Cell_Variable::my_rank(), and Print_Datas().

int Parallel_Info::Give_n_parallel  )  const [inline]
 

Definition at line 245 of file parallel.h.

References n_parallel.

Referenced by Evaluation_Parallelization_object::Give_next_evaluation_typ().

Index3D Parallel_Info::Give_next_on_level int  d,
Index3D  me
[protected]
 

Definition at line 802 of file parallel.cc.

References Index3D::next(), and Index3D::Tiefe().

Referenced by Grid_base::Prepare_communication_interior_stencils(), Grid_base::Send_boundary_cells_parallel(), Grid_base::Send_coarse_grid_points_parallel(), and Grid_base::Send_grid_points_direct_parallel().

Here is the call graph for this function:

int Parallel_Info::give_next_rank_destination dir_sons  ed,
int  level
[inline, protected]
 

Definition at line 577 of file parallel.h.

References n_parallel, next_rank_destination_coarse_corners, and next_rank_destination_corners.

int Parallel_Info::give_next_rank_destination dir_sons  ed  )  [protected]
 

Definition at line 723 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), Index3D::I_x(), Index3D::I_y(), Index3D::I_z(), iterate_hash_proc, my_index, my_rank, Index3D::next(), Point_hashtable_proc::num_proc, point_proc, and Index3D::Tiefe().

Here is the call graph for this function:

int Parallel_Info::give_next_rank_destination Edges_cell  ed,
int  level
[inline, protected]
 

Definition at line 563 of file parallel.h.

References n_parallel, next_rank_destination_coarse_edges, and next_rank_destination_edges.

int Parallel_Info::give_next_rank_destination Edges_cell  ed  )  [protected]
 

Definition at line 697 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), Index3D::I_x(), Index3D::I_y(), Index3D::I_z(), iterate_hash_proc, my_index, my_rank, Index3D::next(), Point_hashtable_proc::num_proc, point_proc, and Index3D::Tiefe().

Here is the call graph for this function:

int Parallel_Info::give_next_rank_destination dir_3D  d,
int  level
[inline, protected]
 

Definition at line 550 of file parallel.h.

References n_parallel, next_rank_destination, and next_rank_destination_coarse.

Referenced by Generate_seriel_process(), Grid_base::Prepare_communication_coarser_grids(), Grid_base::Prepare_communication_interior_stencils(), Grid::Print_number_of_communication_doubles(), Grid_base::Send_boundary_cells_parallel(), Grid_base::Send_coarse_grid_points_parallel(), Grid_base::send_edges(), Grid_base::Send_grid_points_direct_parallel(), Grid_base::Send_label_parallel(), Grid_base::Send_multi_grid_points_parallel(), Grid::Sum_ghost_nodes_Variable(), Grid::Update_boundary_stencil(), Grid::Update_global_stencil(), Grid::Update_Variable(), and Grid::Update_Variable_for_prolongation().

int Parallel_Info::give_next_rank_source dir_sons  ed,
int  level
[inline, protected]
 

Definition at line 570 of file parallel.h.

References n_parallel, next_rank_source_coarse_corners, and next_rank_source_corners.

int Parallel_Info::give_next_rank_source dir_sons  ed  )  [protected]
 

Definition at line 749 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), Index3D::I_x(), Index3D::I_y(), Index3D::I_z(), iterate_hash_proc, my_index, my_rank, Index3D::next(), Point_hashtable_proc::num_proc, opposite3D(), point_proc, and Index3D::Tiefe().

Here is the call graph for this function:

int Parallel_Info::give_next_rank_source Edges_cell  ed,
int  level
[inline, protected]
 

Definition at line 556 of file parallel.h.

References n_parallel, next_rank_source_coarse_edges, and next_rank_source_edges.

int Parallel_Info::give_next_rank_source Edges_cell  ed  )  [protected]
 

Definition at line 670 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), Index3D::I_x(), Index3D::I_y(), Index3D::I_z(), iterate_hash_proc, my_index, my_rank, Index3D::next(), Point_hashtable_proc::num_proc, opposite3D(), point_proc, and Index3D::Tiefe().

Here is the call graph for this function:

int Parallel_Info::give_next_rank_source dir_3D  d,
int  level
[inline, protected]
 

Definition at line 544 of file parallel.h.

References n_parallel, next_rank_source, and next_rank_source_coarse.

Referenced by Grid_base::Prepare_communication_coarser_grids(), Grid_base::Prepare_communication_interior_stencils(), Grid_base::Send_boundary_cells_parallel(), Grid_base::Send_coarse_grid_points_parallel(), Grid_base::send_edges(), Grid_base::Send_grid_points_direct_parallel(), Grid_base::Send_label_parallel(), Grid_base::Send_multi_grid_points_parallel(), Grid::Sum_ghost_nodes_Variable(), Grid::Update_boundary_stencil(), Grid::Update_global_stencil(), Grid::Update_Variable(), and Grid::Update_Variable_for_prolongation().

int Parallel_Info::give_number_of_active_processes  )  [inline]
 

Definition at line 499 of file parallel.h.

References number_of_active_procs.

Referenced by Grid_base::Print_region_processes_UCD(), Print_region_processes_UCD_normalized(), process_info(), and ParticleLayoutFromGrid::update().

int Parallel_Info::give_number_of_processes  )  [inline]
 

Definition at line 495 of file parallel.h.

References p.

Referenced by process_info().

int Parallel_Info::Give_proc_corner_number Index3D  I  )  [protected]
 

Definition at line 1285 of file parallel.cc.

References hashtable_proc_corner_point(), and Point_hashtable_proc_corner::num_proc.

Here is the call graph for this function:

int Parallel_Info::Give_proc_number Index3D  I  )  [protected]
 

Definition at line 1271 of file parallel.cc.

References hashtable_proc_point(), and Point_hashtable_proc::num_proc.

Here is the call graph for this function:

Point_hashtable_proc_corner * Parallel_Info::hashtable_proc_corner_point Index3D  I  )  const [inline, protected]
 

Definition at line 526 of file parallel.h.

References hashtable_proc_corner_function(), hashtable_proc_corner_leng, hashtable_proc_corner_start, Point_hashtable_proc_corner::ind, Index3D::ind_x, Index3D::ind_y, Index3D::ind_z, Index1D::index, and Point_hashtable_proc_corner::next.

Referenced by Exists_proc_corner(), and Give_proc_corner_number().

Here is the call graph for this function:

Point_hashtable_proc * Parallel_Info::hashtable_proc_point Index3D  I  )  const [inline, protected]
 

Definition at line 512 of file parallel.h.

References hashtable_proc_function(), hashtable_proc_leng, hashtable_proc_start, Point_hashtable_proc::ind, Index3D::ind_x, Index3D::ind_y, Index3D::ind_z, Index1D::index, and Point_hashtable_proc::next.

Referenced by Exists_proc(), exists_process(), and Give_proc_number().

Here is the call graph for this function:

bool Parallel_Info::I_am_active  )  [inline]
 

Definition at line 503 of file parallel.h.

References my_rank, number_of_active_procs, and parallel_version.

Referenced by Grid_base::Calc_multigrid_points_part2(), Grid::Initialize(), Variable::operator=(), Cell_Variable::operator=(), Grid_base::Print_Cell_Variable_AVS_parallel(), Grid::Print_number_of_communication_doubles(), Grid_base::Print_surface_Variable_AVS_parallel(), Grid_base::Print_Variable_AVS_moved_parallel(), Grid_base::Print_Variable_AVS_parallel(), Grid_base::Restrict_label_bo(), Set_rank_3D(), Grid::Sum_ghost_nodes_Variable(), Grid::Update_boundary_stencil(), Grid::Update_global_stencil(), Grid::Update_Variable(), and Grid::Update_Variable_for_prolongation().

bool Parallel_Info::I_am_responsible_for IndexBo  Ib  )  [inline]
 

Definition at line 586 of file parallel.h.

References IndexBo::d, IndexBo::I, MAX(), my_index, n_parallel, Index3D::next(), and Index3D::Tiefe().

Here is the call graph for this function:

bool Parallel_Info::I_am_responsible_for Index3D  I,
int  level
[inline]
 

Definition at line 590 of file parallel.h.

References Give_my_level_index().

Here is the call graph for this function:

bool Parallel_Info::I_am_responsible_for Index3D  I  )  [inline]
 

Definition at line 260 of file parallel.h.

References my_index.

void Parallel_Info::Initialize_hash_proc int  lenght  )  [protected]
 

Definition at line 1351 of file parallel.cc.

References Find_next_prime(), hashtable_proc_leng, hashtable_proc_occ, and hashtable_proc_start.

Here is the call graph for this function:

void Parallel_Info::Initialize_hash_proc_corner int  lenght  )  [protected]
 

Definition at line 1360 of file parallel.cc.

References Find_next_prime(), hashtable_proc_corner_leng, hashtable_proc_corner_occ, and hashtable_proc_corner_start.

Here is the call graph for this function:

void Parallel_Info::make_grid_with_grid_point D3vector  gp,
double  fms
[protected]
 

Definition at line 592 of file parallel.cc.

References A_bounding, H_bounding, L_infty(), D3vector::x, D3vector::y, and D3vector::z.

Referenced by Parallel_Info().

Here is the call graph for this function:

void Parallel_Info::Print_processors  ) 
 

Definition at line 1032 of file parallel.cc.

References Index3D::coordinate(), Point_hashtable_proc::Give_Index(), iterate_hash_proc, my_rank, n_parallel, Point_hashtable_proc::num_proc, point_proc, D3vector::Print(), and Index3D::Tiefe().

Here is the call graph for this function:

void Parallel_Info::Print_region_processes_UCD_normalized ofstream *  Datei  ) 
 

Definition at line 1523 of file printpa.cc.

References Index3D::coordinate(), endl(), Point_hashtable_proc::Give_Index(), Point_hashtable_proc::Give_num_proc(), give_number_of_active_processes(), iterate_hash_proc, my_rank, n_parallel, Index3D::neighbour(), point_proc, Index3D::Tiefe(), D3vector::x, D3vector::y, and D3vector::z.

Here is the call graph for this function:

void Parallel_Info::process_info  ) 
 

Definition at line 228 of file parallel.cc.

References endl(), give_number_of_active_processes(), give_number_of_processes(), and parallel_version.

Here is the call graph for this function:

void Parallel_Info::Recursion_calc_coarse_processors Index3D  I  )  [protected]
 

Definition at line 1006 of file parallel.cc.

References Add_proc_cell(), exists_process(), n_parallel, Index3D::son(), and Index3D::Tiefe().

Referenced by Calc_coarse_processors().

Here is the call graph for this function:

void Parallel_Info::Recursion_study_cells Index3D  I,
Partitioning parti
[protected]
 

Definition at line 1255 of file parallel.cc.

References Index3D::son(), and Index3D::Tiefe().

Here is the call graph for this function:

void Parallel_Info::Set_rank_3D  )  [protected]
 

Definition at line 1046 of file parallel.cc.

References Point_hashtable_proc::Give_Index(), I_am_active(), Index3D::I_q(), iterate_hash_proc, Main_direction(), my_index, Index3D::next(), next_rank_destination, next_rank_source, Point_hashtable_proc::num_proc, OneDpart(), opposite3D(), point_proc, and Index3D::Tiefe().

Here is the call graph for this function:


Member Data Documentation

D3vector Parallel_Info::A_bounding [protected]
 

Definition at line 289 of file parallel.h.

Referenced by coord_in_domain(), Generate_processes(), Grid_base::Give_A(), make_grid_with_grid_point(), and Parallel_Info().

double** Parallel_Info::bo_stencil_receive[Max_number_levels][26] [protected]
 

Definition at line 372 of file parallel.h.

double** Parallel_Info::bo_stencil_send[Max_number_levels][26] [protected]
 

Definition at line 373 of file parallel.h.

Referenced by Grid::Update_boundary_stencil().

double* Parallel_Info::buffer_receive[26] [protected]
 

Definition at line 445 of file parallel.h.

Referenced by Give_buffer_receive(), Parallel_Info(), and ~Parallel_Info().

int* Parallel_Info::buffer_receive_info [protected]
 

Definition at line 417 of file parallel.h.

Referenced by Give_buffer_receive_info().

double* Parallel_Info::buffer_send[26] [protected]
 

Definition at line 444 of file parallel.h.

Referenced by Give_buffer_send(), Parallel_Info(), and ~Parallel_Info().

int* Parallel_Info::buffer_send_info [protected]
 

Definition at line 416 of file parallel.h.

Referenced by Give_buffer_send_info().

Index3D Parallel_Info::coarse_corners[8] [protected]
 

Definition at line 412 of file parallel.h.

IndexEdge Parallel_Info::coarse_edges[12] [protected]
 

Definition at line 410 of file parallel.h.

IndexSurface Parallel_Info::coarse_faces[6] [protected]
 

Definition at line 408 of file parallel.h.

Referenced by contained_in_boxes(), and Generate_seriel_process().

MPI_Comm Parallel_Info::comm [protected]
 

Definition at line 277 of file parallel.h.

Referenced by Give_comm(), Grid_base::Print_surface_Variable_AVS_parallel(), Grid_base::Print_Variable_AVS_moved_parallel(), Grid_base::Print_Variable_AVS_parallel(), and Grid_base::Print_Variable_OpenDx_parallel().

All_Domains* Parallel_Info::domain [protected]
 

Definition at line 276 of file parallel.h.

Referenced by Grid_base::Calc_type_of_edges_uniform(), Grid_base::distanceD(), Generate_processes(), Give_domain(), and Grid_base::Initialize_variable().

double Parallel_Info::H_bounding [protected]
 

Definition at line 288 of file parallel.h.

Referenced by coord_in_domain(), Generate_processes(), Grid_base::H_mesh(), make_grid_with_grid_point(), and Parallel_Info().

int Parallel_Info::hashtable_proc_corner_leng [protected]
 

Definition at line 474 of file parallel.h.

Referenced by Add_proc_corner(), hashtable_proc_corner_point(), and Initialize_hash_proc_corner().

int Parallel_Info::hashtable_proc_corner_occ [protected]
 

Definition at line 475 of file parallel.h.

Referenced by Add_proc_corner(), and Initialize_hash_proc_corner().

Point_hashtable_proc_corner** Parallel_Info::hashtable_proc_corner_start [protected]
 

Definition at line 476 of file parallel.h.

Referenced by Add_proc_corner(), hashtable_proc_corner_point(), and Initialize_hash_proc_corner().

int Parallel_Info::hashtable_proc_leng [protected]
 

Definition at line 468 of file parallel.h.

Referenced by Add_proc_cell(), hashtable_proc_point(), and Initialize_hash_proc().

int Parallel_Info::hashtable_proc_occ [protected]
 

Definition at line 469 of file parallel.h.

Referenced by Add_proc_cell(), and Initialize_hash_proc().

Point_hashtable_proc** Parallel_Info::hashtable_proc_start [protected]
 

Definition at line 470 of file parallel.h.

Referenced by Add_proc_cell(), hashtable_proc_point(), and Initialize_hash_proc().

bool Parallel_Info::info_coarse_corners[8] [protected]
 

Definition at line 413 of file parallel.h.

bool Parallel_Info::info_coarse_edges[12] [protected]
 

Definition at line 411 of file parallel.h.

bool Parallel_Info::info_coarse_faces[6] [protected]
 

Definition at line 409 of file parallel.h.

Referenced by contained_in_boxes(), and Generate_seriel_process().

Index1D Parallel_Info::Ixl [protected]
 

Definition at line 399 of file parallel.h.

Referenced by contained_in_old_bounding_box().

Index1D Parallel_Info::Ixr [protected]
 

Definition at line 399 of file parallel.h.

Referenced by contained_in_old_bounding_box().

Index1D Parallel_Info::Iyl [protected]
 

Definition at line 400 of file parallel.h.

Referenced by contained_in_old_bounding_box().

Index1D Parallel_Info::Iyr [protected]
 

Definition at line 400 of file parallel.h.

Referenced by contained_in_old_bounding_box().

Index1D Parallel_Info::Izl [protected]
 

Definition at line 401 of file parallel.h.

Referenced by contained_in_old_bounding_box().

Index1D Parallel_Info::Izr [protected]
 

Definition at line 401 of file parallel.h.

Referenced by contained_in_old_bounding_box().

int Parallel_Info::length_receive[26] [protected]
 

Definition at line 447 of file parallel.h.

Referenced by Give_buffer_receive(), and Parallel_Info().

int Parallel_Info::length_receive_info [protected]
 

Definition at line 419 of file parallel.h.

Referenced by Give_buffer_receive_info().

int Parallel_Info::length_send[26] [protected]
 

Definition at line 446 of file parallel.h.

Referenced by Give_buffer_send(), and Parallel_Info().

int Parallel_Info::length_send_info [protected]
 

Definition at line 418 of file parallel.h.

Referenced by Give_buffer_send_info().

int Parallel_Info::max_level [protected]
 

Definition at line 299 of file parallel.h.

Referenced by Grid_base::Calc_multigrid_points_part2(), Grid_base::Construct_cell_points_hash0(), Grid_base::Correct_edge(), Generate_processes(), Grid::Give_number_interior_grid_points(), Grid_base::Grid_point_on_finest_level(), Grid_base::Max_level(), Parallel_Info(), Grid_base::Prepare_communication(), Grid::Print_number_of_communication_doubles(), Grid::Print_poi_Info(), Grid_base::Print_Variable_AVS_moved_parallel(), Grid_base::Print_Variable_OpenDx_parallel(), Grid_base::Recursion_calc_interior_cells_Part1(), Grid_base::Recursion_calc_interior_cells_Part2(), Grid_base::Recursion_Calc_type_of_edges_uniform(), Grid_base::Restrict_label_bo(), Grid_base::Send_B_point_in_direction(), and Grid_base::Send_point_direct_in_direction().

int Parallel_Info::min_level [protected]
 

Definition at line 300 of file parallel.h.

Referenced by Calc_coarse_processors(), Grid_base::Min_level(), Grid_base::Prepare_communication_coarser_grids(), and Grid::Print_number_of_communication_doubles().

int Parallel_Info::my_coarsest_level [protected]
 

Definition at line 305 of file parallel.h.

Referenced by Grid_base::Calc_multigrid_points_part1(), Generate_seriel_process(), Give_my_coarsest_level(), Grid_base::Prepare_communication_all_grids(), and Grid_base::Send_coarse_grid_points_parallel().

Index3D Parallel_Info::my_index [protected]
 

Definition at line 304 of file parallel.h.

Referenced by Grid_base::Add_edge_parallel(), Grid_base::Calc_interior_cells_Part1(), Grid_base::Calc_interior_cells_Part2(), Grid_base::Calc_interior_points(), Grid_base::Calc_type_of_edges_uniform(), Grid_base::Construct_cell_points_hash0(), contained_in_boxes(), Grid_base::Correct_edge(), Generate_seriel_process(), Give_my_index(), Give_my_level_index(), give_next_rank_destination(), give_next_rank_source(), I_am_responsible_for(), Grid_base::Print_Cell_Variable_AVS_parallel(), Grid_base::Print_Variable_AVS_moved_parallel(), Grid_base::Print_Variable_AVS_parallel(), Grid_base::Print_Variable_OpenDx_parallel(), Grid_base::Send_B_point_in_direction(), Grid_base::Send_boundary_cells_parallel(), Grid_base::Send_grid_points_direct_parallel(), Grid_base::Send_point_direct_in_direction(), Grid_base::Send_Z_point_in_direction(), Set_rank_3D(), Grid_base::Test_just_this(), and Grid_base::Test_just_this2().

Index3D* Parallel_Info::my_level_index [protected]
 

Definition at line 307 of file parallel.h.

Referenced by Give_my_level_index().

int Parallel_Info::my_rank [protected]
 

Definition at line 303 of file parallel.h.

Referenced by Grid_base::Add_multigrid_point(), Generate_processes(), Generate_seriel_process(), Give_my_rank(), give_next_rank_destination(), give_next_rank_source(), Grid_base::Give_variable(), Grid_base::Give_variable_cellpoi(), Grid_base::Grid_generation(), I_am_active(), Grid::Initialize(), Grid_base::Initialize_variable(), Grid::Print_number_of_communication_doubles(), Grid::Print_poi_Info(), Grid::Print_poi_Info_all(), Grid_base::Print_processes_UCD(), Print_processors(), Grid_base::Print_region_processes_UCD(), Print_region_processes_UCD_normalized(), Grid_base::Print_surface_processes_UCD(), Grid_base::Print_surface_Variable_AVS_parallel(), Grid_base::Print_Variable_AVS_moved_parallel(), Grid_base::Print_Variable_AVS_parallel(), Grid_base::Set_label_bo_mg(), Grid_base::Test_just_this(), and Grid_base::Test_just_this2().

int Parallel_Info::n_parallel [protected]
 

Definition at line 279 of file parallel.h.

Referenced by Calc_coarse_processors(), Generate_seriel_process(), Give_level_index_of(), Give_my_level_index(), Give_n_parallel(), give_next_rank_destination(), give_next_rank_source(), I_am_responsible_for(), Grid_base::Prepare_communication_coarser_grids(), Print_processors(), Grid_base::Print_region_processes_UCD(), Print_region_processes_UCD_normalized(), Recursion_calc_coarse_processors(), Grid_base::Send_boundary_cells_parallel(), Grid_base::send_edges(), and Grid_base::Send_grid_points_direct_parallel().

int Parallel_Info::next_rank_destination[6] [protected]
 

Definition at line 425 of file parallel.h.

Referenced by give_next_rank_destination(), and Set_rank_3D().

int* Parallel_Info::next_rank_destination_coarse[6] [protected]
 

Definition at line 435 of file parallel.h.

Referenced by give_next_rank_destination().

int* Parallel_Info::next_rank_destination_coarse_corners[8] [protected]
 

Definition at line 441 of file parallel.h.

Referenced by give_next_rank_destination().

int* Parallel_Info::next_rank_destination_coarse_edges[12] [protected]
 

Definition at line 438 of file parallel.h.

Referenced by give_next_rank_destination().

int Parallel_Info::next_rank_destination_corners[8] [protected]
 

Definition at line 431 of file parallel.h.

Referenced by give_next_rank_destination().

int Parallel_Info::next_rank_destination_edges[12] [protected]
 

Definition at line 428 of file parallel.h.

Referenced by give_next_rank_destination().

int Parallel_Info::next_rank_source[6] [protected]
 

Definition at line 424 of file parallel.h.

Referenced by give_next_rank_source(), and Set_rank_3D().

int* Parallel_Info::next_rank_source_coarse[6] [protected]
 

Definition at line 434 of file parallel.h.

Referenced by give_next_rank_source().

int* Parallel_Info::next_rank_source_coarse_corners[8] [protected]
 

Definition at line 440 of file parallel.h.

Referenced by give_next_rank_source().

int* Parallel_Info::next_rank_source_coarse_edges[12] [protected]
 

Definition at line 437 of file parallel.h.

Referenced by give_next_rank_source().

int Parallel_Info::next_rank_source_corners[8] [protected]
 

Definition at line 430 of file parallel.h.

Referenced by give_next_rank_source().

int Parallel_Info::next_rank_source_edges[12] [protected]
 

Definition at line 427 of file parallel.h.

Referenced by give_next_rank_source().

int Parallel_Info::number_of_active_procs [protected]
 

Definition at line 396 of file parallel.h.

Referenced by give_number_of_active_processes(), and I_am_active().

int Parallel_Info::number_receive_bo_stencil[Max_number_levels][26] [protected]
 

Definition at line 369 of file parallel.h.

Referenced by Grid_base::Prepare_communication_boundary_stencils().

int** Parallel_Info::number_receive_face [protected]
 

Definition at line 343 of file parallel.h.

Referenced by Grid_base::Prepare_communication().

int** Parallel_Info::number_receive_face_prolongation [protected]
 

Definition at line 346 of file parallel.h.

Referenced by Grid_base::Prepare_communication().

int Parallel_Info::number_receive_stencil[Max_number_levels][26] [protected]
 

Definition at line 379 of file parallel.h.

Referenced by Grid_base::Prepare_communication_interior_stencils().

int Parallel_Info::number_send_bo_stencil[Max_number_levels][26] [protected]
 

Definition at line 370 of file parallel.h.

Referenced by Grid_base::Prepare_communication_boundary_stencils(), and Grid::Update_boundary_stencil().

int** Parallel_Info::number_send_face [protected]
 

Definition at line 344 of file parallel.h.

Referenced by Grid_base::Prepare_communication().

int** Parallel_Info::number_send_face_prolongation [protected]
 

Definition at line 347 of file parallel.h.

Referenced by Grid_base::Prepare_communication(), and Grid::Update_Variable_for_prolongation().

int Parallel_Info::number_send_stencil[Max_number_levels][26] [protected]
 

Definition at line 380 of file parallel.h.

Referenced by Grid_base::Prepare_communication_interior_stencils().

int Parallel_Info::p [protected]
 

Definition at line 278 of file parallel.h.

Referenced by Generate_processes(), and give_number_of_processes().

int Parallel_Info::p_iter [protected]
 

Definition at line 451 of file parallel.h.

int Parallel_Info::p_iter_corner [protected]
 

Definition at line 452 of file parallel.h.

int Parallel_Info::p_level [protected]
 

Definition at line 394 of file parallel.h.

Referenced by Generate_processes().

Point_hashtable_proc* Parallel_Info::point_proc [protected]
 

Definition at line 467 of file parallel.h.

Referenced by Calc_coarse_processors(), Give_level_index_of(), give_next_rank_destination(), give_next_rank_source(), Print_processors(), Grid_base::Print_region_processes_UCD(), Print_region_processes_UCD_normalized(), Set_rank_3D(), and Grid_base::Test_just_this().

Point_hashtable_proc_corner* Parallel_Info::point_proc_corner [protected]
 

Definition at line 473 of file parallel.h.

double Parallel_Info::pxl [protected]
 

Definition at line 403 of file parallel.h.

Referenced by Generate_seriel_process().

double Parallel_Info::pxr [protected]
 

Definition at line 403 of file parallel.h.

Referenced by contained_in_old_bounding_box(), and Generate_seriel_process().

double Parallel_Info::pyl [protected]
 

Definition at line 404 of file parallel.h.

Referenced by Generate_seriel_process().

double Parallel_Info::pyr [protected]
 

Definition at line 404 of file parallel.h.

Referenced by contained_in_old_bounding_box(), and Generate_seriel_process().

double Parallel_Info::pzl [protected]
 

Definition at line 405 of file parallel.h.

Referenced by Generate_seriel_process().

double Parallel_Info::pzr [protected]
 

Definition at line 405 of file parallel.h.

Referenced by contained_in_old_bounding_box(), and Generate_seriel_process().

int Parallel_Info::refine_level [protected]
 

Definition at line 393 of file parallel.h.

Referenced by Generate_processes(), and Parallel_Info().

double** Parallel_Info::stencil_receive[Max_number_levels][26] [protected]
 

Definition at line 382 of file parallel.h.

double** Parallel_Info::stencil_send[Max_number_levels][26] [protected]
 

Definition at line 383 of file parallel.h.

Referenced by Grid::Update_global_stencil().

double**** Parallel_Info::var_receive [protected]
 

Definition at line 349 of file parallel.h.

Referenced by Grid_base::Prepare_communication(), and Grid::Sum_ghost_nodes_Variable().

double**** Parallel_Info::var_receive_prolongation [protected]
 

Definition at line 352 of file parallel.h.

Referenced by Grid_base::Prepare_communication().

double**** Parallel_Info::var_send [protected]
 

Definition at line 350 of file parallel.h.

Referenced by Grid_base::Prepare_communication(), and Grid::Update_Variable().

double**** Parallel_Info::var_send_prolongation [protected]
 

Definition at line 353 of file parallel.h.

Referenced by Grid_base::Prepare_communication(), and Grid::Update_Variable_for_prolongation().


The documentation for this class was generated from the following files:
Generated on Mon Jan 16 14:44:37 2006 for IPPL by  doxygen 1.4.6