th_pingyuan 发表于 2006-11-17 10:12

求助1/3倍频程的Matlab程序

最近在做一些声学数据的1/3倍频程处理,采集到的是.dat数据,希望能在Matlab下作出其1/3倍频程,但程序一直没有调通,还请各位高手指点!
谢谢!

happy 发表于 2006-11-17 10:59

http://forum.vibunion.com/forum/viewthread.php?tid=32150

[ 本帖最后由 eight 于 2007-1-19 16:05 编辑 ]

sql2006 发表于 2007-1-28 15:03

主题已经不存在了

happy 发表于 2007-1-28 15:36

This series of M-files generates A-weigthing, C-weighting, octave and
one-third-octave digital filters. These filters are commonly used in
acoustics, for example, in noise control.
The implementation is based on the following standards:
* IEC/CD 1672: Electroacoustics-Sound Level Meters, IEC, Geneva, Nov. 1996,
for A- and C-weighting filters.
* ANSI S1.1-1986 (ASA 65-1986): Specifications for Octave-Band
   and Fractional-Octave-Band Analog and Digital Filters, ASA, New York, 1993,
for octave and one-third-octave filters.
The following M-files are available:
octave.tar.gzCompressed Unix tar archive containing all of the files below.
README   This file.
adsgn.mDesign of a A-weighting filter.
aspec.m      Plots a filter characteristics vs. A-weighting specifications.
cdsgn.mDesign of a A-weighting filter.
cspec.m      Plots a filter characteristics vs. C-weighting specifications.
octdsgn.m    Design of an octave filter.
   octspec.m    Plots an octave filter characteristics.
oct3dsgn.m Design of a one-third-octave filter.
oct3spec.mPlots a one-third-octave filter characteristics.
oct3bank.m   Simple one-third-octave filter bank.
    filtbank.m   One-third-octave band frequency analyser.
      leq.m         Computes the sequence of short-time RMS powers (Leq) of a signal.
bankdisp.m      Display filterbank power spectrum in 'bar' form.
The M-files have been tested under MATLAB 4.1 and MATLAB 5.1.
They should normally work under both versions of MATLAB if you disregard
the warnings that might be issued in some cases. If it is necessary
to make changes to a M-file to allow it to work with different versions
of MATLAB, just uncomment the adequate lines of code (alternate code
is provided in the M-file).
-- Christophe Couvreur (couvreur@thor.fpms.ac.be), August 1997.

Sample utilisations of the M-files:
----------------------------------
1) Conception of an A-weighting filter and verification of its characteristics:
>> Fs = 44100;
>> = adsgn(Fs);
>> aspec(B,A,Fs);
2) Conception of a one-third-octave filter and verification of its characteristics:
>> Fs = 44100;
>> Fc = 4000;
>> = oct3dsgn(Fc,Fs);
>> oct3spec(B,A,Fs,Fc,'ansi');
3) Construction of an octave or one-third-octave filter bank:
See the simple implementation (fixed sampling frequency) in OCT3BANK.
Note that a multirate implementation is used to avoid problems
with the low frequency bands.
4) Analysis of a signal with FILTBANK: computation of time-varying A-weighted
   one-third-octave Leq spectrum and display as a waterfall plot.
   It is assumed that the signal is stored in the variable x.
   The frame length for the analysis is T = 100ms.
   
>> Fs = 48000;
>> T = 100e-3;
>> = adsgn(Fs);
>> x = filter(B,A,x);
>> = filtbank(x,Fs,T,'extended');
>> waterfall(P');
>> zlabel('Level ');
>> ylabel('Frame #');
>> xlabel('Frequency band');
>> set(gca,'XTick',);
>> set(gca,'XTickLabel',F(2:3:length(F)));

Contact & Comments:
------------------
   Dr Ir Christophe Couvreur
   Research Assistant, Belgian National Fund for Scientific Research
   Department of Physics
   Faculte Polytechnique de Mons               
   Rue de Houdain 9                            Ph.+32 65 374042
   B-7000 Mons (Belgium)                     FAX+32 65 374045
   E-mail: Christophe.Couvreur@fpms.ac.be
   WWW: http://thor.fpms.ac.be/~couvreur/


下载地址:http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectType=file&objectId=69

happy 发表于 2007-1-28 15:37

很多程序搜索一下就能找到,建议大家多用用google、baidu等

sql2006 发表于 2007-1-29 13:52

楼上的施主
能否推荐几个学习振动信号分析的网站
谢谢
页: [1]
查看完整版本: 求助1/3倍频程的Matlab程序