王济matlab在振动信号处理中的应用代码.doc

王济matlab在振动信号处理中的应用代码.doc

ID:50548775

大小:58.61 KB

页数:79页

时间:2020-03-10

王济matlab在振动信号处理中的应用代码.doc_第1页
王济matlab在振动信号处理中的应用代码.doc_第2页
王济matlab在振动信号处理中的应用代码.doc_第3页
王济matlab在振动信号处理中的应用代码.doc_第4页
王济matlab在振动信号处理中的应用代码.doc_第5页
资源描述:

《王济matlab在振动信号处理中的应用代码.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、程序4-1%最小二乘法消除多项式趋势项%%%%%%%%%%%%%%%%%%%%%%%%clear%清除内存中所有变量和函数clc%清除工作窗口中所显示的内容closeallhidden%关闭所有隐藏的窗口%%%%%%%%%%%%%%%%%%%%%%%%%提示用键盘输入输入数据文件名fni=input('消除多项式趋势项-输入数据文件名:','s');%以只读方式打开数据文件fid=fopen(fni,'r');sf=fscanf(fid,'%f',1);%读入采样频率值m=fscanf(fid,'%d',1);%读入拟合多

2、项式阶数fno=fscanf(fid,'%s',1);%读入输出数据文件名x=fscanf(fid,'%f',inf);%读入时程数据存成列向量%关闭数据文件status=fclose(fid);%取信号数据长度n=length(x);%建立离散时间列向量t=(0:1/sf:(n-1)/sf)';%计算趋势项的多项式待定系数向量aa=polyfit(t,x,m);%用x减去多项式系数a生成的趋势项y=x-polyval(a,t);%将分成2行1列的图形窗口的第1列设为当前绘图区域subplot(2,1,1);%绘制x对于t

3、的时程曲线图形plot(t,x);%在图幅上添加坐标网格gridon;%将分成2行1列的图形窗口的第2列设为当前绘图区域subplot(2,1,2);%绘制y对于t的时程曲线图形plot(t,y);%在图幅上添加坐标网格gridon;%以写的方式打开文件或建立一个新文件fid=fopen(fno,'w');%进行n次循环将计算结果写到输出数据文件中fork=1:n%每行输出两个实型数据,t为时间,y为消除趋势项后的结果fprintf(fid,'%f%f',t(k),y(k));%循环体结束语句end%关闭数据文件sta

4、tus=fclose(fid);程序4-2%五点滑动平均法平滑处理%%%%%%%%%%%%%%%%%%%%%%clearclccloseallhidden%%%%%%%%%%%%%%%%%%%%%%fni=input('五点滑动平均法平滑处理-输入数据文件名:','s');fid=fopen(fni,'r');sf=fscanf(fid,'%f',1);%采样频率m=fscanf(fid,'%d',1);%平滑次数fno=fscanf(fid,'%s',1);%输出数据文件名x=fscanf(fid,'%f',inf);%

5、输入数据存成列向量status=fclose(fid);%取信号数据长度n=length(x);%建立离散时间列向量t=(0:1/sf:(n-1)/sf)';%将x赋值给aa=x;%循环m次进行平滑处理计算fork=1:mb(1)=(3*a(1)+2*a(2)+a(3)-a(4))/5;b(2)=(4*a(1)+3*a(2)+2*a(3)+a(4))/10;forj=3:n-2b(j)=(a(j-2)+a(j-1)+a(j)+a(j+1)+a(j+2))/5;endb(n-1)=(a(n-3)+2*a(n-2)+3*a(n

6、-1)+4*a(n))/10;b(n)=(-a(n-3)+a(n-2)+2*a(n-1)+3*a(n))/5;a=b;end%将a赋值给yy=a;%将分成2行1列的图形窗口的第1列设为当前绘图区域subplot(2,1,1);%绘制平滑前的时程曲线图形plot(t,x);%添加横向坐标轴的标注xlabel('时间(s)');%添加纵向坐标轴的标注ylabel('加速度(g)');%在图幅上添加坐标网格gridon;%将分成2行1列的图形窗口的第2列设为当前绘图区域subplot(2,1,2);%绘制平滑后的时程曲线图形pl

7、ot(t,y);%添加横向坐标轴的标注xlabel('时间(s)');%添加纵向坐标轴的标注ylabel('加速度(g)');%在图幅上添加坐标网格gridon;%打开文件输出平滑后的数据fid=fopen(fno,'w');fork=1:n%每行写两个实型数据,t为时间,y为平滑后的数据fprintf(fid,'%f%f',t(k),y(k));endstatus=fclose(fid);程序4-2%五点滑动平均法平滑处理%%%%%%%%%%%%%%%%%%%%%%clearclccloseallhidden%%%%

8、%%%%%%%%%%%%%%%%%%fni=input('五点滑动平均法平滑处理-输入数据文件名:','s');fid=fopen(fni,'r');sf=fscanf(fid,'%f',1);%采样频率m=fscanf(fid,'%d',1);%平滑次数fno=fscanf(fid,'%s',1);%

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。