coifwavf.m
上传用户:haiyisale
上传日期:2013-01-09
资源大小:3246k
文件大小:3k
源码类别:

波变换

开发平台:

Matlab

  1. function F = coifwavf(wname)
  2. %COIFWAVF Coiflet wavelet filter.
  3. %   F = COIFWAVF(W) returns the scaling filter
  4. %   associated with the coiflet wavelet specified
  5. %   by the string W where W = 'coifN'.
  6. %   Possible values for N are:
  7. %      N = 1, 2, 3, 4 or 5.
  8. %
  9. %   See also WAVEINFO.
  10. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 12-Mar-96.
  11. %   Last Revision: 22-May-2003.
  12. %   Copyright 1995-2004 The MathWorks, Inc.
  13. %   $Revision: 1.11.4.2 $  $Date: 2004/03/15 22:39:56 $ 
  14. % Check arguments.
  15. lw = length(wname); ab = abs(wname);
  16. ii = lw+1; 
  17. while (ii>1) && (47<ab(ii-1)) && (ab(ii-1)<58) , ii = ii-1; end
  18. num = wstr2num(wname(ii:lw));
  19. switch num
  20.   case 1
  21.   F = [...
  22.   -0.05142972847100   0.23892972847100   0.60285945694200   0.27214054305800 ...
  23.   -0.05142972847100  -0.01107027152900                                       ...
  24.                 ];
  25.   case 2
  26.   F = [...
  27.    0.01158759673900  -0.02932013798000  -0.04763959031000   0.27302104653500 ...
  28.    0.57468239385700   0.29486719369600  -0.05408560709200  -0.04202648046100 ...
  29.    0.01674441016300   0.00396788361300  -0.00128920335600  -0.00050950539900 ...
  30.                 ];
  31.   case 3
  32.   F = [...
  33.   -0.00268241867100   0.00550312670900   0.01658356047900  -0.04650776447900 ...
  34.   -0.04322076356000   0.28650333527400   0.56128525687000   0.30298357177300 ...
  35.   -0.05077014075500  -0.05819625076200   0.02443409432100   0.01122924096200 ...
  36.   -0.00636960101100  -0.00182045891600   0.00079020510100   0.00032966517400 ...
  37.   -0.00005019277500  -0.00002446573400
  38.                 ];
  39.   case 4
  40.   F = [...
  41.    0.00063096104600  -0.00115222485200  -0.00519452402600   0.01136245924400 ...
  42.    0.01886723537800  -0.05746423442900  -0.03965264851700   0.29366739089500 ...
  43.    0.55312645256200   0.30715732619800  -0.04711273886500  -0.06803812705100 ...
  44.    0.02781364015300   0.01773583743800  -0.01075631851700  -0.00400101288600 ...
  45.    0.00265266594600   0.00089559452900  -0.00041650057100  -0.00018382976900 ...
  46.    0.00004408035400   0.00002208285700  -0.00000230494200  -0.00000126217500 ...
  47.                 ];
  48.   case 5
  49.   F = [...
  50.   -0.00014996380000   0.00025356120000   0.00154024570000  -0.00294111080000 ...
  51.   -0.00716378190000   0.01655206640000   0.01991780430000  -0.06499726280000 ...
  52.   -0.03680007360000   0.29809232350000   0.54750542940000   0.30970684900000 ...
  53.   -0.04386605080000  -0.07465223890000   0.02919587950000   0.02311077700000 ...
  54.   -0.01397368790000  -0.00648009000000   0.00478300140000   0.00172065470000 ...
  55.   -0.00117582220000  -0.00045122700000   0.00021372980000   0.00009937760000 ...
  56.   -0.00002923210000  -0.00001507200000   0.00000264080000   0.00000145930000 ...
  57.   -0.00000011840000  -0.00000006730000
  58.                 ];
  59.   otherwise
  60.     errargt(mfilename,'Invalid coiflet','msg');
  61.     error('*');
  62. end