History matching real production and seismic data for the Norne - - PowerPoint PPT Presentation

history matching real production and seismic data for the
SMART_READER_LITE
LIVE PREVIEW

History matching real production and seismic data for the Norne - - PowerPoint PPT Presentation

History matching real production and seismic data for the Norne field EnKF Workshop 2018 Rolf J. Lorentzen, Tuhin Bhakta, Dario Grana, Xiaodong Luo, Randi Valestrand, Geir Nvdal, Ivar Sand Introduction The full norne model is history


slide-1
SLIDE 1

History matching real production and seismic data for the Norne field

EnKF Workshop 2018 Rolf J. Lorentzen, Tuhin Bhakta, Dario Grana, Xiaodong Luo, Randi Valestrand, Geir Nævdal, Ivar Sandø

slide-2
SLIDE 2

Introduction

  • The full norne model is history matched using real production and seismic data
  • Initial ensemble generated using Gaussian random fields
  • Updates PORO, PERMX, NTG, MULTZ, MULTFLT, MULTREGT, KRW/KRG, OWC
  • Clay content defined as VCLAY = 1 - NTG
  • Sequential assimilation (production → seismic)
  • Seismic data inverted for acoustic impedance at four points in time
  • Iterative ensemble smoother, RLM-MAC, used (Luo et. al, SPE-176023-PA)
  • Sparse representation using wavelets (data reduced by 86 %)
  • Correlation based localization
slide-3
SLIDE 3

Seismic data inversion and transformation

  • Time shift correction:

Alfonzo et al. 2017

  • Linearized Bayesian approach:

Buland and Omre, 2003: Sbase = Gybase + e

  • Time to depth conversion:

Provided Norne velocity model

  • Upscaling:

Petrel software

  • Difference and averaging:

∆z

  • p
slide-4
SLIDE 4

Petro-elastic model

  • Estimate mineral bulk and shear moduli:

[Ks, Gs] ← Hashin − Shtrikman(Kquartz, Gquartz, Kclay, Gclay, Vclay)

  • Dry rock bulk and shear moduli (empirical):

[Kdry, Gdry] ← f (p, pini, φ)

  • Fluid substitution:

[Ksat, Gsat] ← Gassman(Kdry, Gdry, Ks, Gs)

  • P-wave velocity and rock density:

[vp, ρsat] ← Mavko(Ksat, Gsat) zp = vp × ρsat

slide-5
SLIDE 5

Sparse representation and image denoising

HHH HHL LHL LHH LLL LLH HLH

  • 1. Transform seismic observations:

cS ← DWT(∆z

  • p)
slide-6
SLIDE 6

Sparse representation and image denoising

HHH HHL LHL LHH LLL LLH HLH

  • 1. Transform seismic observations:

cS ← DWT(∆z

  • p)
  • 2. Estimate noise in each subband (MAD):

σS = median(|cS − median(cS)|)/0.6745

slide-7
SLIDE 7

Sparse representation and image denoising

HHH HHL LHL LHH LLL LLH HLH

  • 1. Transform seismic observations:

cS ← DWT(∆z

  • p)
  • 2. Estimate noise in each subband (MAD):

σS = median(|cS − median(cS)|)/0.6745

  • 3. Compute standard deviation for coefficients:

ˆ σS = std(cS)

slide-8
SLIDE 8

Sparse representation and image denoising

HHH HHL LHL LHH LLL LLH HLH

  • 1. Transform seismic observations:

cS ← DWT(∆z

  • p)
  • 2. Estimate noise in each subband (MAD):

σS = median(|cS − median(cS)|)/0.6745

  • 3. Compute standard deviation for coefficients:

ˆ σS = std(cS)

  • 4. Compute truncation value (Bayesian shrinkage):

TS =

σ2

S

|σ2

S−ˆ

σ2

S|

slide-9
SLIDE 9

Sparse representation and image denoising

HHH HHL LHL LHH LLL LLH HLH

  • 1. Transform seismic observations:

cS ← DWT(∆z

  • p)
  • 2. Estimate noise in each subband (MAD):

σS = median(|cS − median(cS)|)/0.6745

  • 3. Compute standard deviation for coefficients:

ˆ σS = std(cS)

  • 4. Compute truncation value (Bayesian shrinkage):

TS =

σ2

S

|σ2

S−ˆ

σ2

S|

  • 5. Apply hard thresholding:

cs → cs > TS, do = c(I)

slide-10
SLIDE 10

Ensemble smoother

mi+1

j

= mi

j + Si m(Si d)T[Si d(Si d)T + γiCd]−1 × [do + ǫj − di j ]

↓ TSVD mi+1

j

= mi

j + ˜

K i∆˜ di

j

∆˜ di

j ∈ Rp×1, p ≤ N: Projected (“effective”) data innovation.

slide-11
SLIDE 11

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

slide-12
SLIDE 12

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

  • 2. Transform all correlations for each observation (ρl), and return high-frequency

coefficients: cH

l

← DWT(ρl)

slide-13
SLIDE 13

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

  • 2. Transform all correlations for each observation (ρl), and return high-frequency

coefficients: cH

l

