VTK-m  2.1
Public Member Functions | List of all members
vtkm::source::Wavelet Class Referencefinal

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

#include <Wavelet.h>

Inheritance diagram for vtkm::source::Wavelet:
vtkm::source::Source

Public Member Functions

 Wavelet ()=default
 
 ~Wavelet ()=default
 
 Wavelet (vtkm::Id3 minExtent, vtkm::Id3 maxExtent={ 10 })
 
void SetCenter (const vtkm::Vec3f &center)
 Specifies the center of the wavelet function. More...
 
vtkm::Vec3f GetCenter () const
 Specifies the center of the wavelet function. More...
 
- Public Member Functions inherited from vtkm::source::Source
virtual ~Source ()=default
 
vtkm::cont::DataSet Execute () const
 
vtkm::Vec3f Center = { 0, 0, 0 }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f Origin = { vtkm::Nan<vtkm::FloatDefault>() }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f Spacing = { 1, 1, 1 }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f Frequency = { 60.0f, 30.0f, 40.0f }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f Magnitude = { 10.0f, 18.0f, 5.0f }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Id3 MinimumExtent = { -10, -10, -10 }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Id3 MaximumExtent = { 10, 10, 10 }
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::FloatDefault MaximumValue = 255.0f
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::FloatDefault StandardDeviation = 0.5f
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetOrigin (const vtkm::Vec3f &origin)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f GetOrigin () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetSpacing (const vtkm::Vec3f &spacing)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f GetSpacing () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetFrequency (const vtkm::Vec3f &frequency)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f GetFrequency () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetMagnitude (const vtkm::Vec3f &magnitude)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Vec3f GetMagnitude () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetMinimumExtent (const vtkm::Id3 &minExtent)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Id3 GetMinimumExtent () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetMaximumExtent (const vtkm::Id3 &maxExtent)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::Id3 GetMaximumExtent () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetExtent (const vtkm::Id3 &minExtent, const vtkm::Id3 &maxExtent)
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetMaximumValue (const vtkm::FloatDefault &maxVal)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::FloatDefault GetMaximumValue () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
void SetStandardDeviation (const vtkm::FloatDefault &stdev)
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::FloatDefault GetStandardDeviation () const
 Specifies the origin (lower left corner) of the dataset created. More...
 
vtkm::cont::DataSet DoExecute () const override
 Specifies the origin (lower left corner) of the dataset created. More...
 
template<vtkm::IdComponent Dim>
vtkm::cont::Field GeneratePointField (const vtkm::cont::CellSetStructured< Dim > &cellset, const std::string &name) const
 Specifies the origin (lower left corner) of the dataset created. More...
 
template<vtkm::IdComponent Dim>
vtkm::cont::DataSet GenerateDataSet (vtkm::cont::CoordinateSystem coords) const
 Specifies the origin (lower left corner) of the dataset created. More...
 

Additional Inherited Members

- Protected Attributes inherited from vtkm::source::Source
vtkm::cont::Invoker Invoke
 

Detailed Description

The Wavelet 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 has a point field named RTData

The RTData 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

◆ Wavelet() [1/2]

vtkm::source::Wavelet::Wavelet ( )
default

◆ ~Wavelet()

vtkm::source::Wavelet::~Wavelet ( )
default

◆ Wavelet() [2/2]

vtkm::source::Wavelet::Wavelet ( vtkm::Id3  minExtent,
vtkm::Id3  maxExtent = { 10 } 
)

Member Function Documentation

◆ DoExecute()

vtkm::cont::DataSet vtkm::source::Wavelet::DoExecute ( ) const
overrideprivatevirtual

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

Implements vtkm::source::Source.

◆ GenerateDataSet()

template<vtkm::IdComponent Dim>
vtkm::cont::DataSet vtkm::source::Wavelet::GenerateDataSet ( vtkm::cont::CoordinateSystem  coords) const
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GeneratePointField()

