| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 668 人关注过本帖
标题:求指导。。。本程序for循环中的程序是什么意思?怎样理解?
取消只看楼主 加入收藏
anpengqiang
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-9-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:0 
求指导。。。本程序for循环中的程序是什么意思?怎样理解?
%随机减量法模态参数识别预处理
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
clc
close all hidden
format long
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fni=input('随机减量法模态参数识别预处理-输入数据文件名:','s');
fid=fopen(fni,'r');
sf = fscanf(fid,'%f',1);     %采样频率
np = fscanf(fid,'%d',1);     %输出数据长度
fno = fscanf(fid,'%s',1);    %输出数据文件名
x = fscanf(fid,'%f',[1,inf]);%输入时程信号数据存成行向量
status=fclose(fid);
%建立离散输出时间向量
t=0:1/sf:(np-1)/sf;
%取输入数据长度
nt=length(x);
%设置截取振幅为输入信号标准差的1.5倍
s=1.5*std(x);
%获取输入信号的子样本函数进行叠加
m=0;
y=zeros(1,np);
for k=2:nt-np
  a=abs(x(k-1)-s);
  b=abs(x(k)-s);
  c=abs(x(k+1)-s);
  if b<a & b<c
    y(1:np)=y(1:np)+x(k:k+np-1); m=m+1;
  end
end
%对叠加结果做平均
y=y./m;
%绘制自由振动时程曲线图
plot(t,y);
xlabel('时间 (s)');  
ylabel('幅值');
grid on;                        

%打开文件输出随机减量法计算的结果               
fid=fopen(fno,'w');   
for k=1:np                           
  fprintf(fid,'%f\n',y(k));
end                           
status=fclose(fid);
搜索更多相关主题的帖子: status 
2013-09-25 16:31
快速回复:求指导。。。本程序for循环中的程序是什么意思?怎样理解?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016420 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved