Go to the documentation of this file.
13 #ifndef vtk_m_filter_flow_worklet_EulerIntegrator_h
14 #define vtk_m_filter_flow_worklet_EulerIntegrator_h
26 template <
typename EvaluatorType>
36 template <
typename Particle>
48 velocity = particle.
Velocity(vectors, stepLength);
58 template <
typename EvaluatorType>
77 auto evaluator = this->Evaluator.PrepareForExecution(device, token);
78 using ExecEvaluatorType = decltype(evaluator);
87 #endif // vtk_m_filter_flow_worklet_EulerIntegrator_h
VTKM_EXEC_CONT detail::FloatingPointReturnType< T >::Type MagnitudeSquared(const T &x)
Returns the square of the magnitude of a vector.
Definition: VectorAnalysis.h:64
#define VTKM_EXEC
Definition: ExportMacros.h:51
Groups connected points that have the same field value.
Definition: Atomic.h:19
EvaluatorType Evaluator
Definition: EulerIntegrator.h:62
#define VTKM_EXEC_CONT
Definition: ExportMacros.h:52
Definition: Particle.h:90
VTKM_EXEC_CONT vtkm::Vec3f GetEvaluationPosition(const vtkm::FloatDefault &deltaT) const
Definition: Particle.h:155
VTKM_EXEC_CONT bool CheckFail() const
Definition: GridEvaluatorStatus.h:39
VTKM_CONT auto PrepareForExecution(vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const -> ExecEulerIntegrator< decltype(this->Evaluator.PrepareForExecution(device, token))>
Definition: EulerIntegrator.h:73
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:35
Definition: EulerIntegrator.h:59
VTKM_CONT EulerIntegrator(const EvaluatorType &evaluator)
Definition: EulerIntegrator.h:68
A short variable-length array with maximum length.
Definition: VecVariable.h:30
Definition: IntegratorStatus.h:33
VTKM_EXEC_CONT vtkm::FloatDefault GetTime() const
Definition: Particle.h:141
#define VTKM_CONT
Definition: ExportMacros.h:57
VTKM_EXEC_CONT vtkm::Vec3f Velocity(const vtkm::VecVariable< vtkm::Vec3f, 2 > &vectors, const vtkm::FloatDefault &vtkmNotUsed(length))
Definition: Particle.h:145
Definition: DeviceAdapterTag.h:52
vtkm::Float32 FloatDefault
The floating point type to use when no other precision is specified.
Definition: Types.h:198
EulerIntegrator()=default
EvaluatorType Evaluator
Definition: EulerIntegrator.h:55
VTKM_EXEC IntegratorStatus CheckStep(Particle &particle, vtkm::FloatDefault stepLength, vtkm::Vec3f &velocity) const
Definition: EulerIntegrator.h:37
Definition: EulerIntegrator.h:27
VTKM_EXEC_CONT ExecEulerIntegrator(const EvaluatorType &evaluator)
Definition: EulerIntegrator.h:31
Definition: GridEvaluatorStatus.h:23