template<vtkm::IdComponent Dim>
vtkm::cont::Field vtkm::source::Wavelet::GeneratePointField ( const vtkm::cont::CellSetStructured< Dim > &  cellset,
const std::string &  name 
) const
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetCenter()

vtkm::Vec3f vtkm::source::Wavelet::GetCenter ( ) const
inline

Specifies the center of the wavelet function.

Note that the center of the function can be anywhere in space including outside the domain of the data created (as specified by the origin, spacing and extent).

◆ GetFrequency()

vtkm::Vec3f vtkm::source::Wavelet::GetFrequency ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetMagnitude()

vtkm::Vec3f vtkm::source::Wavelet::GetMagnitude ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetMaximumExtent()

vtkm::Id3 vtkm::source::Wavelet::GetMaximumExtent ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetMaximumValue()

vtkm::FloatDefault vtkm::source::Wavelet::GetMaximumValue ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetMinimumExtent()

vtkm::Id3 vtkm::source::Wavelet::GetMinimumExtent ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetOrigin()

vtkm::Vec3f vtkm::source::Wavelet::GetOrigin ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetSpacing()

vtkm::Vec3f vtkm::source::Wavelet::GetSpacing ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ GetStandardDeviation()

vtkm::FloatDefault vtkm::source::Wavelet::GetStandardDeviation ( ) const
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetCenter()

void vtkm::source::Wavelet::SetCenter ( const vtkm::Vec3f center)
inline

Specifies the center of the wavelet function.

Note that the center of the function can be anywhere in space including outside the domain of the data created (as specified by the origin, spacing and extent).

◆ SetExtent()

void vtkm::source::Wavelet::SetExtent ( const vtkm::Id3 minExtent,
const vtkm::Id3 maxExtent 
)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetFrequency()

void vtkm::source::Wavelet::SetFrequency ( const vtkm::Vec3f frequency)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetMagnitude()

void vtkm::source::Wavelet::SetMagnitude ( const vtkm::Vec3f magnitude)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetMaximumExtent()

void vtkm::source::Wavelet::SetMaximumExtent ( const vtkm::Id3 maxExtent)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetMaximumValue()

void vtkm::source::Wavelet::SetMaximumValue ( const vtkm::FloatDefault maxVal)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetMinimumExtent()

void vtkm::source::Wavelet::SetMinimumExtent ( const vtkm::Id3 minExtent)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetOrigin()

void vtkm::source::Wavelet::SetOrigin ( const vtkm::Vec3f origin)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetSpacing()

void vtkm::source::Wavelet::SetSpacing ( const vtkm::Vec3f spacing)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ SetStandardDeviation()

void vtkm::source::Wavelet::SetStandardDeviation ( const vtkm::FloatDefault stdev)
inline

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

Member Data Documentation

◆ Center

vtkm::Vec3f vtkm::source::Wavelet::Center = { 0, 0, 0 }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ Frequency

vtkm::Vec3f vtkm::source::Wavelet::Frequency = { 60.0f, 30.0f, 40.0f }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ Magnitude

vtkm::Vec3f vtkm::source::Wavelet::Magnitude = { 10.0f, 18.0f, 5.0f }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ MaximumExtent

vtkm::Id3 vtkm::source::Wavelet::MaximumExtent = { 10, 10, 10 }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ MaximumValue

vtkm::FloatDefault vtkm::source::Wavelet::MaximumValue = 255.0f
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ MinimumExtent

vtkm::Id3 vtkm::source::Wavelet::MinimumExtent = { -10, -10, -10 }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ Origin

vtkm::Vec3f vtkm::source::Wavelet::Origin = { vtkm::Nan<vtkm::FloatDefault>() }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ Spacing

vtkm::Vec3f vtkm::source::Wavelet::Spacing = { 1, 1, 1 }
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.

◆ StandardDeviation

vtkm::FloatDefault vtkm::source::Wavelet::StandardDeviation = 0.5f
private

Specifies the origin (lower left corner) of the dataset created.

If the origin is not specified, it will be placed such that extent index (0, 0, 0) is at the coordinate system origin.


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