88 #ifndef vtkLagrangianParticleTracker_h
89 #define vtkLagrangianParticleTracker_h
93 #include "vtkFiltersFlowPathsModule.h"
114 struct IntegratingFunctor;
125 STEP_LAST_CELL_LENGTH = 0,
126 STEP_CUR_CELL_LENGTH = 1,
127 STEP_LAST_CELL_VEL_DIR = 2,
128 STEP_CUR_CELL_VEL_DIR = 3,
129 STEP_LAST_CELL_DIV_THEO = 4,
130 STEP_CUR_CELL_DIV_THEO = 5
131 } CellLengthComputation;
157 vtkSetMacro(GeneratePolyVertexInteractionOutput,
bool);
158 vtkGetMacro(GeneratePolyVertexInteractionOutput,
bool);
185 vtkSetMacro(CellLengthComputationMode,
int);
186 vtkGetMacro(CellLengthComputationMode,
int);
193 vtkSetMacro(StepFactor,
double);
194 vtkGetMacro(StepFactor,
double);
201 vtkSetMacro(StepFactorMin,
double);
202 vtkGetMacro(StepFactorMin,
double);
209 vtkSetMacro(StepFactorMax,
double);
210 vtkGetMacro(StepFactorMax,
double);
217 vtkSetMacro(MaximumNumberOfSteps,
int);
218 vtkGetMacro(MaximumNumberOfSteps,
int);
226 vtkSetMacro(MaximumIntegrationTime,
double);
227 vtkGetMacro(MaximumIntegrationTime,
double);
237 vtkSetMacro(AdaptiveStepReintegration,
bool);
238 vtkGetMacro(AdaptiveStepReintegration,
bool);
239 vtkBooleanMacro(AdaptiveStepReintegration,
bool);
247 vtkSetMacro(GenerateParticlePathsOutput,
bool);
248 vtkGetMacro(GenerateParticlePathsOutput,
bool);
249 vtkBooleanMacro(GenerateParticlePathsOutput,
bool);
323 std::queue<vtkLagrangianParticle*>& particles,
vtkPointData* seedData);
326 int nVar, std::queue<vtkLagrangianParticle*>& particles);
327 virtual bool UpdateSurfaceCacheIfNeeded(
vtkDataObject*& surfaces);
333 virtual bool InitializePathsOutput(
339 virtual bool InitializeInteractionOutput(
344 static void InsertPolyVertexCell(
vtkPolyData* polydata);
345 static void InsertVertexCells(
vtkPolyData* polydata);
347 virtual void GetParticleFeed(std::queue<vtkLagrangianParticle*>& particleQueue);
353 std::queue<vtkLagrangianParticle*>&,
vtkPolyData* particlePathsOutput,
360 vtkIdList* particlePathPointId,
bool prev =
false);
366 unsigned int interactedSurfaceFlatIndex,
vtkDataObject* interactionOutput);
374 double t,
double& delT,
double& delTActual,
double minStep,
double maxStep,
double cellLength,
387 bool GenerateParticlePathsOutput =
true;
406 friend struct IntegratingFunctor;