DOCUMENTATION
SYNOPSIS
PERL PROGRAM NAME: SUCEPSTRUM - transform to the CEPSTRal domain
AUTHOR: Juan Lorenzo (Perl module only)
DATE:
DESCRIPTION:
Version:
USE
NOTES
Examples
SEISMIC UNIX NOTES
SUCEPSTRUM - transform to the CEPSTRal domain
sucepstrum <stdin >sdout sign1=1
Required parameters:
none
Optional parameters:
sign1=1 sign in exponent of fft
sign2=-1 sign in exponent of ifft
dt=from header sampling interval
verbose=1 =0 to stop advisory messages
.... phase unwrapping options .....
mode=ouphase Oppenheim's phase unwrapping
=suphase simple jump detecting phase unwrapping
unwrap=1 |dphase| > pi/unwrap constitutes a phase wrapping
=0 no phase unwrapping (in mode=suphase only)
trend=1 remove linear trend from the unwrapped phase
zeromean=0 assume phase(0)=0.0, else assume phase is zero mean
smooth=0 apply damped least squares smoothing to unwrapped phase
r=10 ... damping coefficient, only active when smooth=1
Notes:
The complex log fft of a function F(t) is given by:
clogfft(F(t)) = log(FFT(F(t)) = log|F(omega)| + iphi(omega)
where phi(omega) is the unwrapped phase. Note that 0< unwrap<= 1.0
allows phase unwrapping to be tuned, if desired.
The ceptrum is the inverse Fourier transform of the log fft of F(t)
F(t_c) =cepstrum(F(t)) = INVFFT[log(FFT(F(t))]
=INVFFT[log|F(omega)| + iphi(omega)]
Here t_c is the cepstral time domain.
To facilitate further processing, the sampling interval
in quefrency and first quefrency (0) are set in the
output header.
Caveats:
No check is made that the data ARE real time traces!
Use suminphase to make minimum phase representations of signals
Credits:
CWP: John Stockwell, June 2013 based on
sufft by:
CWP: Shuki Ronen, Chris Liner, Jack K. Cohen
CENPET: Werner M. Heigl - added well log support
U Montana: Bob Lankston - added m_unwrap_phase feature
Note: leave dt set for later inversion
Trace header fields accessed: ns, dt, d1, f1
Trace header fields modified: ns, d1, f1, trid
CHANGES and their DATES
sub Step
collects switches and assembles bash instructions by adding the program name
sub note
collects switches and assembles bash instructions by adding the program name
sub clear
sub dt
sub mode
sub r
sub sign1
sub sign2
sub smooth
sub trend
sub unwrap
sub verbose
sub zeromean
sub get_max_index
max index = number of input variables -1