← DWT(ρl)

  • 3. Estimate noise in coefficients (MAD):

σl = median(|cH

l − median(cH l )|)/0.6745

slide-14
SLIDE 14

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

  • 2. Transform all correlations for each observation (ρl), and return high-frequency

coefficients: cH

l

← DWT(ρl)

  • 3. Estimate noise in coefficients (MAD):

σl = median(|cH

l − median(cH l )|)/0.6745

  • 4. Compute truncation value (universal rule):

λl = max(

  • 2 ln n(ρl)σl)
slide-15
SLIDE 15

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

  • 2. Transform all correlations for each observation (ρl), and return high-frequency

coefficients: cH

l

← DWT(ρl)

  • 3. Estimate noise in coefficients (MAD):

σl = median(|cH

l − median(cH l )|)/0.6745

  • 4. Compute truncation value (universal rule):

λl = max(

  • 2 ln n(ρl)σl)
  • 5. Compute truncation matrix:

ξkl = 1, if|ρkl| ≥ λl, 0 otherwise

slide-16
SLIDE 16

Correlation based localization

  • 1. Compute sample correlation between parameters (k) and “effective” measurements (l):

ρkl ∈ RNm×p

  • 2. Transform all correlations for each observation (ρl), and return high-frequency

coefficients: cH

l

← DWT(ρl)

  • 3. Estimate noise in coefficients (MAD):

σl = median(|cH

l − median(cH l )|)/0.6745

  • 4. Compute truncation value (universal rule):

λl = max(

  • 2 ln n(ρl)σl)
  • 5. Compute truncation matrix:

ξkl = 1, if|ρkl| ≥ λl, 0 otherwise

  • 6. Updated Kalman gain matrix (see also Luo and Bhakta, 2017):

ˆ K = ξ ◦ ˜ K

slide-17
SLIDE 17

Measurement operator

The observation operator G comprises several steps summarized as:

  • 1. running the reservoir simulator using mj to compute dynamic variables (pressure and

saturation)

slide-18
SLIDE 18

Measurement operator

The observation operator G comprises several steps summarized as:

  • 1. running the reservoir simulator using mj to compute dynamic variables (pressure and

saturation)

  • 2. running the PEM to compute the acoustic impedance, zp,j, at all survey times
slide-19
SLIDE 19

Measurement operator

The observation operator G comprises several steps summarized as:

  • 1. running the reservoir simulator using mj to compute dynamic variables (pressure and

saturation)

  • 2. running the PEM to compute the acoustic impedance, zp,j, at all survey times
  • 3. compute differences and average over formation layers to get ∆zp,j
slide-20
SLIDE 20

Measurement operator

The observation operator G comprises several steps summarized as:

  • 1. running the reservoir simulator using mj to compute dynamic variables (pressure and

saturation)

  • 2. running the PEM to compute the acoustic impedance, zp,j, at all survey times
  • 3. compute differences and average over formation layers to get ∆zp,j
  • 4. applying the DWT to get cj
slide-21
SLIDE 21

Measurement operator

The observation operator G comprises several steps summarized as:

  • 1. running the reservoir simulator using mj to compute dynamic variables (pressure and

saturation)

  • 2. running the PEM to compute the acoustic impedance, zp,j, at all survey times
  • 3. compute differences and average over formation layers to get ∆zp,j
  • 4. applying the DWT to get cj
  • 5. using the leading indices I to get dj = cj(I)
slide-22
SLIDE 22

Generate initial ensemble Assimilate production data Compute data dj = G(mj), j = 1 . . . N Compute tapering matrix ξcorr Update parame- ters m1, . . . , mN Compute wavelet coeff. co = DWT(∆z

  • p)

Find indices for leading coeff. (I) Compute noise (Cd) and data do = co(I) Iterate

Figure: Workflow for assimilating seismic data.

slide-23
SLIDE 23

Norne field

  • Grid size:

46 x 112 x 22 (113344)

  • Active cells:

44927

  • Wells:

9 injectors, 27 producers

  • Production: 3312

days

slide-24
SLIDE 24
slide-25
SLIDE 25

Initial Production Seismic

slide-26
SLIDE 26

Initial Production Seismic

slide-27
SLIDE 27

Initial Production Seismic

slide-28
SLIDE 28

Initial Production Seismic

slide-29
SLIDE 29

Top: real data. Middle: production. Bottom: seismic.

slide-30
SLIDE 30

Initial Production Seismic

slide-31
SLIDE 31

Initial Production Seismic

slide-32
SLIDE 32

Initial Production Seismic

slide-33
SLIDE 33

Summary / Conclusions

  • A workflow for history matching real production and seismic data is presented
  • Clay content and other petrophysical parameters updated
  • Data match improved for both production and seismic data
  • Updated static fields are geologically credible
  • Potential for simulating infill wells or EOR strategies
slide-34
SLIDE 34

Acknowledgments

We thank

  • Schlumberger and CGG for providing academic software licenses to ECLIPSE and

HampsonRussell, respectively.

  • Main financial support from Eni, Petrobras, and Total, as well as the Research Council
  • f Norway (PETROMAKS2).
  • Partial financial support from The National IOR Centre of Norway.