Waves and Fourier sums |
The waveform in equation (31) often arises in practice (as the 2-D Huygens wavelet). Because of the discontinuities on the left side of equation (31), it is not easy to visualize. Thinking again of the time derivative as a convolution with the doublet , we imagine the 2-D Huygen's wavelet as a positive impulse followed by negative signal decaying as . This decaying signal is sometimes called the ``Hankel tail.'' In the frequency domain has a 90 degree phase angle and has a 45 degree phase angle.
for (i=0; i < nw; i++) { om = -2.*SF_PI*i/n; cw.r = cosf(om); cw.i = sinf(om); cz.r = 1.-rho*cw.r; cz.i = -rho*cw.i; if (inv) { cz = sf_csqrtf(cz); } else { cz2.r = 0.5*(1.+rho*cw.r); cz2.i = 0.5*rho*cw.i; cz = sf_csqrtf(sf_cdiv(cz2,cz)); } cf[i].r = cz.r/n; cf[i].i = cz.i/n; } |
In practice, it is easiest to represent and to apply the 2-D Huygen's wavelet in the frequency domain. Subroutine halfint() is provided for that purpose. Instead of using which has a discontinuity at the Nyquist frequency and a noncausal time function, I use the square root of a causal representation of a finite difference, i.e. , which is well behaved at the Nyquist frequency and has the advantage that the modeling operator is causal (vanishes when ). Passing an impulse function into subroutine halfint() gives the response seen in Figure 9.
hankel
Figure 9. Impulse response (delayed) of finite difference operator of half order. Twice applying this filter is equivalent to once applying . | |
---|---|
Waves and Fourier sums |