27 #ifndef vtkParticleTracerBase_h 28 #define vtkParticleTracerBase_h 64 int CachedDataSetId[2];
110 void PrintSelf(ostream& os,
vtkIndent indent);
111 void PrintParticleHistories();
117 void SetComputeVorticity(
bool);
124 void SetTerminalSpeed(
double);
131 void SetRotationScale(
double);
151 void SetForceReinjectionEveryNSteps(
int);
159 void SetTerminationTime(
double t);
166 void SetIntegratorType(
int type);
167 int GetIntegratorType();
175 void SetStartTime(
double t);
235 void RemoveAllSources();
250 int IgnorePipelineTime;
251 int DisableResetCache;
306 virtual
void Initialize(){}
313 int InitializeInterpolator();
333 virtual void AssignSeedsToProcessors(
double time,
336 int &localAssignedCount);
342 virtual void AssignUniqueIds(
349 void UpdateParticleList(
361 void IntegrateParticle(
363 double currenttime,
double terminationtime,
381 bool ComputeDomainExitLocation(
382 double pos[4],
double p2[4],
double intersection[4],
402 bool InsideBounds(
double point[]);
410 double GetCacheDataTime(
int i);
411 double GetCacheDataTime();
413 virtual void ResetCache();
422 void GetPointDataArrayNames(
vtkDataSet* input, std::vector<std::string>& names);
451 bool SetTerminationTimeNoModify(
double t);
455 double IntegrationStep;
457 bool ComputeVorticity;
458 double RotationScale;
459 double TerminalSpeed;
462 int ReinjectionCounter;
465 int AllFixedGeometry;
469 std::vector<double> InputTimeValues;
471 double TerminationTime;
472 double CurrentTimeValue;
476 int TerminationTimeStep;
480 int ForceReinjectionEveryNSteps;
486 char *ParticleFileName;
487 int EnableParticleWriting;
504 std::vector<bounds> CachedBounds[2];
527 unsigned int NumberOfParticles();
532 static const double Epsilon;
#define VTKFILTERSFLOWPATHS_EXPORT
A helper class for interpolating between times during particle tracing.
abstract class to write particle data to file
represent and manipulate point attribute data
abstract class to specify dataset behavior
#define vtkGetMacro(name, type)
record modification and/or execution time
dynamic, self-adjusting array of float
An abstract class for obtaining the interpolated velocity values at a point.
Hold a reference to a vtkObjectBase instance.
virtual bool SendParticleToAnotherProcess(vtkParticleTracerBaseNamespace::ParticleInformation &, vtkParticleTracerBaseNamespace::ParticleInformation &, vtkPointData *)
concrete dataset represents vertices, lines, polygons, and triangle strips
#define vtkSetStringMacro(name)
ParticleVector::iterator ParticleIterator
#define vtkTypeMacro(thisClass, superclass)
provides thread-safe access to cells
Proxy object to connect input/output ports.
dynamic, self-adjusting array of double
virtual void AppendToExtraPointDataArrays(vtkParticleTracerBaseNamespace::ParticleInformation &)
dynamic, self-adjusting array of char
dynamic, self-adjusting array of int
abstract superclass for composite (multi-block or AMR) datasets
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
abstract superclass for arrays of numeric data
#define vtkGetStringMacro(name)
#define vtkGetObjectMacro(name, type)
virtual void InitializeExtraPointDataArrays(vtkPointData *vtkNotUsed(outputPD))
std::list< ParticleInformation > ParticleDataList
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
object to represent cell connectivity
Composite dataset that organizes datasets into blocks.
std::vector< ParticleInformation > ParticleVector
#define vtkBooleanMacro(name, type)
ParticleDataList::iterator ParticleListIterator
general representation of visualization data
represent and manipulate 3D points
virtual bool UpdateParticleListFromOtherProcesses()
Integrate a set of ordinary differential equations (initial value problem) in time.
A particle tracer for vector fields.
#define vtkSetMacro(name, type)
Multiprocessing communication superclass.