求助一循环求解的问题,急

问题来源:http://www.ilovematlab.cn/thread-60022-1-1.html

问题描述:

http://hi.csdn.net/attachment/200912/19/37536_1261192846fTX3.png

Forcal求解代码:


//http://www.ilovematlab.cn/thread-60022-1-1.html !SetRealStackMax(1000); Rm(t,m_1:j,s,a,b,h:hVm)= { h=0.0001, sys::call(2,hVm :t+h,m_1 : &a), //计算s=Vm(t+h,m_1) sys::call(2,hVm :t,m_1 : &b), //计算s=Vm(t,m_1) s=[a-b]/h, j=0,(j<=m_1).while{ sys::call(2,hVm :t,j : &a), sys::call(2,hVm :t,m_1-j : &b), //计算a=Vm(t,j), b=Vm(t,m_1-j) s=s+a*b, j++ }, s-[1-which(m_1<1,0,1)] //最后返回这个值。看这句有没有问题:取m_1<1,而不是m_1<=1 }; //Fkappa将返回s的值。mm是模块变量,因调用Rm(t,mm-1)时mm将改变,故用a预先保存,函数返回前恢复mm的值 Fkappa(t:a,s,kappa:mm)= kappa=0, a=mm, s=t^(2*kappa)*Rm(t,mm-1), mm=a, s; Vm(t,m:h,kappa:mm,hFkappa)= { h=-1, kappa=0, if[m<=0,return(t)], if[m==1,return(1/3*h*t^3)], which(m<=1,0,1)*Vm(t,m-1)+h*{mm=m, XSLSF::fpqg[hFkappa,0,t,1e-6]} //XSLSF::fpqg即徐士良算法中的连分式积分法 }; main(t,m:k,s:hFkappa,hVm)= { hFkappa=HFor("Fkappa"), hVm=HFor("Vm"), //预先获得函数Fkappa和Vm的句柄,函数调用时将用到 s=0,k=0,(k<=m).while{ s=s+Vm(t,k), k++ }, s //返回s }; main[1,1]; main[1,2]; main[1,3]; main[3,1]; main[3,2]; main[3,3];

结果:

0.6666666666666667
0.8000500036352434
0.7460237331214614
-6.
26.4004500100092
-91.63284600184863

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值