It is helpful to understand how unsteady flow lines are specified and produced to aid in efficiently visualizing them. An unsteady flow line, also known as a trajectory, is established by:
The user specifies the seed point, seeding time and time step range for each flow line and VAPOR computes the 3D trajectory of the flow line throughout the visualization volume by integrating the time- and space-varying field of the flow variable. The integration process dynamically chooses a set of integration times which can be, and usually are, smaller than the time steps of the actual VDC, so that the integration can detect sharp turns in the flow lines. In the process, a value of (U,V,W) is produced at each integration time by linearly interpolating U, V, and W between the previous and next time steps, which could actually be very far apart in time.
Each flow line goes either forward, backward or both ways from its seed point until either it exits the volume domain or it reaches the limits of its time step range. Thus, each point along the flow line has an associated (x,y,z) coordinate and a time step coordinate.
Usually a user wants to visualize multiple flow lines for a single visualization, so a set of N flow lines would be specified by the user. Furthermore, flow lines are typically begun or ended at multiple time steps throughout a range of time steps for which the flow variable field is quantified. Assuming the user has specified a set of M seeding times for each of N seed points, VAPOR then computes all N*M flow lines at one time and stores them for visualization. Integration of large sets of flow lines is compute-intensive, so it is best to try very small values of N and M first before proceeding to larger values.
There are several ways to accelerate the flow integration, in order to quickly try out the settings and to guide the search for features in the flow:
The computation of the set of N*M flow lines is executed after the seed points, seeding times and range of time steps is specified by the user and after the visualizer instance for unsteady flow is activated. Note that the current time step (i.e., the time step currently visualized) has no bearing on unsteady flow line computation since the time step range and its increment for the set of flow lines to be computed is specified separately by the user. The set of flow lines is recomputed after changes are made to any seed points, seeding times and/or time step ranges or increments and after the unsteady flow is requested to be refreshed.
Changing any visualization display characteristics that do not involve changing any of the flow line specifications as described in the paragraph above, do not require that flow lines be recomputed, so changing the display characteristics of flow lines is generally faster to process than changing flow line specifications themselves.
Once the set of flow lines is computed by VAPOR, the time step display interval determines the number of segments of a flow line that are displayed at the current time step, where one segment represents, by default, the distance traveled in one time step. Thus, at a visualized time step, parts of all flow lines from all seed points at all seeding times are displayed, but only the parts of those lines that are specified by the time step display interval are displayed.