next up previous [pdf]

Next: UNIQUENESS Up: Claerbout et al.: Log Previous: TAKING THE STEP

ALGORITHM

Pseudo code below finds the best single filter for a group of seismograms. Notice $ g(t,x)$ could contain mute patterns, etc.

Lower case letters are used for variables in time and space like $ \texttt{d}= d(t,x)$ , $ \texttt{r}= r(t,x)$ , $ \texttt{g}= g(t,x)$ , $ \texttt{q}= q(t,x)$ , $ \texttt{dq}= \Delta q(t,x)$ . while upper case for functions of frequency $ \texttt{D}=D(\omega,x)$ , $ \texttt{R}=R(\omega,x)$ , $ \texttt{dR}=\Delta R(\omega,x)$ , $ \texttt{U}=U(\omega)$ , $ \texttt{dU}=\Delta U(\omega)$ . Asterisk $ \ast$ means multiply within an implied loop on $ t$ or $ \omega$ .

D =   FT(d)
U = 0.            # or other initializations
Remove the mean from U(omega).
Iteration {
     dU = 0
     For all x
          r = IFT( D * exp(U))
          q = g * r
          dU = dU + conjg(FT(r)) * FT(g*softclip(q))
     Remove the mean from dU(omega)
     For all x
          dR = FT(r) * dU                         
          dq = g * IFT(dR) 
     Newton iteration for finding alfa {
          H'  = softclip( q )
          H'' = 1/(1+q^2)^1.5
          alfa= - Sum( dq * H' ) / Sum( dq^2 * H'')
          q = q + alfa * dq
          U = U + alfa * dU
          }
     }




2012-05-10