function WMKWVLET, j,k,FAMILY=Family,PAR=par,GENDER=Gender,N=n ;+ ; NAME: ; WMKWVLET ; ; PURPOSE: ; This function generates a periodized orthogonal wavelet. ; ; CATEGORY: ; Wavelets ; ; CALLING SEQUENCE: ; wave = WMKWVLET(j,k [,Family=Famly,par=par,Gender=Gender,n=n]) ; ; INPUTS: ; j,k: location-scale indices: 2^{-j} approx width of wavelet ; k/2^j approx location of wavelet on unit interval ; ; OUTPUTS: ; wave: 1-d signal, the wavelet ; ; KEYWORD PARAMETERS: ; FAMILY: string, 'Haar', 'Daubechies', 'Coiflet', 'Symmlet' ; PAR: integer parameter to MakeONFilter, e.g. if Family ='Coiflet', ; Par=3 specifies Coiflet3 ; GENDER: 'Mother','Father' ; N: signal length (dyadic) ; ; EXAMPLE: ; ; MODIFICATION HISTORY: ; Written by: Amara Graps November, 1994 ;Translated from MatLab Wavelab routine: makewavelet.m ;- ;Count keyword parameters (if any) nargin = 2 ;mandatory arguments to this function ;Keyword FAMILY IF KEYWORD_SET(FAMILY) THEN BEGIN nargin = nargin + 1 Family = STRUPCASE(Family) ENDIF ELSE BEGIN Family = STRUPCASE('Symmlet') END ;Keyword Par IF KEYWORD_SET(PAR) THEN BEGIN nargin = nargin + 1 ENDIF ELSE BEGIN par = 8 END ;Keyword Gender IF KEYWORD_SET(GENDER) THEN BEGIN nargin = nargin + 1 Gender = STRUPCASE(Gender) ENDIF ELSE BEGIN Gender = STRUPCASE('Mother') END ;Keyword N IF KEYWORD_SET(N) THEN BEGIN nargin = nargin + 1 ENDIF ELSE BEGIN n = 2^(j+3) END QMF = WMKOFILT(Family,par) CASE GENDER OF 'MOTHER': begin w = FLTARR(n) w(WDYAD2IX(j,k)-1) = 1 wave = WIWTPO(w,j,qmf) end ELSE: BEGIN w = FLTARR(n) w(k-1) =1 wave = WIWTPO(w,j,qmf) end ENDCASE ; ; Algorithm Source: WaveLab Version 0.600 ; WaveLab WWW site: http://playfair.stanford.edu/ ; WaveLab Questions? e-mail wavelab@playfair.stanford.edu ; Return, wave End ;***************************************************