VTK-m  2.2
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived > Class Template Reference

Superclass for filters that operate on flow that changes over time. More...

#include <FilterParticleAdvectionUnsteadyState.h>

Inheritance diagram for vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >:
vtkm::filter::flow::FilterParticleAdvection vtkm::filter::Filter

Public Types

using ParticleType = typename FlowTraits< Derived >::ParticleType
 
using FieldType = typename FlowTraits< Derived >::FieldType
 
using TerminationType = typename FlowTraits< Derived >::TerminationType
 
using AnalysisType = typename FlowTraits< Derived >::AnalysisType
 

Public Member Functions

void SetPreviousTime (vtkm::FloatDefault t1)
 Specifies time value for the input data set. More...
 
void SetNextTime (vtkm::FloatDefault t2)
 Specifies time value for the next data set. More...
 
void SetNextDataSet (const vtkm::cont::DataSet &ds)
 Specifies the data for the later time step. More...
 
void SetNextDataSet (const vtkm::cont::PartitionedDataSet &pds)
 Specifies the data for the later time step. More...
 
- Public Member Functions inherited from vtkm::filter::flow::FilterParticleAdvection
bool CanThread () const override
 Returns whether the filter can execute on partitions in concurrent threads. More...
 
void SetStepSize (vtkm::FloatDefault s)
 Specifies the step size used for the numerical integrator. More...
 
void SetNumberOfSteps (vtkm::Id n)
 Specifies the maximum number of integration steps for each particle. More...
 
template<typename ParticleType >
void SetSeeds (vtkm::cont::ArrayHandle< ParticleType > &seeds)
 Specify the seed locations for the particle advection. More...
 
template<typename ParticleType >
void SetSeeds (const std::vector< ParticleType > &seeds, vtkm::CopyFlag copyFlag=vtkm::CopyFlag::On)
 Specify the seed locations for the particle advection. More...
 
void SetBlockIDs (const std::vector< vtkm::Id > &blockIds)
 
void SetSolverRK4 ()
 
void SetSolverEuler ()
 
bool GetUseThreadedAlgorithm ()
 
void SetUseThreadedAlgorithm (bool val)
 
void SetUseAsynchronousCommunication ()
 
bool GetUseAsynchronousCommunication ()
 
void SetUseSynchronousCommunication ()
 
bool GetUseSynchronousCommunication ()
 
- Public Member Functions inherited from vtkm::filter::Filter
 Filter ()
 
virtual ~Filter ()
 
vtkm::cont::DataSet Execute (const vtkm::cont::DataSet &input)
 Executes the filter on the input and produces a result dataset. More...
 
vtkm::cont::PartitionedDataSet Execute (const vtkm::cont::PartitionedDataSet &input)
 Executes the filter on the input PartitionedDataSet and produces a result PartitionedDataSet. More...
 
void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (vtkm::filter::FieldSelection &&fieldsToPass)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass, vtkm::filter::FieldSelection::Mode mode)
 
