王朝百科
分享
 
 
 

差分方程

王朝百科·作者佚名  2009-11-17  
宽屏版  字体: |||超大  

差分方程是微分方程的离散化。一个微分方程不一定可以解出精确的解,把它变成差分方程,就可以求出近似的解来。

比如 dy+y*dx=0 ,y(0)=1 是一个微分方程, x取值[0,1]

(注: 解为y(x)=e^(-x));

要实现微分方程的离散化,可以把x的区间分割为许多小区间 [0,1/n],[1/n,2/n],...[(n-1)/n,1]

这样上述微分方程可以离散化为:

y((k+1)/n)-y(k/n)+y(k/n)*(1/n)=0, k=0,1,2,...,n-1 (n 个离散方程组)

利用y(0)=1的条件,以及上面的差分方程,就可以计算出 y(k/n) 的近似值了。

§1 基本理论

1. 差分

2. 任意数列{xn },定义差分算子Δ如下:

Δxn=xn+1-xn

对新数列再应用差分算子,有

Δ2xn=Δ(Δkxn).

性质

性质1 Δk(xn+yn)=Δkxn+Δkyn

性质2 Δk(cxn)=cΔkxn

性质3 Δkxn=∑(-1)jCjkXn+k-j

性质4 数列的通项为n的无限次可导函数,对任意k>=1,存在η,有 Δkxn=f(k)(η)

差分方程

定义8。1 方程关于数列的k阶差分方程:

xn-a1xn-1-a2xn-2-……aBxn-k=b(n=k,k+1,……)

其中a1,a2,------ak 为常数, ak≠0. 若b=0,则该 方程是齐次方程

关于λ 的代数方程

λk-a1λk-1-------ak-1λ-ak=0

为对应的特征方程,根为特征值。

1. 实验内容与练习

2.1 插分

例1 Xn={n3},求各阶差分数列:

xn △xn △2xn △3xn △4xn

1 7 12 6 0

8 19 18 6 0

27 37 24 6 0

64 61 30 6

125 91 36

216 127

343

可见,{n3},三阶差分数列为常数数列,四阶为0。

练习1 对{1},{n},{n2},{n4},{n5}, 分别求各阶差分数列。

练习2 {C0n-1}{C1n-1}{C2n-1},{C4n-1},分别求各阶差分数列.

{Xn}的通项为n的三次函数,

Xn=a3n3+a2n2+a1n+a0

证明它为常数数列。

证明 由Xn=a3n3+a2n2+a1n+a0可直接计算 。

定理8。1 若数列的通项是关于n 的k次多项式,则 k 阶差分数列为非零数列,k+1阶差分数列为0。

练习3 证明定理8。1 。

定理8。2 若{Xn}的 k 阶插分为非零常数列,则{Xn}是 n的 k次多项式,

练习4 根据插分的性质证明定理8。2

例2。求∑i3

例3

例4

解 设Sn=∑i3 表

Sn △Sn △2Sn △3Sn △4Sn △5Sn

1 8 19 18 6 0

9 27 37 24 6 0

36 64 61 30 6 0

100 125 91 36 6 0

225 216 127 42

441 343 169

784 512

1296

设Sn=a4n4+a3n3+a2n2+a1n+a0, s1=1,s2=9,s3=36,s4=100,s5=225,得

a0=0, a1=0, a2=1/4, a3=1/2, a4=1/4.

所以,

Sn=(1/4)n4+(1/2)n3+(1/4)n2.

练习 {Xn}的通项Xn为n的k次多项式,证明∑xi为n的 k+1次多项式;求

∑i4.

由练习 2 {Crn-1}可得。

2.2差分方程

对于一个差分方程,如果能找出这样的数列通项,将它带入差分方程后,该方程成为恒等式,这个通项叫做差分方程的解。

例3 对差分方程 xn-5xn-1+6xn-2=0,可直接验证xn=c13n+c22n是该方程的解。

例3中的解中含有任意常数,且任意常数的个数与差分方程的阶数相同。这样的解叫做差分方程的通解。

若k阶差分方程给定了数列前k项的取值,则可以确定通解的任意常数,得到差分

的特解。

例4对差分方程xn-5xn-1+6xn-2=0,若已知x1=1,x2=5,则可以得到该差分方程的特解为xn=3n-2n.

我们首先研究齐次线性差分方程的求解。

xn=rxn-1

对一阶差分方程

x1=a

显然有xn=arn-1。因此,若数列满足一阶差分方程,则该数列为一个等比数列。

例5 求Fibonacci数列{Fn}的通项,其中F1=1,F2=1,Fn=Fn-1+Fn-2.

Fibonacci数列的前几项为:1,1,2,3,5,8,13,21,34,55,89,…。该数列有着非常广泛的应用。

Fibonacci数列所满足的差分方程为

Fn-Fn-1-Fn-2=0,

其特征方程为

λ2-λ-1=0

