Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2008-09-26
年龄: 38
帖子: 11
声望力: 17 ![]() |
![]()
今天老师布置一个试算的作业,我想通过matlab来实现这种迭代:
function shisuansuoli(V1,H1) L=100;h=300;q=50000;S=500;EA=10^11;n=0; W=1;% W 为x,y的迭代精度 H=-H1;V=S*q-V1;T1=((V1)^2+H^2)^0.5;T=(V^2+H^2)^0.5; L1=-H*(S/EA+1/q*log2((V+T)/(T1-V1)));h1=1/(2*EA*q)*(V^2-(V1)^2)+(T-T1)/q; A1=-(S/EA+1/q*log2((V+T)/(T1-V1)))-(H1)^2/q*(1/(T*(T+V))-1/(T1*(T1+V1))); A2=H1/q*(1/T-1/T1); B1=A2; B2=-S/EA-(V/T-V1/T1)/q; C=A1*B2-A2*B1; Ex=L1-L;Ey=h1-h; while (1) V2=(Ex*B1-Ey*A1)/C+V1; H2=(Ey*A2-Ex*B2)/C+H1; if abs(Ex)>W && abs(Ey)>W %若不满足迭代终止条件则继续迭代 V1=V2;H1=H2;n=n+1; continue; else fprintf('迭代次数为:%f\n',n); fprintf('V1的迭代值为:%f\n',V2);fprintf('H1的迭代值为:%f\n',H2) break; %满足后输出结果并退出 end end 然后在Command Window中键入: clear;V1=input('Please input V1:');H1=input('Please input H1:');shisuansuoli(V1,H1) 回车输入H1,V1的值12500000,1670000之后回车 matlab就一直处于busy状态 这是怎么回事啊? ![]() ![]() 请教各路高手~~ |
![]() |
![]() |
主题工具 | |
显示模式 | |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
[求助]如何用pdf函数画出均匀,指数和weibull分布的概率密度函数图 | volkl | MATLAB论坛 | 1 | 2008-12-17 14:09 |
[求助]高手帮忙看看吧 急 我初学 | xiaozheng33 | MATLAB论坛 | 1 | 2008-11-30 22:49 |
[求助]如何将2维数组转换成1维数组? | wangzizizi | MATLAB论坛 | 3 | 2008-11-28 19:33 |
什么是伪吉布斯现象? | roe2000 | MATLAB论坛 | 0 | 2008-11-23 15:16 |
[资料]ansys优化 | laihai718 | ANSYS论坛 | 0 | 2008-11-22 21:51 |