试验24常微分方程的求解函数 本文档里,我们来求解一个简单的微分方程,首先使用我们已知的方法,然后 使用 Mathcad的内部求解微分方程的函数求解 问题如下:求解下列常系数线性齐次微分方程 +y"-y+y=0 y(0)=2y(0)=-2y(0)=0初始条件 首先我们使用教科书中介绍的特征函数法求这个微分方程的特解: f(z) 定义特征函数f(z) f(z)的系数向量 调用 Mathcad的 polyroots函数求特征方程的根 -0.18204-1.51045i z: polyroots( v) =-0.18204+1.51045i 0.86408 方程的通解形式为: y(t, C) ∑ 其中C:为待定的系数:将初始条件代入,得到关于c的三个方程 y(t,C)=>C ∑c ∑c =0 个方程联立为关于ci(i=0.2)的线性方程组,其系数行列式 为如下的 Vandermonde行列式 20212 系数矩阵 2(2)2(2)
A 系数矩阵 1 z 0 z( 0) 2 1 z 1 z( 1) 2 1 z 2 z( 2) 2 é ê ê ê ê ë ù ú ú ú ú û := 三个方程联立为关于 Ci (i=0..2) 的线性方程组, 其系数行列式 为如下的Vandermonde 行列式 0 2 i C i z i ( ) 2 å × = = 0 2 t y(t,C) d d 2 0 2 i C i z i ( ) 2 × e zi ×t å × = = 0 2 i C i z i å × = = -12 t y(t,C) d d 0 2 i C i z i × e zi ×t å × = = 0 2 i C å i = = 2 其中 C i 为待定的系数: 将初始条件代入, 得到关于Ci的三个方程: y(t,C) 0 2 i C i e zi ×t å × = := 方程的通解形式为: z -0.18204 - 1.51045i -0.18204 + 1.51045i 0.86408 æ ç ç è ö ÷ ÷ ø z := polyroots(v) = 调用Mathcad的polyroots函数求特征方程的根: v 1 -1 1 f(z) 的系数向量 4 -1 2 æ ç è ö ÷ ø T := f(z) 定义特征函数f(z) 1 2 - z 3 × 1 4 z 2 := + × - z + 1 首先我们使用教科书中介绍的特征函数法求这个微分方程的特解: y(0) = 2 y'(0) = -2 y''(0) = 0 初始条件 1 2 - ×y''' 1 4 + ×y'' - y' + y = 0 本文档里, 我们来求解一个简单的微分方程, 首先使用我们已知的方法, 然后 使用Mathcad的内部求解微分方程的函数求解. 问题如下: 求解下列常系数线性齐次微分方程. 试验24 常微分方程的求解函数
A0:=(2-120) 初始值 解方程组:Ac=y0 0.96146-3.8785i C: =Isolve(A, yo) C=0.96146+3.8785i 0.07708 下面生成解曲线的图形 E:=0.01t0:=0te:=6 t:= t0t0+8. te 2 1.401 1.042 下面使用 Mathcad的内部函数 rkfixed来求解: 定义初始条件 定义与未知解函数有关的向量Dty): 阶导数 二阶导数 y2ty1-yo 三阶导数 0 021 1:=0.n 需计算的点数 1188 31.64 F: =rkfixed(y, to, te, n, D) 解矩阵 51401 61281 F的第一列为自变量的值,第二列为对应于自变量值的解函数值 71.162 第三列和第四列分别为解函数的一阶导数和二阶导数值 90923 100805 0.686
F的第一列为自变量的值, 第二列为对应于自变量值的解函数值, 第三列和第四列分别为解函数的一阶导数和二阶导数值. F i, 1 0 0 1 2 3 4 5 6 7 8 9 10 11 2 1.88 1.76 1.64 1.52 1.401 1.281 1.162 1.042 0.923 0.805 0.686 = F := rkfixed(y, t0, te, n,D) 解矩阵 n i := 0.. n 需计算的点数 te - t0 e := 三阶导数 D(t, y) 二阶导数 y 1 y 2 -2 1 4 - y 2 × y 1 + y 0 - æ ç è ö ÷ ø × é ê ê ê ê ë ù ú ú ú ú û := 一阶导数 定义与未知解函数有关的向量D(t,y): y 定义初始条件 2 -12 0 æ ç ç è ö ÷ ÷ ø y := y0 = 下面使用Mathcad的内部函数rkfixed 来求解: y(t,C) 2 1.88 1.76 1.64 1.52 1.401 1.281 1.162 1.042 0.923 = 0 1 2 3 4 5 6 10 y(t,C) t e := 0.01 t0 := 0 te := 6 t := t0, t0 + e.. te 下面生成解曲线的图形 C 0.96146 - 3.8785i 0.96146 + 3.8785i 0.07708 æ ç ç è ö ÷ ÷ ø C := lsolve(A, y0) = 解方程组: A*C=y0 y0 ( 2 -12 0 ) 初始值 T :=
F 0 比较yt,C)与F1可以看到二者是一致的 注:上面求解中也可以使用内部函数 Bulstoer和 Readapt所得的解是一样的 下面使用 Resolve函数求解: G d x)-y(x)+y(x)=0 y0)=2y(0)=-12y(0)=0 y:=Odesolve(x, 6, 100) x:=0,0.01.6 y(x) .88 1.76 1.64 yx) 1.52 1.401 1.281 1.162
0 1 2 3 4 5 6 20 20 Fi, 1 Fi, 2 Fi, 3 Fi, 0 比较 y(t,C) 与F i, 1 可以看到二者是一致的. 注: 上面求解中也可以使用内部函数 Bulstoer 和 Rkadapt 所得的解是一样的. 下面使用 Odesolve 函数求解: Given 1 2 - 3 x y(x) d d 3 × 1 4 2 x y(x) d d 2 + × x y(x) d d - + y(x) = 0 y(0) = 2 y'(0) = -12 y''(0) = 0 y := Odesolve(x,6, 100) x := 0, 0.01.. 6 y(x) 2 1.88 1.76 1.64 1.52 1.401 1.281 1.162 = 0 1 2 3 4 5 6 10 10 y(x) x