递归方程求解方法综述

递归方程求解方法综述
递归方程求解方法综述

递归方程求解方法综述

摘要:随着计算机科学的逐步发展,各种各样的算法相继出现,我们需要对算法进行分析,以选择性能更好的解决方案。算法分析中计算复杂度常用递归方程来表达,因此递归方程的求解有助于分析算法设计的好坏。阐述了常用的3种求解递归方程的方法:递推法、特征方程法和生成函数法。这3种方法基本上可以解决一般规模递归方程的求解问题。

关键词:递归;递推法;特征方程;生成函数

0引言

寻求好的解决方案是算法分析的主要目的,问题的解决方案可能不只一个,好的方案应该执行时间最短,同时占有存储空间最小,故算法分析一般考虑时间复杂性、空间复杂性两方面的参数。在算法分析时我们采用时间耗费函数来表示时间参数,用当问题规模充分大时的时间耗费函数的极限表示时间复杂度。

一般算法对应的时间耗费函数常用递归方程表示,找出递归方程的解,就可以表示其对应算法复杂度的渐进阶,从而比较算法的优劣。因此研究递归方程的解法意义重大。下文将分析并给出常用递归方程的3种解法。

1递归方程的解法

递归方程是对实际问题求解的一种数学抽象,递归的本质在于将原始问题逐步划分成具有相同解题规律的子问题来解决,原始问题与子问题仅在规模上有大小区别,并且子问题的规模比原始问题的

规模要小。对于规模为n的原始问题,我们通常会寻找规模n的问题与规模n-1或者规模n/2的问题之间存在的联系,从而进一步推导出具有递归特性的运算模型。

根据递归方程的一般形式,常用的解法有三种,分别是递推法、公式法及生成函数法。下面就分别来分析其求解过程。

1.1递推法

当递归方程形式简单且阶数较低时,一般可以采用递推法求解,根据一步一步递推找到方程的递推规律,得到方程的解。下面举例说明: t(1)=0

t(n)=2t(n/2)+n2(n≥2)

t(n)=2t(n/2)+n2=2(2t(n/22)+(n/2)2)+n2

=22t(n/2)2+2n2/22+n2

=22(2t(n/23)+(n/22)2)+2n2/22+n2

=23(2t(n/23)+22n2/(22)2)+2n2/(22)1+n2…

=2kt(n/2k)+∑k-1i=02in2(22)i递推到这里我们就可以发现递

归规律,找到递归出口, t(1)=0,令n=2k 则可以得到如下结果:t(n) =2kt(1) +∑k-1i=0n2(1/2)i)=

n2(1-(1/2)k1-1/2)=2n2-2n 上面得到方程的解,我们来分析其对应算法复杂性的渐进阶,根据渐进阶定理有:设有函数f(n),g(n)均是规模n的函数,则o(f(n))+o(g(n))=o(max(f(n), g(n)))。故有t(n)=o(n2)。

1.2公式法

对所需求解的递归方程进行观察,如果它是符合以下形式的常系数齐次线性方程,可用公式法求解。f(0)=b0;

f(1)=b1;……

f(k-1)=bk-1;

f(n)=a1f(n-1)+a2f(n-2)+…+akf(n-k) 在此,常系数是指a1 、a2、……ak是常数,线性指所有的f均为一次幂,齐次指无常数项。解这类方程,可由f(n)项得出:f (n)-a1f(n-1)-a2f(n-2)-…

-akf(n-k) =0;寻找形如f(n)= xn的解。

令xn-a1xn-1-a2xn-2-…-akxn-k=0;xn-k(xk-a1xk-1-…-ak) =0;即xk-a1xk-1-…-ak =0;

由此,我们得到了这类递归方程的特征方程,它有n个特征根,设为x1,x2,…,xk;其线性组合是f(n)的通解。即c1x1n+c2x2n+…+ckxkn=f(n);其中c1,c2,…,ck可由k个初始条件得到的线性方程组解出。

例如,常系数齐次线性方程组f(0)=0;

f(1)=1;

f(n)=4f(n-2);(n>1) 令f(n)=xn;则xn =4xn-2;

xn - 4xn-2=0 ;

x2-4=0;(特征方程)

x1=2;x2=-2;(特征根)

设有c1,c2使f (n) =c1x1n+c2x2n;

由初始条件 f(0)

利用递归思想解决计数问题

