ekolin 发表于 2009-7-30 21:41

互相嵌套的微分方程组如何用R-K方法求解?

本人用到R-K法求一阶常解微分方程组问题,这方面比较菜鸟。

有一个个问题希望得到高人指点:

   R-K法求解互相嵌套的方程组,比如第一个方程等号右边含有未知函数,y(t)。y(t) 在第二个方程中才能出来,那么在 R-K法中,要求对y(t+h), h是步长,这个怎么办?举个例子:

                              x'(t)=f(t,x)+y(t);
                              y'(t)=g(t,,x, y)

R-K 方法中,对x(t) 有:x(n+1)=x(n)+(1/2)*(k1+k2);
                                        k1=f+y;
                                        k2=f+y

注意黑体部分,现在是未知的,那么这个R-K法该如何处理这种嵌套式的微分方程组呢?我在编程时,直接就用y代替了,不知可以吗?
请高人指点,谢谢!

ekolin 发表于 2009-7-30 22:09

大概微分方程组都是这样的,问题是该如何代入R-K法的公式呢?

无水1324 发表于 2009-7-31 09:16

这是什么嵌套啊,就是一般的耦合方程吗 ?
直接ode45区求解就好了

octopussheng 发表于 2009-7-31 15:22

难道楼主要推导该方程ODE45求解的方程?

ekolin 发表于 2009-7-31 16:06

不是,我只会用一点For,不会用matlab。现在问题差不多就是这么处理了,我估计,我用for自带的R-K法算了一下,差不多,但是又遇到另一个问题,算完后提示如下:

***TATAL         ERROR 32 from ivmrk. In order to satisfy the error requirement
***                   16MRKwould have to use a step size of5.004883E-03 at TNOW=
***                  1.049603E+03. This is too small for the current precision.

Press any keyto continue

ekolin 发表于 2009-7-31 16:07

请教各位大侠,这是什么意思啊?

无水1324 发表于 2009-7-31 21:36

回复 6楼 ekolin 的帖子

那你学一下matlab吧,用matlab很简单的,直接ode45就可以求出来了
页: [1]
查看完整版本: 互相嵌套的微分方程组如何用R-K方法求解?