Visualization of Feature Separation in Advected Scalar Fields
Scalar features in time-dependent fluid flow are traditionally visualized using 3D representation, and their topology changes over time are often conveyed with abstract graphs. Using such techniques, however, the structural details of feature separation and the temporal evolution of features undergoing topological changes are difficult to analyze. In this paper, we propose a novel approach for the spatio-temporal visualization of feature separation that segments feature volumes into regions with respect to their contribution to distinct features after separation. To this end, we employ particle-based feature tracking to find volumetric correspondences between features at two different instants of time. We visualize this segmentation by constructing mesh boundaries around each volume segment of a feature at the initial time that correspond to the separated features at the later time. To convey temporal evolution of the partitioning within the investigated time interval, we complement our approach with spatio-temporal separation surfaces. For the application of our approach to multiphase flow, we additionally present a feature-based corrector method to ensure phase-consistent particle trajectories. The utility of our technique is demonstrated by application to two-phase (liquid-gas) and multi-component (liquid-liquid) flows where the scalar field represents the fraction of one of the phases.
Flow visualization is widely used for the analysis of natural and engineering processes related to fluid motion. As simulation data continuously grow in size, mainly due to increasing computational power of both supercomputers and consumer desktops, feature extraction and tracking has gained particular attention. In feature-based visualization, visual data representation is reduced to important characteristics, typically physical quantities, flow topology, and quantities derived from generic scalar fields . These features are then tracked in time to determine topological events, such as feature birth or split. The topology can be intuitively conveyed with a graph, where edges correspond to the features and nodes to the events. Such an approach reduces the amount of information to the essential part, relevant to the research at hand, and therefore allows for effective analysis of potentially enormous data.
While such feature-level visualization reveals the overall feature topology dynamics, detailed spatial information on volumetric partitioning of features is difficult to obtain with existing techniques. Thus, we propose a visualization approach that can reveal the separation dynamics within features at some initial time with reference to a later target time. To this end, we extract boundaries around regions within a feature that correspond to other features in the course of time, and additionally convey the temporal information of the separation by means of separation surfaces.
In the investigation of topology in general time-dependent flow, ridge extraction in the finite-time Lyapunov exponent (FTLE) is a standard method for the determination of regions that exhibit different flow behavior. The FTLE measures the separation of neighboring trajectories, and ridges in the FTLE separate those regions. With our visualization method, features representing physical quantities can be analyzed from a similar view point: given a feature at some point in time, we want to know how it will evolve over the course of time. However, whereas the ridges in the FTLE expose maximum separation of trajectories after a given time interval, our boundaries reveal separation of quantities after a time interval.
Our visualization technique expands upon traditional feature visualization in several ways. First, it allows for static visualization of dynamic processes, and therefore reduces visual clutter. Second, it combines advantages of standard feature tracking methods and FTLE-based methods, in that it allows for a detailed inspection of the separation of features. Third, it is applicable to a broad class of multiphase flow, including two-phase flow (liquid in gas surrounding) and multi-component flow (liquid-liquid or multi-component liquid in gaseous surrounding).
An important type of flow simulation is two-phase flow. Example cases are simulations of droplet collisions or liquid jets. The break-up of liquid jets into droplets appears in many technical applications as well as in nature. Examples range from a simple faucet over spray painting and spray drying in food processing to fuel injection in combustion engines. Especially in cases where the disruptive forces are much stronger than the cohesive forces, called atomization, the jets break up into many small droplets shortly after injection. Another important line of research is liquid-liquid flow, where immiscible fluids (for instance, oil and water) interact, for example, in emulsification processes. Such flow has often considerably different characteristics compared to two-phase flow, e.g., due to high viscosity of both components. Analysis of these processes, which occur on both very small temporal and spatial scales, is still very difficult.
Our visualization approach helps with the analysis of features in multiphase flow by visualizing the changing topology with respect to the feature at a selected time, and hence providing a static representation of the dynamics of features. To summarize, the main contribution of our work is a spatio-temporal visualization of feature separation dynamics that reveals the feature volume distribution among developed features as well as temporal information of the separation. As a necessary prerequisite, we propose a corrector scheme for particle integration in multiphase flow that ensures phase-consistent trajectories.
2 Related Work
The field of research most related to our work is feature tracking. Post et al.  provide a survey on the topic. Graph representation is a commonly employed approach to convey temporal evolution of features, e.g., in the analysis of combustion simulations  or combustion experiments , and the features can be abstracted by glyphs . Often, features are defined by a threshold. Bremer et al.  propose a hierarchy-based approach that alleviates the dependency on predefined thresholds. For the inspection of features at a given time, a linked-view approach is employed in these methods. Gu and Wang  compute time-dependent state transition probabilities for volumetric data and visualize a 3D view of the volume together with a 2D graph representation of the transitions. Grottel et al.  visualize the evolution of molecular clusters on a timeline as an addition to a 3D representation of the molecules to monitor the quality of the clustering. Laney et al.  track bubbles and visualize their split and merge behavior as a graph. Further research on feature tracking concentrates on clustering methods, including the work by Ozer et al. , where user-defined feature characteristics are used to determine feature groups. A survey on graph representations is provided by Wang . Our method differs from these approaches, in that we focus on the spatio-temporal aspect of feature representation, where the topology is directly conveyed in the feature volume.
For the analysis of the combustion process in engine simulation, Garth et al.  proposed a set of visualization methods that operate on time-varying unstructured grids. A recent work by Sauer et al.  utilizes particle and volume data from the simulation runs to track features over longer time intervals. In our method, we insert particles after the simulation run. On the one hand, this gives a better control over the particle density and therefore the detail level, on the other hand, however, it necessitates some corrector schemes for phase-consistent advection in multiphase flow, as presented in this paper.
Delocalized quantities are employed in unsteady flows to statically investigate the dynamics of scalar fields , where quantities are averaged over time along integral curves. Our concept can be viewed as a special case of this, where only the values at trajectory end points are stored at the seed point. The visualization of delocalized quantities can be improved using uncertainty information from the FTLE field . For the topology analysis in general unsteady flow, the FTLE has become a standard visualization method . Sanderson  proposed an alternative inspired by Lyapunov exponents that is based on traveled particle distance instead of particle divergence.
The dynamics of fluid flow is often represented by surfaces or volumes. In the work by van Wijk , stream surfaces are obtained by extracting isosurfaces from a scalar field. This in turn is generated by advecting streamlines backward up to the boundary with predefined scalar values and resampling those values along the streamlines. Becker et al.  use flow volumes in unsteady flow to reveal the flow dynamics around regions of interest. An implicit version of the flow volumes by Xue et al.  allows for more detailed inspection of the flow.
In our work, the labels corresponding to the volumetric contributions can be interpreted as different materials. Material interface reconstruction is a challenging topic in visualization, especially with respect to volume preservation in multi-material configurations [2, 26, 7]. For the extraction of volume boundaries, we adhere to the representation by the marching cubes algorithm , since in our case the material distribution within the cells is explicitly given by points with assigned labels. Moreover, as the number of materials (i.e., labels) can be arbitrarily large for a given investigation, it would complicate the computation of the interface based only on the fraction information. Further research in material interface analysis includes the work by Obermaier et al. , where the stability of reconstructed interfaces is investigated by comparing it with time surfaces.
For the visualization in multiphase flow, we use a corrector method to ensure that the advected particles remain in the given phase during tracing. Related to this problem are approaches for surface tracking. Stam  proposed a method for the computation of interface velocities to properly translate surfaces. Bojsen-Hansen et al. developed a method for tracking surfaces undergoing topology changes, without prior information on the underlying physics. In the work by Bonneel et al. , Lagrangian transport is used for correct displacement interpolation. Solomon et al.  optimize the transportation in terms of Wasserstein distances, which allows for efficient shape transformation. In our work, we analyze the evolution of volumes, and computing Wasserstein distances in this case would be computationally prohibitive and also would not guarantee physically correct correspondences.
We exemplify the utility of our technique using multiphase flow simulation datasets. Investigation of droplets is an active area of research [44, 39, 11], and so is the analysis of liquid jets [13, 24, 10]. We refer the reader to Fuster et al.  for a detailed introduction to multiphase flow simulation and to Lefebvre  for a thorough description of liquid atomization and sprays.
3 Simulation Data
The data used in this paper are computational fluid dynamics (CFD) simulations of two-phase (liquid-gas) and two-component (liquid-liquid) flow, based on the Navier-Stokes equations and discretized on rectilinear grids . The velocity is represented by a cell-based vector field .
In case of scientific multiphase flow simulations, the volume of fluid (VOF) method  is typically used for interface tracking, where an additional volume fraction field is maintained for each cell. A cell contains only the gas phase when , only the liquid phase when , and the interface is located within cells with . For liquid-liquid flow, the gas phase is replaced by the surrounding liquid phase. To maintain sharp interfaces, piecewise linear interface calculation (PLIC)  is used which approximates the interface by planar patches. In this paper, we use linear interpolation in time for tracking, whereas for sampling of the fraction field, we use the PLIC interface to determine the sampled value. Only features that undergo advective transport are considered, since, e.g., diffusive features would be difficult to capture with the particle-based approach, and are therefore beyond the scope of our work.
Our technique employs particle advection in order to determine the volumetric correlation of features between a reference time step and the target time step . Usually, only a certain fraction of timesteps of a simulation are stored for later analysis. Using these data with reduced time resolution can lead to errors in the estimation of trajectories, especially in multiphase flow, where particles potentially leave the initially assigned phase for this reason. This problem could be avoided if particles were advected during the simulation, which is increasingly popular, as reported by Sauer et al. . Additionally, particles could be densely populated using the method proposed by Agranovsky et al.  in order to capture more details of the topology of feature dynamics. In our datasets, however, particle data was not provided. Nevertheless, to still ensure robust particle advection in terms of phase consistency in multiphase flows, we introduce a feature-based corrector method, as described in Section 5.6, which utilizes the -field in a corrector step during particle advection to ensure that particles stay in the respective phase throughout integration.
4 Visualization Method
We define a feature as a region with the value of the quantity exceeding a corresponding threshold : . In our experiments, represents the fraction of fluid in a cell in multiphase flow and is set to , so that the liquid phase (or one of the phases in liquid-liquid flow) represents the features. For other scalar quantities, could be set to a specific value of interest. Feature separation is illustrated in Figure 1, where an initial feature at time splits within the time interval , resulting in three features at time .
4.1 Separation-Based Feature Segmentation
With our visualization technique, we want to capture how features develop topologically in the course of time. For instance, if a feature splits into two new ones, we want to learn how the volume of the initial feature is divided among them, or, in other words, what the volumetric contributions of the new features in the initial one are. To accomplish this goal, we have to determine the spatio-temporal correspondence between the feature at time , and features at some other time . That is, for each , we define its volumetric contribution within as
where maps the initial position at time to its position at time , as it is advected by the flow. We refer to = as the computation time interval. For our visualization, we extract the closed boundary of the volume :
Note that for , bounds the whole feature volume if , and does not exist if . Also, note that our method allows to be earlier in time than if we set . In Figure 1, the method is illustrated for a simple case where a feature splits into three.
Volumetric contributions can be composed of disconnected segments, either due to a merge followed by a split of the initial features, or due to disjoined volume segments inside the initial feature that together form a separate feature. As will be shown in Section 5.4, our visualization method allows one to readily identify and analyze these cases.
To support temporal analysis of feature separation, we supplement our technique with the extraction of temporal separation surfaces, denoted . While the above method finds the volumetric correspondences in the initial time to the features at target time , here, the separation surfaces are constructed within the whole interval . They divide the volumetric contributions in the initial feature as the corresponding features split into new features.
This is illustrated in Figure 2, where the initial feature has split into two at time , and the resulting feature has further separated into new features and at time . In Figure 2, both split events are illustrated by the separation surfaces and that divide the volume segment according to the volumetric contributions of the feature resulting from the separation.
To create the separation surfaces and determine the time at which they occur, changes in contributions are detected within small time intervals. Specifically, for each time increment , where , contributions in each feature are computed and compared with the previous contributions . If the number of contributions for which is greater than one, a separation has occurred in the given interval inside the volume contribution , and the separation surface is generated in where different adjoin.
Theoretically, the temporal evolution of feature separation could be accomplished by repeatedly extracting the closed boundaries for varying . This would, however, lead to repeated construction of overlapping boundaries that would be difficult to analyze. The separation surfaces , on the other hand, provide an open structure that complements the extracted boundaries .
5 Numerical Approach
In our method, we operate on both the Eulerian frame, in which the simulation data is defined, and the Lagrangian frame, where the inserted particles represent the feature volume and allow us to determine the volumetric correspondences.
Our visualization framework works as follows. The input to our approach are time series of a vector field for particle advection and a scalar field for feature definition. The initial time is chosen, at which particles are seeded within . These particles are then advected up to time , whereby integration is performed between consecutive simulation steps, and so is the construction of separation surfaces. At time , the connected components that define the features are determined, and for each advected particle, the surrounding feature is found. The feature labels are then mapped to the seed points, and finally, boundaries are extracted for each label within . In Figure 3, the algorithm is presented as a diagram. In the following sections, each step, marked on the diagram with the corresponding section number, is described. Please see also the supplementary material for a detailed pseudo-code of the algorithm.
5.1 Particle Seeding and Advection
At time , particles are seeded at if . This is illustrated in Figure 4, where is represented by the PLIC interface that divides the cell into liquid and gaseous phase, and seed points are located only at positions enclosed by the PLIC patch.
To determine if lies within the phase of interest, we compute the seed position relative to the PLIC patch. Therefore, we have to compute the patch orientation and position. We first compute the gradient of the -field at the cell center , and then normalize it to obtain the PLIC normal . Next, we determine the attachment point as the most distant cell node from the PLIC patch in the direction of . The PLIC patch position , i.e., the distance from , is obtained iteratively by ensuring that the volume enclosed by the patch equals the value in the given cell. Then, we compare with the distance from projected onto the normal. If , a particle is positioned at . In the figure, the distance for implies wrong phase, and hence, no particle will be seeded there. Please note that for anticipated application to different data models, trilinear interpolation can be used instead of PLIC reconstruction to determine the threshold position.
The seed position and the maximum number of seeds per cell are controlled by a global refinement parameter in the form , where is the data dimension ( in our datasets). For , the seeds are positioned at the centers of the simulation cells. For , the cells are recursively divided times into equally sized subcells, and the particles are positioned at the centers of these subcells.
To compute the flow map , we set the particles at the seed points and advect them up to time (Figure 1) using the standard fourth-order Runge-Kutta scheme performed between consecutive simulation time steps in the interval . The seed points are stored for later processing to determine the correspondence between features at times and .
5.2 Feature Labeling
To extract the features at time , we first create a grid with the same structure as the input simulation grid. We equip this grid with a bit mask, where cells with are set to and the others to . With this bit mask, we can find connected components that correspond to the features . To this end, we employ region growing. Here, two feature cells and are considered connected if they are face neighbors. Each feature is then identified by a label . The connected components are stored in a label field, which again structurally corresponds to the simulation grid. This greatly simplifies particle assignment, as described in the next section. All grid cells without connected components are marked with an invalid label (i.e., ). In Figure 1, the labeled features are marked red, green, and yellow. Feature labeling can be performed independently of the advection step, since determination of feature labels only requires the scalar field .
5.3 Particle Label Assignment
In the next step, we have to determine those particles for which . For each advected particle at time , we determine by which feature it is bounded (Figure 1) and assign the corresponding label to the particle. If it does not lie inside any feature, a non-valid label (i.e., ) is assigned to it. Since we operate on rectilinear grids, we can find the bounding cell by iterating over the node coordinates of the grid until , with . The feature label is then mapped to the stored seed points corresponding to the advected particles (shown by dashed arrows in Figure 1). Additionally, to visualize the temporal evolution of the features, the intermediate particle positions are stored during the computation of the visualization, and the computed labels are assigned to them at this stage. For scalar quantities beyond multiphase flow, the value at the particle position can be trilinearly interpolated. If the particle is inside a cell without a label but the trilinear interpolation results in , we can compute the gradient of and assign the label of the nearest cell with in gradient direction.
5.4 Boundary Extraction
The labeled particles allow us to extract the volume boundaries within the feature that correspond to the features , according to Equation 2. For each label , we find all seed points with this label and compute a bounding box around them. Subsequently, a rectilinear grid is generated within the bounding box such that the seed points coincide with the grid nodes. At each grid node, we set a value if a seed point is actually located at this position, and otherwise. This way, we can employ the standard marching cubes algorithm to extract the boundaries. Since we require that the grid node positions correspond with the seed points, the size and number of cells is implicitly controlled by the refinement parameter . In Figure 1, the boundaries are marked by darker curves that bound the volumes .
The disconnected feature segments (Section 4) can be detected either directly from the color of the boundaries (each feature maps to a different color label of the volume regions, and disconnected volume regions belonging to the same feature have the same color) or using the particles from intermediate time steps that also carry the feature label information.
5.5 Extraction of Separation Surfaces
To extract the separation surfaces described in Section 4.1, after each advection substep, feature labeling (Section 5.2) and particle label assignment (Section 5.3) are performed to obtain the current feature segmentation. The resulting seed labels are stored for two subsequent time steps and . For each label at , the corresponding seeds and their labels at are analyzed. More than one unique label at indicates that the segment has split in the current time interval, and therefore, separation surfaces are extracted by performing a modified marching cubes algorithm for each -combination of the labels. In the algorithm, node values are set to “” and “” which correspond to either of the labels, and the surface passes through the edge centers between “” and “” nodes. To ensure open surfaces, the outer nodes (i.e., not belonging to any of the two labels) are marked with an invalid negative value. In the final step of marching cubes, the edges of each triangle are tested for whether they lie on edge with the outer node, and discarded in this case. Finally, the surfaces and the corresponding time stamps are stored for visualization.
5.6 Phase-Consistent Trajectories in Multiphase Flow
Since typically only a fraction of simulation time steps is saved for analysis and visualization (due to potentially high storage demands of large simulations), and because multiphase flow is highly nonlinear (due to, among others, surface tension forces), there is usually not enough information to ensure phase consistency of the advected particles, i.e., the particles may stray off to the other phase during advection. However, assuming that physically-based phase transitions do not occur in the simulation (which is the case in our applications), the particles must stay in the same phase throughout advection. To accommodate this requirement, and to provide plausible results with the available information, we introduce a three-stage approach that utilizes the scalar field representing the phase of interest to correct positions of stray particles during advection.
After each integration step between and , we test each advected particle if it remained in the assigned phase. If this is not the case, a three-stage procedure is applied to translate the stray particle back to its original phase. In the first stage, the neighborhood of the particle is searched for valid particles (i.e., particles that remain in the assigned phase at ). That is, in the cell neighborhood at time (i.e., before the current advection step) the nearest neighbor (if any) is chosen. Its displacement vector is applied to the stray particle, i.e., (Figure 4). Since this does not guarantee that the particle will be back in the original phase, in the second stage, the nearest cell with is searched (using a loop over neighboring cells), and the particle is translated to the boundary of this cell along the line connecting the particle with the cell center, as shown in Figure 4, where the new particle positions are denoted . Afterwards, in the third stage, for each particle in the interface cell, the position of the PLIC patch is calculated at the current simulation time step. Then, it is tested if the particle position lies within the volume enclosed by the PLIC patch. If not, the particle is translated along the line to the patch (Figure 4).
We have implemented our visualization method as a plugin in the ParaView visualization framework . To improve the visual representation of the boundaries and separation surfaces , we smooth the meshes extracted by the marching cubes algorithm. Although some error is introduced in the process, a smoothed representation improves perception, and hence we consider it a reasonable trade-off. For the visualization of the labeled features in multiphase flow datasets, we extract the geometric representation of the PLIC interfaces using the method by Karch et al.  and resample the labels on the PLIC patches. Apart from the boundaries we also store intermediate particle positions after every th simulation time step ( in our applications), in order to visualize temporal evolution of the features, see for instance Figure 5.
For the second stage of the particle corrector scheme (translation to a cell boundary), we adopted the line-box intersection algorithm proposed by Kay and Kajiya .
For large datasets, parallelization is necessary due to large memory requirements of the simulation data. For instance, in the Non-Newtonian Jet simulation (Section 7.3), each simulation time step consists of over , which could not be processed on a regular desktop computer. Hence, we employ data parallelism (i.e., the approach adopted by ParaView), where the data is split among several processes (possibly running on different machines), and each process works on a preassigned subdomain. In this approach, explicit communication is necessary for data exchange.
Due to the global nature of particle advection, those particles that leave a subdomain must be sent to the processes managing the subdomains the particles have entered. To avoid cases where the Runge-Kutta substeps are computed across neighboring subdomains, we store ghost cells around each subdomain. Another global algorithm we employ in our technique is connected component labeling. Our implementation is based on the method proposed by Harrison et al. . Additionally, the transfer of particle labels to their respective seed points must be handled explicitly. That is, for each particle we store its id within the original subdomain, and the process id responsible for that subdomain. This information is then used to transfer the labels to the correct processes and to save the label at the correct position in the label array.
In addition to the process-level parallelization, we also employ thread-level parallelism for particle advection, i.e., we employ the OpenMP  parallel-for loops to speed up iteration over particles being advected.
We demonstrate the utility of our method on three datasets from direct numerical simulations of incompressible flow. The Drop Collision and Non-Newtonian Jet datasets are two-phase flow simulations, where liquid and gas phases occur simultaneously. The Oil Inclusions dataset contains oil inclusions in water surrounding. For Drop Collision and Oil Inclusions, , whereas for Non-Newtonian Jet, .
7.1 Drop Collision
The first dataset is a simulation of a two-phase flow with two water droplets that collide peripherally. This dataset consists of cells, which cover a domain size of , and time steps. In the top row of Figure 5, selected simulation time steps (from to ) are shown. We analyze the features from time (i.e., th time step, just before the collision) up to time (i.e., st time step, with small droplets resulting from the collision). The two merged drops form a flat shape that splits into an inner disk and an outer ring. Finally, both structures separate into small droplets.
Our visualization in the bottom row reveals the volumetric correspondences between the volumes of the two initial drops and the drops at the final time step. It can be seen that many small droplets are formed from narrow sections that extend radially from the collision center. These small drops, however, form only on the sides, whereas the volume sections at the bottom and top contribute to relatively large drops.
In Figure 6, a section of the right drop from Figure 5 has been cut out to reveal the inner structure of the volume contributions. Interestingly, almost all droplets that develop after the collision are formed from volumes that are close to the collision center and propagate outward to the back side. This structure bears some similarity to cracks in a solid material that propagate from the impact point. In Figure 6, separation surfaces are shown. Here, the breakup of inner disk and outer ring is apparent in the form of cone like structures in both droplets. The surfaces within the cones have similar colors, indicating simultaneous separation of multiple droplets.
For this dataset we have additionally applied our method in reverse time direction, i.e., we computed the correspondence of the last simulation time step to the first one to reveal how exactly the initial two droplets contributed to the later smaller droplets. The result is shown in Figure 7. In Figure 7, the two droplets at time are visualized by the PLIC interface. They are colored by the connected component labels, and their contributions in the droplets at time are visualized in Figure 7. As can be seen, the volume from the red drop dominates on the upper right part of the droplets at later physical time. Figure 7 shows a selected droplet that rotates after separation from the disk-shaped drop. The boundary from the blue droplet is transparent to reveal the inner structure of the drop. The interface between the two boundaries forms an S-shape, and there is distinguishable symmetry of the two volumes. The investigation of the interplay between volume distribution and rotational motion of the feature could shed light on the details of drop dynamics, this is, however, out of scope of this paper.
7.2 Oil Inclusions
The next dataset is a simulation of colliding oil inclusions in water surrounding. For this dataset, represents volume fraction of oil. The simulation domain consists of cells covering , and time steps that span a time interval of . In Figure 8, selected simulation time steps are shown. The deformation of the oil inclusions differs strongly from the water inclusions in the first dataset due to the presence of liquid surrounding. Even before the collision, the initially spherical inclusions deform strongly and they lose a considerable amount of momentum due to friction. In the final time steps after the collision, the inclusions quickly form spherical shapes and their velocity drops to almost zero.
Figure 9 shows the boundaries with the upper left part of the front drop cut out to reveal the inner segmentation. The structure is quite distinct from the one in the previous dataset, as it is less ordered and contains many small segments in the central part.
The separation surfaces for the same configuration are shown in Figure 9. Interestingly, in the upper segment, there is a closed surface (marked with red box) that indicates split followed by merge event. With our technique, we can further investigate this part by selecting the particles comprising the enclosing segment (and therefore, a developing inclusion), as visualized in Figure 10. Here, the first time step was selected just before the split, the second shows the small part that separated (red box) and the last three show the re-merging process. In Figure 10 we identified the particles that belong to the splitting part and shown them for all stored time steps (i.e., every th simulation step), with time color-coded. The bend parts clearly indicate the split and merge (red boxes).
This dataset demonstrates the ability of our technique to perform a detailed inspection of the separation processes.
7.3 Non-Newtonian Jet
The last dataset is a simulation of the injection of a jet made up of a non-Newtonian shear thinning aqueous solution of Praestol 2500 (0.3% weight) into air at . The jet is introduced into a rectangular computational domain with a diameter of and with the velocity profile from a short nozzle with a mean velocity of , and therefore a Reynolds number . The domain has a size of in the direction of the injection and of in each of the directions of the injection plane. The domain is discretized over cells. The temporal development of the jet is sketched in Figure 11. At , the jet has just entered the computational domain and has started to interact with the surrounding gas. The resulting effects include the bending back of the jet tip and the development of surface waves on the jet core. Due to the high Reynolds number, the jet becomes unstable very quickly, and at , the core has expanded substantially in radial direction and has mostly broken up into ligaments and droplets—the atomization has begun.
Figure 12 shows the boundaries and separation surfaces at . Small polygons have been removed for clear overview. Apparently, in the investigated time interval, the front of the jet does not undergo strong disintegration (except for the tip), whereas in the rear, many segments imply the origins of elongated droplets that develop later. The separation surfaces at the bottom of the figure are uniformly distributed, although small droplets detach earlier, as indicated by small dark blue surfaces.
To better understand the atomization process, we use the proposed visualization method to investigate the origin of ligaments within the liquid core. In Figure 13, we can observe the spatial origin at for a selected number of ligaments, and their position at is displayed in Figure 13. In Figure 13, the three features are in close proximity in stream-wise -direction. This is surprising, as their original liquid mass in Figure 13 was distributed over a rather large range in -direction. In Figure 13, the liquid mass of the ligaments is scattered within the jet core. This is especially noticeable for the droplet colored in green, which can be seen in the zoomed cutout. This indicates a strong influence of the flow field inside the jet core, as the liquid mass has to combine before separating from the core.
In Figure 14, the temporal evolution of one selected feature (colored) is shown with the entire jet (gray) in the background. The temporal evolution is from at the top to at the bottom. The development in the first three time steps confirms our assumption from Figure 13. The liquid mass, which will later form the ligament, is initially scattered over one third of the jet length. With time, the liquid mass near the jet surface is being decelerated due to the interaction with the surrounding atmosphere. This allows the rest of the mass, which started out more central in the jet, to catch up, and by the third time step, the bulk of the liquid mass is located within the first surface wave, while a few parts are located in the next wave. From the underlying jet, we can observe that the waves are already starting to deform strongly from the shape of a periodic wave. At the next time step, nearly all of the liquid mass has merged and moved even closer toward the surface. The liquid mass has reached its most compact form. In the next time step, the surface wave has disintegrated and the liquid mass has become a complex branching ligament. With time, the ligament moves further in radial direction, interacting more strongly with the atmosphere and therefore is stretched in -direction, until we can observe the first droplet breaking off the ligament in the final time step.
With the proposed visualization method, we were able to make interesting observations. Contrary to the impression we get from Figure 11 that the jet is mainly expanding in radial direction, we observed in Figure 13 that features which are in close proximity in -direction at originate from rather distant positions at . From this, we can infer that the complex nature of the velocity field leads to features moving at higher velocity in -direction. We could also observe that this is even true for the velocity field within the jet core. Contrary to the rather solid seeming core in Figure 11, both Figure 13 and especially Figure 14 present how the flow field inside the core is creating the analyzed features from liquid mass scattered throughout the core. Furthermore, Figure 14 is an excellent representation of the different steps of primary jet break-up showing the formation of surface waves, the deformation of the waves, the rupturing of the waves into ligaments, and the stretching and break-up of the ligaments into droplets.
The presented method allows for a simple and intuitive way to analyze the spatial and temporal development of the primary break-up of liquid jets. Thanks to this method an insight into the movement patters of select features of the break-up process could be gained which would otherwise have been hard and unlikely to obtain.
The computation of the visualization for the Oil Inclusions and Drop Collision datasets was performed on a commodity desktop with Intel i7 3.6 GHz processor (4 cores) and RAM. For the Non-Newtonian Jet dataset, we have used nodes on a Cray XC40 System, each with two Intel Xeon E5 processors and of memory, and one process running per node. Table I shows the configurations (i.e., number of simulation time steps and the number of seeded particles) and timings (i.e., total time, average time for one advection step and extraction of , and time for extraction of ) for the three datasets. Although all datasets have comparable numbers of particles, the computation of the Non-Newtonian Jet dataset is not much faster, despite the parallelization. This is due to the fact that with the data parallelism in the multi-process configuration, the particles are not evenly distributed among the processes. Moreover, the exchange of particles across the subdomains introduces some overhead after each integration step.
We have also investigated the performance dependency on parameter . As Table II shows, in case of Drop Collision, the difference between and is relatively small arguably due to better usage of thread-level parallelism. For , on the other hand, the number of particles increases the computation time substantially. For the Non-Newtonian Jet, it can be seen that with -fold increase in particle number, there is -fold increase in time for advection step and the total time increases about times, suggesting that the interprocess communication constitutes considerable time which is less dependent on the number of particles.
For the visualization we have used a commodity desktop for all datasets, since the data produced by our technique (i.e., the particle data and mesh for boundaries ) does not exceed , even for the Non-Newtonian Jet dataset.
7.5 Analysis of the Corrector in Multiphase Flow
To quantify the amount of applied correction that is necessary to keep the particles within the initial phase in multiphase flow (see Section 5.6), we accumulate the introduced displacement for each particle over all time steps :
where the first term is the translation with the displacement vector of the nearest phase-consistent particle (Figure 4), the second term in the sum corresponds to the translation to the nearest cell with (Figure 4), and the third term is the translation to the PLIC patch in the interface cells (Figure 4). For the analysis, we visualize the value at the seed positions . In Figures 15 and 15 the displacement is shown for the Drop Collision and Non-Newtonian Jet datasets, respectively. The particles that were translated most correspond with the boundary positions. This is easy to interpret, since the particles that most probably leave the liquid phase are close to the feature interface, i.e., at unstable regions. Although the maximum value of the accumulated correction is relatively large ( of the domain size for Drop Collision and of the domain size for the Non-Newtonian Jet), it occurs only for small number of particles, and the correction for the majority of particles is considerably smaller (as indicated by pale blue color in the figures).
In Figure 16 we also investigate the sensitivity of the particle advection to temporal resolution of data and different variants of the particle corrector. The selected droplet region from the Drop Collision dataset is particularly prone to error due to the collision which is difficult to capture with integration. For the analysis, we use the temporal resolution of (left column) and (right column) simulation time steps spanning the same time interval. The top row shows the resulting boundary reconstruction for particles with no correction applied, in the middle row, the particles were moved to the closest cell and consequently to the PLIC patch without the adjustment by the displacement vector. In the bottom row, full correction is applied. With no correction, even with high temporal resolution, there are regions containing particles that left the initial phase, as indicated by dark blue surfaces. Interestingly, for two-stage correction, the stray particles are gone, but in Figure 16(c), some particles at the front are incorrectly assigned. With full correction, little difference can be seen between both resolutions. This shows that our method can provide reliable results also for lower temporal resolution, although in our experiments we used higher temporal resolution to further increase reliability of the results.
As already mentioned in Sections 3 and 5.6, there are two problems with tracking particles in multiphase flow. First, reduced temporal resolution of the simulation data does not allow for accurate integration due to the dynamics of phases. Particle advection is particularly challenging where phases collide, as their momentum changes rapidly. Second, the involved surface tension forces lead to very complex behavior, e.g., in regions where inclusions disintegrate. Several methods have been proposed to find mesh and volume correspondences. However, those methods either work only on 2D manifolds, or provide correspondence based on optimization problems that typically cannot guarantee physical correctness, e.g., by ignoring the underlying velocity field. For instance, the Wasserstein distances may result in physically inaccurate distant correspondences. Moreover, applied to volume, the correspondences from one cell usually scatter among many cells, which additionally complicates the choice of the correct particle path.
Therefore, we devised a new correction method which, admittedly, still has some limitations. Due to the translation to the nearest cell, this method introduces asymmetry in the advection, i.e., the particles have different trajectories depending on the integration type (forward or backward in time). In fact, we have observed that for the reverse advection in the Drop Collision dataset, the drop in the bottom right in Figure 7 is identified as coming from only the red drop in Figure 7, whereas in the forward advection, we have observed that both drops contributed to it. We have investigated several approaches to solve this problem, which, however, due to its complexity, remains beyond the scope of this work. In the future, we would like to further pursue possible solutions to the asymmetry.
9 Conclusion and Future Work
In this paper, we have proposed a novel visualization method for the analysis of the separation of features. Whereas the boundaries determine feature volumes, the separation surfaces provide the information on the time point at which a given feature separation has occurred. Hence, both methods complement each other to provide a comprehensive space-time visualization of feature separation.
For the analysis of multiphase flow, we have introduced a corrector method that utilizes the scalar field representing one of the fluid phases in order to ensure phase-consistent particle trajectories. We have demonstrated the utility of our method for liquid-gas and liquid-liquid flow datasets. However, it can be as well applied to more complex multiphase simulations (e.g, with gas and two liquid components), since each phase is usually described by a separate scalar field, and therefore allows for direct application of our method. Similarly, transitions between liquid and solid states could be investigated, where both states are stored as separate field data and therefore can be used to distinguish between the phases.
-  A. Agranovsky, D. Camp, C. Garth, E. W. Bethel, K. I. Joy, and H. Childs. Improved post hoc flow analysis via Lagrangian representations. In IEEE 4th Symposium on Large Data Analysis and Visualization (LDAV), 2014, pages 67–75, 2014.
-  J. Anderson, C. Garth, M. Duchaineau, and K. Joy. Smooth, volume-accurate material interface reconstruction. IEEE Transactions on Visualization and Computer Graphics, 16(5):802–814, 2010.
-  U. Ayachit. The ParaView Guide: A Parallel Visualization Application. Kitware, 2015.
-  B. G. Becker, N. L. Max, and D. A. Lane. Unsteady flow volumes. In IEEE Conference on Visualization ’95, pages 329–, Washington, DC, USA, 1995. IEEE Computer Society.
-  M. Bojsen-Hansen, H. Li, and C. Wojtan. Tracking surfaces with evolving topology. ACM Transactions on Graphics, 31(4):53:1–53:10, 2012.
-  N. Bonneel, M. van de Panne, S. Paris, and W. Heidrich. Displacement interpolation using Lagrangian mass transport. ACM Transactions on Graphics, 30(6):158:1–158:12, 2011.
-  K. S. Bonnell, M. A. Duchaineau, D. R. Schikore, B. Hamann, and K. I. Joy. Material interface reconstruction. IEEE Transactions on Visualization and Computer Graphics, 9:500–511, 2003.
-  P.-T. Bremer, G. H. Weber, V. Pascucci, M. Day, and J. B. Bell. Analyzing and tracking burning structures in lean premixed hydrogen flames. IEEE Transactions on Visualization and Computer Graphics, 16(2):248–260, 2010.
-  K. Eisenschmidt, M. Ertl, H. Gomaa, C. Kieffer-Roth, C. Meister, P. Rauschenberger, M. Reitzle, K. Schlottke, and B. Weigand. Direct numerical simulations for multiphase flows: An overview of the multiphase code FS3D. Applied Mathematics and Computation, 272, Part 2:508 – 517, 2016.
-  M. Ertl and B. Weigand. Direct numerical simulations of surface waves on shear thinning praestol jets in the near nozzle region. In Proceedings ICLASS 2015, 13th Triennial International Conference on Liquid Atomization and Spray Systems, Tainan, Taiwan, 2015.
-  C. Focke and D. Bothe. Direct numerical simulation of binary off-center collisions of shear thinning droplets at high Weber numbers. Physics of Fluids, 24(7), 2012.
-  D. Fuster, G. Agbaglah, C. Josserand, S. Popinet, and S. Zaleski. Numerical simulation of droplets, bubbles and waves: state of the art. Fluid Dynamics Research, 41(6):065001, 2009.
-  D. Fuster, A. Bagué, T. Boeck, L. L. Moyne, A. Leboissetier, S. Popinet, P. Ray, R. Scardovelli, and S. Zaleski. Simulation of primary atomization with an octree adaptive mesh refinement and VOF method. International Journal of Multiphase Flow, 35(6):550–565, 2009.
-  C. Garth, R. S. Laramee, X. Tricoche, J. Schneider, and H. Hagen. Extraction and Visualization of Swirl and Tumble Motion from Engine Simulation Data, pages 121–135. Springer Berlin Heidelberg, 2007.
-  S. Grottel, G. Reina, J. Vrabec, and T. Ertl. Visual verification and analysis of cluster detection for molecular dynamics. IEEE Transactions on Visualization and Computer Graphics, 13(6):1624–1631, 2007.
-  Y. Gu and C. Wang. TransGraph: Hierarchical exploration of transition relationships in time-varying volumetric data. IEEE Transactions on Visualization and Computer Graphics, 17(12):2015–2024, 2011.
-  G. Haller. Distinguished material surfaces and coherent structures in three-dimensional fluid flows. Physica D, 149(4):248–277, 2001.
-  C. Harrison, H. Childs, and K. P. Gaither. Data-parallel mesh connected components labeling and analysis. In Eurographics Symposium on Parallel Graphics and Visualization. The Eurographics Association, 2011.
-  C. Hirt and B. Nichols. Volume of fluid (VOF) method for the dynamics of free boundaries. Journal of Computational Physics, 39(1):201–225, 1981.
-  G. K. Karch, F. Sadlo, P. Rauschenberger, C. Meister, K. Eisenschmidt, B. Weigand, and T. Ertl. Visualization of Piecewise Linear Interface Calculation. In Proceedings of IEEE Pacific Vis 2013, pages 121–128, 2013.
-  T. L. Kay and J. T. Kajiya. Ray tracing complex scenes. SIGGRAPH Computer Graphics, 20(4):269–278, 1986.
-  D. Laney, P. T. Bremer, A. Mascarenhas, P. Miller, and V. Pascucci. Understanding the structure of the turbulent mixing layer in hydrodynamic instabilities. IEEE Transactions on Visualization and Computer Graphics, 12(5):1053–1060, 2006.
-  A. Lefebvre. Atomization and Sprays. Combustion (Hemisphere Publishing Corporation). Taylor & Francis, 1988.
-  X. Li, M. Arienti, M. Soteriou, and M. Sussman. Towards an efficient, high-fidelity methodology for liquid jet atomization computations. In 48th AIAA Aerospace Sciences Meeting Including the New Horizons Forum and Aerospace Exposition. American Institute of Aeronautics and Astronautics, 2010.
-  W. E. Lorensen and H. E. Cline. Marching cubes: A high resolution 3D surface construction algorithm. SIGGRAPH Computer Graphics, 21(4):163–169, 1987.
-  J. S. Meredith and H. Childs. Visualization and analysis-oriented reconstruction of material interfaces. Computer Graphics Forum, 29:1241–1250, 2010.
-  H. Obermaier, F. Chen, H. Hagen, and K. I. Joy. Visualization of material interface stability. In Proceedings of IEEE Pacific Vis 2012, pages 225–232, 2012.
-  OpenMP Architecture Review Board. OpenMP Application Programming Interface, 2015.
-  S. Ozer, D. Silver, K. Bemis, and P. Martin. Activity detection in scientific visualization. IEEE Transactions on Visualization and Computer Graphics, 20(3):377–390, 2014.
-  F. H. Post, B. Vrolijk, H. Hauser, R. S. Laramee, and H. Doleisch. The state of the art in flow visualisation: Feature extraction and tracking. Computer Graphics Forum, 22(4):775–792, 2003.
-  F. Reinders, F. H. Post, and H. J. Spoelder. Visualization of time-dependent data with feature tracking and event detection. The Visual Computer, 17(1):55–71, 2001.
-  K. A. Robbins, C. Jeffery, and S. Robbins. Visualization of splitting and merging processes. Journal of Visual Languages & Computing, 11(6):593–614, 2000.
-  F. Sadlo. Lyapunov time for 2D Lagrangian visualization. In Topological and Statistical Methods for Complex Data, Mathematics and Visualization, pages 167–181. Springer, 2015.
-  A. R. Sanderson. An alternative formulation of Lyapunov exponents for computing Lagrangian coherent structures. In Visualization Symposium (PacificVis), 2014 IEEE Pacific, pages 277–280, 2014.
-  F. Sauer, H. Yu, and K.-L. Ma. Trajectory-based flow feature tracking in joint particle/volume datasets. IEEE Transactions on Visualization and Computer Graphics, 20(12):2565–2574, 2014.
-  K. Shi, H. Theisel, T. Weinkauf, H.-C. Hege, and H.-P. Seidel. Visualizing transport structures of time-dependent flow fields. IEEE Computer Graphics and Applications, 28(5):24–36, 2008.
-  J. Solomon, F. de Goes, G. Peyré, M. Cuturi, A. Butscher, A. Nguyen, T. Du, and L. Guibas. Convolutional wasserstein distances: Efficient optimal transportation on geometric domains. ACM Transactions on Graphics, 34(4):66:1–66:11, 2015.
-  J. Stam and R. Schmidt. On the velocity of an implicit surface. ACM Transactions on Graphics, 30(3):21:1–21:7, 2011.
-  G. Tryggvason, R. Scardovelli, and S. Zaleski. Direct Numerical Simulations of Gas–Liquid Multiphase Flows. Cambridge University Press, 2011.
-  J. J. van Wijk. Implicit stream surfaces. In IEEE Conference on Visualization ’93, pages 245–252, 1993.
-  C. Wang. A survey of graph-based representations and techniques for scientific visualization. In R. Borgo, F. Ganovelli, and I. Viola, editors, Eurographics Conference on Visualization (EuroVis) - STARs. The Eurographics Association, 2015.
-  P. K. H. Widanagamaachchi, W. Klacansky, A. Bhagatwala, J. Chen, V. Pascucci, and P.-T. Bremer. Tracking features in embedded surfaces: Understanding extinction in turbulent combustion. In 2015 IEEE Symposium on Large Data Analysis and Visualization (LDAV), pages 9–16, 2015.
-  D. Xue, C. Zhang, and R. Crawfis. Rendering implicit flow volumes. In Visualization, 2004. IEEE, pages 99–106, 2004.
-  K. Yokoi. A numerical method for free-surface flows and its application to droplet impact on a thin liquid layer. Journal of Scientific Computing, 35(2-3):372–396, 2008.
-  D. L. Youngs. An interface tracking method for a 3D Eulerian hydrodynamics code. Atomic Weapons Research Establishment (AWRE) Technical Report, (44/92):35, 1984.