循环结算结果的输出
各位大侠好,我循环计算得到了500个荷载 时程数据,想把每一次循环的结果都连续输出,请问怎么办?t=0:0.001:5; %时间步长
for j=1:500;
F=G*(1+D(j)*cos(2*pi*fs(j)*t+P(j));%荷载采用傅立叶级数表示
fno='F.txt';
fid=fopen(fno,'wt');
for k=1:5001
fprintf(fid,'%f %f\n',t(k),F(k));
end
end
但弄了很久,就是弄不好,希望得到高手的指导, 非常感谢!! 回复 1 # 土木年华 的帖子
LZ是想把500次循环的数据分别存在500个txt文件中,还是所有的存在一个txt文件呀? 回复 1 # 土木年华 的帖子
没必要在循环中每次都fopen吧! 回复 2 # wangyouyi 的帖子
你好,我是想把500次循环的数据分别存在500个txt文件中中,请问怎么办,谢谢你 回复 4 # 土木年华 的帖子
你可以参考一下这个帖子,要保证每次循环的txt文件名变化,这样才不至于循环后文件被覆盖!
http://forum.vibunion.com/thread-102640-1-5.html 回复 5 # wangyouyi 的帖子
谢谢你的回答, 但那个是得出的.mat文件, 我想得到.txt文件有办法吗??,谢谢 回复 6 # 土木年华 的帖子
我对你的程序的有些参数不太了解,如G D fs P,所以就在你程序基础上简单改了下!应该可以达到批量输出txt文件的要求!
t=0:0.001:5; %时间步长
for j=1:500;
F=G*(1+D(j)*cos(2*pi*fs(j)*t+P(j));%荷载采用傅立叶级数表示
fno=strcat(num2str(j),'.txt');
fid=fopen(fno,'wt');
for k=1:5001
fprintf(fid,'%f %f\n',t(k),F(k));
end
fclose(fid);
end 回复 7 # wangyouyi 的帖子
非常感谢你
回复 7 # wangyouyi 的帖子
你好,还得请教一下您, 麻烦你拉, 我要是把每次循环的结构都一次保存在同一个.txt文件里,我这个是每一次循环得出两个数,我想得出的500次循环结果放在txt文件的500行内。谢谢你,请教了
for i=1:500;
MAXai=max(abs(ai));%加速度响应的绝对最大值
RMSai=sqrt(sum(ai.^2)/length(ai));%加速度响应的均方根值
fno=('aout.txt');
fid=fopen(fno,'wt');
fprintf(fid,'%f %f\n',MAXai,RMSai);
fclose(fid); 回复 9 # 土木年华 的帖子
你可以把500次循环的结果保存在MAXai和RMSai数组中,再就其写入txt文件!
页:
[1]