void SetFieldsToPass (std::initializer_list< std::string > fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (std::initializer_list< std::pair< std::string, vtkm::cont::Field::Association >> fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const std::string &fieldname, vtkm::cont::Field::Association association, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select)
 Specify which fields get passed from input to output. More...
 
void SetFieldsToPass (const std::string &fieldname, vtkm::filter::FieldSelection::Mode mode)
 Specify which fields get passed from input to output. More...
 
const vtkm::filter::FieldSelectionGetFieldsToPass () const
 Specify which fields get passed from input to output. More...
 
vtkm::filter::FieldSelectionGetFieldsToPass ()
 Specify which fields get passed from input to output. More...
 
void SetPassCoordinateSystems (bool flag)
 Specify whether to always pass coordinate systems. More...
 
bool GetPassCoordinateSystems () const
 Specify whether to always pass coordinate systems. More...
 
void SetOutputFieldName (const std::string &name)
 Specifies the name of the output field generated. More...
 
const std::string & GetOutputFieldName () const
 Specifies the name of the output field generated. More...
 
void SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 Specifies a field to operate on. More...
 
void SetActiveField (vtkm::IdComponent index, const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 Specifies a field to operate on. More...
 
const std::string & GetActiveFieldName (vtkm::IdComponent index=0) const
 Specifies a field to operate on. More...
 
vtkm::cont::Field::Association GetActiveFieldAssociation (vtkm::IdComponent index=0) const
 Specifies a field to operate on. More...
 
void SetActiveCoordinateSystem (vtkm::Id coord_idx)
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
void SetActiveCoordinateSystem (vtkm::IdComponent index, vtkm::Id coord_idx)
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
vtkm::Id GetActiveCoordinateSystemIndex (vtkm::IdComponent index=0) const
 Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet. More...
 
void SetUseCoordinateSystemAsField (bool val)
 Specifies whether to use point coordinates as the input field. More...
 
void SetUseCoordinateSystemAsField (vtkm::IdComponent index, bool val)
 Specifies whether to use point coordinates as the input field. More...
 
bool GetUseCoordinateSystemAsField (vtkm::IdComponent index=0) const
 Specifies whether to use point coordinates as the input field. More...
 
vtkm::IdComponent GetNumberOfActiveFields () const
 Return the number of active fields currently set. More...
 
void SetThreadsPerCPU (vtkm::Id numThreads)
 
void SetThreadsPerGPU (vtkm::Id numThreads)
 
vtkm::Id GetThreadsPerCPU () const
 
vtkm::Id GetThreadsPerGPU () const
 
bool GetRunMultiThreadedFilter () const
 
void SetRunMultiThreadedFilter (bool val)
 
void SetInvoker (vtkm::cont::Invoker inv)
 Specify the vtkm::cont::Invoker to be used to execute worklets by this filter instance. More...
 

Private Member Functions

FieldType GetField (const vtkm::cont::DataSet &data) const
 
TerminationType GetTermination (const vtkm::cont::DataSet &data) const
 
AnalysisType GetAnalysis (const vtkm::cont::DataSet &data) const
 
vtkm::cont::PartitionedDataSet DoExecutePartitions (const vtkm::cont::PartitionedDataSet &input)
 

Private Attributes

vtkm::cont::PartitionedDataSet Input2
 
vtkm::FloatDefault Time1 = -1
 
vtkm::FloatDefault Time2 = -1
 

Additional Inherited Members

- Protected Member Functions inherited from vtkm::filter::flow::FilterParticleAdvection
virtual void ValidateOptions () const
 
- Protected Member Functions inherited from vtkm::filter::Filter
vtkm::cont::DataSet CreateResult (const vtkm::cont::DataSet &inDataSet) const
 Create the output data set for DoExecute. More...
 
vtkm::cont::DataSet CreateResultField (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::Field &resultField) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultField (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, vtkm::cont::Field::Association resultFieldAssociation, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultFieldPoint (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::DataSet CreateResultFieldCell (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const
 Create the output data set for DoExecute More...
 
vtkm::cont::PartitionedDataSet CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::PartitionedDataSet CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResult (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const vtkm::cont::CoordinateSystem &resultCoordSystem, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
template<typename FieldMapper >
vtkm::cont::DataSet CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const std::string &coordsName, const vtkm::cont::UnknownArrayHandle &coordsData, FieldMapper &&fieldMapper) const
 Create the output data set for DoExecute. More...
 
const vtkm::cont::FieldGetFieldFromDataSet (const vtkm::cont::DataSet &input) const
 Retrieve an input field from a vtkm::cont::DataSet object. More...
 
const vtkm::cont::FieldGetFieldFromDataSet (vtkm::IdComponent index, const vtkm::cont::DataSet &input) const
 Retrieve an input field from a vtkm::cont::DataSet object. More...
 
template<typename Functor , typename... Args>
void CastAndCallScalarField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input scalar field. More...
 
template<typename Functor , typename... Args>
void CastAndCallScalarField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input scalar field. More...
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
void CastAndCallVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input vector field. More...
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
void CastAndCallVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 Convenience method to get the array from a filter's input vector field. More...
 
template<typename Functor , typename... Args>
void CastAndCallVariableVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
 
template<typename Functor , typename... Args>
void CastAndCallVariableVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
 
- Protected Attributes inherited from vtkm::filter::flow::FilterParticleAdvection
bool BlockIdsSet = false
 
std::vector< vtkm::IdBlockIds
 
vtkm::Id NumberOfSteps = 0
 
vtkm::cont::UnknownArrayHandle Seeds
 
vtkm::filter::flow::IntegrationSolverType SolverType
 
vtkm::FloatDefault StepSize = 0
 
bool UseAsynchronousCommunication = true
 
bool UseThreadedAlgorithm = false
 
vtkm::filter::flow::VectorFieldType VecFieldType
 
- Protected Attributes inherited from vtkm::filter::Filter
vtkm::cont::Invoker Invoke
 

Detailed Description

template<typename Derived>
class vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >

Superclass for filters that operate on flow that changes over time.

Member Typedef Documentation

◆ AnalysisType

template<typename Derived >
using vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::AnalysisType = typename FlowTraits<Derived>::AnalysisType

◆ FieldType

template<typename Derived >
using vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::FieldType = typename FlowTraits<Derived>::FieldType

◆ ParticleType

template<typename Derived >
using vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::ParticleType = typename FlowTraits<Derived>::ParticleType

◆ TerminationType

template<typename Derived >
using vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::TerminationType = typename FlowTraits<Derived>::TerminationType

Member Function Documentation

◆ DoExecutePartitions()

template<typename Derived >
vtkm::cont::PartitionedDataSet vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::DoExecutePartitions ( const vtkm::cont::PartitionedDataSet input)
privatevirtual

Reimplemented from vtkm::filter::Filter.

◆ GetAnalysis()

template<typename Derived >
AnalysisType vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::GetAnalysis ( const vtkm::cont::DataSet data) const
private

◆ GetField()

template<typename Derived >
FieldType vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::GetField ( const vtkm::cont::DataSet data) const
private

◆ GetTermination()

template<typename Derived >
TerminationType vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::GetTermination ( const vtkm::cont::DataSet data) const
private

◆ SetNextDataSet() [1/2]

template<typename Derived >
void vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::SetNextDataSet ( const vtkm::cont::DataSet ds)
inline

Specifies the data for the later time step.

◆ SetNextDataSet() [2/2]

template<typename Derived >
void vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::SetNextDataSet ( const vtkm::cont::PartitionedDataSet pds)
inline

Specifies the data for the later time step.

◆ SetNextTime()

template<typename Derived >
void vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::SetNextTime ( vtkm::FloatDefault  t2)
inline

Specifies time value for the next data set.

This is the data set passed into SetNextDataSet() before Execute() is called.

◆ SetPreviousTime()

template<typename Derived >
void vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::SetPreviousTime ( vtkm::FloatDefault  t1)
inline

Specifies time value for the input data set.

This is the data set that passed into the Execute() method.

Member Data Documentation

◆ Input2

template<typename Derived >
vtkm::cont::PartitionedDataSet vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::Input2
private

◆ Time1

template<typename Derived >
vtkm::FloatDefault vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::Time1 = -1
private

◆ Time2

template<typename Derived >
vtkm::FloatDefault vtkm::filter::flow::FilterParticleAdvectionUnsteadyState< Derived >::Time2 = -1
private

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