Stanford Exploration Project, Report 97, July 8, 1998, pages

Similar documents
Implicit 3-D depth migration by wavefield extrapolation with helical boundary conditions

(i) Represent discrete-time signals using transform. (ii) Understand the relationship between transform and discrete-time Fourier transform

Calculation of the sun s acoustic impulse response by multidimensional

Mostly causal decon clarifies marine seismogram polarity.

Chapter Intended Learning Outcomes: (i) Understanding the relationship between transform and the Fourier transform for discrete-time signals

On non-stationary convolution and inverse convolution

Use: Analysis of systems, simple convolution, shorthand for e jw, stability. Motivation easier to write. Or X(z) = Z {x(n)}

Z-TRANSFORMS. Solution: Using the definition (5.1.2), we find: for case (b). y(n)= h(n) x(n) Y(z)= H(z)X(z) (convolution) (5.1.

Lecture 2 OKAN UNIVERSITY FACULTY OF ENGINEERING AND ARCHITECTURE

Two-Dimensional Systems and Z-Transforms

ONE-SIDED FUNCTIONS 2-1 INVERSE FILTERS

Stanford Exploration Project, Report 105, September 5, 2000, pages

21.4. Engineering Applications of z-transforms. Introduction. Prerequisites. Learning Outcomes

GATE EE Topic wise Questions SIGNALS & SYSTEMS

Need for transformation?

Deconvolution imaging condition for reverse-time migration

Chapter 3 Data Acquisition and Manipulation

Optimal Polynomial Control for Discrete-Time Systems

Detailed Solutions to Exercises

Damped Oscillators (revisited)

Lecture 19 IIR Filters

CALC 2 CONCEPT PACKET Complete

NYS Algebra II and Trigonometry Suggested Sequence of Units (P.I's within each unit are NOT in any suggested order)

Theory and Problems of Signals and Systems

Lecture 28 Continuous-Time Fourier Transform 2

Discrete Time Systems

Transform analysis of LTI systems Oppenheim and Schafer, Second edition pp For LTI systems we can write

Signals and Systems. Spring Room 324, Geology Palace, ,

e x = 1 + x + x2 2! + x3 If the function f(x) can be written as a power series on an interval I, then the power series is of the form

Let H(z) = P(z)/Q(z) be the system function of a rational form. Let us represent both P(z) and Q(z) as polynomials of z (not z -1 )

Matrix formulation of adjoint Kirchhoff datuming

Lecture 04: Discrete Frequency Domain Analysis (z-transform)

Transform Representation of Signals

Exploring three-dimensional implicit wavefield extrapolation with the helix transform a

Like bilateral Laplace transforms, ROC must be used to determine a unique inverse z-transform.

Waves and Fourier sums

1 Chapter 2 Perform arithmetic operations with polynomial expressions containing rational coefficients 2-2, 2-3, 2-4

A system that is both linear and time-invariant is called linear time-invariant (LTI).

Recursive Gaussian filters

Digital Signal Processing

Nonparametric and Parametric Defined This text distinguishes between systems and the sequences (processes) that result when a WN input is applied

Andrea Zanchettin Automatic Control AUTOMATIC CONTROL. Andrea M. Zanchettin, PhD Spring Semester, Linear systems (frequency domain)

Algebra 2 and Trigonometry

Digital Signal Processing Lecture 10 - Discrete Fourier Transform

Solution of ODEs using Laplace Transforms. Process Dynamics and Control

Digital Signal Processing, Homework 2, Spring 2013, Prof. C.D. Chung. n; 0 n N 1, x [n] = N; N n. ) (n N) u [n N], z N 1. x [n] = u [ n 1] + Y (z) =

Scientific Computing: An Introductory Survey

Tennessee s State Mathematics Standards Precalculus

Voiced Speech. Unvoiced Speech

Topic Outline for Integrated Algebra 2 and Trigonometry-R One Year Program with Regents in June

From Wikipedia, the free encyclopedia

DSP-I DSP-I DSP-I DSP-I

This homework will not be collected or graded. It is intended to help you practice for the final exam. Solutions will be posted.

ELEG 305: Digital Signal Processing

Solutions: Homework Set # 5

Catholic Central High School

Massachusetts Institute of Technology

Cast of Characters. Some Symbols, Functions, and Variables Used in the Book

Time and Spatial Series and Transforms

Math 308 Midterm Answers and Comments July 18, Part A. Short answer questions

Question Paper Code : AEC11T02

Chapter 4 Sequences and Series

9-12 Mathematics Vertical Alignment ( )

Short Note. Plane wave prediction in 3-D. Sergey Fomel 1 INTRODUCTION

Considering our result for the sum and product of analytic functions, this means that for (a 0, a 1,..., a N ) C N+1, the polynomial.

6.12 System Identification The Easy Case

Z Transform (Part - II)

Very useful for designing and analyzing signal processing systems

Discrete-time signals and systems

CHAPTER 7 : BODE PLOTS AND GAIN ADJUSTMENTS COMPENSATION

Topic Outline for Algebra 2 & and Trigonometry One Year Program

Digital Signal Processing

Module 4 : Laplace and Z Transform Problem Set 4

Control Systems I. Lecture 6: Poles and Zeros. Readings: Emilio Frazzoli. Institute for Dynamic Systems and Control D-MAVT ETH Zürich

1 + lim. n n+1. f(x) = x + 1, x 1. and we check that f is increasing, instead. Using the quotient rule, we easily find that. 1 (x + 1) 1 x (x + 1) 2 =

ESS Finite Impulse Response Filters and the Z-transform

Integration of Rational Functions by Partial Fractions

MITOCW watch?v=jtj3v Rx7E

New Design of Orthogonal Filter Banks Using the Cayley Transform

The Z transform (2) Alexandra Branzan Albu ELEC 310-Spring 2009-Lecture 28 1

Examples of the Fourier Theorem (Sect. 10.3). The Fourier Theorem: Continuous case.

1 (2n)! (-1)n (θ) 2n

Weekly Activities Ma 110

Review of Linear System Theory

Ch. 7: Z-transform Reading

Z-Transform. x (n) Sampler

MITOCW ocw f99-lec23_300k

Invitation to Futterman inversion

Fourier Transform for Continuous Functions

Filter Banks II. Prof. Dr.-Ing. G. Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany

Algebra II Unit Breakdown (Curriculum Map Outline)

The Laplace Transform

MITOCW watch?v=y6ma-zn4olk

Trig Identities. or (x + y)2 = x2 + 2xy + y 2. Dr. Ken W. Smith Other examples of identities are: (x + 3)2 = x2 + 6x + 9 and

DRAFT. Pre-calculus Curriculum Map Quarter 1 Chapters P 2. Extraneous Critical numbers Test intervals

Transform Analysis of Linear Time-Invariant Systems

DSP Algorithm Original PowerPoint slides prepared by S. K. Mitra

Stanford Exploration Project, Report SERGEY, November 9, 2000, pages 683??

# FIR. [ ] = b k. # [ ]x[ n " k] [ ] = h k. x[ n] = Ae j" e j# ˆ n Complex exponential input. [ ]Ae j" e j ˆ. ˆ )Ae j# e j ˆ. y n. y n.

Transcription:

Stanford Exploration Project, Report 97, July 8, 1998, pages 337 342 336

Stanford Exploration Project, Report 97, July 8, 1998, pages 337 342 Short Note Factorization of cross spectra Jon Claerbout 1 keywords: factoring, spectra, crosscorrelation, 3-D INTRODUCTION A solved problem is the factorization of a positive real autospectrum into a minimumphase wavelet and its adjoint. The most practical method is that of Kolmogoroff. Here I extend the Kolmogoroff method to cross-spectra. This problem arises in the extrapolation of 3-D wavefields where we need to factor an operator like i 2. We get a band matrix to solve. In principle, we factor it into lower and upper triangular band matrices which we then backsolve. Except at the ends (ends of the helix which are the two side boundaries of a 2-D space), this is equivalent to a filter problem where the two backsubstitutions are polynomial divisions, one causal, the other anticausal. Although 2 is an autocorrelation, i 2 is not, so we need two different minimum-phase filters whereas the Kolmogoroff method gives us the same one for both the causal and anticausal operations. LEVEL-PHASE FUNCTIONS I define a level-phase function to be one for which the phase of the Fourier transform at minus the Nyquist frequency is the same as the phase at plus Nyquist frequency. An example of a function that is not level-phase is the delayed impulse Z = e iω t. The phase of this function is ω t so at the minus Nyquist frequency it is π t while at the plus Nyquist frequency it is π t. (The complex function Z = e iω t has a real part that is a cosine and an imaginary part that is a sine; in the complex plane this function is a circle, looping around the origin as ω increases. The phase is the arctangent of the ratio of the imaginary to the real part, and it steadily increases. The average phase is not level but tilted.) Examples of functions that are level-phase are those causal wavelets with a causal inverse, known in the geophysical world as minimum-phase wavelets. 1 email: jon@sep.stanford.edu, http://sepwww.stanford.edu/sep/jon/ 337

338 Claerbout SEP 97 Unlike a minimum-phase wavelet, a level-phase function need not be causal. I have been noticing level-phase functions for some time, but only recently recognized their essential features. Consider for example i 2. In one dimension, it is i xx. Expressing it in finite differences, it is an autocorrelation function ( 1, 2, 1) with the imaginary number i added to the zero lag: ( 1, 2 + i, 1). Expressing i xx as a Z transform, it is i + (2 cos(k x x))/ x 2. This function is the positive imaginary constant i plus a positive real spectrum. Thus for all real values of the frequency k x, its phase angle stays in the upper right quarter of the complex plane so it cannot wrap around the origin, as does the phase of e ikx x. Thus i xx is level-phase and using the logic of the helix (Claerbout, 1998) the operator i 2 is also level-phase. Let us add a causal wavelet A(Z) to an anticausal wavelet B(1/Z). Using Z- transform polynomials in positive powers of Z the sum can be denoted as Now exponentiate this sum: U(Z) = B(1/Z) + A(Z) (1) X(Z) = e U(Z) = e B(1/Z)+A(Z) (2) The heart of the matter is that the phase of X(Z) is the imaginary part of U(Z), which in turn is a convergent sum of sines (and maybe cosines). A sum of sines is periodic with one period going from minus to plus Nyquist. As a phase, it fits the definition of level phase. Thus an arbitrary function U(Z) always constructs a level-phase function X(Z). Although u t is an arbitrary time function from which we could always construct another time function x t, the reverse is not true. There exist time functions x t for which there is no corresponding u t. The example that we have seen is X(Z) = Z. The reason we cannot always construct a U(Z) from any possible X(Z) is that we cannot always take logarithms. When poles and zeros are in the wrong place in the complex plane, the power series for logarithm diverges. There is no requirement on X(Z) other than that it be level-phase. This is so because convergent Fourier sums can represent almost any analytic function. Since they are periodic, the one thing they cannot make is a function whose value at minus Nyquist differs from that at plus Nyquist. In summary, for x t to be represented as an exponential with (2), the necessary and sufficient condition is that it be a level-phase function. For a while I mistakenly thought that X(Z) could be taken to be an arbitrary crosscorrelation function. Now we see that this is not so because Z is a crosscorrelation function (a white signal crosscorrelated with itself delayed). Any crosscorrelation function can be shifted to become a level-phase function. (This is because we can use integration to find the phase difference between π and π. Dividing by 2π tells us how many pixels to shift.) Thus we now have a representation for any crosscorrelation function in terms of two minimum-phase wavelets and a delay.

SEP 97 Factorizing cross spectra 339 THE EXPONENTIAL OF A CAUSAL IS CAUSAL. Begin with a causal filter response c t and its associated C(Z). The Z-transform C(Z) is evaluated, giving a complex value for each real ω. This complex value is exponentiated to get another value, say B(Z(ω)) = e C(Z(ω)) (3) Next, we inverse transform B(Z(ω)) back to b t. We will prove the amazing fact that b t must be causal too. First notice that if C(Z) has no negative powers of Z, then C(Z) 2 does not either. Likewise for the third power or any positive integer power, or sum of positive integer powers. Now recall the basic power-series definition of the exponential function: e x = 1 + x + x2 2 + x3 2 3 + x4 2 3 4 + x 5 2 3 4 5 + (4) Next, use this series expansion to rewrite equation (3). B(Z) = e C(Z) = 1 + C(Z) + C(Z)2 2 + C(Z)3 2 3 + C(Z)4 2 3 4 + (5) Each term in the infinite series corresponds to a causal response, so the sum, b t, is causal. The factorials in the denominators assure us that the power series always converges, i.e., it is finite for any finite x. The inverse wavelet to B(Z) is also causal because it is e C(Z). (Unfortunately the words minimum phase distract people from the equivalent property of genuine interest, that the causal wavelet has a causal inverse so we can use feedback filters.) SUMMARY AND COMPUTATION Putting one polynomial into another or one infinite series into another is an onerous task, even if it does lead to a wavelet that is exactly causal. In practice we do operations that are conceptually the same, but for speed we do them with discrete Fourier transforms. The disadvantage is periodicity, i.e., negative times are represented computationally like negative frequencies. Negative times are the last half of the elements of a vector, so there can be some blurring of late times into negative ones. The subroutine we will use for Fourier transformation is fts() subroutine fts( signi, nx, rr ) # complex fourier transform. if (signi>0) scale = 1; else scale=1/nx # # nx signi*2*pi*i*(j-1)*(k-1)/nx # rr(k) = scale * sum rr(j) * e # j=1 for k=1,2,...,nx=2**integer #

340 Claerbout SEP 97 integer nx, i, j, k, m, istep, pad2 real signi, arg complex rr(nx), cmplx, cw, cdel, ct if( nx!= pad2(nx) ) call erexit( fts: nx not a power of 2 ) if( signi < 0.) do i= 1, nx rr(i) = rr(i) / nx j = 1; k = 1 do i= 1, nx { if (i<=j) { ct = rr(j); rr(j) = rr(i); rr(i) = ct } m = nx/2 while (j>m && m>1) { j = j-m; m = m/2 } # "&&" means.and. j = j+m } repeat { istep = 2*k; cw = 1.; arg = signi*3.14159265/k cdel = cmplx( cos(arg), sin(arg)) do m= 1, k { do i= m, nx, istep { ct=cw*rr(i+k); rr(i+k)=rr(i)-ct; rr(i)=rr(i)+ct } cw = cw * cdel } k = istep if(k>=nx) break } return; end integer function pad2( n ) integer n pad2 = 1 while( pad2 < n ) pad2 = pad2 * 2 return; end Code for crosscorrelation factorization The code below will factor the polynomial (2/Z + 7 + 3Z) into its two factors (3 + 1/Z)(2 + Z) except for a scale factor which is indeterminate. Choosing to set u 0 = 0 leads to the interesting factorization (2/Z + 7 + 3Z)/6 = (1 + 1/(3Z))(1 + Z/2) where the scale is chosen so the coefficient of Z 0 is 1 (a convenience when you have factored a band matrix into two parts, and plan polynomial division for back substitution). Being based on fast FT, the work space size, n, must be a power of 2. Periodicity of FT requires that one side of the crosscorrelation is at the beginning of rr(:) while the other side is at the end. A test case for (2/Z + 7 + 3Z) is: rr( n) = 2. # first negative lag rr( 1) = 7. # zero lag rr( 2) = 3. # first positive lag subroutine crossfac( n, rr, aa, bb) # Crosscorrelation factorization.

SEP 97 Factorizing cross spectra 341 integer i, n # input: rr= crosscorrelation (destroyed) complex rr(n), aa(n), bb(n) # output: aa and bb are minimum phase. call fts( 1., n, rr) # make spectrum rr = clog( rr ) # log spectrum call fts( -1., n, rr) # back into time domain. rr(1) = 0. # Normalize coef of Z^0 aa = rr bb = rr do i= 2, n/2 { bb(i) = 0. # Erase positive times. aa(n-i+2) = 0. # Erase negative times. } # Halve both zero and Nyquist. aa(1) = aa(1)/2.; aa(1+n/2) = aa(1+n/2)/2. bb(1) = bb(1)/2.; bb(1+n/2) = bb(1+n/2)/2. call fts( +1., n, aa) # back to frequency call fts( +1., n, bb) bb = cexp( conjg( bb)) # conjugate reverses time. aa = cexp( aa ) call fts( -1., n, aa) # minimum-phase wavelet. call fts( -1., n, bb) # MP wavelet for anticausal. return; end Test case To avoid any ambiguity, here is my test case for complex-valued coefficients: with an output of e A = 2 + Z (6) e B = 3 + iz (7) R = e U = e B(1/Z)+A(Z) = 2i/Z + (6 i) + 3Z (8) e A = 1 + Z/2 (9) e B = 1 + iz/3 (10) For this case I found the errors are less than 1% when n=8. Generally, the larger the dynamic range of R on the unit circle the greater the need for a higher n. REFERENCES Claerbout, J., 1998, Multidimensional recursive filters via a helix: SEP 97, 319 336.