wavelets procs

This page was created by the IDL library routine mk_html_help. For more information on this routine, refer to the IDL Online Help Navigator or type:

     ? mk_html_help

at the IDL command line prompt.

Last modified: Tue Dec 20 11:48:26 2005.


List of Routines


Routine Descriptions

WAVELET -- COMPUTE THE WAVELET TRANSFORM OF A 1D TIME SERIES.

[Next Routine] [List of Routines]
NAME:
WAVELET --  Compute the WAVELET transform of a 1D time series.
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.                     ]
 ]

(See /dzd2/heiles/idl/gen/wavelets/wavelet.pro)


WV_FN_CRL -- RETURN MOTHER WAVELET AT SPECIFIED TIMES; ALSO ITS FT, OTHER STUFF TOO

[Previous Routine] [List of Routines]
NAME:
wv_fn_crl -- return mother wavelet at specified times; also its ft, other stuff too

PURPOSE: return mother wavelet at specified times; also its ft; also
the times and frequencies.

CALLING SEQUENCE: wv_fn_crl, mother, nrpts, tsmpl, order, scale, $
	time, fhz, tw, fw, wf

INPUTS:
	MOTHER, the mother wavelet name. morlet, psul, gaussian.

	NRPTS, the nr of time points. the generated time points are returned.
make this EVEN, a power of two.
	TSMPL, the time interval between points. 

	ORDER: the order of the wavelet. acceptable ranges are:
		gaussian: 1 to 10 inclusive
		paul: 1 to 20 inclusive
		morlet: 3 to 24 inclusive.

	SCALE: the scale parameter, 'a' in eros writeup.

OUTPUTS:
	TIME, the time array. returned as FFT convention, 0 first elemetn
	fhz, the corresponding frequency array. these are Hz, not radians/sec.
returned as FFT convention, zero first element
	TW, the wavelet points versus time. 
	FW, the waveleet points veresus fsrequency
	WF, idl's wavelet structure--basically meaningless...

(See /dzd2/heiles/idl/gen/wavelets/wv_fn_crl.pro)