最近正在使用MATLAB做专业课程的结课设计,是时程分析法的问题,但是现在赋值范围上碰到了问题。
这里是我的MATLAB代码:
format short g;
F(21,14)=0;
xg=[0 600 1100 1500 2100 2500 2900 350 2050 1500 1000 600 200 -700 -1300 -1700 -2000 -1800 -1500 -700 -250 200 -100 0 0 0];
xg1=xg*2000/max(xg);
xg2=diff(xg1);
f[14)=0;f(4)=9000;f[20)=9000;f(21)=9000;t=0.05;m=250;c=240
for i = 1:21
f(3]=xg2(i);f(1)=0.05i-0.05;f{2)=xg1(i);
f(6>=-m(f(3)-6f12)/t-3f《11))+c*(3f<12)+f(11>/2t)
f(5)=f(4)+6m/t^2+3c/t;
f<7)=f(6)/(f5);
f{9)=3/tf{7)-3f(12)-0.5f(11)t;
f(8)=6/0.05^2f(7)-6/0.05*f(12>-3f(11];
f}13)=f<2)+f(11);
f[14)=f{13)*m;
F(i,:)=f(1,:);
f【10)=f{10)+f(7);f(12)=f12)+f(9);f}11)=f}11)+f(8);
if abs(f(10))>2&&F(1,7)*f(7)>0
f(4)=0;
else
f4)=9000;
end
end
a=max(abs(F(:,13)));
b=max(abs(F(:,14)));
F
a
b
xlswrite('表格2.xls',F)
运行代码,最终运行结果(报错):无法执行赋值,因为左侧的大小为 1×14,右侧的大小为 1×21。
所以究竟是哪里出现了问题?(注:目前不能输入同样的词汇或符号,因此只能基于代码原文函数的外括号做一些修改,原文实际上f函数的自变量都用小括号包围)
无法赋值以后数据无法写入Excel或者CSV文件,MATLAB左侧页面也没有输出相关的表格文件。希望有人能够对以上的代码进行修改、彻底解决赋值的问题,使得编程的数据能够输出,谢谢!