26 #ifndef vtkTemporalStreamTracer_h
27 #define vtkTemporalStreamTracer_h
61 int CachedDataSetId[2];
101 vtkSetMacro(TimeStep,
unsigned int);
102 vtkGetMacro(TimeStep,
unsigned int);
108 vtkSetMacro(IgnorePipelineTime,
int);
109 vtkGetMacro(IgnorePipelineTime,
int);
110 vtkBooleanMacro(IgnorePipelineTime,
int);
119 vtkSetMacro(TimeStepResolution,
double);
120 vtkGetMacro(TimeStepResolution,
double);
131 vtkSetMacro(ForceReinjectionEveryNSteps,
int);
132 vtkGetMacro(ForceReinjectionEveryNSteps,
int);
139 TERMINATION_STEP_UNIT
148 vtkSetMacro(TerminationTime,
double);
149 vtkGetMacro(TerminationTime,
double);
155 vtkSetMacro(TerminationTimeUnit,
int);
156 vtkGetMacro(TerminationTimeUnit,
int);
158 {this->SetTerminationTimeUnit(TERMINATION_TIME_UNIT);};
160 {this->SetTerminationTimeUnit(TERMINATION_STEP_UNIT);};
170 vtkSetMacro(StaticSeeds,
int);
171 vtkGetMacro(StaticSeeds,
int);
172 vtkBooleanMacro(StaticSeeds,
int);
181 vtkSetMacro(StaticMesh,
int);
182 vtkGetMacro(StaticMesh,
int);
183 vtkBooleanMacro(StaticMesh,
int);
198 vtkSetStringMacro(ParticleFileName);
199 vtkGetStringMacro(ParticleFileName);
205 vtkSetMacro(EnableParticleWriting,
int);
206 vtkGetMacro(EnableParticleWriting,
int);
207 vtkBooleanMacro(EnableParticleWriting,
int);
213 void RemoveAllSources();
266 int InitializeInterpolator();
286 virtual void AssignSeedsToProcessors(
289 int &LocalAssignedCount);
295 virtual void AssignUniqueIds(
302 void UpdateParticleList(
310 virtual void TransmitReceiveParticles(
318 void IntegrateParticle(
320 double currenttime,
double terminationtime,
332 double velocity[3],
double delT);
337 bool SendParticleToAnotherProcess(
339 double point1[4],
double delT);
341 void AddParticleToMPISendList(
348 bool ComputeDomainExitLocation(
349 double pos[4],
double p2[4],
double intersection[4],
380 double CurrentTimeSteps[2];
440 std::vector<bounds> CachedBounds[2];
443 bool InsideBounds(
double point[]);
#define VTKFILTERSFLOWPATHS_EXPORT
A helper class for interpolating between times during particle tracing.
vtkSmartPointer< vtkDoubleArray > cellVectors
int EnableParticleWriting
void PrintSelf(ostream &os, vtkIndent indent)
abstract class to write particle data to file
unsigned int NumberOfParticles
vtkIdType UniqueIdCounterMPI
vtkIdType UniqueIdCounter
int ForceReinjectionEveryNSteps
abstract class to specify dataset behavior
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
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()
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
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
dynamic, self-adjusting array of char
virtual int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
dynamic, self-adjusting array of int
unsigned int NumberOfInputTimeSteps
vtkSmartPointer< vtkIntArray > InjectedPointIds
static vtkStreamTracer * New()
a simple class to control print indentation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
abstract superclass for arrays of numeric data
A Parallel Particle tracer for unsteady vector fields.
vtkAbstractParticleWriter * ParticleWriter
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.
void SetInterpolatorPrototype(vtkAbstractInterpolatedVelocityField *ivf)
vtkSmartPointer< vtkFloatArray > ParticleAngularVel
ParticleDataList::iterator ParticleListIterator
vtkSmartPointer< vtkIntArray > ErrorCode
std::vector< double > OutputTimeValues
vtkSmartPointer< vtkIntArray > ParticleIds
vtkTemporalStreamTracerNamespace::ParticleVector LocalSeeds
general representation of visualization data
std::vector< ParticleInformation > ParticleVector
virtual int FillInputPortInformation(int, vtkInformation *)
represent and manipulate 3D points
void SetTerminationTimeUnitToTimeUnit()
vtkSmartPointer< vtkFloatArray > ParticleRotation
Integrate a set of ordinary differential equations (initial value problem) in time.
Multiprocessing communication superclass.