ParaView
Public Types | Public Member Functions | Static Public Member Functions | List of all members
vtkAMRDualGridHelper Class Reference

Tools for processing AMR as a dual grid. More...

#include <vtkAMRDualGridHelper.h>

Inherits vtkObject.

Public Types

typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
int Initialize (vtkNonOverlappingAMR *input)
 
int SetupData (vtkNonOverlappingAMR *input, const char *arrayName)
 
const double * GetGlobalOrigin ()
 
const double * GetRootSpacing ()
 
int GetNumberOfBlocks ()
 
int GetNumberOfLevels ()
 
int GetNumberOfBlocksInLevel (int level)
 
vtkAMRDualGridHelperBlockGetBlock (int level, int blockIdx)
 
vtkAMRDualGridHelperBlockGetBlock (int level, int xGrid, int yGrid, int zGrid)
 
void CopyDegenerateRegionBlockToBlock (int regionX, int regionY, int regionZ, vtkAMRDualGridHelperBlock *lowResBlock, vtkDataArray *lowResArray, vtkAMRDualGridHelperBlock *highResBlock, vtkDataArray *highResArray)
 I am generalizing the code that copies lowres blocks to highres ghost regions. More...
 
void QueueRegionRemoteCopy (int regionX, int regionY, int regionZ, vtkAMRDualGridHelperBlock *lowResBlock, vtkDataArray *lowResArray, vtkAMRDualGridHelperBlock *highResBlock, vtkDataArray *highResArray)
 This queues up either a copy from a remote process to this process or a copy from this process to a remote process. More...
 
void ProcessRegionRemoteCopyQueue (bool hackLevelFlag)
 This should be called on every process. More...
 
void ClearRegionRemoteCopyQueue ()
 Call this before adding regions to the queue. More...
 
virtual int GetSkipGhostCopy ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SetSkipGhostCopy (int)
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SkipGhostCopyOn ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SkipGhostCopyOff ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual int GetEnableDegenerateCells ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void SetEnableDegenerateCells (int)
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void EnableDegenerateCellsOn ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void EnableDegenerateCellsOff ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual int GetEnableAsynchronousCommunication ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void SetEnableAsynchronousCommunication (int)
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void EnableAsynchronousCommunicationOn ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void EnableAsynchronousCommunicationOff ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual vtkMultiProcessController * GetController ()
 The controller to use for communication. More...
 
virtual void SetController (vtkMultiProcessController *)
 The controller to use for communication. More...
 
virtual char * GetArrayName ()
 It is convenient to get this here. More...
 

Static Public Member Functions

static vtkAMRDualGridHelperNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAMRDualGridHelperSafeDownCast (vtkObject *o)
 

Detailed Description

Tools for processing AMR as a dual grid.

This helper object was developed to help the AMR dual grid connectivity and integration filter but I also want a dual grid iso surface filter so I mad it a separate class. The API needs to be improved to make it more generally useful. This class will take advantage of some meta information, if available from a coprocessing adaptor. If not available, it will compute the information.

Definition at line 49 of file vtkAMRDualGridHelper.h.

Member Typedef Documentation

◆ Superclass

Definition at line 53 of file vtkAMRDualGridHelper.h.

Member Function Documentation

◆ New()

static vtkAMRDualGridHelper* vtkAMRDualGridHelper::New ( )
static

◆ GetClassName()

virtual const char* vtkAMRDualGridHelper::GetClassName ( )
virtual

◆ IsTypeOf()

static int vtkAMRDualGridHelper::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual int vtkAMRDualGridHelper::IsA ( const char *  type)
virtual

◆ SafeDownCast()

static vtkAMRDualGridHelper* vtkAMRDualGridHelper::SafeDownCast ( vtkObject *  o)
static

◆ PrintSelf()

void vtkAMRDualGridHelper::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

◆ GetSkipGhostCopy()

virtual int vtkAMRDualGridHelper::GetSkipGhostCopy ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SetSkipGhostCopy()

virtual void vtkAMRDualGridHelper::SetSkipGhostCopy ( int  )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SkipGhostCopyOn()

virtual void vtkAMRDualGridHelper::SkipGhostCopyOn ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SkipGhostCopyOff()

virtual void vtkAMRDualGridHelper::SkipGhostCopyOff ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ GetEnableDegenerateCells()

virtual int vtkAMRDualGridHelper::GetEnableDegenerateCells ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ SetEnableDegenerateCells()

