27 #ifndef vtkTemporalStreamTracer_h 28 #define vtkTemporalStreamTracer_h 30 #include "vtkFiltersFlowPathsModule.h" 59 int CachedDataSetId[2];
89 void PrintSelf(ostream& os,
vtkIndent indent)
override;
102 vtkSetMacro(TimeStep,
unsigned int);
103 vtkGetMacro(TimeStep,
unsigned int);
124 vtkSetMacro(TimeStepResolution,
double);
125 vtkGetMacro(TimeStepResolution,
double);
138 vtkSetMacro(ForceReinjectionEveryNSteps,
int);
139 vtkGetMacro(ForceReinjectionEveryNSteps,
int);
145 TERMINATION_STEP_UNIT
155 vtkSetMacro(TerminationTime,
double);
156 vtkGetMacro(TerminationTime,
double);
164 vtkSetMacro(TerminationTimeUnit,
int);
165 vtkGetMacro(TerminationTimeUnit,
int);
167 {this->SetTerminationTimeUnit(TERMINATION_TIME_UNIT);};
169 {this->SetTerminationTimeUnit(TERMINATION_STEP_UNIT);};
216 vtkSetStringMacro(ParticleFileName);
217 vtkGetStringMacro(ParticleFileName);
227 vtkBooleanMacro(EnableParticleWriting,
vtkTypeBool);
235 void RemoveAllSources();
288 int InitializeInterpolator();
308 virtual void AssignSeedsToProcessors(
311 int &LocalAssignedCount);
317 virtual void AssignUniqueIds(
324 void UpdateParticleList(
331 virtual void TransmitReceiveParticles(
339 void IntegrateParticle(
341 double currenttime,
double terminationtime,
352 double velocity[3],
double delT);
356 bool SendParticleToAnotherProcess(
358 double point1[4],
double delT);
360 void AddParticleToMPISendList(
368 bool ComputeDomainExitLocation(
369 double pos[4],
double p2[4],
double intersection[4],
398 double CurrentTimeSteps[2];
455 std::vector<bounds> CachedBounds[2];
458 bool InsideBounds(
double point[]);
A helper class for interpolating between times during particle tracing.
vtkSmartPointer< vtkDoubleArray > cellVectors
abstract class to write particle data to file
unsigned int NumberOfParticles
vtkIdType UniqueIdCounterMPI
vtkIdType UniqueIdCounter
int ForceReinjectionEveryNSteps
abstract class to specify dataset behavior
vtkSmartPointer< vtkTemporalInterpolatedVelocityField > Interpolator
vtkSmartPointer< vtkFloatArray > ParticleAge
record modification and/or execution time
dynamic, self-adjusting array of float
An abstract class for obtaining the interpolated velocity values at a point.
vtkSmartPointer< vtkPointData > OutputPointData
std::list< ParticleInformation > ParticleDataList
vtkTemporalStreamTracerNamespace::ParticleDataList ParticleHistories
std::vector< double > InputTimeValues
vtkSmartPointer< vtkIntArray > InjectedStepIds
ParticleVector::iterator ParticleIterator
void SetTerminationTimeUnitToStepUnit()
The units of TerminationTime may be actual 'Time' units as described by the data, or just TimeSteps o...
provides thread-safe access to cells
double TimeStepResolution
vtkTimeStamp ParticleInjectionTime
Proxy object to connect input/output ports.
dynamic, self-adjusting array of double
unsigned int ActualTimeStep
dynamic, self-adjusting array of char
dynamic, self-adjusting array of int
unsigned int NumberOfInputTimeSteps
vtkTypeBool IgnorePipelineTime
vtkSmartPointer< vtkIntArray > InjectedPointIds
a simple class to control print indentation
abstract superclass for arrays of numeric data
A Parallel Particle tracer for unsteady vector fields.
vtkAbstractParticleWriter * ParticleWriter
vtkTypeBool EnableParticleWriting
vtkSmartPointer< vtkFloatArray > ParticleVorticity
vtkSmartPointer< vtkCellArray > ParticleCells
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
object to represent cell connectivity
vtkSmartPointer< vtkCharArray > ParticleSourceIds
vtkSmartPointer< vtkPoints > OutputCoordinates
vtkTemporalStreamTracerNamespace::ParticleVector MPISendList
Composite dataset that organizes datasets into blocks.
vtkSmartPointer< vtkFloatArray > ParticleAngularVel
ParticleDataList::iterator ParticleListIterator
std::vector< double > OutputTimeValues
vtkSmartPointer< vtkIntArray > ErrorCodeArray
vtkSmartPointer< vtkIntArray > ParticleIds
vtkTemporalStreamTracerNamespace::ParticleVector LocalSeeds
general representation of visualization data
std::vector< ParticleInformation > ParticleVector
represent and manipulate 3D points
void SetTerminationTimeUnitToTimeUnit()
The units of TerminationTime may be actual 'Time' units as described by the data, or just TimeSteps o...
vtkSmartPointer< vtkFloatArray > ParticleRotation
Integrate a set of ordinary differential equations (initial value problem) in time.
Multiprocessing communication superclass.