【Mathematica】微分方程组的数值解法

 时间:2024-09-23 03:34:04

在使用Mathematica求解微分方程组的时候,有可能会遇到难以求出解析解的方程组,这时候就需要使用数值解法。

工具/原料

电脑

Mathematica

方法/步骤

1、要求解的方程组是:{x'[t觥终柯计]+y[t]^2==1,y'[t]+x[t]^2==2}初始条件是:x[1]==1,y[1]==2直接用DSolve芟坳葩津,计算机将进入某种奇异状态:DSolve[{x'[t]+y[t]^2==1,y'[t]+x[t]^2==2,x[1]==1,y[1]==2},{x[t],y[t]},t]

【Mathematica】微分方程组的数值解法

2、由于DSolve长时间算不出结果,就直接套用NDSolve计算数值解:NDSolve[{x'[t]+y[t]^2==1,y'[t]+x[t]^2==2,x[1]==1,y[1]==2},{x[t],y[t]},t]这时候会报错。

【Mathematica】微分方程组的数值解法

3、NDSolve[{x'[t]+y[t]^2==1,y&拭貉强跳#39;[t]+x[t]^2==2,x[1]==1,y[1]==2},{x[t],y[t]},惺绅寨瞀{t,-10,10}]给t制定一个取值范围,仍旧报错。这是因为这个范围内,很可能遇到了微分方程系统的奇异值。

【Mathematica】微分方程组的数值解法

4、重新调整t的范围,把可能存在的奇异值排除掉:NDSolve[辘腋粪梯{x'[t]+y[t]^2==1,y'[t]+x[t]^2==2,x[1]=租涫疼迟=1,y[1]==2},{x[t],y[t]},{t,0.09,2.8}]运行,不再报错。

【Mathematica】微分方程组的数值解法

5、出来结果,就可以画图了:ParametricPlot[{x[t],y[t]}/.sol,{t,1,2}]

【Mathematica】微分方程组的数值解法

6、画图范围一定不要超出解方程组的时候所预定的t的取值范围:

【Mathematica】微分方程组的数值解法

7、有时候即便不出界,也会报错,不知道为什么数值解可以求出来,图像却不可作。

【Mathematica】微分方程组的数值解法

8、一直调整到0.99995,还是报错,直到0.99996,才可以正常作图。

【Mathematica】微分方程组的数值解法

Mathematica 特殊字符输入(希腊字母/运算符) 如何用mathematica画出函数图象 Mathematica 求解二阶常微分方程技巧(符号解) Mathematica基础——解微分方程并作图 mathematica 如何画图
热门搜索
水浒传108将图片 rio图片 apple图片 插死她电影网 俄罗斯美女图片大全