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.