about sensor
why sensor?
who's fastest?
p10 p50 p90
bayes and markov
drainage radius
frac conductivity
tight & fractured
capillary pressure
sustainability and co2
spe ccus
fd vs fe
third party tools
q & a
contact us
Dr. K. H. Coats



Dec. 2018

spe8.dat, spe8.out  10 x 10 x 4 (0.06 cpu s)

spe8_9pt.dat spe8_9pt.out  10 x 10 x 4 (0.06 cpu s)

spe8_r1.dat, spe8_r1.out 50 x 50 x 13 (71.79 cpu s)

spe8_r1_9pt.dat spe8_r1_9pt.out  50 x 50 x 13 (834.4 cpu s, increased mainly due to requirement for ILU order 1 solver)

spe8_r2.dat, spe8_r2.out 90 x 90 x 65 (9538 cpu s)

spe8_r1z.dat spe8_r1z.out 10 x 10 x 8 (1.9 cpu s)

spe8_r1z_upscaled.dat spe8_r1z_upscaled.out 10 x 10 x 6 (1.5 cpu s)

Sensor 5-pt and 9-pt 10 x 10 x 4 results agree very well.  Producers remain on rate control for the entire run (to a specified maximum producing gor of 30,000 scf/stb, end times = 2243.1 days 5 pt and 2283.2 days 9 pt) as reported by all participants.  Final bhp values for producers are 2139.9 psia for Well 1 and 2089.3 psia for Well 2 (5 pt) and 2121.2 psia for Well 1 and 2066.3 psia for Well 2 (9 pt). Gas rates match well, cumulatives are matched almost exactly

5pt and 9pt results for spe8, 10 x 10 x 4 :









Gas Rate, Field:


Gas Cumulative, Field:



Comparison of effects of refinement, spe8 vs. spe8_r1 (50x50x13)- some numerical dispersion is evident in coarse-grid 10 x 10 x 4 results, and cumulatives agree almost exactly.  But the high-perm top layer is not vertically refined.

The refined run takes slightly less time to hit the field GOR economic limit, 2192.1 days vs. 2243.1 for the coarse grid 5 pt run   Final bhp values for producers are 2318.2 psia for Well 1, 2277.0 psia for Well 2 (vs. 2139.9 psia for Well 1 and 2089.3 psia for Well 2 for coarse grid)..










Cumgas, PROD1:


Cumgas, PROD2:


Despite some error in gor and bhp, small errors are seen in plots of oil and gas rates and cumulatives.  Gas rates at end of run and all cumulatives match almost exactly. final HC average pressures in the coarse and refined cases are 3114 and 3214 psia, respectively.

But, no vertical refinement has been added to the high-perm top layer where the injector and producers are completed.  In spe8_r2, we areally refine by a factor of 9 (delx=dely=55.55555) and use 5 ft layers, giving grid dimensions 90 x 90 x 65.

Comparison of effects of refinement, spe8 vs. spe8_r2 (90x90x65).  Vertical refinement of the high-perm layer has significant effect:


GOR, PROD1, spe8 vs. spe8_r2 (these differences are reflective of the error in case spe8 and in published spe8 results, due to neglecting numerical dispersion resulting from use of the given 10 x 10 x 4 Cartesian grid):




Cumgas, PROD1:


Cumgas, PROD2:


The effects of gravity on flow through the high-perm layer from injector to producers is increased, giving earlier injected gas breakthrough and earlier end of run (hitting max gor).  Run spe8_r2, spe8_r1, and spe8 run end times are 2070 days, 2192.1, and 2243.1 days, respectively. Cumulative gas production at end of run is about the same as the coarse grid run.

It was found that adding further areal or vertical refinement to spe8_r2 has no significant effect on results, so run spe8_r2 accurately represents the correct fine-scale solution.

Vertical refinement of the lower perm layers is unnecessary - in run spe8_r1z we refine spe8 only vertically in the first layer, using 5-5 ft layers in place of the original single 25 ft. layer, resultng in a 10 x 10 x 8 Cartesian grid.  It reproduces the fine-scale solution spe8_r2 almost exactly:


