Viskores  1.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
viskores::source::Amr Class Reference

The Amr source creates a dataset similar to VTK's vtkRTAnalyticSource. More...

#include <Amr.h>

Public Member Functions

 Amr ()=default
 
 Amr (viskores::IdComponent dimension, viskores::IdComponent cellsPerDimension=6, viskores::IdComponent numberOfLevels=4)
 
 ~Amr ()=default
 
void SetDimension (viskores::IdComponent dimension)
 
viskores::IdComponent GetDimension () const
 
void SetCellsPerDimension (viskores::IdComponent cellsPerDimension)
 
viskores::IdComponent GetCellsPerDimension () const
 
void SetNumberOfLevels (viskores::IdComponent numberOfLevels)
 
viskores::IdComponent GetNumberOfLevels () const
 
viskores::cont::PartitionedDataSet Execute () const
 

Private Member Functions

template<viskores::IdComponent Dim>
viskores::cont::DataSet GenerateDataSet (unsigned int level, unsigned int amrIndex) const
 

Private Attributes

viskores::IdComponent Dimension = 2
 
viskores::IdComponent CellsPerDimension = 6
 
viskores::IdComponent NumberOfLevels = 4
 

Detailed Description

The Amr source creates a dataset similar to VTK's vtkRTAnalyticSource.

This class generates a predictable structured dataset with a smooth yet interesting set of scalars, which is useful for testing and benchmarking.

The Execute method creates a complete structured dataset that have a point field names 'scalars'

The scalars are computed as:

MaxVal * Gauss + MagX * sin(FrqX*x) + MagY * sin(FrqY*y) + MagZ * cos(FrqZ*z)

The dataset properties are determined by:

The scalar functions is control via:

By default, the following parameters are used:

Constructor & Destructor Documentation

◆ Amr() [1/2]

viskores::source::Amr::Amr ( )
default

◆ Amr() [2/2]

viskores::source::Amr::Amr ( viskores::IdComponent  dimension,
viskores::IdComponent  cellsPerDimension = 6,
viskores::IdComponent  numberOfLevels = 4 
)

◆ ~Amr()

viskores::source::Amr::~Amr ( )
default

Member Function Documentation

◆ Execute()

viskores::cont::PartitionedDataSet viskores::source::Amr::Execute ( ) const

◆ GenerateDataSet()

template<viskores::IdComponent Dim>
viskores::cont::DataSet viskores::source::Amr::GenerateDataSet ( unsigned int  level,
unsigned int  amrIndex 
) const
private

◆ GetCellsPerDimension()

viskores::IdComponent viskores::source::Amr::GetCellsPerDimension ( ) const
inline

◆ GetDimension()

viskores::IdComponent viskores::source::Amr::GetDimension ( ) const
inline

◆ GetNumberOfLevels()

viskores::IdComponent viskores::source::Amr::GetNumberOfLevels ( ) const
inline

◆ SetCellsPerDimension()

void viskores::source::Amr::SetCellsPerDimension ( viskores::IdComponent  cellsPerDimension)
inline

◆ SetDimension()

void viskores::source::Amr::SetDimension ( viskores::IdComponent  dimension)
inline

◆ SetNumberOfLevels()

void viskores::source::Amr::SetNumberOfLevels ( viskores::IdComponent  numberOfLevels)
inline

Member Data Documentation

◆ CellsPerDimension

viskores::IdComponent viskores::source::Amr::CellsPerDimension = 6
private

◆ Dimension

viskores::IdComponent viskores::source::Amr::Dimension = 2
private

◆ NumberOfLevels

viskores::IdComponent viskores::source::Amr::NumberOfLevels = 4
private

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