Reservoir Visualization with IBM Data Explorer

Reservoir Visualization with IBM Data Explorer

Paul Y. Huang

IBM Thomas J. Watson Research Cenetr

Yorktown Heights, NY 10598

In order to insure balanced and complete utilization of an oil field reservoir, producers need to understand the complex 3D structure of a reservoir and the fluid movement within it. A reservoir simulation can provide guidelines for hydrocarbon recovery. The output of such simulations can be a time series of many variables. Traditional graphics tools provide only a limited means of visualizing this type of data. For example, the user can slice along grid connections but not along any arbitrary cutting plane of an irregular structure. To truly understand the characteristics of a reservoir, scientists need visualization tools that are both flexible, powerful and easy to use. Techniques such as volumn rendering and 3D isosurfaces can be used to show fluid flows and more. Researcher can visually correlate reservoir data , well production data or other related data to produce single images or animation sequences of time varing data.

We describe here, the use of IBM Visualization Data Explorer, a general purpose visualization and analysis environment, for gaining new insight into the results of reservoir data.

Data Explorer can deal with both cell centered and node centered data structures to easily represent discrete (lithofacies) and continuous (pressure and saturation) data. Data Explorer provides a built-in animation capability for displaying dynamic data. With a single general purpose render and its ability to correctly register multiple data sets, Data Explorer provides the ability to display multiple variables and structures simultaniously.

Reservoir Simulation Data

Reservoir structures are generated from seismic horizons and geological information. For the purpose of simulation, the structure is represented by a computational grid. Inside the reservoir, the wells are represented by points in space with connections to represent penetration of the well into subsequent layers. The reservoir parameters include scalars (pressure, saturation, porosity etc.) and vectors (permeability, transmissibility etc.) quantities. Data can be gridded (e.g.: saturation) or simply points in space(well production). The data can be static or time varying.

Visualization of Block data


Figure 1
The reservoir structure is represented by a 3D mesh. Data is associated with the center of the 3D blocks, and the data are uniform within each 3D block. Data Explorer defines this kind of data structure as connection dependent data. The connections are defined as irregular, (how data are connected in each cube), however, each cube is associated with subscripts i, j, k. One can easily slice along the grid connections to generate layers by indexing along i, j, k. The geometry of the layers is thereby preserved; that is, the surface is not flat if the position component has relief. Figure 1 A show a typical reservoir with colors representing data values. Since the reservoir cubes touch one another, to look at both the internal and external blocks in global view one need to shrink the cubes so the internal cubes can be made visable. Figure 1B shows the results of cubes that have been reduced by 50% in each dimension. One can also apply a vertical expansion to the reservoir to pull the horizontal layers apart so that internal layers can be seen ( Figure 1C). Since the reservoir is fairly flat in the Z dimension, one can apply scaling to exaggerate the vertical relief as seen in Figure 1D. Figure 1E shows the results of combining the operations represented by Figures 1B and 1C. Figure 1F show the resultant reservoir structure after applying all of the above tecchniques into a single image.


Figure 2
If one wants to select an interesting subset of data to study one can use Data Explorer tools to interactively select desired layers or data ranges to display. Interactors (widgets used to modify visualization parameters) can be used to specify which layers or data values to use for the selected subset. Cubes outside the selection areas can be marked as invalid and excluded from subsequent visualizations (e.g. AutoColor) and analysis (e.g. statistics). With other interactors the user can choose which dimension to slice through or data to compute on. Since interactors can be data driven, minimum and maximum values are automatically adjusted so that no invalid choice can be made. One can also use a 3D cursor (Picking function) in the image to obtain the I, j, k indices and data values to select subsets of data to work with. Figure 2A shows the block representation of selected layers and Figure 2B shows cubes in the selected data range.

The picking function also allow the user to interactively extract information such as data and location values of any cells in the 3D object. Figures 2 also show the picked points (black spheres) and the data value (red) associated with the picked cells.

Animation of Fluid Flow

For continuous variables such as oil saturation (which can continue into different formations) , one can generate a new grid structure where the grid nodes are the center of the original blocks. This is defined in Data Explorer as "position dependent data". Data in this case is then assumed to be continuous, and the values will be within the proper range. With this new grid one can display volumetric fluid flow and/or 3D isosurfaces with interpolations applied to the data. Many reservoir parameters are time varying. therefore it is natural to animate the entire time sequence into a movie loop. For saturation parameters (oil, gas, water etc.), volume rendering and time sequence animation enables one to monitor the true volumetric fluid flow in the reservoir. These animations helps reservoir geologists, engineers, and analysts to understand fluid flow behavior through the use of progressive changes in color. Data Explorer provides animation and many other functions through the ues of a VCR like tool (Sequencer) which allows operation in continuous or single step modes.


