32 #ifndef vtkTemporalStreamTracer_h 33 #define vtkTemporalStreamTracer_h 35 #include "vtkConfigure.h" 36 #include "vtkSetGet.h" 37 #ifndef VTK_LEGACY_REMOVE 39 #include "vtkFiltersFlowPathsModule.h" 72 int CachedDataSetId[2];
114 vtkSetMacro(TimeStep,
unsigned int);
115 vtkGetMacro(TimeStep,
unsigned int);
136 vtkSetMacro(TimeStepResolution,
double);
137 vtkGetMacro(TimeStepResolution,
double);
150 vtkSetMacro(ForceReinjectionEveryNSteps,
int);
151 vtkGetMacro(ForceReinjectionEveryNSteps,
int);
157 TERMINATION_STEP_UNIT
167 vtkSetMacro(TerminationTime,
double);
168 vtkGetMacro(TerminationTime,
double);
176 vtkSetMacro(TerminationTimeUnit,
int);
177 vtkGetMacro(TerminationTimeUnit,
int);
226 vtkSetStringMacro(ParticleFileName);
227 vtkGetStringMacro(ParticleFileName);
237 vtkBooleanMacro(EnableParticleWriting,
vtkTypeBool);
245 void RemoveAllSources();
287 virtual int GenerateOutput(
293 int InitializeInterpolator();
311 virtual void AssignSeedsToProcessors(
vtkDataSet*
source,
int sourceID,
int ptId,
330 virtual void TransmitReceiveParticles(
351 bool SendParticleToAnotherProcess(
361 bool ComputeDomainExitLocation(
362 double pos[4],
double p2[4],
double intersection[4],
vtkGenericCell* cell);
390 double CurrentTimeSteps[2];
448 std::vector<bounds> CachedBounds[2];
451 bool InsideBounds(
double point[]);
470 #endif // VTK_LEGACY_REMOVE
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
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph *>::edge_descriptor e, vtkGraph *)
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 *)
This is called by the superclass.
dynamic, self-adjusting array of char
dynamic, self-adjusting array of int
unsigned int NumberOfInputTimeSteps
vtkTypeBool IgnorePipelineTime
vtkSmartPointer< vtkIntArray > InjectedPointIds
static vtkStreamTracer * New()
Construct object to start from position (0,0,0), with forward integration, terminal speed 1...
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
vtkTypeBool EnableParticleWriting
vtkSmartPointer< vtkFloatArray > ParticleVorticity
vtkSmartPointer< vtkCellArray > ParticleCells
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
int FillInputPortInformation(int, vtkInformation *) override
Fill the input port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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)
The object used to interpolate the velocity field during integration is of the same class as this pro...
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
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
Integrate a set of ordinary differential equations (initial value problem) in time.
Multiprocessing communication superclass.