VTK-m
2.3
|
Advect particles in a vector field. More...
#include <PathParticle.h>
Public Types | |
using | ParticleType = typename FlowTraits< PathParticle >::ParticleType |
using | TerminationType = typename FlowTraits< PathParticle >::TerminationType |
using | AnalysisType = typename FlowTraits< PathParticle >::AnalysisType |
using | ArrayType = typename FlowTraits< PathParticle >::ArrayType |
using | FieldType = typename FlowTraits< PathParticle >::FieldType |
![]() | |
using | ParticleType = typename FlowTraits< PathParticle >::ParticleType |
using | FieldType = typename FlowTraits< PathParticle >::FieldType |
using | TerminationType = typename FlowTraits< PathParticle >::TerminationType |
using | AnalysisType = typename FlowTraits< PathParticle >::AnalysisType |
Public 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 |
![]() | |
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... | |
![]() | |
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 () |
![]() | |
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::FieldSelection & | GetFieldsToPass () const |
Specify which fields get passed from input to output. More... | |
vtkm::filter::FieldSelection & | GetFieldsToPass () |
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... | |
Additional Inherited Members | |
![]() | |
virtual void | ValidateOptions () const |
![]() | |
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::Field & | GetFieldFromDataSet (const vtkm::cont::DataSet &input) const |
Retrieve an input field from a vtkm::cont::DataSet object. More... | |
const vtkm::cont::Field & | GetFieldFromDataSet (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... | |
![]() | |
bool | BlockIdsSet = false |
std::vector< vtkm::Id > | BlockIds |
vtkm::filter::flow::internal::BoundsMap | BoundsMap |
vtkm::Id | NumberOfSteps = 0 |
vtkm::cont::UnknownArrayHandle | Seeds |
vtkm::filter::flow::IntegrationSolverType | SolverType |
vtkm::FloatDefault | StepSize = 0 |
bool | UseThreadedAlgorithm = false |
vtkm::filter::flow::VectorFieldType | VecFieldType |
![]() | |
vtkm::cont::Invoker | Invoke |
Advect particles in a vector field.
Takes as input a vector field and seed locations and generates the end points for each seed through the vector field.
using vtkm::filter::flow::PathParticle::AnalysisType = typename FlowTraits<PathParticle>::AnalysisType |
using vtkm::filter::flow::PathParticle::ArrayType = typename FlowTraits<PathParticle>::ArrayType |
using vtkm::filter::flow::PathParticle::FieldType = typename FlowTraits<PathParticle>::FieldType |
using vtkm::filter::flow::PathParticle::ParticleType = typename FlowTraits<PathParticle>::ParticleType |
using vtkm::filter::flow::PathParticle::TerminationType = typename FlowTraits<PathParticle>::TerminationType |
AnalysisType vtkm::filter::flow::PathParticle::GetAnalysis | ( | const vtkm::cont::DataSet & | data | ) | const |
FieldType vtkm::filter::flow::PathParticle::GetField | ( | const vtkm::cont::DataSet & | data | ) | const |
TerminationType vtkm::filter::flow::PathParticle::GetTermination | ( | const vtkm::cont::DataSet & | data | ) | const |