其根为λ1= ,λ2= .利用λ1λ2可将差分方程写为

Fn-(λ1+λ2)Fn-1+λ1λ2Fn-2=0,

Fn-λ1Fn-1=λ2(Fn-1-λ1Fn-2)

数列{Fn-λ1Fn-1}满足一个一阶差分方程.显然

( )

同理可得

( )

由以上两式可解出 的通项。

练习9 证明若数列{ }满足二阶差分方程 ,其特征方程 由两个不相等的根 ,则 为该差分方程的两个特解。从而其通解为 。

由练习9,若二阶差分方程的特征方程有两个不相等的根,可写出其通解的一般性式。再由 的值可解出其中的系数,从而写出差分方程的特解。

练习10 具体求出 Fibonacci数列的通项,并证明 。那么,若二阶线性齐次差分方程有两个相等的根,其解有如何来求呢?

设二阶线性齐次差分方程的特征方程有两个相等的根 ,则差分方程可写为 。差分方程的两边同时除以 ,有 。设 ,则 (n>=3)。由于该式在 n>=3式均成立,我们将它改写为 (n>=1)。 (8.2)

方程(8.2)的左边是 的二阶差分,从而有 ,于是 是n的 一次函数,设为 则有 。上是即为差分方程的通解。

练习11 证明:若数列{ } 所满足的三阶差分方程的特征方程由三个相等的根 ,则差分方程的通解为 。

一般的,设 •••, 为差分方程的特征方程所有不同的解,其重数分别为 •••, ,则差分方程对应于其中的根 (i=1,2,•••,l)的特解 ••• 。

对于一般的k阶齐次线性差分方程,我们可以通过其特征方程得到上述形式的k个特解,进而得到差分方程的通解。

练习12 若数列{ } 满足差分方程

且 求{ }的通项。

例6 若实系数差分方程的根为虚数,则其解也是用虚数表示的,这给讨论问题带来不便。差分方程

xn-2xn-1+4xn-2=0

的特征值为 i.若x1=1,x2=3,由下面的程序易求出其特解为:

xn=( )(1+ i)n+(- )(1- i)n

Clear[x1,x2,c1,c2,l1,l2,solution];

x1=1;x2=3;

solution=Solve[1^2-2l+4==0,1];

l1=l/.solution[[1,1]];

l2=l/.solution[[2,1]];

c=Solve[{c1*l1+c2*l2==x1,c1*l1^2+c2*l2^2==x2},{c1,c2}];

c1=Simplify[Re[c1]]+Simplify]*I;

c2=Simplify[Re[c2]]+Simplify]*I;

Print[“xn=(“,c1,”)(“,l1,”)^n+(“,c2,”)(“,l2,”)^n”]

解的形式相当复杂,是否可以将它们用实数表示呢?

设 =rei ,则 =re ,我们可将(8.4)中的表达式改写为

xn=re (2e )n+re (2e )

=r

=2r Cos( )

=(2rCos )

=

可以看出,通项可以写成 的形式.那么, 与 是不是差分方程的特解呢?

练习13 验证 与 是差分方程(8.3)的特解.

对于差分方程(8.3),我们找出了它的两个实型的特解,从而可以将通解表示成实数的形式.这一方法对于一般的方程也是成立的.

练习14 设 的两个特征值为 .证明该差分方程的通解可表示为 .

练习 15 用实数表示差分方程 的特解.

上次我们讨论了其次线性差分方程的求解方法.那么,非齐次线性差分方程是否可以化为齐次线性差分方程呢?

练习16 若已知非齐次线性差分方程

••• (8.5)

的一个特解为 求证:若令 则 满足齐次差分方程

•••

由练习16,若已知非齐次线性差分方程(8.5)的一个特解,就可以将它化为齐次线性差分方程.

显然方程(8.5)的最简单的形式为 (其中p为常数),代入(8.5)得

•••

若 ••• 则有

称p = 为非齐次线性差分方程(8.5)的平衡值。在(8.5)中, 令 则有

由 ,得

.

从而可将原来的非齐次线性差分方程化为齐次线性差分方程.

如果方程(8.5)的平衡值不存在,可以将方程(8.5)中所有的n换为n+1,得到

(8.6)

方程(8.6)和(8.5)相减得

.

于是可将原来的非齐次线性差分方程化为高一阶的齐次线性差分方程.

练习17 分别求差分方程 及 的通解.

2.3 代数方程求根

由 Fibonacci数列的性质,我们可以用 来逼近 ,用这一性质可以来计算 的近似值。一般地,对a>0,可以用构造差分方程的方法来求 的近似值.

对给定的正数a,设λ1= ,λ2= ,则λ1 ,λ2是方程λ2-2λ+(1+a)=0的根.该方程是差分方程 的特征方程。于是,选定 ,利用差分方程 可以构造一个数列{ }.

练习 18 证明:若a>1,对任意的 >0, >0,若 ≠ ,则按上述法构造的数列{ }满足