利用递归思想解决计数问题 福建省永定第一中学 简绍煌 我们常会遇到一些看似排列组合应用题的计数问题,但其复杂的情形有时令人无从下手,若是利用递归思想建立递归方程加以求解,则往往能够迎刃而解. 【例1】有一楼梯共10级,如果规定每步只能跨上一级或二级,要上10级,共有多少种走法? 解 设上n 级楼梯共有n a 种走法,当1n =时,11a =;当2n =时,22a =. 当有(2)n n >级楼梯时,其走法分两类. 第一类:走完前面1n -级楼梯有1n a -种走法,走第n 级只有1种走法; 第二类:走完前面2n -级楼梯有2n a -种走法,走第1n -级与第n 级楼梯时一步走,也是1种走法. 由分类计数原理,知n 级楼梯的走法为21(2)n n n a a a n N n --=+∈>且,. 由此可以算出1089a =. 点评 其通项公式可用换元法转化为一阶线性递归数列求解. 令11n n n c a x a +=-,使数列{}n c 是以2x 为公比的等比数列(12x x 、待定). 即211211()n n n n a x a x a x a +++-=-,∴212112()n n n a x x a x x a ++=+-.对照已给递归式, 有12121 1x x x x +==-,,即12x x 、是方程210x x --=的两个根. 从而121211112222x x x x += === ∴211111(222n n n n a a a a +++-=-) ① 或211111(222n n n n a a a +++-=-) ② 由式①得1 1131(222n n n a a -++-=; 由式②得1 1131(222 n n n a a -++--=. 消去 1n a +,得11n n n a --? =?? . 【例2】将数字123n ,,,,填入标号为123n ,,,,的n 个方格内,每格一个数字,则 标号与所填数字均不同的填法共有多少种? 解 设这n 个自然数的错排数为n a . 当1n =时,10a =;当2n =时,21a =. 当3n ≥时,n 个自然数的错排数可以分两类情况计算. 第一类:自然数(11)k k n ≤≤-与n 互换,这时错排数为2n a -; 第二类:自然数n 在第k 位上,但自然数不在第n 位上.这时就把第n 位看做第k 位,相当于将n 以外的1n -个自然数进行错排,错排数为1n a -. 所以,自然数n 在第k 位上的错排数共有21n n a a --+种,由于k 可以是121n - ,,,共 1n -种可能,故n 个自然数的错排数为21(1)()(3)n n n a n a a n --=-+≥.① 由①式得,112[(1)]n n n n a a a n a ----=---,∴112 (1)[]!!!! n n n n a na a n a n n n n -----=--,

递归方程解的渐近阶的求法

递归方程解的渐近阶的求法 递归算法在最坏情况下的时间复杂性渐近阶的分析,都转化为求相应的一个递归方程的解的渐近阶。因此,求递归方程的解的渐近阶是对递归算法进行分析的关键步骤。 递归方程的形式多种多样,求其解的渐近阶的方法也多种多样。这里只介绍比较实用的五种方法。 1.代入法这个方法的基本步骤是先推测递归方程的显式解,然后用数学归纳法证明这 一推测的正确性。那么,显式解的渐近阶即为所求。 2.迭代法这个方法的基本步骤是通过反复迭代,将递归方程的右端变换成一个级数, 然后求级数的和,再估计和的渐近阶;或者,不求级数的和而直接估计级数的渐近阶,从而达到对递归方程解的渐近阶的估计。 3.套用公式法这个方法针对形如:T (n)=aT (n / b)+f (n) 的递归方程,给出三种情况 下方程解的渐近阶的三个相应估计公式供套用。 4.差分方程法有些递归方程可以看成一个差分方程,因而可以用解差分方程(初值问 题)的方法来解递归方程。然后对得到的解作渐近阶的估计。 5.母函数法这是一个有广泛适用性的方法。它不仅可以用来求解线性常系数高阶齐次 和非齐次的递归方程,而且可以用来求解线性变系数高阶齐次和非齐次的递归方程,甚至可以用来求解非线性递归方程。方法的基本思想是设定递归方程解的母函数,努力建立一个关于母函数的可解方程,将其解出,然后返回递归方程的解。 本章将逐一地介绍上述五种方法,并分别举例加以说明。 本来,递归方程都带有初始条件,为了简明起见,我们在下面的讨论中略去这些初始条件。 递归方程组解的渐进阶的求法——代入法 用这个办法既可估计上界也可估计下界。如前面所指出,方法的关键步骤在于预先对解答作出推测,然后用数学归纳法证明推测的正确性。 例如,我们要估计T(n)的上界,T(n)满足递归方程: 其中是地板(floors)函数的记号,表示不大于n的最大整数。 我们推测T(n)=O(n log n),即推测存在正的常数C和自然数n0,使得当n≥n0 时有:

特征方程特征根法求解数列通项公式

特征方程特征根法求解数列通项公式 一:A(n+1)=pAn+q, p,q为常数. (1)通常设:A(n+1)-λ=p(An-λ), 则λ=q/(1-p). (2)此处如果用特征根法: 特征方程为:x=px+q,其根为x=q/(1-p) 注意:若用特征根法,λ的系数要是-1 例一:A(n+1)=2An+1 , 其中q=2,p=1,则 λ=1/(1-2)= -1那么 A(n+1)+1=2(An+1) 二:再来个有点意思的,三项之间的关系: A(n+2)=pA(n+1)+qAn,p,q为常数 (1)通常设:A(n+2)-mA(n+1)=k[pA(n+1)-mAn], 则m+k=p, mk=q (2)此处如果用特征根法: 特征方程是y×y=py+q(※) 注意: ①m n为(※)两根。 ②m n可以交换位置,但其结果或出现两种截然不同的数列形式,但同样都可以计算An,而且还会有意想不到的惊喜, ③m n交换位置后可以分别构造出两组An和A(n+1)的递推公式,这个时侯你会发现,这是一个关于An和A(n+1)的二元一次方程组,那么不就可以消去A(n+1),留下An,得了,An求出来了。 例二:A1=1,A2=1,A(n+2)= - 5A(n+1)+6An, 特征方程为:y×y= - 5y+6 那么,m=3,n=2,或者m=2,n=3 于是,A(n+2)-3A(n+1)=2[A(n+1)-3A] (1) A(n+2)-2A(n+1)=3[A(n+1)-2A] (2) 所以,A(n+1)-3A(n)= - 2 ^ n (3) A(n+1)-2A(n)= - 3 ^ (n-1) (4) you see 消元消去A(n+1),就是An勒 例三: 【斐波那挈数列通项公式的推导】斐波那契数列:0,1,1,2,3,5,8,13,21…… 如果设F(n)为该数列的第n项(n∈N+)。那么这句话可以写成如下形式: F(0) = 0,F(1)=F(2)=1,F(n)=F(n-1)+F(n-2) (n≥3) 显然这是一个线性递推数列。 通项公式的推导方法一:利用特征方程 线性递推数列的特征方程为: X^2=X+1 解得 X1=(1+√5)/2, X2=(1-√5)/2. 则F(n)=C1*X1^n + C2*X2^n ∵F(1)=F(2)=1 ∴C1*X1 + C2*X2 C1*X1^2 + C2*X2^2

热传导方程的初值问题

§2热传导方程的初值问题 一维热传导方程的初值问题(或Cauchy 问题) ?? ???+∞<<∞-=>+∞<<∞-=??-??x x x u t x t x f x u a t u ),()0,(0 ,),,(2 2 2? () 偏导数的多种记号xx x t u x u u x u u t u =??=??=??22,,. 问题也可记为 ?? ?+∞ <<∞-=>+∞<<∞-=-x x x u t x t x f u a u xx t ),()0,(0 ,,),(2?. Fourier 变换 我们将用Fourier 变换法求解热传导方程的柯西问题.为此我们将着重介绍Fourier 变换的基本知识.Fourier 变换在许多学科中是重要使用工具. 可积函数,设)(x f f =是定义在),(+∞-∞上的函数, 且对任意A B <,()f x 在[,]A B 上 可积,若积分 ? +∞ ∞ -dx x f )(收敛,则称)(x f 在),(+∞-∞上绝对可积。 将),(+∞-∞上绝对可积函数形成的集合记为),(1 +∞-∞L 或),(+∞-∞L , 即{ } ∞<=+∞-∞=+∞-∞? +∞ ∞ -dx x f f L L )(| ),(),(1 ,称为可积函数空间. 连续函数空间: ),(+∞-∞上全体连续函数构成的集合,记为),(+∞-∞C , {}上连续在),(|),(+∞-∞=+∞-∞f f C , {}上连续在),(,|),(1+∞-∞'=+∞-∞f f f C 。 定义 若),(+∞-∞∈L f ,那么积分 ),(?)(21 λπ λf dx e x f x i =? +∞ ∞ -- 有意义,称为Fourier 变换, )(? λf 称为)(x f 的Fourier 变式(或Fourier 变换的象). ? +∞ ∞ --= =dx e x f f Ff x i λπ λλ)(21)(?)( 定理 (Fourier 积分定理)若),(),(1 +∞-∞?+∞-∞∈C L f ,那么我们有

递归方程求解方法综述

递归方程求解方法综述 摘要:随着计算机科学的逐步发展,各种各样的算法相继出现,我们需要对算法进行分析,以选择性能更好的解决方案。算法分析中计算复杂度常用递归方程来表达,因此递归方程的求解有助于分析算法设计的好坏。阐述了常用的3种求解递归方程的方法:递推法、特征方程法和生成函数法。这3种方法基本上可以解决一般规模递归方程的求解问题。 关键词:递归;递推法;特征方程;生成函数 0引言 寻求好的解决方案是算法分析的主要目的,问题的解决方案可能不只一个,好的方案应该执行时间最短,同时占有存储空间最小,故算法分析一般考虑时间复杂性、空间复杂性两方面的参数。在算法分析时我们采用时间耗费函数来表示时间参数,用当问题规模充分大时的时间耗费函数的极限表示时间复杂度。 一般算法对应的时间耗费函数常用递归方程表示,找出递归方程的解,就可以表示其对应算法复杂度的渐进阶,从而比较算法的优劣。因此研究递归方程的解法意义重大。下文将分析并给出常用递归方程的3种解法。 1递归方程的解法 递归方程是对实际问题求解的一种数学抽象,递归的本质在于将原始问题逐步划分成具有相同解题规律的子问题来解决,原始问题与子问题仅在规模上有大小区别,并且子问题的规模比原始问题的

规模要小。对于规模为n的原始问题,我们通常会寻找规模n的问题与规模n-1或者规模n/2的问题之间存在的联系,从而进一步推导出具有递归特性的运算模型。 根据递归方程的一般形式,常用的解法有三种,分别是递推法、公式法及生成函数法。下面就分别来分析其求解过程。 1.1递推法 当递归方程形式简单且阶数较低时,一般可以采用递推法求解,根据一步一步递推找到方程的递推规律,得到方程的解。下面举例说明: t(1)=0 t(n)=2t(n/2)+n2(n≥2) t(n)=2t(n/2)+n2=2(2t(n/22)+(n/2)2)+n2 =22t(n/2)2+2n2/22+n2 =22(2t(n/23)+(n/22)2)+2n2/22+n2 =23(2t(n/23)+22n2/(22)2)+2n2/(22)1+n2… =2kt(n/2k)+∑k-1i=02in2(22)i递推到这里我们就可以发现递 归规律,找到递归出口, t(1)=0,令n=2k 则可以得到如下结果:t(n) =2kt(1) +∑k-1i=0n2(1/2)i)= n2(1-(1/2)k1-1/2)=2n2-2n 上面得到方程的解,我们来分析其对应算法复杂性的渐进阶,根据渐进阶定理有:设有函数f(n),g(n)均是规模n的函数,则o(f(n))+o(g(n))=o(max(f(n), g(n)))。故有t(n)=o(n2)。 1.2公式法

不动点(特征方程)法求数列通项

特征方程法求解递推关系中的数列通项 考虑一个简单的线性递推问题. 设已知数列}{n a 的项满足 其中,1,0≠≠c c 求这个数列的通项公式. 采用数学归纳法可以求解这一问题,然而这样做太过繁琐,而且在猜想通项公式中容易出错,本文提出一种易于被学生掌握的解法——特征方程法:针对问题中的递推关系式作出一个方程,d cx x +=称之为特征方程;借助这个特征方程的根快速求解通项公式.下面以定理形式进行阐述. 定理1.设上述递推关系式的特征方程的根为0x ,则当10a x =时,n a 为常数列,即0101,;x b a a x a a n n n +===时当, 其中}{n b 是以c 为公比的等比数列,即01111,x a b c b b n n -==-. 证明:因为,1,0≠c 由特征方程得.10c d x -=作换元,0x a b n n -= 则.)(110011 n n n n n n cb x a c c cd ca c d d ca x a b =-=--=--+=-=-- 当10a x ≠时,01≠b ,数列}{n b 是以c 为公比的等比数列,故;11-=n n c b b 当10a x =时,01=b ,}{n b 为0数列,故.N ,1∈=n a a n (证毕) 下面列举两例,说明定理1的应用. 例1.已知数列}{n a 满足:,4,N ,23 111=∈--=+a n a a n n 求.n a 解:作方程.2 3,23 10-=--=x x x 则 当41=a 时,.2112 3 ,1101= +=≠a b x a 数列}{n b 是以3 1 -为公比的等比数列.于是.N ,)3 1 (2112323,)31(211)3 1 (111 1∈-+-=+-=-=-=---n b a b b n n n n n n 例2.已知数列}{n a 满足递推关系:,N ,)32(1∈+=+n i a a n n 其中i 为虚数单位. 当1a 取何值时,数列}{n a 是常数数列? 解:作方程,)32(i x x +=则.5 360i x +-= a 1= b a n+1=ca n +d

导热方程求解matlab

使用差分方法求解下面的热传导方程 2 (,)4(,) 0100.2t xx T x t T x t x t =<<<< 初值条件:2(,0)44T x x x =- 边值条件:(0,)0(1,)0 T t T t == 使用差分公式 1,,1,2 2 2 (,)2(,)(,) 2(,)()i j i j i j i j i j i j xx i j T x h t T x t T x h t T T T T x t O h h h -+--++-+= +≈ ,1,(,)(,) (,)()i j i j i j i j t i j T x t k T x t T T T x t O k k k ++--= +≈ 上面两式带入原热传导方程 ,1,1,,1,2 2i j i j i j i j i j T T T T T k h +-+--+= 令2 24k r h =,化简上式的 ,1,1,1,(12)()i j i j i j i j T r T r T T +-+=-++ i x j t j

编程MA TLAB 程序,运行结果如下 1 x t T function mypdesolution c=1; xspan=[0 1]; tspan=[0 0.2]; ngrid=[100 10]; f=@(x)4*x-4*x.^2; g1=@(t)0; g2=@(t)0; [T,x,t]=rechuandao(c,f,g1,g2,xspan,tspan,ngrid); [x,t]=meshgrid(x,t); mesh(x,t,T); xlabel('x') ylabel('t') zlabel('T') function [U,x,t]=rechuandao(c,f,g1,g2,xspan,tspan,ngrid) % 热传导方程:

第4章-方程求解(Maple 中文教程)

第四章 方程求解 1 代数方程(组)求解 1.1 常用求解工具—solve 求解代数方程或代数方程组, 使用Maple 中的solve 函数. 求解关于x 的方程eqn=0的命令格式为: solve(eqn, x); 求解关于变量组vars 的方程组eqns 的命令为: solve(eqns, vars); > eqn:=(x^2+x+2)*(x-1); := eqn () + + x 2x 2() ? x 1 > solve(eqn,x); ,,1? + 1212I 7? ? 1212 I 7 当然, solve 也可以求解含有未知参数的方程: > eqn:=2*x^2-5*a*x=1; := eqn = ? 2x 25a x 1 > solve(eqn,x); , + 54a 14 + 25a 28 ? 54a 14 + 25a 28 solve 函数的第一个参数是有待求解的方程或方程的集合, 当然也可以是单个表达式或者表达式的集合, 如下例: > solve(a+ln(x-3)-ln(x),x); 3e a ? + 1e a 对于第二个参数, Maple 的标准形式是未知变量或者变量集合, 当其被省略时, 函数indets 自动获取未知变量. 但当方程中含有参数时, 则会出现一些意想不到的情况: > solve(a+ln(x-3)-ln(x));

{}, = x x = a ? + ()ln ? x 3()ln x 很多情况下, 我们知道一类方程或方程组有解, 但却没有解决这类方程的一般解法, 或者说没有解析解. 比如, 一般的五次或五次以上的多项式, 其解不能写成解析表达式. Maple 具备用所有一般算法尝试所遇到的问题, 在找不到解的时候, Maple 会用RootOf 给出形式解. > x^7-2*x^6-4*x^5-x^3+x^2+6*x+4; ? ? ? + + + x 72x 64x 5x 3x 26x 4 > solve(%); + 15 ? 15()RootOf , ? ? _Z 5_Z 1 = index 1()RootOf , ? ? _Z 5_Z 1 = index 2(RootOf ,) ? ? _Z 5_Z 1 = index 3,,,,()RootOf , ? ? _Z 5_Z 1 = index 4()RootOf , ? ? _Z 5_Z 1 = index 5,, > solve(cos(x)=x,x); ()RootOf ? _Z ()cos _Z 对于方程组解的个数可用nops 命令获得, 如: > eqns:={seq(x[i]^2=x[i],i=1..7)}; := eqns {,,,,,, = x 12x 1 = x 22x 2 = x 32x 3 = x 42x 4 = x 52x 5 = x 62x 6 = x 72 x 7} > nops({solve(eqns)});128 但是, 有时候, Maple 甚至对一些“显而易见”的结果置之不理, 如: > solve(sin(x)=3*x/Pi,x); ()RootOf ? 3_Z ()sin _Z π 此方程的解为0 ,6π ±, 但Maple 却对这个超越方程无能为力, 即便使用allvalues 求解也只有下述结果: > allvalues(%); ()RootOf , ? 3_Z ()sin _Z π0. 另外一个问题是, Maple 在求解方程之前,会对所有的方程或表达式进行化简, 而不管表达式的类型, 由此而产生一些低级的错误: > (x-1)^2/(x^2-1); () ? x 12 ? x 21 > solve(%); 1

(第45讲)特征方程法求递推数列的通项公式

特征方程法求解递推关系中的数列通项 一、(一阶线性递推式)设已知数列}{n a 的项满足d ca a b a n n +==+11,,其中,1,0≠≠c c 求这个数列的通项公式。 采用数学归纳法可以求解这一问题,然而这样做太过繁琐,而且在猜想通项公式中容易出错,本文提出一种易于被学生掌握的解法——特征方程法:针对问题中的递推关系式作出一个方程,d cx x +=称之为特征方程;借助这个特征方程的根快速求解通项公式.下面以定理形式进行阐述. 定理1:设上述递推关系式的特征方程的根为0x ,则当10a x =时,n a 为常数列,即0101,;x b a a x a a n n n +===时当,其中}{n b 是以c 为公比的等比数列,即01111,x a b c b b n n -==-. 证明:因为,1,0≠c 由特征方程得.10c d x -= 作换元,0x a b n n -=则.)(110011 n n n n n n cb x a c c cd ca c d d ca x a b =-=--=--+=-=-- 当10a x ≠时,01≠b ,数列}{n b 是以c 为公比的等比数列,故;11-=n n c b b 当10a x =时,01=b ,}{n b 为0数列,故.N ,1∈=n a a n (证毕) 下面列举两例,说明定理1的应用. 例1.已知数列}{n a 满足:,4,N ,23 1 11=∈--=+a n a a n n 求.n a 解:作方程.2 3 ,2310-=--=x x x 则 当41=a 时,.211 23,1101=+=≠a b x a 数列}{n b 是以3 1 -为公比的等比数列.于是 .N ,)3 1 (2112323,)31(211)31(1111∈-+-=+-=-=-=---n b a b b n n n n n n 例2.已知数列}{n a 满足递推关系:,N ,)32(1∈+=+n i a a n n 其中i 为虚数

热传导方程

前言 本文只是针对小白而写,可以使新手对热传导理论由很浅到不浅的认识,如想更深学习热传导知识,请转其它文档。 一、概念与常量 1、温度场: 指某一时刻下,物体内各点的温度分布状态。 在直角坐标系中:; 在柱坐标系中:; 在球坐标系中:。 补充:根据温度场表达式,可分析出导热过程是几维、稳态或非稳态的现象,温度场是几维的、稳态的或非稳态的。 2、等温面与等温线: 三维物体内同一时刻所有温度相同的点的集合称为等温面; 一个平面与三维物体等温面相交所得的的曲线线条即为平面温度场中的等温线。 3、温度梯度: 在具有连续温度场的物体内,过任意一点P温度变化率最大的方向位于等温线的法线方向上。称过点P的最大温度变化率为温度梯度(temperature gradient)。用grad t表示。 定义为: 补充:温度梯度表明了温度在空间上的最大变化率及其方向,是向量,其正向与热流方向恰好相反。对于连续可导的温度场同样存在连续的温度梯度场。

在直角坐标系中: 3、导热系数 定义式:单位 导热系数在数值上等于单位温度降度(即1)下,在垂直于热流密度的单位面积上所传导的热流量。导热系数是表征物质导热能力强弱的一个物性参数。 补充:由物质的种类、性质、温度、压力、密度以及湿度影响。 二、热量传递的三种基本方式 热量传递共有三种基本方式:热传导;热对流;热辐射 三、导热微分方程式(统一形式:) 直角坐标系: 圆柱坐标系: 球坐标系: 其中,称为热扩散系数,单位,为物质密度,为物体比热容,为物体导热系数,为热源的发热率密度,为物体与外界的对流交换系数。 补充: 1处研究的对象为各向同性的、连续的、有内热源、物性参数已知的导热物体。 2稳态温度场,即则有:,此式称为泊松方程。 3无内热源的稳态温度场,则有:,此式称为拉普拉斯方程。 四、单值条件 导热问题的单值条件通常包括以下四项: 1几何条件:表示导热物体的几何形状与大小(一维、二维或三维)

热传导方程及其定解问题的导出

第一章 热传导方程 本章介绍最典型的抛物型方程—热传导方程,在研究热传导,扩散等物理现象时都会遇 到这类方程. §1 热传导方程及其定解问题的导出 1.1热传导方程的导出 物理模型 在三维空间中,考虑一均匀,各向同性的物体Ω,假定它内部有热源,并且与周围介质有热交换,需要来研究物体内部温度的分布和变化. 以函数),,,(t z y x u 表示物体Ω在位置),,(z y x 及时刻t 的温度.物体内部由于各部分温度不同,产生热量的传递,它们遵循能量守恒定律. 能量守恒定律 物体内部的热量的增加等于通过物体的边界流入的热量与由物体内部的热源所生成的热量的总和 . 在物体Ω内任意截取一块D .现在时段],[21t t 上对D 使用能量守恒定律. 设),,,(t z y x u u =是温度(度),c 是比热(焦耳∕度·千克),ρ是密度(千克/米3), q 是热流密度(焦耳/秒·米2),0f 是热源强度(焦耳/千克·秒). 注意到在dt 时段内通过D 的边界D ?上小块dS 进入区域D 的热量为dSdt n q ?-(n 是 D ?的外法向),从而由能量守恒律,我们有 ,)||(21 21 120??????????+?-=-?==t t D t t D D t t t t dxdydz f dt ds n q dt dxdydz u u c ρρ (1.1) 大家知道,热量流动的原因是因为在物体内部存在温差.依据传热学中的傅立叶实验定律,在一定条件下,热流向量与温度梯度成正比 ,u k q ?-= (梯度? ?? ? ????????==?z u y u x u gradu u ,,) (1.2) 这里负号表明热量是由高温向低温流动,k 是物体的导热系数.

特征根法求解二次微分方程

特征根法求解二阶常系数线性微分方程 关于二阶常系数线性微分方程的解法: 1.线性齐次方程0=+'+''cy y b y a 的通解 解法 先解特征方程02=++c br ar 的根.设特征根为a ac b b r 2422 ,1-±-=,分以下三种情况: (1) 当042>-ac b 时,特征方程有两个相异的实根() ac b b a r 42122,1-±-=,则方程的通解为 x r x r C C y 21e e 21+=. (2)当042=-ac b 时,特征方程有重根a b r 2-=,则方程的通解为 ()x r x C C y e 21+=. (3)当042 <-ac b 时,特征方程有一对共轭的复根 a b ac a b r 2i 42i 22,1?-±- =±=βα, 则方程的通解为 ()x C x C y x ββαsin cos e 21+=. 定理 若21,y y 为齐次方程0=+'+''cy y b y a 的两个解,则 2211y C y C y += 亦是齐次方程的解,其中21,C C 是任意常数.又若21,y y 为线性无关时,则2211y C y C y +=是齐次方程的通解. 2.线性非齐次方程)(x f cy y b y a =+'+''的通解 定理 设* y 是非齐次线性方程的一个特解,而y 是相应的线性齐次方程的通解,则其和 *y y y += 为线性非齐次方程的通解. 具体解法: (1)先求)(x f cy y b y a =+'+''的特解*y (2)再求对应线性齐次方程的通解y ,根据定理相加即可* y y y +=

例题1用特征根法求微分方程044=+'+''y y y 的通解 解:特征方程为r 2+4r+4=0 所以,(r+2)2=0 得重根r 1=r 2=-2,所以,方程的一般解为y=(c 1+c 2x)e -2x 例题2用特征根法求微分方程y``+3y`+2y=0的一般解 解:特征方程的解r 1=-1,r 2=-2一般解 x x e C e C y --+=221 例题3 用特征根法求微分方程02520422=+-x dt dx dt x d ;的一般解 解 微分方程的特征方程为 4r 2-20r +25=0, 即(2x -5)2=0, 其根为2 521==r r , 故微分方程的通解为 t t xe C e C x 252251+=, 即t e t C C x 2521)(+= 例题4求下列微分方程满足所给初始条件的特解y ''-3y '-4y =0, y |x =0=0, y '|x =0=-5; 解:微分方程的特征方程为 r 2 -3r -4=0, 即(r -4)(r +1)=0, 其根为r 1=-1, r 2=4, 故微分方程的通解为 y =C 1e -x +C 2e 4x . 由y |x =0=0, y '|x =0=-5, 得 ???-=+-=+54021 21C C C C , 解之得C 1=1, C 2=-1. 因此所求特解为 y =e -x -e 4x . 例题5求微分方程的通解2y ''+y '-y =2e x 解 微分方程的特征方程为 2r 2+r -1=0, 其根为211= r , r 2=-1, 故对应的齐次方程的通解为 x x e C e C Y -+=2211. 因为f (x )=2e x , λ=1不是特征方程的根, 故原方程的特解设为 y *=Ae x , 代入原方程得

热传导方程的求解

应用物理软件训练 前言 MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple 并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其

他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。本部分主要介绍如何根据所学热传导方程的理论知识进行MATLAB数值实现可视化。本部分主要介绍如何根据所学热传导方程的理论知识进行MATLAB数值实现可视化。本部分主要介绍如何根据所学热传导方程的理论知识进行MATLAB数值实现可视化。 本部分主要介绍如何根据所学热传导方程的理论知识进行MATLAB数值实现可视化。

题目:热传导方程的求解 目录 一、参数说明 (1) 二、基本原理 (1) 三、MATLAB程序流程图 (3) 四、源程序 (3) 五、程序调试情况 (6) 六、仿真中遇到的问题 (9) 七、结束语 (9) 八、参考文献 (10)

一、参数说明 U=zeros(21,101) 返回一个21*101的零矩阵 x=linspace(0,1,100);将变量设成列向量 meshz(u)绘制矩阵打的三维图 axis([0 21 0 1]);横坐标从0到21,纵坐标从0到1 eps是MATLAB默认的最小浮点数精度 [X,Y]=pol2cart(R,TH);效果和上一句相同 waterfall(RR,TT,wn)瀑布图 二、基本原理 1、一维热传导问题 (1)无限长细杆的热传导定解问题 利用傅里叶变换求得问题的解是: 取得初始温度分布如下 这是在区间0到1之间的高度为1的一个矩形脉冲,于是得 (2)有限长细杆的热传导定解问题

递归分析方法

当一个算法(如二分查找)中包含对自己的递归调用时,关于这个算法时间复杂性的分析最终都转化为一个递归方程的求解问题,而这样的算法不在少数。实际上这是数学领域的问题,但是计算机科学又怎么能脱离数学而存在呢?^_^ 数学是好东西呀,可惜自己在这方面造诣颇浅,今生之遗憾亚。^_^ 还好,解决递归方程涉及的数学知识我还是能应付的了的^_^。在MIT算法导论中介绍了3种方法,我们这里就说说这三种方法!这些是基础,如果以后要深入研究算法的话,这些知识是必须要精通的;如果并不想在算法方面有所深入的话,多学些知识也没错。我本身也是在学习,像这类的知识一般都比较死性,有些记住了,就可以掌握了。 1、Substitution Method 这是一种使用数学归纳法推导证明的方法,其步骤为先假设一个解,然后带入到递归方程中,利用数学归纳法推导,以验证假设的解是否合理。我们拿ITA(Introduction to Algorithm)中的例子说明吧,比较保险^_^。 [Ex1.] T(n) = 4T(n/2) + n,解这个递归等式,分析T(n)的渐近性。 解:(这里我们只来找上界) 我们假设T(1) = θ(1),猜测一个解T(n) = O(n^3),根据O符号的定义,我们得到对k < n, 有T(k) <= ck^3,把这个解代入到T(n) = 4T(n/2) + n,并进行推导得出: T(n) = 4T(n/2) + n <= 4c((n/2)^3) + n = (c/2)n^3 + n = cn^3 - ((c/2)n^3 - n) 当c >= 2, n >= 1时,((c/2)n^3 - n) >= 0,这时T(n) <= cn^3,即T(n) = O(n^3); 我们再回过头来看看当n = 1时这个解是否成立,即证明一下T(1) = θ(1)。对于1 <= n < n0, θ(1) <= cn^3 (c足够大),即该推导出的解也满足初始条件,所以O(n^3)是T(n)的一个上界。但是O(n^3)是否是严紧的上界呢,我们不妨缩小上界范围再推导一次,这次我们猜测解为T(n) = O(n^2),根据O符号的定义,我们得到对k < n, 有T(k) <= ck^2,把这个解代入到T(n) = 4T(n/2) + n,并进行推导得出: T(n) = 4T(n/2) + n <= 4c((n/2)^2) + n = cn^2 + n = cn^2 - (-n) 不能严格符合T(n) <= cn^2的定义,所以推导失败。但是失败是不是说明,T(n) = O(n^2)一定不成立呢?我们再做一次最后的努力,当出现上面的这种情况时,我们假设解仍为:T(n) = O(n^2),只是我们选择对k < n, 有T(k) <= ak^2 - bk,我们选择减去一个低阶的项,这不会影响到n足够大时的渐进性的,这里是一个常用的技巧。 T(n) = 4T(n/2) + n <= 4(a(n/2)^2 - b(n/2)) + n = an^2 - bn - (bn - n) <= an^2 - bn (当b >= 1时) 这样我们找到了严紧解T(n) = O(n^2)。

附:递归关系式求解

附:递归关系求解 江超群 2016.10 代入法 例:求解递归关系 a n =a n?1+n ?1,a 1=0 应用:求一个递归关系为T (n )=T (n ?1)+简单表达式 类问题的时间复杂度 特征方程法 齐次递推关系方程求解 递归方程T (n )=r 1T (n ?1)+r 2T (n ?2)+?+r k T (n ?k ) 它对应的齐次关系的特征方程:x k =r 1x k?1+r 2x k?2+?+r k 特别的:二阶齐次方程求解 递归方程为:T (n )=r 1T (n ?1)+r 2T (n ?2) 它的递归方程为x 2?r 1x ?r 2=0 求解: 如果特征方程有两个不同实根x 1,x 2 ,则T (n )的通解是T (n )=u 1x 1n +u 2x 2n ,根据初值条件确定u 1,u 2后,得到方程的特解。 如果特征方程有一个根x 0,则T (n )的通解是T (n )=u 1x 0n +nu 2x 0n ,根据初值条件确定u 1,u 2得到方程的特解。 非齐次递推关系方程求解 非齐次特征方程解的形式为T (n )=r 1T (n ?1)+r 2T (n ?2)+?+r k T (n ?k )+f (n ) ()()()()()()123111 (2)1 ((3)2)2 ((...()...3)2)1.(1...321) 1,1211,0212n n n n n k n k n k a a n a n n a n n n a n k n n n a k n k k k k a kn k n n n a n n a n n ------=+-=+-+-=+-+-+-=+-++-+-+-=+-+-+++++=+-=--=+--=- =令,

第1章递归方程解的渐近阶的求法

目录 递归方程组解的渐进阶的求法——代入法 (11) 递归方程组解的渐进阶的求法——迭代法 (14) 递归方程组解的渐进阶的求法——套用公式法 (17) 递归方程组解的渐进阶的求法——差分方程法 (3) 递归方程组解的渐进阶的求法——母函数法 (7) 递归方程解的渐近阶的求法 递归方程组解的渐进阶的求法——套用公式法 这个方法为估计形如: T(n)=aT(n/b)+f(n) (6.17) 的递归方程解的渐近阶提供三个可套用的公式。(6.17)中的a≥1和b≥1是常数,f (n)是一个确定的正函数。 (6.17)是一类分治法的时间复杂性所满足的递归关系,即一个规模为n的问题被分成规模均为n/b的a个子间题,递归地求解这a个子问题,然后通过对这a个子间题的解的综合,得到原问题的解。如果用T(n)表示规模为n的原问题的复杂性,用f(n)表示把原问题分成a个子问题和将a个子问题的解综合为原问题的解所需要的时间,我们便有方程(6.17)。 这个方法依据的是如下的定理:设a≥1和b≥1是常数f (n)是定义在非负整数上的一个确定的非负函数。又设T(n)也是定义在非负整数上的一个非负函数,且满足递归方程(6.17)。方程(6.17)中的n/b可以是[n/b],也可以是n/b。那么,在f(n)的三类情况下,我们有T(n)的渐近估计式: 1. 若对于某常数ε>0,有 , 则 ; 2. 若 , 则 ;

3. 若对其常数ε>0,有 且对于某常数c>1和所有充分大的正整数n有af(n/b)≤cf(n),则T(n)=θ(f(n))。 这里省略定理的证明。 在应用这个定理到一些实例之前,让我们先指出定理的直观含义,以帮助读者理解这个定理。读者可能已经注意到,这里涉及的三类情况,都是拿f(n)与作比较。定理直观地告诉我们,递归方程解的渐近阶由这两个函数中的较大者决定。在第一类情况下,函数较大,则T(n)=θ();在第三类情况下,函数f(n)较大,则T(n)=θ(f (n));在第二类情况下,两个函数一样大,则T(n)=θ(),即以n的对数作为因子乘上f(n)与T(n)的同阶。 此外,定理中的一些细节不能忽视。在第一类情况下f(n)不仅必须比小,而且必须是多项式地比小,即f(n)必须渐近地小于与的积,ε是一个正的常 数;在第三类情况下f(n)不仅必须比大,而且必须是多项式地比大,还要满足附加的“正规性”条件:af(n/b)≤cf(n)。这个附加的“正规性”条件的直观含义是a个子间题的再分解和再综合所需要的时间最多与原问题的分解和综合所需要的时间同阶。我们在一般情况下将碰到的以多项式为界的函数基本上都满足这个正规性条件。 还有一点很重要,即要认识到上述三类情况并没有覆盖所有可能的f(n)。在第一类情况和第二类情况之间有一个间隙:f(n)小于但不是多项式地小于;类似地,在第二类情况和第三类情况之间也有一个间隙:f(n)大于但不是多项式地大于。如果函数f(n)落 在这两个间隙之一中,或者虽有,但正规性条件不满足,那么,本定理无能为力。 下面是几个应用例子。 例1考虑 T(n)=9T(n/3)+n0

特征方程法求解数列通项的依据

特征方程法求解递推关系中的数列通项 湖北省竹溪县第一高级中学徐鸿 考虑一个简单的线性递推问题. 设已知数列的项满足 其中求这个数列的通项公式. 采用数学归纳法可以求解这一问题,然而这样做太过繁琐,而且在猜想通项公式中容易出错,本文提出一种易于被学生掌握的解法——特征方程法:针对问题中的递推关系式作出一个方程称之为特征方程;借助这个特征方程的根快速求解通项公式.下面以定理形式进行阐述. 定理1设上述递推关系式的特征方程的根为,则当时,为常数列,即 ,其中是以为公比的等比数列,即. 证明:因为由特征方程得作换元 则 当时,,数列是以为公比的等比数列,故 当时,,为0数列,故(证毕) 下面列举两例,说明定理1的应用. 例1已知数列满足:求 解:作方程 当时,数列是以为公比的等比数列.于是 例2已知数列满足递推关系:其中为虚数单位. 当取何值时,数列是常数数列?

解:作方程则 要使为常数,即则必须 现在考虑一个分式递推问题(*). 例3已知数列满足性质:对于且求的通项公式. 将这问题一般化,应用特征方程法求解,有下述结果. 定理2如果数列满足下列条件:已知的值且对于,都有(其中p、q、r、h均为常数,且),那么,可作特征方程. (1)当特征方程有两个相同的根(称作特征根)时, 若则 若,则其中特别地,当存在使 时,无穷数列不存在. (2)当特征方程有两个相异的根、(称作特征根)时,则,其中 证明:先证明定理的第(1)部分. 作交换 则 ① ∵是特征方程的根,∴

将该式代入①式得② 将代入特征方程可整理得这与已知条件矛盾.故特征方程的根于是 ③ 当,即=时,由②式得故 当即时,由②、③两式可得此时可对②式作如下变化: ④ 由是方程的两个相同的根可以求得 ∴ 将此式代入④式得 令则故数列是以为公差的等差数列. ∴ 其中 当时, 当存在使时,无意义.故此时,无穷数列是不存在的. 再证明定理的第(2)部分如下: ∵特征方程有两个相异的根、,∴其中必有一个特征根不等于,不妨令于是可作变换 故,将代入再整理得

热传导方程傅里解

热传导方程傅里解

————————————————————————————————作者:————————————————————————————————日期:

热传导在三维的等方向均匀介质里的传播可用以下方程表达: 其中: ?u =u(t, x, y, z) 表温度,它是时间变量t 与空间变量(x,y,z) 的函数。 ?/是空间中一点的温度对时间的变化率。 ?, 与温度对三个空间座标轴的二次导数。 ?k决定于材料的热传导率、密度与热容。 热方程是傅里叶冷却律的一个推论(详见条目热传导)。 如果考虑的介质不是整个空间,则为了得到方程的唯一解,必须指定u 的边界条件。如果介质是整个空间,为了得到唯一性,必须假定解的增长速度有个指数型的上界,此假定吻合实验结果。 热方程的解具有将初始温度平滑化的特质,这代表热从高温处向低温处传播。一般而言,许多不同的初始状态会趋向同一个稳态(热平衡)。因此我们很难从现存的热分布反解初始状态,即使对极短的时间间隔也一样。 热方程也是抛物线偏微分方程最简单的例子。 利用拉普拉斯算子,热方程可推广为下述形式

其中的是对空间变量的拉普拉斯算子。 热方程支配热传导及其它扩散过程,诸如粒子扩散或神经细胞的动作电位。热方程也可以作为某些金融现象的模型,诸如布莱克-斯科尔斯模型与 Ornstein-Uhlenbeck 过程。热方程及其非线性的推广型式也被应用于影像分析。量子力学中的薛定谔方程虽然有类似热方程的数学式(但时间参数为纯虚数),本质却不是扩散问题,解的定性行为也完全不同。 就技术上来说,热方程违背狭义相对论,因为它的解表达了一个扰动可以在瞬间传播至空间各处。扰动在前方光锥外的影响通常可忽略不计,但是若要为热传导推出一个合理的速度,则须转而考虑一个双曲线型偏微分方程。 以傅里叶级数解热方程[编辑] 以下解法首先由约瑟夫·傅里叶在他于1822年出版的著作Théorie analytique de la chaleur(中译:解析热学)给出。先考虑只有一个空间变量的热方程,这可以当作棍子的热传导之模型。方程如下: 其中u = u(t, x) 是t和x的双变量函数。 ?x是空间变量,所以x∈[0,L],其中L表示棍子长度。

相关文档
最新文档