general/tools/tplot/wvlt/
wavelet.pro
NAME: WAVELET PURPOSE: Compute the WAVELET transform of a 1D time series. CALLING SEQUENCE: wave = WAVELET(Y,DT) INPUTS: Y = the time series of length N. DT = amount of time between each Y value, i.e. the sampling time. OUTPUTS: WAVE is the WAVELET transform of Y. This is a complex array of dimensions (N,J+1). FLOAT(WAVE) gives the WAVELET amplitude, ATAN(IMAGINARY(WAVE),FLOAT(WAVE)) gives the WAVELET phase. The WAVELET power spectrum is ABS(WAVE)^2. OPTIONAL KEYWORD INPUTS: S0 = the smallest scale of the wavelet. Default is 2*DT. DJ = the spacing between discrete scales. Default is 0.125. A smaller # will give better scale resolution, but be slower to plot. J = the # of scales minus one. Scales range from S0 up to S0*2^(J*DJ), to give a total of (J+1) scales. Default is J = (LOG2(N DT/S0))/DJ. MOTHER = A string giving the mother wavelet to use. Currently, 'Morlet','Paul','DOG' (derivative of Gaussian) are available. Default is 'Morlet'. PARAM = optional mother wavelet parameter. For 'Morlet' this is k0 (wavenumber), default is 6. For 'Paul' this is m (order), default is 4. For 'DOG' this is m (m-th derivative), default is 2. PAD = if set, then pad the time series with enough zeroes to get N up to the next higher power of 2. This prevents wraparound from the end of the time series to the beginning, and also speeds up the FFT's used to do the wavelet transform. This will not eliminate all edge effects (see COI below). LAG1 = LAG 1 Autocorrelation, used for SIGNIF levels. Default is 0.0 SIGLVL = significance level to use. Default is 0.95 VERBOSE = if set, then print out info for each analyzed scale. RECON = if set, then reconstruct the time series, and store in Y. Note that this will destroy the original time series, so be sure to input a dummy copy of Y. FFT_THEOR = theoretical background spectrum as a function of Fourier frequency. This will be smoothed by the wavelet function and returned as a function of PERIOD. OPTIONAL KEYWORD OUTPUTS: PERIOD = the vector of "Fourier" periods (in time units) that corresponds to the SCALEs. SCALE = the vector of scale indices, given by S0*2^(j*DJ), j=0...J where J+1 is the total # of scales. COI = if specified, then return the Cone-of-Influence, which is a vector of N points that contains the maximum period of useful information at that particular time. Periods greater than this are subject to edge effects. This can be used to plot COI lines on a contour plot by doing: IDL> CONTOUR,wavelet,time,period IDL> PLOTS,time,coi,NOCLIP=0 YPAD = returns the padded time series that was actually used in the wavelet transform. DAUGHTER = if initially set to 1, then return the daughter wavelets. This is a complex array of the same size as WAVELET. At each scale the daughter wavelet is located in the center of the array. SIGNIF = output significance levels as a function of PERIOD FFT_THEOR = output theoretical background spectrum (smoothed by the wavelet function), as a function of PERIOD. [ Defunct INPUTS: [ OCT = the # of octaves to analyze over. ] [ Largest scale will be S0*2^OCT. ] [ Default is (LOG2(N) - 1). ] [ VOICE = # of voices in each octave. Default is 8. ] [ Higher # gives better scale resolution, ] [ but is slower to plot. ] ]
Routines
Routines from wavelet.pro
result = morlet(k0, scale, k, period, coi, dofmin, Cdelta, psi0)
result = paul(m, scale, k, period, coi, dofmin, Cdelta, psi0)
result = dog(m, scale, k, period, coi, dofmin, Cdelta, psi0)
result = wavelet(y1, dt, S0=S0, DJ=DJ, J=J, PAD=PAD, MOTHER=MOTHER, PARAM=PARAM, wavenumber=wavenumber, VERBOSE=VERBOSE, NO_WAVE=NO_WAVE, RECON=RECON, LAG1=LAG1, SIGLVL=SIGLVL, DOF=DOF, GLOBAL=GLOBAL, SCALE=SCALE, PERIOD=PERIOD, YPAD=YPAD, DAUGHTER=DAUGHTER, COI=COI, SIGNIF=SIGNIF, FFT_THEOR=FFT_THEOR, OCT=OCT, VOICE=VOICE)
Routine details
top source morlet
result = morlet(k0, scale, k, period, coi, dofmin, Cdelta, psi0)
Parameters
- k0
- scale
- k
- period
- coi
- dofmin
- Cdelta
- psi0
top source paul
result = paul(m, scale, k, period, coi, dofmin, Cdelta, psi0)
Parameters
- m
- scale
- k
- period
- coi
- dofmin
- Cdelta
- psi0
top source dog
result = dog(m, scale, k, period, coi, dofmin, Cdelta, psi0)
Parameters
- m
- scale
- k
- period
- coi
- dofmin
- Cdelta
- psi0
top source wavelet
result = wavelet(y1, dt, S0=S0, DJ=DJ, J=J, PAD=PAD, MOTHER=MOTHER, PARAM=PARAM, wavenumber=wavenumber, VERBOSE=VERBOSE, NO_WAVE=NO_WAVE, RECON=RECON, LAG1=LAG1, SIGLVL=SIGLVL, DOF=DOF, GLOBAL=GLOBAL, SCALE=SCALE, PERIOD=PERIOD, YPAD=YPAD, DAUGHTER=DAUGHTER, COI=COI, SIGNIF=SIGNIF, FFT_THEOR=FFT_THEOR, OCT=OCT, VOICE=VOICE)
Parameters
- y1
- dt
Keywords
- S0
- DJ
- J
- PAD
- MOTHER
- PARAM
- wavenumber
- VERBOSE
- NO_WAVE
- RECON
- LAG1
- SIGLVL
- DOF
- GLOBAL
- SCALE
- PERIOD
- YPAD
- DAUGHTER
- COI
- SIGNIF
- FFT_THEOR
- OCT
- VOICE
File attributes
Modification date: | Thu Dec 11 12:19:34 2014 |
Lines: | 150 |