.

这样,我们得到了计算 的一个方法:

1. 给定 (作为误差控制),任取初始值 ,令n=1;

2. 若

则终止计算,输出结果;否则 ,令n :=n+1,转第3步;

3. 令 ,转第2步.

练习 19 对a=1.5,10,12345,用上述方法求 .

上述方法的收敛速度不够快,我们可以加以改进

设整数u满足 ,令 ,则 , 是方程 的两个根.

练习 20 根据上面的差分方程的构件数列{ x },使得

.

练习 21 对练习19中的a,用上面的方法来计算 ,并比较两种方法的收敛速度.

代数方程

(8.7)

是差分方程(8.1)的特征方程,是否可以用此差分方程来求解方程(8.7)呢?

设方程(8.7)有k个互不相同的根满足

, (8.8)

则对应的差分方程的通解形式为

.

练习 22 设方程(8.7)的根满足条件(8.8),任取初始值 用差分方程(8.1)(取b=0)构造数列{ }.若通解中 的系数 ≠0,证明:

.

利用练习22得到的结论,我们可以求多项式方程的绝对值最大的根.

练习 23 求方程 的绝对值最大的根.

事实上,若方程(8.7)的互不相同的根满足

≥ ≥…≥

(其重数分别为 ),则练习22中的结论仍然成立.

2.4 国民收入4 国民收入的稳定问题

一个国家的国民收入可用于消费,再生产的投资等。一般地说,消费与再生产投资都不应该没有限制。合理的控制各部分投资,能够使国民经济处于一种良性循环之中。如何配各部分投资的比例,才能使国民经济处于稳定状态呢?这就是本节要讨论的问题。

我们首先给出一些假设条件:

1. 国民收入用于消费、再生产投资和公共设施建设三部分。

2. 记 分别为第k个周期的国民收入水平和消费水平。 的值与前一个周期的国民收入成正比例。即 =A , (8.9)其中A为常数(0<A<1).

3. 用 表示第k个周期内用于再生产的投资水平,它取决于消费水平的变化,即 . (8.10)

4. G表示政府用于公共设施的开支,设G为常数.由假设1有 . (8.11)上式是一个差分方程,当给定 的值后,可直接计算出国民收入水平 (k=2,3,…)来观察其是否稳定。

例7 若 ,计算可得表8.3中数据。

表8.3 Y 的值的变化

k 2 3 4 5 6 7 8 9 10 11

11.0 24.5 35.8 39.1 32.9 20.3 7.48 0.95 3.93 15.0

k 12 13 14 15 16 17 18 19 20 21

28.5 37.8 38.2 29.5 16.0 4.58 0.82 6.65 19.2 32.1

我们可以画出 的散点图来观察其变化。其计算及画图的程序如下:

y0=2;y1=2;a=0.5;b=2;g=10;

y={y0,y1};

For[k=1,k<=20,k++,

Y2=a(1+b)*y1-b*a*y0+g;

Y=Append[y,y2];

Y0=y1,y1=y2]

YListPlot[y,PlotJoined True,

PlotStyle Thickness[0.012]]

图8.1 国民收入 的变化

由图8.1利用发现,又例7的数据得出的 的呈现出周期变化的迹象。

练习 24设 ,对于表8.4中的参数A,B,分别计算 (k=2,3,…)并画图观察 的变化。

表8.4 参数A, B的取值

A 1/2 1/2 1/2 8/9 9/10 3/4 4/5

B 1 2 3 1/2 1/2 3 3

可以看出,随着参数的值不同,国民收入水平 (k=2,3,…)的稳定性呈现出不同的状态。

那么,参数满足什么条件时,国民收入水平才处于稳定发展之中呢?

差分方程(8.11)是一个常系数非齐次线性差分方程。由A<1容易求出其平衡值为

令 可得

.

其特征值为

若 则

其中 为 的幅角。

从而可的差分方程的解为

其中 为常数。

若 易见{ }为一周期函数在 ---的取值,从而{ }呈周期变化的状态。正如在例7中所见到的。

练习25 若 在 及 的情形下,讨论{ }的变化趋势。国民收入会稳定发展吗?

练习26 若 ,国民收入在什么条件下会稳定发展?

本实验涉及的Mathematica软件语句说明

1. solution=Solve[1^2-2l+4==0,1];

l1=1/.solution[[1,1]];

l2=l/.solution[[2,1]];

将方程l^2-2l+4==0的两根分别赋值给l1及l2.

2. c=Solve[{c1*l1+c2*l2==x1,c1*l1^2+c2*l2^2==x2},{c1,c2}];

{c1,c2}={c1,c2}/.c[[1]];

将方程组{c1*l1+c2*l2==x1,c1*l1^2+c2*l2^2==x2}的解赋值给c1及c2.

3. c1=Simplify[Re[c1]]+Simplify]*I

将复数c1化简.

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有