Figure 3
Three images in the top row of Figure 3 shows a volume rendering of oil saturation at three selected time steps. In order to emphasis the fluid flow, one can determine the time derivative of the saturation by using an general purpose module called "Compute". The instantaneous time derivative is defined as the difference between the current and the last time steps as shown in the three images in the bootom row of Figure 3. By using the appropriate colormaps for the chosen saturation levels (oil, gas or water), one can directly animate fluid flow. By using interactors and switches, the user can automatically select the appropriate colormap for either saturation level or instantaneous change of saturation.


Figure 4
Using streamlines is a direct way of showing fluid flow movement. In Figure 4 the red lines shows the paths of oil movement from randomly sampled starting points. The white arrows on the streamlines show the direction of fluid flow. The streamline points are computed iteratively, the spacing bteween the points depends on both the element size of the connection grid and the rate at which the velocity changes. The streamlines are traces until the particles exit the volume in which the vector field is defined or until a time limit expires. The color transparent surfaces and black contour lines outline the reservoir volume.

Figure 5
combines the streamlines, well locations (vertical tubes) and well productions (colored spheres) to show the correlation of the fluid flow with well data. The well production parameter show is the cumulative gas production and the reservoir parameter is the gas saturation.. The bottom image in Figure 5 is a close up view near one of the well showing the gas is moving away at this time step after water injection.


Figure 6
Another useful realization technique that shows the characteristic of fluid flow is the 3D isosurface. By using an appropriate isosurface value in an animation, one can monitor the progressive movement of the fluid flow fronts. Figure 6 shows an isosurface animation sequence for the same oil saturation data.

Well Production Data


Figure 7
The Render module allows many different realizations and objects to be displayed in a single image. For example, to correlate the fluid flow with well productions, one can add tubes in the volume to represent the well locations. By using different colors, one can even distinguish the producing and non producing wells. To take this one step further, one can even color the wells according to the amount of production to indicate cumulative or instantaneous production. Another simple way of showing production is by placing spheres on top of the producing wells. The size and/or the color of the spheres can be used to indicate the production amount. By using low opacity for the tubes and spheres, one should be able to see the fluid flow behind the spheres. To show the injection amount, one can place the sphere at the bottom of the wells. Another way to show well production is to use vector glyphs. Again, the size and/or color can be used to indicate production amount. One can point the vector up for well production and down for well injection. Figure 7A illustrates the use of all of these techniques in combination. The red numbers indicting the well IDs and the white numbers indicating well production values.

To pinpoint precisely where the production is coming from, one can use a very useful module, "Map To Plane", to project the volume data onto an arbitrary plane. The chosen plane is horizontal so that one can know the precise depth of the plane. Since this is a cutting plane into a mesh of deformed or irregular cubes, the shape of the cutting plane outlines the intersection between the horizontal plane and the volume. Figure 7B shows a horizontal cutting plane through the reservoir, the missing area indicating the rock formation where the oil saturation values are invalid. By interactivly moving this plane up or down, engineers can understand where the production come from in the reservoir.


Figure 8
One more way to examine well data is to plot the well parameter time history of the selected wells. This can easily be done by using the "Pick" module to select the wells. The Pick will return the well Ids when either the well or the production sphere is picked using the 3D cursor, the Ids are then used to select the well data to be imported and plotted in the graph. The user can select any combination of wells and plot any well parameter even when another well parameter is being displayed in the image window. Figure 8 reservoir data combined with well data represented by spheres and two plots showing cumulative and instaneous well production history. The liitle red dots in the image indicting the picked wells for plotting. The cursor can either touch spheres or tubes to obtain well Ids.

Correlative Analysis of Reservoir Parameters


Figure 9
To study the relationship between different parameters, the user can create different image windows for comparison. For example one window can show water saturation and the other window gas saturation of the same or different time step using the same camera parameters. Using this approach, one can also display the same parameters of different time steps in different windows using the same camera. Of course a third way to visualize these data are to view the same parameters of a given time step with different camera parameters. In the first two scenarios, the camera of one image window drives the other window so the two window are syncronis for direct interaction of geometric transformations such as rotate and zoom. Figure 9 shows the three methods described above. Figures 9A and 9B show the comparison of water and gas saturation for the same time step, Figures 9C and 9D show the gas saturation for different time steps, Figures 9E and 9F show the gas saturation of the same time step from different camera angles.

Conclusion

The examples presented here show that a powerful and flexible general purpose visualization and analysis tool kit can be invaluable in helping scientists and engineers to understand fluid flow and well production in reservoirs. In this case, we show examples of modifying structure, ways of animating fluid movements, correlating data and comparing reservoir parameters using multiple views of the data. Data Explorer can also be use to visualize data from a number of other areas including Seismic processing, crosshole tomography, coreflood simulations and more.