virtual void vtkAMRDualGridHelper::SetEnableDegenerateCells ( int  )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ EnableDegenerateCellsOn()

virtual void vtkAMRDualGridHelper::EnableDegenerateCellsOn ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ EnableDegenerateCellsOff()

virtual void vtkAMRDualGridHelper::EnableDegenerateCellsOff ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ GetEnableAsynchronousCommunication()

virtual int vtkAMRDualGridHelper::GetEnableAsynchronousCommunication ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ SetEnableAsynchronousCommunication()

virtual void vtkAMRDualGridHelper::SetEnableAsynchronousCommunication ( int  )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ EnableAsynchronousCommunicationOn()

virtual void vtkAMRDualGridHelper::EnableAsynchronousCommunicationOn ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ EnableAsynchronousCommunicationOff()

virtual void vtkAMRDualGridHelper::EnableAsynchronousCommunicationOff ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ GetController()

virtual vtkMultiProcessController* vtkAMRDualGridHelper::GetController ( )
virtual

The controller to use for communication.

◆ SetController()

virtual void vtkAMRDualGridHelper::SetController ( vtkMultiProcessController *  )
virtual

The controller to use for communication.

◆ Initialize()

int vtkAMRDualGridHelper::Initialize ( vtkNonOverlappingAMR *  input)

◆ SetupData()

int vtkAMRDualGridHelper::SetupData ( vtkNonOverlappingAMR *  input,
const char *  arrayName 
)

◆ GetGlobalOrigin()

const double* vtkAMRDualGridHelper::GetGlobalOrigin ( )
inline

Definition at line 100 of file vtkAMRDualGridHelper.h.

◆ GetRootSpacing()

const double* vtkAMRDualGridHelper::GetRootSpacing ( )
inline

Definition at line 101 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfBlocks()

int vtkAMRDualGridHelper::GetNumberOfBlocks ( )
inline

Definition at line 102 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfLevels()

int vtkAMRDualGridHelper::GetNumberOfLevels ( )
inline

Definition at line 103 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfBlocksInLevel()

int vtkAMRDualGridHelper::GetNumberOfBlocksInLevel ( int  level)

◆ GetBlock() [1/2]

vtkAMRDualGridHelperBlock* vtkAMRDualGridHelper::GetBlock ( int  level,
int  blockIdx 
)

◆ GetBlock() [2/2]

vtkAMRDualGridHelperBlock* vtkAMRDualGridHelper::GetBlock ( int  level,
int  xGrid,
int  yGrid,
int  zGrid 
)

◆ CopyDegenerateRegionBlockToBlock()

void vtkAMRDualGridHelper::CopyDegenerateRegionBlockToBlock ( int  regionX,
int  regionY,
int  regionZ,
vtkAMRDualGridHelperBlock lowResBlock,
vtkDataArray *  lowResArray,
vtkAMRDualGridHelperBlock highResBlock,
vtkDataArray *  highResArray 
)

I am generalizing the code that copies lowres blocks to highres ghost regions.

I need to do this for the clip filter (level mask).

For transitions between levels, degeneracy works well to create and contour wedges and pyramids, but the volume fraction values in the high-level blocks ghost cells need to be the same as the closest cell in the low resolution block. These methods copy low values to high.

◆ QueueRegionRemoteCopy()

void vtkAMRDualGridHelper::QueueRegionRemoteCopy ( int  regionX,
int  regionY,
int  regionZ,
vtkAMRDualGridHelperBlock lowResBlock,
vtkDataArray *  lowResArray,
vtkAMRDualGridHelperBlock highResBlock,
vtkDataArray *  highResArray 
)

This queues up either a copy from a remote process to this process or a copy from this process to a remote process.

Only the local block needs an array. LowRes block is the source.

◆ ProcessRegionRemoteCopyQueue()

void vtkAMRDualGridHelper::ProcessRegionRemoteCopyQueue ( bool  hackLevelFlag)

This should be called on every process.

It processes the queue of region copies. It sends and copies the regions into blocks.

◆ ClearRegionRemoteCopyQueue()

void vtkAMRDualGridHelper::ClearRegionRemoteCopyQueue ( )

Call this before adding regions to the queue.

It clears the queue.

◆ GetArrayName()

virtual char* vtkAMRDualGridHelper::GetArrayName ( )
virtual

It is convenient to get this here.


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