matlab,maple画常微分向量场
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业
一、常微分方程向量场相关概念
1、常微分方程向量场定义
答:
设一阶微分方程()y x f dx
,dy
= 满足解的存在唯一性定理的条件。过D 中任一点
()y x 0
,,有且仅有一个解(),x y ϕ=满足(),y 0
x =ϕ()()()x x f x ϕϕ,'
=。称域
D 为方程所定义的向量场。
2、常微分方程向量场性质
答:
性质1:解()x ϕ=y 就是通过点
()y 0
x ,的一条曲线(称为积分曲线),且()()
x x ϕ,f 就是该曲线上的点()()x ϕ,x 处的切线斜率,特别在
()y 0
x ,切线斜率就是
()y x 0
,f
。
性质2:向量场可以用映射22:F R R Ω⊂→来表示,其中(,)(,)F X x y i Y x y j =+,
Ω为一个平面区域,22R R →表示由平面一点映射到一个二维向量。 性质3:若函数(,)f x y 为Ω上的连续函数,那么向量场也是连续的。 性质4:向量场的原函数不唯一,但是任意两个原函数之间只差一个常数。
3、利用向量场求常微分方程(组)近似解
答:
从几何上看,方程
()y x f dx
,dy
=的一个解()x y ϕ=就是位于它所确定的向量场中的一条曲线,该曲线所经过的每一点都与向量场在这一点的方向相切。形象的说,解()x ϕ就是始终沿着向量场中的方向行进的曲线,因此,求方程()y x f dx
,dy
=满足初始值()y
x 0
0y =
的解,就是求通过点
()y 0
x ,的这样的一条曲线。
4、利用向量场研究常微分方程定性理论
答:
向量场对于求解微分方程的近似解和研究微分方程的几何性质极为重要,因为,可根据向量场的走向来近似求积分曲线,同时也可根据向量场本身的性质来研究解的性质。
(1). 李雅普诺夫稳定性
考虑方程
262dy y y dx =-和242dy
y y dx =-+,现用向量场判断方程的李雅
普诺夫稳定性。分别绘制其向量场如下图:
从该图中的向量场方向可以看出,其所有解都渐进稳定于直线3y =。
从该图中的向量场方向可以看出,当初值条件满足02y >时,其解都渐进稳定于某竖直的直线l x x =;当初值条件满足002y <<时,其解都渐进稳定于直线0y =。
(2). 奇点
考虑方程
7437dy x y dx x y +=--和
7437dy x y dx x y +=-+,现用向量场判断方程的奇
点。分别绘制其向量场如下图:
从该图中的向量场方向可以明显观察出,点(0,0)是这两个常微分方程的零点。
(3).极限环
考虑方程
22
22
()
() dy x y y x y dx x y x x y
-+-+
=
+-+
现用向量场判断方程的极限环。绘制其向量场如下图:
从该图中的向量场方向可以看出,在圆内,有一部分初值点使得其解都渐进稳定于圆221
x y
+=,而另一部分趋近于点(0,0);在圆外,有一部分初值点使得其解都渐进稳定于圆221
x y
+=,而另一部分趋近于无穷远处。
二、基于Matlab 绘制常微分方程向量场
1、基于Matlab 绘制常微分方程向量场的思路。
解:向量场计算与与绘制步骤如下:
(1). 给定常微分方程~以及区域min max min max {(,)|[,],[,]}x y x x x y y y ∈∈; (2). 给定x 轴分段数x n (如30),为保证所绘制的向量场中相邻的向量
上下左右的距离相等,令max min max min
[]y x y y n n x x -=-;
(3). 令x 、y 的取值分别为max min min max min min ,0,1,2,...,0,1,2, (i)
x x
j y y x x x x i i n n y y y y j j n n -⎧
=+=⎪⎪⎨
-⎪=+=⎪⎩
; (4). 求由微分方程右边~求()y x 在每个点(,)i j x y 处的斜率k ; (5). 由斜率k 求对应的方向向量(,)x y v v ,其中211x v k
=+,21y k v k
=+;
(6). 用数据(,)i j x y 和(,)x y v v 调用Matlab 函数()quiver ,设置颜色等参数绘制
向量场。
常微分方程边值问题的解曲线,绘制在上述向量场中的步骤如下:
(7). 给定初值点00(,)x y ,用‘o ’绘制初值点; (8). 调用Matlab 函数45()ode 数值求解该边值问题; (9). 调用Matlab 函数()plot 绘制解曲线。
2、利用Matlab 绘制常微分方程向量场的程序设计。 解:
function [x,y,vx,vy]=vectFieldData(fxy,bx,by,snx) %向量场数据生成通用函数
if nargin<4, snx = 30; else, snx = snx*30; end %x 轴分段数 sny = floor(snx*(by(2)-by(1)) /(bx(2)-bx(1))); %y 轴分段数 hx = (bx(2)-bx(1)) /snx; %x 步长 hy = (by(2)-by(1)) /sny; %y 步长 x = bx(1) :hx :bx(2); y = by(1) :hy :by(2);