VTK  9.4.20250129
Classes | Public Types | Public Member Functions | List of all members
vtkHyperTreeGridGhostCellsGeneratorInternals Class Reference

Internal class for vtkHyperTreeGridGhostCellsGenerator. More...

#include <vtkHyperTreeGridGhostCellsGeneratorInternals.h>

Classes

struct  CellDataArray
 

Public Types

using CellDataAttributes = std::map< std::string, CellDataArray >
 

Public Member Functions

 vtkHyperTreeGridGhostCellsGeneratorInternals (vtkHyperTreeGridGhostCellsGenerator *self, vtkMultiProcessController *controller, vtkHyperTreeGrid *inputHTG, vtkHyperTreeGrid *outputHTG)
 
void InitializeCellData ()
 Initilize the internal cell data implicit array handler, with the cell arrays as the first entries of as many implicit composite arrays.
 
void BroadcastTreeLocations ()
 Subroutine performing an MPI AllReduce operation, filling the vector HyperTreesMapToProcesses where HyperTreesMapToProcesses[i] is the rank of the process where the root tree indexed i is located.
 
void DetermineNeighbors ()
 Compute the index of neighboring trees and record those that belong to other processes and should be sent to become ghost cells.
 
int ExchangeSizes ()
 Exchange the number of ghost cells to be sent between ranks.
 
int ExchangeTreeDecomposition ()
 Routine to send and receive tree decomposition, and mask values if present for each tree.
 
int ExchangeCellData ()
 Exchange cell data information with the other process to fill in values for ghost cells.
 
void FinalizeCellData ()
 ProcessTrees subroutine creating the output ghost array and adding it to the output HTG.
 

Detailed Description

Internal class for vtkHyperTreeGridGhostCellsGenerator.

This class provides processing subroutines for vtkHyperTreeGridGhostCellsGenerator. It keeps an internal state shared across routines called sequentially.

It should be instanciated by the ProcessTrees method of vtkHyperTreeGridGhostCellsGenerator, after the output HTG has been copied from the input.

Definition at line 35 of file vtkHyperTreeGridGhostCellsGeneratorInternals.h.

Member Typedef Documentation

◆ CellDataAttributes

Constructor & Destructor Documentation

◆ vtkHyperTreeGridGhostCellsGeneratorInternals()

vtkHyperTreeGridGhostCellsGeneratorInternals::vtkHyperTreeGridGhostCellsGeneratorInternals ( vtkHyperTreeGridGhostCellsGenerator self,
vtkMultiProcessController controller,
vtkHyperTreeGrid inputHTG,
vtkHyperTreeGrid outputHTG 
)
Parameters
selfreference to the GCG object, used for debug and error prints
controllerreference to the MPI controller used for parallel operations
inputHTGreference to the input HyperTreeGrid
outputHTGreference to the output HyperTreeGrid

Member Function Documentation

◆ InitializeCellData()

void vtkHyperTreeGridGhostCellsGeneratorInternals::InitializeCellData ( )

Initilize the internal cell data implicit array handler, with the cell arrays as the first entries of as many implicit composite arrays.

◆ BroadcastTreeLocations()

void vtkHyperTreeGridGhostCellsGeneratorInternals::BroadcastTreeLocations ( )

Subroutine performing an MPI AllReduce operation, filling the vector HyperTreesMapToProcesses where HyperTreesMapToProcesses[i] is the rank of the process where the root tree indexed i is located.

◆ DetermineNeighbors()

void vtkHyperTreeGridGhostCellsGeneratorInternals::DetermineNeighbors ( )

Compute the index of neighboring trees and record those that belong to other processes and should be sent to become ghost cells.

◆ ExchangeSizes()

int vtkHyperTreeGridGhostCellsGeneratorInternals::ExchangeSizes ( )

Exchange the number of ghost cells to be sent between ranks.

Send an array to every other processes containing the number of cells in each tree to be sent. Return 1 if the operation was successful, 0 otherwise.

◆ ExchangeTreeDecomposition()

int vtkHyperTreeGridGhostCellsGeneratorInternals::ExchangeTreeDecomposition ( )

Routine to send and receive tree decomposition, and mask values if present for each tree.

Return 1 if the operation was successful, 0 otherwise

◆ ExchangeCellData()

int vtkHyperTreeGridGhostCellsGeneratorInternals::ExchangeCellData ( )

Exchange cell data information with the other process to fill in values for ghost cells.

Return 1 if the operation was successful, 0 otherwise

◆ FinalizeCellData()

void vtkHyperTreeGridGhostCellsGeneratorInternals::FinalizeCellData ( )

ProcessTrees subroutine creating the output ghost array and adding it to the output HTG.


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