- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用maple 7求解系统的微分方程得
Maple语句为
k1:=1;k2:=1;k3:=1; m1:=1; m2:=1; m3:=1; x10:=2;x20:=3;s10:=0;s20:=0; deq1:=m1*diff(x1(t),t$2)-k2*(x2(t)-x1(t))=k1*x1(t); deq2:=m2*diff(x2(t),t$2)=-k2*(x2(t)-x1(t))k3*x2(t); init:=x1(0)=x10,D(x1)(0)=s10,x2(0)=x20,D(x2)(0) =s20: sol:=dsolve({deq1,deq2,init},{x1(t),x2(t)});
(4.1.10)
质点的空间运动
已知在空间运动的质点 及点的坐标 的关系为 的速度与时间 t
且质点在时刻 运动轨迹.
经过点
求该质点的
Hale Waihona Puke 个问题其实就是求微分方程组满足初始条件 的解
事实上, 在第3 章中的高阶微分方程
令
则上式可以化为方程组
例 池水含盐量问题
某水池中有2000 3 m的水,其中含盐2kg。 m 以每分钟6 的速度向水池内注入含盐率 m 为0.5kg/ 的盐水,同时又以每分钟4 3 m 的速度从水池中流出搅拌均匀的盐水。使 用计算机仿真该水池里盐水的变化过程, 并每隔10分钟计算水池中水的体积、含盐 量、含盐率,欲使池中盐水的含盐率到达 m 0.2kg/ ,需经过多少时间?
用maple 7所得到的解是:
5 1 1 5 1 1 xk1 := t cos t 6 2 t 3 cos 2 t t 6 3 10 6 2 2 6 2 2
t5 cos 1 2 t1 t 6 5 cos 1 t 6 1 2 t 5 cos( 2 t ) 20 xk2 := 2 6 2 3 6 2 2
restart: dsolve({diff(x(t),t)=3-4*x(t)/(2000+2*t),x(0)=2},x(t)); simplify(%);
运行后得到的结果为
解和图形
x( t ) 2 3 2000000 3000000 3000t t t ( 1000 t )
500 0.2
2
400 0.15 300 0.1 200 0.05
100
50
100
150
200
50
100
150
200
含盐量
含盐率
Computer simulation
理论分析需要较多的数学基础,计算 机只需要四则运算和简单的编程。 输入初始值,取定步长 在每一个循环内 计算水的体积,含盐量,含盐率 判断是否达到给定的浓度 输出需要的结果 进行比较
的电流, 是通过
的电流,由基尔霍夫定律可建立以下方程组.
上面方程组第二式两边对t求导得
解得 (4.1.3)
3个弹簧连接2个物体运动的动画演示
两个物体之间连有弹簧,两个物体两端又分 别连接1个弹簧,两个弹簧的另一端又分别固 定在墙上。
将两个物体分别拉伸一段距离后放开物体, 弹簧-质量系统就会做往复运动,观察它们的 运动情况,列出它们的运动方程。
5 1 1 5 1 1 5 xk3 := t cos 2 t t 6 cos t 6 2 t cos( 2 t ) 30 2 6 2 3 6 2 2
5 1 1 5 1 1 xk4 := t cos t 6 2 t 3 cos 2 t t 6 3 40 2 2 6 2 6 2
(4.1.6)
上式左端表示被捕食者的相对增长率; 右端的常数 是其出生率 减去死亡率 当 因此 称为内禀增长率,
为环境的容纳量, 由 (4.1.6) 可以看出, 时,种群规模增长, 时, 种群规模减小. 反映了环境能保证食饵个体数量变化时最
合适的容量, 把(4.1.6) 改写形式 (4.1.7)
其中项
3
3
3
池水含盐量随时间变化的示意图
理论分析法 当系统开始运行后,池中的水和含盐量均随时间 变化。记x(t)为t时刻池水中含盐量,考察[ t, t+Δt]时间区间内盐的变化,这些变化是由于流入 的盐水和流出的盐水所引起的,于是有平衡方程: x(t+Δt)-x(t)=[6×0.5-4×x(t)/(2000+2t)]Δt 两边同时除以Δt,再令Δt趋于0得下面微分方程的 初始值问题。 dx(t)/dt=3- 4x(t)/(2000+2t) , x(0)=2. 利用Maple 求解此问题,指令为
计算机数值求解程序:Euler折线法(Maple)
restart: h:=1.; s[1]:=2.; w[1]:=2000.; r[1]:=s[1]/w[1]; t[1]:=h; y[1]:=(2000000+3000000*h+3000*h^2+h^3)/(1000+h)^2; for j from 2 to 200 do t[j]:=j*h; s[j]:=s[j-1]+0.5*6*h-4*h*r[j-1]; w[j]:=w[j-1]+2*h; r[j]:=s[j]/w[j]; y[j]:=(2000000+3000000*t[j]+3000*t[j]^2+t[j]^3)/(1000+t[j])^2; m:=floor(j/10); if (j/10-m<0.1) then tm[m]:=m; wm[m]:=w[j]; sm[m]:=s[j]; rm[m]:=r[j];ym[m]:=y[j]; end if; if (r[j]>0.2) then t02:=j*h; r02:=r[j]; break; end if; end do: for m from 1 to 18 do print("time",10*tm[m],"water",wm[m],"salt",sm[m],"salty", ym[m],"saltr",rm[m]); end do; print("time",j,"water",w[j],"salt",s[j],"salty",y[j],"saltr",r[j]);
5 1 1 5 1 1 5 xk5 := t cos 2 t t 6 cos t 6 2 t cos( 2 t ) 50 2 3 2 3 3 2 2
用maple 7 编写的动态演示图
Volterra 捕食-被捕食模型
设有捕食种群和食饵种群生活在同一小环境中, 建立微分方程组来研究两种群个体数量随时间的 变化趋势. 设 t 时刻食饵和捕食者的数量或密度分别为 假设个体不区分大小, 而且没有个体向环境输入或 从环境输出, 当环境中不存在捕食者时, 食饵种群的 增长规律用下述Logistic方程来描述
用maple 7 编写的系统的动态演示图
2个弹簧连接2个物体竖直运动的方程
用maple 7 编写的动态演示图
6个弹簧连接5个物体水平运动的方程
2 x1 ( t ) 2 x1 ( t ) x2 ( t ) 2 t
2 x2 ( t ) x3 ( t ) 2 x2 ( t ) x1 ( t ) 2 t 2 x3 ( t ) x4 ( t ) 2 x3 ( t ) x2 ( t ) 2 t 2 x4 ( t ) x5 ( t ) 2 x4 ( t ) x3 ( t ) 2 t 2 x5 ( t ) 2 x5 ( t ) x4 ( t ) 2 t
于是(4.1.7) 变为
对于捕食种群, 当不存在食饵种群时, 仍用Logistic 方程来描述增长规律, 即
当存在食饵种群时, 被捕食者吃掉的食饵将转化为 能量去生育后代, 设转化系数为 则捕食种群的
增长规律为
其中 捕食者仅以食饵 为生.
式中项
反映了
这样我们得到一个Volterra 捕食-食饵系统
计算结果
达到给定含盐率的时间:186分
0.20026
"time" , "water"2018. "salt"28.75063839"salty"31.66454269"saltr".01424709534 , 10 , , , , , , , "time" , "water"2038. "salt"57.92376168"salty"60.75355632"saltr".02842186540 , 20 , , , , , , , "time" , "water"2058. "salt"86.53981413"salty"89.28928268"saltr".04205044418 , 30 , , , , , , , "time" , "water"2078. "salt"114.6201693"salty"117.2928994"saltr".05515888802 , 40 , , , , , , , "time" , "water"2098. "salt"142.1851856"salty"144.7845805"saltr".06777177579 , 50 , , , , , , , "time" , "water"2118. "salt"169.2542631"salty"171.7835529"saltr".07991230552 , 60 , , , , , , , "time" , "water"2138. "salt"195.8458980"salty"198.3081492"saltr".09160238447 , 70 , , , , , , , "time" , "water"2158. "salt"221.9777314"salty"224.3758573"saltr".1028627115 , 80 , , , , , , , "time" , "water"2178. "salt"247.6665980"salty"250.0033667"saltr".1137128549 , 90 , , , , , , , "time" , "water"2198. "salt"272.9285684"salty"275.2066116"saltr".1241713232 , 100 , , , , , , , "time" , "water"2218. "salt"297.7789911"salty"300.0008116"saltr".1342556317 , 110 , , , , , , , "time" , "water"2238. "salt"322.2325311"salty"324.4005102"saltr".1439823642 , 120 , , , , , , , "time" , "water"2258. "salt"346.3032059"salty"348.4196100"saltr".1533672302 , 130 , , , , , , , "time" , "water"2278. "salt"370.0044195"salty"372.0714066"saltr".1624251183 , 140 , , , , , , , "time" , "water"2298. "salt"393.3489944"salty"395.3686200"saltr".1711701455 , 150 , , , , , , , "time" , "water"2318. "salt"416.3492017"salty"418.3234245"saltr".1796157039 , 160 , , , , , , , "time" , "water"2338. "salt"439.0167892"salty"440.9474761"saltr".1877745035 , 170 , , , , , , , "time" , "water"2358. "salt"461.3630080"salty"463.2519391"saltr".1956586124 , 180 , , , , , , ,