当前位置:   article > 正文

三分之一倍频 matlab,Matlab关于三分之一倍频程程序的问题

振动加速度三分之一倍频程振级matlab代码

以下是我学习编写的一个MATLAB关于三分之一倍频程处理的程序,但是我得到的结果跟我同事用flexpro得到的结果总是差上几倍,现在把他贴出来,请各位高手指教!!

%三分之一倍频程处理

%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear

clc

close all hidden

%%%%%%%%%%%%%%%%%%%%%%

fni=input('三分之一倍频程处理-输入数据文件名:','s');

fid=fopen(fni,'r');

sf = fscanf(fid,'%f',1);      %采样频率

fno = fscanf(fid,'%s',1);     %输出数据文件名

x = fscanf(fid,'%f',[1,inf]); %按行输入数据

status=fclose(fid);

%%定义三分之一倍频程的中心频率

f=[1.00 1.25 1.60 2.00 2.50 3.15 4.00 5.00 6.30 8.00];

fc=[f,10*f,100*f,1000*f,10000*f];

%中心频率与下线频率的比值

oc6=2^(1/6);

%%取中心频率总的长度

nc=length(fc);

%%%取输入数据的长度

n=length(x);

%%大于并最接近n的2的幂次方长度

nfft=2^nextpow2(n);

%%进行FFT变换

a=fft(x,nff

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/549968
推荐阅读
相关标签
  

闽ICP备14008679号