previous up next print clean
Next: Crossing dips Up: MONO-PLANE DECONVOLUTION Previous: Local windows

Patch utilities

The patch utilities (see page [*]) allow us to operate subroutines like the new deconvolution subroutine moplan() [*] in many small patches (or windows) of data. The utilities arrange for a smooth overlap of patches. Subroutine lomoplan() [*] below does the same job as moplan() [*] above, except that lomoplan() [*] does it in an array of overlapping patches by invoking the patch utility subroutines cinloiwt() [*], mkwallwt() [*], and patch() [*].

Subroutine lomoplan() produces a forward residual and also a backward residual that I could not find any reason to display. Also, the display does not explicitly show the patch size. My default values were 20 points on time and 6 channels. The number of patches was designed for a 50% overlap. The time axes are sampled at 4 ms. I also incorporated a gain leveling (agc) option though in principle, gain leveling is a separate process whose natural patch size might differ from that of the MOPLANs.

# lomoplan  -- LOcal MOno PLane ANnihilate
# 
subroutine lomoplan( agc, eps,  w1,w2,data,n1,n2, resid, gap,  aa,a1,a2,k1,k2)
integer	i1,i2,lag1,lag2,agc,w1,w2,         n1,n2,        gap,     a1,a2,k1,k2
real dot,		  eps,        data(n1,n2),resid(n1,n2),aa(a1,a2,k1,k2)
integer niter
temporary real pdata(w1,w2), dpres (w1*w2*2+a1*a2), windwt(w1,w2), wallwt(n1,n2)
call null(                                        resid, n1*n2)
niter= a1 + a1/2;     lag1 = (a1+1)/2;  lag2 = 1
call cinloiwt( a1,a2, lag1,lag2, windwt, w1,w2)
call mkwallwt( k1,k2,            windwt, w1,w2, wallwt, n1,n2)
do i2= 1, k2 {
do i1= 1, k1 {
	call patch( 0, 0, i1,i2, k1,k2, data,     n1,n2, pdata, w1,w2)
	call moplan( agc, eps,         pdata,     w1,w2,
	     niter, lag1,lag2, gap, aa(1,1,i1,i2),a1,a2, dpres       )
	call diag( 0, 0, windwt, w1*w2, dpres,           dpres       )
	call patch( 1, 1, i1,i2, k1,k2, resid,    n1,n2, dpres, w1,w2)
	}}
call diag  ( 0, 0, wallwt, n1*n2,       resid, resid )
return; end

 
conflict
conflict
Figure 3
Conflicting dips before and after application of a local monoplane annihilator. Press button for movie. The movie sequence is: 1: data, 2: data after LOMOPLAN, 3: like previous but windows not overlapping, 4: predicted data


view burn build edit restore


previous up next print clean
Next: Crossing dips Up: MONO-PLANE DECONVOLUTION Previous: Local windows
Stanford Exploration Project
11/18/1997