Go to the documentation of this file.
11 #ifndef vtk_m_worklet_gradient_GradientOutput_h
12 #define vtk_m_worklet_gradient_GradientOutput_h
97 template <
typename FieldType>
129 this->
VorticityPortal = vorticity.PrepareForOutput(size, device, token);
149 divergence(value, output);
156 vorticity(value, output);
179 template <
typename T>
236 template <
typename T>
273 template <
typename ContObjectType,
typename Device>
278 std::declval<ExecObjectFactoryType>().PrepareForExecution(Device(),
279 std::declval<vtkm::cont::Token&>()));
281 template <
typename InputDomainType>
GradientScalarOutputExecutionObject()=default
Manages an array-worth of data.
Definition: ArrayHandle.h:283
bool V
Definition: GradientOutput.h:227
VTKM_CONT vtkm::exec::GradientVecOutputExecutionObject< T > PrepareForExecution(vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
Definition: GradientOutput.h:185
PortalType< BaseTType > DivergencePortal
Definition: GradientOutput.h:174
#define VTKM_EXEC
Definition: ExportMacros.h:51
Groups connected points that have the same field value.
Definition: Atomic.h:19
typename vtkm::VecTraits< T >::BaseComponentType BaseTType
Definition: GradientOutput.h:95
bool SetDivergence
Definition: GradientOutput.h:169
Fetch tag for setting array values with direct indexing.
Definition: FetchTagArrayDirectOut.h:29
bool SetGradient
Definition: GradientOutput.h:168
vtkm::cont::ArrayHandle< ValueType > Gradient
Definition: GradientOutput.h:88
GradientScalarOutputExecutionObject(vtkm::cont::ArrayHandle< ValueType > gradient, vtkm::Id size, vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token)
Definition: GradientOutput.h:42
bool G
Definition: GradientOutput.h:225
PortalType GradientPortal
Definition: GradientOutput.h:57
typename vtkm::VecTraits< ComponentType >::BaseComponentType BaseComponentType
Base component type in the vector.
Definition: VecTraits.h:80
Definition: GradientOutput.h:61
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
typename vtkm::VecTraits< T >::BaseComponentType BaseTType
Definition: GradientOutput.h:35
PortalType< vtkm::Vec< BaseTType, 3 > > VorticityPortal
Definition: GradientOutput.h:175
Definition: GradientOutput.h:32
typename vtkm::VecTraits< T >::BaseComponentType BaseTType
Definition: GradientOutput.h:64
PortalType< ValueType > GradientPortal
Definition: GradientOutput.h:173
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:35
The ExecObject type check passes for any object that inherits from ExecutionObjectBase.
Definition: TypeCheckTagExecObject.h:32
vtkm::Id Size
Definition: GradientOutput.h:233
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC void Set(vtkm::Id index, const vtkm::Vec< T, 3 > &value) const
Definition: GradientOutput.h:139
Definition: Vorticity.h:26
Definition: GradientOutput.h:180
typename HandleType::WritePortalType PortalType
Definition: GradientOutput.h:38
bool SetVorticity
Definition: GradientOutput.h:170
VTKM_CONT vtkm::exec::GradientScalarOutputExecutionObject< T > PrepareForExecution(vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
Definition: GradientOutput.h:66
GradientScalarOutput(bool, bool, bool, bool, vtkm::cont::ArrayHandle< ValueType > &gradient, vtkm::cont::ArrayHandle< BaseTType > &, vtkm::cont::ArrayHandle< vtkm::Vec< BaseTType, 3 >> &, vtkm::cont::ArrayHandle< BaseTType > &, vtkm::Id size)
Definition: GradientOutput.h:74
GradientVecOutput()=default
typename vtkm::VecTraits< vtkm::Vec3f_64 >::BaseComponentType BaseTType
Definition: GradientOutput.h:183
#define VTKM_CONT
Definition: ExportMacros.h:57
VTKM_CONT ExecObjectType operator()(ContObjectType object, const InputDomainType &vtkmNotUsed(inputDomain), vtkm::Id vtkmNotUsed(inputRange), vtkm::Id outputRange, vtkm::cont::Token &token) const
Definition: GradientOutput.h:282
typename StorageType::WritePortalType WritePortalType
Definition: ArrayHandle.h:295
vtkm::cont::ArrayHandle< BaseTType > Qcriterion
Definition: GradientOutput.h:232
vtkm::cont::ArrayHandle< ValueType > Gradient
Definition: GradientOutput.h:229
Transport tag for output arrays.
Definition: GradientOutput.h:269
#define vtkmNotUsed(parameter_name)
Simple macro to identify a parameter as unused.
Definition: ExportMacros.h:128
Definition: QCriterion.h:25
PortalType< BaseTType > QCriterionPortal
Definition: GradientOutput.h:176
vtkm::cont::ArrayHandle< BaseTType > Divergence
Definition: GradientOutput.h:230
Base ExecutionObjectBase for execution objects to inherit from so that you can use an arbitrary objec...
Definition: ExecutionObjectBase.h:31
Definition: DeviceAdapterTag.h:52
GradientVecOutput(bool g, bool d, bool v, bool q, vtkm::cont::ArrayHandle< ValueType > &gradient, vtkm::cont::ArrayHandle< BaseTType > &divergence, vtkm::cont::ArrayHandle< vtkm::Vec< BaseTType, 3 >> &vorticity, vtkm::cont::ArrayHandle< BaseTType > &qcriterion, vtkm::Id size)
Definition: GradientOutput.h:204
The base class for all tags used in a ControlSignature.
Definition: ControlSignatureTagBase.h:36
A short fixed-length array.
Definition: Types.h:767
Definition: GradientOutput.h:92
bool Q
Definition: GradientOutput.h:228
Definition: GradientOutput.h:237
VTKM_CONT WritePortalType PrepareForOutput(vtkm::Id numberOfValues, vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
Prepares (allocates) this array to be used as an output from an operation in the execution environmen...
Definition: ArrayHandle.h:613
decltype(std::declval< ExecObjectFactoryType >().PrepareForExecution(Device(), std::declval< vtkm::cont::Token & >())) ExecObjectType
Definition: GradientOutput.h:279
bool SetQCriterion
Definition: GradientOutput.h:171
Class for transporting from the control to the execution environment.
Definition: Transport.h:38
vtkm::cont::ArrayHandle< vtkm::Vec< BaseTType, 3 > > Vorticity
Definition: GradientOutput.h:231
GradientVecOutputExecutionObject(bool g, bool d, bool v, bool q, vtkm::cont::ArrayHandle< ValueType > gradient, vtkm::cont::ArrayHandle< BaseTType > divergence, vtkm::cont::ArrayHandle< vtkm::Vec< BaseTType, 3 >> vorticity, vtkm::cont::ArrayHandle< BaseTType > qcriterion, vtkm::Id size, vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token)
Definition: GradientOutput.h:102
vtkm::Id Size
Definition: GradientOutput.h:87
Definition: Divergence.h:26
#define VTKM_SUPPRESS_EXEC_WARNINGS
Definition: ExportMacros.h:53
GradientVecOutputExecutionObject()=default
typename vtkm::cont::ArrayHandle< FieldType >::WritePortalType PortalType
Definition: GradientOutput.h:98
bool D
Definition: GradientOutput.h:226
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC void Set(vtkm::Id index, const vtkm::Vec< T, 3 > &value) const
Definition: GradientOutput.h:52
Definition: GradientOutput.h:305