• No se han encontrado resultados

Capítulo 5: TRAYECTORIAS DE LA CIUDAD: UNA MIRADA SISTÉMICA DE

5.2. Subsistema social

5.2.6. Madrid: la participación entre el modelo empresarialista de la ciudad y los

∆y

∆x

∆x

∆z

∆z

Water Injector Producer

r = radial distance from well

∆r = radial grid size (can vary ∆r1, ∆r2, ...) z = vertical coordinate

∆zi = vertical grid size (can vary ∆z1, ∆z2, ...) h = height of formation

rw = wellbore radius Notation:

∆zi

top view

z h

r

Q ∆r

ri

∆ri rw

ri-1

2.2 Accuracy of Simulations and Numerical Dispersion

The issue of numerical dispersion was touched upon briefly in Chapter 1 in connection with Case 1 (SPE10022). Here we expand on the concept in a non-mathematical manner. Numerical dispersion is essentially an error due to the fact that we use a grid block approximation for solving the flow equations. A more mathematical description of numerical dispersion is presented in Chapter 6, Section 8 but here we

Figure 1

Examples of 1D, 2D and 3D Cartesian grids

Figure 2

r/z grid geometry - more appropriate for modelling flows in the near well region even in a heterogeneous layered system as shown.

4 4

Gridding And Well Modelling

discuss how to reduce this source of error in our simulations or to make it a minor effect. The balance, as we will see, is between accuracy (usually by taking more grid blocks) and computational cost. Ideally, we would like to capture all the main reservoir processes (e.g. frontal displacement, crossflow, gravity segregation etc.) and accurately forecast recovery to some acceptable percentage error, for the minimum number of grid blocks.

A simple schematic of the way that the numerical dispersion error arises is shown step by step in Figure 3. This figure illustrates a simple linear waterflood and we imagine that each of the sub-figures shown from (a) to (e) represents a time step, Δt, of the water injection process. Block i = 1 contains the injector well which is injecting water at a constant volumetric rate of Qw, and block i = 5 contains the producer. The system is initially at water saturation, Swc, and this water is immobile i.e. the relative permeability of water is zero, krw(Swc) = 0. Each block has constant pore volume, Vp

= Δx.A.φ where φ is the porosity. In Figure 3(a), we see that after time, t = Δt, some quantity of fluid has been injected into block i = 1; the volume of water injected is Qw. Δt and this would cause a water saturation change in grid block i = 1, ΔSw1 = (Qw. Δt)/Vp i.e. the new water saturation in this block is now, Swc+ (Qw. Δt)/Vp. Over the first time step, no fluid flowed from block to block since the relative permeability of all blocks was zero (krw(Swc) = 0). However, the relative permeability in block i = 1 is now krw(Sw1) > 0. The second time period of water injection is shown in Figure 3(b). Another increment of water, Qw. Δt, is injected into block i = 1 causing a further increase in water saturation Sw1. However, over the second time period, krw(Sw1) > 0 and therefore water can flow from block i = 1 to i = 2, increasing the water saturation such that Sw2 > Swc making the relative permeability in this block, krw(Sw2) > 0. In the third time step, shown in Figure 3 (c), the same sequence occurs except that fluid can now from block 1 → 2 and also 2 → 3, where for the same reasons as explained, krw(Sw3) > 0. In the fourth and fifth time steps (Figures 3(d) and 3(e)), flow can now go from block 3 → 4 and from 4 → 5 where, since krw(Sw5) > 0, then it can be produced from this block, although the relative permeability in block 5 will be very small. Hence, after only five time steps to time , t = 5Δt, the water has reached the producer in block 5 from whence it can be produced (although not a very high rate because the relative permeability is very small) and this is an unsatisfactory situation.

If we had taken 10 grid blocks, then clearly a similar argument would apply and water would be produced after 10 time steps - with an even lower relative permeability in block i = 10 - and this is more satisfactory. Indeed, this underlies why we take more grid blocks. This simple illustration explains in a quite physical way the basic idea of numerical dispersion.

4 4

Gridding And Well Modelling

1.0

0 0 20 40 60 80 100 krw

Swc = 20% Sor = 30%

Sw %

Relative Permeability to Water

(a)

(b)

(c)

(d)

(e)

Water Injection

Qw

Sw= Swc Mixing due to numerical dispersion

& relative permeability effects

i = 1 i = 2 i = 3 i = 4 i = 5

x

Oil Production

Time Step 1 t = ∆t

2 t = 2.∆t

3 t = 3.∆t

4 t = 4.∆t

5 t = 5.∆t

∆Sw1

The frontal spreading effect of numerical dispersion can be seen when we try to simulate the actual saturation profile, Sw(x,t), in a 1D waterflood. Under certain conditions, this may have an analytical solution, e.g. the well known Buckley-Leverett solution described in Chapter 2, Section 4.2. This often has a shock front solution for the advancing water saturation profile, Sw(x,t) as shown in Figure 4. Clearly, this sharp front may be “lost” in a grid calculation since, at time t, the front will have a definite position, x(t). However, in a grid system with block size Δx, any saturation front can only be located within Δx as shown in Figure 4. If we take more grid blocks (Δx decreases), then we will locate the front more accurately. Indeed, taking more and more blocks we will gradually get closer to the analytical (correct) solution.

Hence, one method of reducing numerical dispersion is to increase the number of grid blocks. An alternative is to use a numerical method which has inherently less dispersion in it but we will not pursue this here. Another approach is to use pseudo functions to control numerical dispersion - as we briefly introduced in Chapter 1 - and this is discussed further below.

Figure 3

Effect of grid on water breakthrough time - numer-ical dispersion.

4 4

Gridding And Well Modelling

1.0

0 Sw

∆x x

Numerical Grid block size = ∆x

Water saturation = Sw(x,t1) time = t1 Front moving in this direction with velocity Vw

xf(t1)

Analytical solution