matlab .m文件 解微分方程组,初学matlab,如何解这个微分方程组啊

本帖最后由 ken7695426 于 2017-7-12 03:40 编辑

function dy=concentration(t,y)

dy=zeros(8,1);

dy(1)=-3.33189*10^8*y(1)-7.37533*10^8*y(1)^2+3.33333*10^14*y(2)^2+7.37853*10^14*y(1)*y(2)^2-1.40094*10^10*y(1)*y(3)-7.36111*10^13*y(1)*y(4)-3.09325*10^13*y(1)*y(5)+4.15625*10^13*y(2)*y(5)-4.03104*10^9*y(1)*y(6)+1.11492*10^13*y(2)*y(6)+4.03279*10^15*y(2)^2*y(6)+8.84075*10^13*y(2)*y(7)-2.64468*10^12*y(1)*y(8)+4.29223*10^13*y(2)*y(8);

dy(2)=-2*(-3.33189*10^8*y(1)+3.33333*10^14*y(2)^2)-2*(-7.37533*10^8*y(1)^2+7.37853*10^14*y(1)*y(2)^2)+1.40094*10^10*y(1)*y(3)-2.12776*10^15*y(2)*y(3)-1.39803*10^15*y(2)*y(3)^2+7.36111*10^13*y(1)*y(4)-1.66667*10^14*y(2)*y(4)+9.40629*10^7*y(5)+3.09325*10^13*y(1)*y(5)-2.48601*10^15*y(2)*y(5)+5.4102*10^13*y(4)*y(5)+1.65721*10^10*y(5)^2+8.80684*10^8*y(6)-1.11492*10^13*y(2)*y(6)-1.86802*10^16*y(2)*y(3)*y(6)+4.99265*10^8*y(4)*y(6)+1.8888*10^7*y(5)*y(6)-2*(-4.03104*10^9*y(1)*y(6)+4.03279*10^15*y(2)^2*y(6))-9.70635*10^13*y(2)*y(7)+6.36538*10^12*y(8)+2.64468*10^12*y(1)*y(8)-1.28675*10^14*y(2)*y(8)+4.28148*10^12*y(3)*y(8)+5.72081*10^13*y(6)*y(8);

dy(3)=-2.05575*10^7*y(3)-1.40094*10^10*y(1)*y(3)-2.12776*10^15*y(2)*y(3)-1.39803*10^15*y(2)*y(3)^2+4.*10^13*y(4)^2-3.68574*10^9*y(3)*y(5)+5.4102*10^13*y(4)*y(5)-1.74036*10^9*y(3)*y(6)-1.86802*10^16*y(2)*y(3)*y(6)-1.51417*10^9*y(3)*y(7)+6.36538*10^12*y(8)+4.29223*10^13*y(2)*y(8)+4.28148*10^12*y(3)*y(8)+2.*10^13*y(4)*y(8)+1.47936*10^13*y(5)*y(8)+5.72081*10^13*y(6)*y(8)+1.38779*10^11*y(8)^2;

dy(4)=4.92668*10^13*y(2)*y(3)-7.36111*10^13*y(1)*y(4)-1.66667*10^14*y(2)*y(4)-2*(-2.05575*10^7*y(3)+4.*10^13*y(4)^2)+9.40629*10^7*y(5)+4.15625*10^13*y(2)*y(5)+3.68574*10^9*y(3)*y(5)-5.4102*10^13*y(4)*y(5)+8.59997*10^12*y(5)^2-5.49044*10^12*y(4)*y(6)-7.38284*10^13*y(4)*y(7)+3.86463*10^12*y(2)*y(8)-2.*10^13*y(4)*y(8)+1.247*10^12*y(5)*y(8);

dy(5)=4.92668*10^13*y(2)*y(3)+7.36111*10^13*y(1)*y(4)+1.66667*10^14*y(2)*y(4)-9.40629*10^7*y(5)-3.09325*10^13*y(1)*y(5)-2.48601*10^15*y(2)*y(5)-3.68574*10^9*y(3)*y(5)-5.4102*10^13*y(4)*y(5)+8.80684*10^8*y(6)+1.11492*10^13*y(2)*y(6)+1.74036*10^9*y(3)*y(6)-1.8888*10^7*y(5)*y(6)-2*(8.59997*10^12*y(5)^2-5.48994*10^12*y(4)*y(6))+8.65604*10^12*y(2)*y(7)+7.38284*10^13*y(4)*y(7)-1.96605*10^12*y(5)*y(7)+2*(-9.6593*10^15*y(5)^2+1.59485*10^15*y(7))+2.*10^13*y(4)*y(8)-1.60406*10^13*y(5)*y(8)+2.11987*10^10*y(6)*y(8)+2*(-1.65721*10^10*y(5)^2+8.18885*10^13*y(2)*y(8));

dy(6)=3.09325*10^13*y(1)*y(5)+2.44444*10^15*y(2)*y(5)+8.59997*10^12*y(5)^2-8.80684*10^8*y(6)-1.11492*10^13*y(2)*y(6)-1.74036*10^9*y(3)*y(6)-5.49044*10^12*y(4)*y(6)-1.8888*10^7*y(5)*y(6)+8.65604*10^12*y(2)*y(7)+1.96605*10^12*y(5)*y(7)+3.86463*10^12*y(2)*y(8)+1.47936*10^13*y(5)*y(8)-2.11987*10^10*y(6)*y(8);

dy(7)=9.6593*10^15*y(5)^2+1.8888*10^7*y(5)*y(6)-1.59485*10^15*y(7)-9.70635*10^13*y(2)*y(7)-1.51417*10^9*y(3)*y(7)-7.38284*10^13*y(4)*y(7)-1.96605*10^12*y(5)*y(7)+2.64468*10^12*y(1)*y(8)+1.247*10^12*y(5)*y(8)+2.11987*10^10*y(6)*y(8)+1.38779*10^11*y(8)^2;

dy(8)=1.40094*10^10*y(1)*y(3)+2.07849*10^15*y(2)*y(3)+1.39803*10^15*y(2)*y(3)^2+3.68574*10^9*y(3)*y(5)+1.65721*10^10*y(5)^2+1.74036*10^9*y(3)*y(6)+1.86802*10^16*y(2)*y(3)*y(6)+4.99265*10^8*y(4)*y(6)+8.84075*10^13*y(2)*y(7)+7.38284*10^13*y(4)*y(7)+1.96605*10^12*y(5)*y(7)-6.36538*10^12*y(8)-2.64468*10^12*y(1)*y(8)-1.28675*10^14*y(2)*y(8)-4.28148*10^12*y(3)*y(8)-2.*10^13*y(4)*y(8)-1.60406*10^13*y(5)*y(8)-5.72292*10^13*y(6)*y(8)-2*(-1.51417*10^9*y(3)*y(7)+1.38779*10^11*y(8)^2);

一个8元一阶的微分方程组,我用自己从网上查的解微分方程组的方法套进去写了这个m文件然后试着用ode45解但是程序运行了10分钟都没反应。方程组看起来很复杂主要是因为常数的值比较大,实际上就是8个未知数而且等式右边没有微分项。

因为之前完全没用过matlab所以现在不知道该怎么办了,希望各位能帮一下忙。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值