GOR, PROD1, spe8 (M1, 10 x 10 x 4) vs. spe8_r2 (M5, 90 x 90 x 65) vs. spe8_r1z (M7, 10 x 10 x 8):


So, areal refinement of the original 10 x 10 x 4 grid is sufficient to control numerical dispersion but the first high-perm layer must be vertically refined to control it.  spe8_r1z (10 x 10 x 8) uses 5 layers in place of the original top 25 ft layer.  We found that using less than 5 layers gives significant error in gas production and runtime, and that doubling the number of high-perm layers does not significantly increase accuracy.

We suspect that the bottom 3 lower perm layers can be combined into a single layer, to create the coarsest Cartesian grid that sufficiently reproduces fine-scale results.  Run spe8_r1z_upscaled uses Sensor's internal automatic flow-based upscaling program to create the minimal 10 x 10 x 6 Cartesian upscaled case:


GOR, PROD1, spe8_r1z (10x10x8, M7) vs. spe8_r1z_upscaled (10x10x6 M10):


GOR, PROD2, spe8_r1z (M7) vs. spe8_r1z_upscaled (M10);


So, run spe8_r1z_upscaled has been determined to be the coarsest Cartesian model (10 x 10 x 6) that accurately reproduces fine-scale results for the spe8 problem.  Any areal or vertical coarsening causes significant error.  Runtime is 1.48 s (including the internally applied flow-based upscaling that combines the bottom 3 original layers), and is much higher than for the original case because of the larger number of smaller gridblocks in the original high-perm top layer, which was split into 5 layers to accurately model the effects of gravity on multiphase flow.  This cpu time and model solution should be compared with other Cartesian and flexible grid model results (including grid construction time).  The total time required to solve this upscaling problem using Sensor including the time required to determine the fine scale solution is approximately given by the sum of run times given for all the runs given at the top of this page (a few hours, mostly in running the finest-grid case spe8_r2).

All published flexible grid model results for spe8 are correct according to the given instructions comparing flexible grid results to those for specified Cartesian (10 x 10 x 4) grids having unknown error (numerical dispersion), but are incorrect for the given spe8 model problem, because the correct fine-scale solution was not determined and then matched by proper upscaling so that upscaled models give correct results, as demonstrated here.  Run spe8_r1z_upscaled uses the coarsest Cartesian grid that we can find using Sensor that gives accurate results for the spe8 problem.  It is also the fastest accurate case that we can construct, without attempting to apply local grid refinement to reduce the number of gridblocks and cpu time while not affecting the solution (as can be attempted in RExcel for Sensor).


In the spe8 problem statement, an arbitrary gor of 2000 was chosen to represent the time of injected gas breakthrough.  No pre-determined value of gor can possibly accurately indicate the time of actual injected gas breakthrough for an oil reservoir.  Addition of tracer data to spe8.dat shows that gas breaks through at both producers (using a criteria of .01% injected gas fraction produced) at 611.01 days (spe8_gastracer.dat, spe8_gastracer.out). If we add nine-point differencing, that breakthrough time becomes 806.19 days for both wells.  That indicates some grid orientation effect but it has very little effect on production.  The breakthrough time is one of the most sensitive indicators of numerical dispersion, but it is virtually insignificant since injection has no effect on production at all (all produced injected gas is insignificant) until about 1300 days, as shown below in comparison of gas injection and depletion results (with the gas injector inactive). For depletion, gas rate quickly increases just as in the gas injection case, but earlier and to a lower maximum, and then both gas and oil production rates quickly decline to 0 at around 2800 days.  In both cases, oil and gas rates reach their maximum at the time the pressure constraint becomes active.


Oil (green) and Gas Rates (red), PROD1, gas injection vs. depletion, 10 x 10 x 4:


GOR, PROD1, gas injection vs. depletion, 10 x 10 x 4:



*Quandalle, Phillippe, "Eighth SPE Comparative Solution Project: Gridding Techniques in Reservoir Simulation', SPE 25263 presented at the 12th SPE Symposium on Reservoir Simulation held in New Orleans, LA, Feb. 28 - Mar. 3, 1993.

2000 - 2019 Coats Engineering, Inc.