化工应用数学-常微分方程数值解-打靶法
08常微分方程数值解法(工程数学)
k2为 x i + ph 点处的切线斜率值,对照改进的欧拉 法,将
x i + p 视为 x i +1,即可得 k 2 = f ( x i + ph, y i + phk1 )
21
对常微分方程初值问题的解 y=y(x),根据微分中值定 理,存在点 ξ ∈ ( x i , x i + 1 ) ,使得
0.96 0.8523 0.7003 0.5325 0.3750
0.9616 0.8549 0.7025 0.5327 0.3725
0.9615 0.8549 0.7022 0.5327 0.3730
0.9608 0.8521 0.6977 0.5273 0.3679
3.1、龙格-库塔法
考虑用函数f(x,y)在若干点上的函数值的线性组合 来构造近似公式,构造时要求近似公式在(xi,yi)处的 Taylor展开式与解y(x)在xi处的Taylor展开式的前面几项 重合,从而使近似公式达到所需要的阶数。既避免求偏 导,又提高了计算方法精度的阶数。或者说,在[xi,xi+1]这 一步内多预报几个点的斜率值,然后将其加权平均作为 平均斜率,则可构造出更高精度的计算格式,这就是龙 格—库塔(Runge-Kutta)法的基本思想。
20
1 二阶龙格—库塔法 在 [x , x ] 上取两点xi和 xi+ p = xi + ph,以该两点处
i i +1
的斜率值k1和k2的加权平均(或称为线性组合)来求取 平均斜率k*的近似值K,即
K = λ 1k 1 + λ 2k 2
式中:k1为xi点处的切线斜率值,k = f ( x , y ) = y ′ ( x )
常微分方程的数值解法
常微分方程的数值解法1. 引言常微分方程是自变量只有一个的微分方程,广泛应用于自然科学、工程技术和社会科学等领域。
由于常微分方程的解析解不易得到或难以求得,数值解法成为解决常微分方程问题的重要手段之一。
本文将介绍几种常用的常微分方程的数值解法。
2. 欧拉方法欧拉方法是最简单的一种数值解法,其具体步骤如下:- 将自变量的区间等分为n个子区间;- 在每个子区间上假设解函数为线性函数,即通过给定的初始条件在每个子区间上构造切线;- 使用切线的斜率(即导数)逼近每个子区间上的解函数,并将其作为下一个子区间的初始条件;- 重复上述过程直至达到所需的精度。
3. 改进的欧拉方法改进的欧拉方法是对欧拉方法的一种改进,主要思想是利用两个切线的斜率的平均值来逼近每个子区间上的解函数。
具体步骤如下: - 将自变量的区间等分为n个子区间;- 在每个子区间上构造两个切线,分别通过给定的初始条件和通过欧拉方法得到的下一个初始条件;- 取两个切线的斜率的平均值,将其作为该子区间上解函数的斜率,并计算下一个子区间的初始条件;- 重复上述过程直至达到所需的精度。
4. 二阶龙格-库塔方法二阶龙格-库塔方法是一种更为精确的数值解法,其基本思想是通过近似计算解函数在每个子区间上的平均斜率。
具体步骤如下: - 将自变量的区间等分为n个子区间;- 在每个子区间上计算解函数的斜率,并以该斜率的平均值近似表示该子区间上解函数的斜率;- 利用该斜率近似值计算下一个子区间的初始条件,并进一步逼近解函数;- 重复上述过程直至达到所需的精度。
5. 龙格-库塔法(四阶)龙格-库塔法是目前常用的数值解法之一,其精度较高。
四阶龙格-库塔法是其中较为常用的一种,其具体步骤如下:- 将自变量的区间等分为n个子区间;- 在每个子区间上进行多次迭代计算,得到该子区间上解函数的近似值;- 利用近似值计算每个子区间上的斜率,并以其加权平均值逼近解函数的斜率;- 计算下一个子区间的初始条件,并进一步逼近解函数;- 重复上述过程直至达到所需的精度。
数学实验“微分方程组边值问题数值算法(打靶法,有限差分法)”实验报告(内含matlab程序)
西京学数学软件实验任务书课程名称数学软件实验班级数0901学号0912020107姓名李亚强微分方程组边值问题数值算法(打靶法,有限差分法)实验课题熟悉微分方程组边值问题数值算法(打靶法,有限差实验目的分法)运用Matlab/C/C++/Java/Maple/Mathematica等其中实验要求一种语言完成微分方程组边值问题数值算法(打靶法,有限差分法)实验内容成绩教师实验二十七实验报告1、实验名称:微分方程组边值问题数值算法(打靶法,有限差分法)。
2、实验目的:进一步熟悉微分方程组边值问题数值算法(打靶法,有限差分法)。
3、实验要求:运用Matlab/C/C++/Java/Maple/Mathematica 等其中一种语言完成程序设计。
4、实验原理:1.打靶法:对于线性边值问题(1)⎩⎨⎧==∈=+'+''βα)(,)(],[)()()(b y a y b a x x f y x q y x p y 假设是一个微分算子使:L ()()Ly y p x y q x y '''=++则可得到两个微分方程:,,)(1x f Ly =α=)(1a y 0)(1='a y ,, (2)⇔)()()(111x f y x q y x p y =+'+''α=)(1a y 0)(1='a y ,,02=Ly 0)(2=a y 1)(2='a y ,, (3)⇔0)()(222=+'+''y x q y x p y 0)(2=a y 1)(2='a y 方程(2),(3)是两个二阶初值问题.假设是问题1y(2)的解,是问题(3)的解,且,则线性边值问2y 2()0y b ≠题(1)的解为: 。
1122()()()()()y b y x y x y x y b β-=+2.有限差分法:基本思想是把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似, 积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组 , 解此方程组就可以得到原问题在离散点上的近似解。
打靶法(含Matlab程序)
西京学数学软件实验任务书动方向控制减速的推力,主要的控制量只有一个减速推力,减速还会消耗燃料让登月器的质量减小。
所以在极坐标下系统的状态就是x‘=[质量m,角度theta,高度r,角速度omega,径速度v]这五个量,输入就是减速力F。
先列微分方程,dx/dt=f(x)+B*F,其中x是5*1的列向量,质量dm/dt=-F/2940,剩下几个翻下极坐标的手册。
把这个动力学模型放到matlab里就能求解了,微分方程数值解用ode45。
第一问F=0,让你求椭圆轨道非常容易。
注意附件1里说15公里的时候速度是1.7km/s。
算完以后验证一下对不对,对的话就是他了,不对的话说明这个椭圆轨道有进动,到时再说。
(2) 算出轨道就能计算减速力了。
这时候你随便给个常数减速力到方程里飞船八成都能降落,但不是最优解。
想想整个过程,开始降落之前飞船总机械能就那么多,你需要对飞船做负功让机械能减到0。
题目里写发动机喷出翔的相对速度是一定的,直觉告诉我飞船速度快的时候多喷一些速度慢的时候少喷一些,可以提高做负功的效率。
但是多喷也不能超过上限7500N,所以这就是一个带约束优化问题,matlab里边有专用的优化函数,用fmincon就好。
找出最优解以后把过程画出来,看看F可不可以是那5个状态量的线性组合,如果是的话就非常happy,不是的话再说。
三四阶段你可以扯点图像识别,什么二维复利叶分解找平坦区域,怎么一边下降一边根据自身状态调整路径之类的。
五六阶段还真不知道说什么。
一二阶段肯定是重点啦(3) 误差分析其实还挺难的。
可能的误差来源是地球的引力,月亮绕地球向心加速度,太阳的引力(可能会很小),对自身速度、角度的测量误差(比如你测出自身当前速度100m/s但实际上是105m/s),控制的时候F大小以及角度的误差(比如你想朝正前方向喷2000N但实际上偏了2度而且F=2010N之类)。
上一问已经求出了最优控制策略和飞船路线,把这些扰动加进去以后算出新的路线减掉理想路线求偏差,然后随便用个卡尔曼滤波器把误差给校正All for Joy2014/9/13 11:14:38老师的思路,求大神解答给我一份呀实验二十七实验报告一、实验名称:微分方程组边值问题数值算法(打靶法,有限差分法)。
常微分方程的数值解法
常微分方程的数值解法常微分方程是研究变量的变化率与其当前状态之间的关系的数学分支。
它在物理、工程、经济等领域有着广泛的应用。
解常微分方程的精确解往往十分困难甚至不可得,因此数值解法在实际问题中起到了重要的作用。
本文将介绍常见的常微分方程的数值解法,并比较其优缺点。
1. 欧拉方法欧拉方法是最简单的数值解法之一。
它基于近似替代的思想,将微分方程中的导数用差商近似表示。
具体步骤如下:(1)确定初始条件,即问题的初值。
(2)选择相应的步长h。
(3)根据微分方程的定义使用近似来计算下一个点的值。
欧拉方法的计算简单,但是由于误差累积,精度较低。
2. 改进欧拉方法为了提高欧拉方法的精度,改进欧拉方法应运而生。
改进欧拉方法通过使用两个点的斜率的平均值来计算下一个点的值。
具体步骤如下:(1)确定初始条件,即问题的初值。
(2)选择相应的步长h。
(3)根据微分方程的定义使用近似来计算下一个点的值。
改进欧拉方法相较于欧拉方法而言,精度更高。
3. 龙格-库塔法龙格-库塔法(Runge-Kutta)是常微分方程数值解法中最常用的方法之一。
它通过迭代逼近精确解,并在每一步中计算出多个斜率的加权平均值。
具体步骤如下:(1)确定初始条件,即问题的初值。
(2)选择相应的步长h。
(3)计算各阶导数的导数值。
(4)根据权重系数计算下一个点的值。
与欧拉方法和改进欧拉方法相比,龙格-库塔法的精度更高,但计算量也更大。
4. 亚当斯法亚当斯法(Adams)是一种多步法,它利用之前的解来近似下一个点的值。
具体步骤如下:(1)确定初始条件,即问题的初值。
(2)选择相应的步长h。
(3)通过隐式或显式的方式计算下一个点的值。
亚当斯法可以提高精度,并且比龙格-库塔法更加高效。
5. 多步法和多级法除了亚当斯法,还有其他的多步法和多级法可以用于解常微分方程。
多步法通过利用多个点的值来逼近解,从而提高精度。
而多级法则将步长进行分割,分别计算每个子问题的解,再进行组合得到整体解。
打靶法
打靶法常微分方程边值问题数值解法- 正文用某种离散化数值步骤求出常微分方程边值问题在离散点上的近似解的方法。
各种实际问题导出不同类型的边值问题。
较简单的有二阶常微分方程两点边值问题:求函数y=y(x),x∈【α,b】,使它满足微分方程和边值条件式中ƒ、g1、g2为已知函数;α与b为两个给定的端点。
较一般地有一阶常微分方程组两点边值问题:求N个函数使其满足微分方程组和边值条件式中诸ƒn、g i是已知函数;r为给定的自然数。
有些问题因求解区间是无穷区间而被称作奇异边值问题,相应的边界条件变为对解在无穷远处渐近行为的限制,例如,要求y(x)在区间【0,)上平方可积或要求当x趋于无穷时,y(x)趋于某极限值。
还有些实际问题因要求解满足多个点上的条件而被称作多点边值问题。
近年来,对反映边界层现象的奇异摄动边值问题提出了一些新的数值解法。
此外,关于存在多个解的分歧现象数值解问题也引起人们的注意。
打靶法主要思路是:适当选择和调整初值条件,(选什么)求解一系列初值问题,使之逼近给定的边界条件。
如果将描述的曲线视作弹道,那么求解过程即不断调整试射条件使之达到预定的靶子,所以称作打靶法或试射法,此类方法的关键是设计选取初值的步骤。
对非线性边值问题可通过下列步骤求数值解:①计算初值问题的数值解y1。
若g(y1(b),y姈(b))=B,近似地满足,则y1即为所求;否则进行②。
②计算初值问题的数值解y2,若g(y2(b),y娦(b))=B近似地满足,则y2即为所求;否则令m=3进行③。
③将g(y(b),y┡(b))视为y(α)的函数,用线性逆插值法调整初值,即计算然后进行④。
④计算初值问题的数值解y m并进行判定:若b点边值条件近似地满足,则y m即为所求;否则令m+1崊m转向③继续计算直到满意为止。
特别地,若微分方程是线性的,则打靶法变成线性组合法,即根据常微分方程理论适当选取初值可得到一组线性独立解,利用它们的线性组合导出边值问题的解。
第三章 常微分方程的边值和本征值问题
因此比 较明智的做法是,在每一个试验本征值上,由 xmax
出发向后直接积分产生另一个数值解 Ѱ>。 为了判断 这个试验本征值是不是一个能量本征值,可以在一
个接合点 xm上比较 Ѱ<和 Ѱ>,其中接合点 xm要这样选择, 使得两个积分都是准确的。这里接合点 xm 的一个方便的选 择是左转折点或右转折点。
问题转化为求下面方程的根
Φk (1)= 0
3.3 一维薛定谔方程的定态解
一维位势 V(x) 中一个质量为 m 的粒子的 量子力学定态
在 x = xmin 和 x = xmax 处两点位势变为无穷大,也就是说在这 两点上有刚壁,在 这两点之间则是一个势阱。
定解问题
其中
求使这个问题有非零解的能量本征值 E 及其相应的波函数
Ѱ<和 Ѱ>的归一化总是可以这样选择,使得两个函数值在
xm 上相等。这时如果 它们的微商在 xm上也相等,那么就可 以断言这个试验本征值就是能量本征值.
数学表达式为
这里的
提供了一个方便的标尺
打靶法的基本思想是将边值问题当作一个含可调参数 δ 的
初始问们就可以通过积分这个初始问
题得到 yδ (b) .
一般来说,由于可调参数 δ 的随意选择, yδ(b) 和 yb 很难相等。
打靶法就是通过使用一个搜索算法去调整参数 δ ,使得 yδ (b) 和 yb 在误差容忍范围内相等,从而达到数值求解边 值问题的目的. 问题转化为求下面方程的根
3.2 打靶法求解本征值问题
考虑一根密度均匀的绷紧的弦的振动,分离变量后,空间
部分满足的方程和边界条件可以写成
φ 是弦的横向位移, k 是波数 解析解为
相比边值问题,本征值问题多了一个待定参数 策略:我们先猜测一个试验本征值 k,同时任取一个非零数 δ , 把微分方程变化为一个初始值问题
打靶法在常微分方程边值问题中的一些应用_安乐
0引言常微分方程边值问题是常微分方程理论的重要组成部分,在众多科学技术领域中有着非常广泛的应用,见文献[4-7]。
打靶法是解微分方程的数值方法,其基本思想是将微分方程的边值问题转化为初值问题来求解,其特点是精度高,程序简单,实用性强。
1968年P.B.Baily、L.F.Shampine、P.E.Waltman[1]结合常微分方程初值问题的基本理论和打靶法,研究了非线性二阶常微分方程两点边值问题u″=f(t,u(t),u′(t)),t∈(a,b)(1)解的存在性。
本文试图研究更广泛的非线性常微分方程两点边值问题u″=f(t,u(t),u′(t)),t∈(a,b)(2)u(a)=A,cu(b)+du′(b)=B(3)解的存在性,并讨论其唯一性,从而推广文献[1]的结果,其中c,d,A,B∈R均为常数,并且c2+d2≠0,a,b∈R为满足a<b的常数,我们将给出并证明如下结果:定理1(解的存在性)设cd>0,设f:[a,b]×R2→R 连续并且满足对第二、三变元的Lipschitz条件,如果存在常数N>0使得:│f(t,y,p)│≤N,A(t,y,p)∈[a,b]×R2(4)则对任意A,B∈R,二阶常微分方程两点边值问题(2) -(3)至少有一个解。
定理2(解的唯一性)设f:[a,b]×R2→R连续并且满足对第二、三变元的Lipschitz条件│f(t,y2,p2)-f(t,y1,p1│≤L│y2-y1│+K│P2-P1│(5)如果存在常数N>0使得:│f(t,y,p)│≤N,A(t,y,p)∈[a,b]×R2(6)则当L+K充分小时,对任意A,B∈R,二阶常微分方程两点边值问题式(2)-(3)有且仅有一个解。
特别地,当c=0时,边值问题式(2)-(3)就是著名的Robin边值问题,在力学和热学中具有重要的应用背景。
1预备结果为了证明存在性定理,我们需要如下两个预备打靶法在常微分方程边值问题中的一些应用Shooting Method in the Application of Ordinary Difference Equations Boundary Value Problem安乐An Le(天水师范学院数学与统计学院,甘肃天水741001)(College of Mathematics and Statics,Tianshui Normal University,Gansu Tianshui741001)摘要:本文运用打靶法研究非线性二阶常微分方程两点边值问题u″=f(t,u(t),u′(t)),t∈(a,b)u (a)=A,cu(b)+du′(b)=B解的存在性与唯一性,其中f:[a,b]×R2→R连续。
数学建模-- 常微分方程数值解及实验
注意:
1、在解n个未知函数的方程组时,x0和x均为n维向量, m-文件中的待解方程组应以x的分量形式写成. 2、使用Matlab软件求数值解时,高阶微分方程必须 等价地变换成一阶微分方程组.
例
d 2x dx 2 x 0 2 ( x 1) dt dt x (0 ) 2; x '(0 ) 0
实际应用时,与欧拉公式结合使用:
0 y i( 1) y i hf ( x i , y i ) h ( k 1) (k ) y i 1 y i [ f ( x i , y i ) f ( x i 1 , y i 1 )] k 0 ,1, 2 , 2
•欧拉法是一阶公式,改进的欧拉法是二阶公式。
•龙格-库塔法有二阶公式和四阶公式。 •线性多步法有四阶阿达姆斯外插公方程的数值解
[t,x]=solver(’f’,ts,x0,options)
自变 量值 函数 值
ode45 ode23 ode113 ode15s ode23s
1、建立m-文件vdp1.m如下: function dy=vdp (t,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=(1-y(1)^2)*y(2)-y(1); 2、取t0=0,tf=20,输入命令: [T,Y]=ode15s('vdp1',[0 20],[2 0]); plot(T,Y(:,1),'-')
y ( x i 1 ) y ( x i )
xi 1
f ( t , y ( t )) dt
x i 1 x i 2
xi
[ f ( x i , y ( x i )) f ( x i 1 , y ( x i 1 ))]
常微分方程数值解
y' =
v0 t − y 1− x
v0 t = (1 − x) y '+ y
(1)
又根据题意,弧 OP 的长度为 AQ 的 5 倍, 即 由(1),(2)消去 t 整理得模型:
∫
x
0
1 + y ' 2 dx = 5v0 t
(2)
(1 − x) y" =
初值条件为: y (0) = 0 解即为导弹的运行轨迹:
解法二(数值解)
令 y1=y,y2=y1’,将方程(3)化为一阶微分方程组。
⎧ y '1 = y2 1 ⎪ 2 (1 − x) y ' ' = 1+ y ⇒ ⎨ 1 1 + y12 /(1 − x) y2 ' = 5 ⎪ 5 ⎩
1)建立 m-文件 eq1.m function dy=eq1(x,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=1/5*sqrt(1+y(1)^2)/(1-x); 2)取 x0=0,xf=0.9999,建立主程序 ff6.m 如下: x0=0,xf=0.9999 [x,y]=ode15s('eq1',[x0 xf],[0 0]); plot(x,y(:,1),’b.') hold on y=0:0.01:2; plot(1,y,’b*') 结论: 导弹大致在(1,0.2)处击中乙舰 解法三(建立参数方程求数值解) 设时刻 t 乙舰的坐标为(X(t),Y(t)),导弹的坐标为(x(t),y(t)). 1)设导弹速度恒为 w ,则
1 1 + y '2 5
(3)
y ' (0) = 0
常微分方程数值解算法
常微分方程数值解算法常微分方程是在物理、经济、生物、环境科学等领域中最基本的数学工具之一。
为了解决实际问题,需要求解这些方程的解。
但是,大部分常微分方程是无法求得解析解的,因此需要通过数值方法来求解。
在数值方法中,其基本思想是将微分方程化为一个逐步求解的问题。
通过离散化得到一个差分方程,然后通过数值方法求解这个差分方程。
本文将就常微分方程的数值解算法进行介绍和探讨。
1.欧拉方法欧拉方法是最基本的一种常微分方程数值解方法。
它的基本思想是将微分方程化为差分方程。
欧拉方法是一种一阶的显式方法。
通过计算当前点处的斜率即可进行逼近。
如下所示:y(t + h) = y(t) + hf(t, y(t))其中,h是步长。
f(t, y)是微分方程右边的函数。
欧拉方法的由来是其是以欧拉为名的。
这种方法的优点是简单明了,易于理解。
但是,其与真实解的误差随着步长增大而增大,误差不精,计算速度较慢等缺点也使其并非一个完美的数值解方法。
2.改进的欧拉方法改进的欧拉方法被认为是欧拉方法的一个进化版。
它是二阶数值方法,明显优于欧拉方法。
其基本思想是通过步长的平均值h/2来进行逼近。
y(t + h) = y(t) + h[ f(t, y(t)) + f(t + h, y(t) + hf(t, y(t))/2) ]其优点是能够更准确地逼近微分方程的解,只比欧拉方法多计算一些,但是其步长的误差随着步长增大而减小,并且计算速度比欧拉方法稍快。
因此,改进的欧拉方法是比欧拉方法更好的方法,效果相对较好。
3.龙格库塔方法龙格库塔方法是一种经典的数值解方法。
对于非刚性的方程可以得到较为精确的数值解。
其算法思路是利用多阶段迭代的方式,求解一些重要的插值点,并利用插值点的结果来逼近方程的解。
其公式如下:y(t + h) = y(t) + (h/6)*(k1 + 2k2 + 2k3 + k4)其中,k1 = f(t, y(t))k2 = f(t + h/2, y(t) + h/2k1)k3 = f(t + h/2, y(t) + h/2k2)k4 = f(t + h, y(t) + hk3)其优点是更精确,计算速度更快。
微分方程数值解-打靶法求边值问题
%qj为所求区间
%cz=[y1,y2]为y1,y2的初值
%h为步长
%eg:[t,w]=T7([qj,cz,0.01);
n=round((qj(2)-qj(1))/h);
t=zeros(n,1);
w=zeros(n,length(cz));
t(1)=qj(1);
w(1,:)=cz;
fori=1:n
t(i+1)=t(i)+h;
w(i+1,:)=RungeKutta(t(i),w(i,:),h);
end
end
functiony=RungeKutta(t,w,h)
%龙格—库塔法求解微分方程
%h为步长
k1=ydot(t,w);
k2=ydot(t+h/2,w+h/2*k1);
k3=ydot(t+h/2,w+h/2*k2);
end
i=1;
k(i,1)=a;
k(i,2)=b;
whileabs(k(i,2)-k(i,1))>tol
iff((k(i,1)+k(i,2))/2)==0
break
end
iff(k(i,1))*f((k(i,1)+k(i,2))/2)<0
k(i+1,1)=k(i,1);
k(i+1,2)=(k(i,1)+k(i,2))/2;
else
k(i+1,2)=k(i,2);
k(i+1,1)=(k(i,1)+k(i,2))/2;
end
i=i+1;
end
sol=(k(i,1)+k(i,2))/2;
end
执行代码:
(1)先猜测初值a=0,b=2,tol=0.001:
常微分方程打靶法
常微分方程打靶法
常微分方程打靶法是一种解常微分方程初值问题的数值解法。
它的基本思想是通过将初值问题转化为一个对参数的非线性方程,然后使用数值迭代的方法来逼近该非线性方程的解。
具体步骤如下:
1. 将常微分方程的初值问题表示为一个一阶方程组的形式。
2. 假设参数的初值,并将问题转化为一个求解非线性方程的问题。
3. 对于每个猜测的参数值,使用常微分方程的数值解法(例如欧拉法或龙格-库塔法)来求解对应的一阶方程组。
4. 根据数值解的结果,计算逼近解的误差。
5. 使用数值迭代的方法(如牛顿法)来更新参数的值,直到逼近解的误差满足预设的要求。
6. 重复步骤3~5,直到得到满足要求的逼近解。
通过常微分方程打靶法,可以有效地求解一些常微分方程初值问题,尤其是对于无解析解的情况。
然而,该方法的收敛性和稳定性需要根据具体的问题来评估,并且在实际应用中需要对参数的初值选择和迭代过程进行合理的调整。
常微分方程数值解--微分方程在化工中的应用
4.1微分方程在化工中的应用微分方程在化工中应用的简单而又典型的例子是套管式换热器的稳态温度分布。
首先作以下假设:1、套管内侧为液体,其温度只随套管的长度改变而改变,忽略温度的径向变化;套管环隙为蒸汽,其温度在任何位置均为恒定值,可认为是饱和蒸汽的温度。
2、忽略套管内侧流体的纵向热传导。
3图见图4-1):流入的热量+传入的热量-流出的热量=0 (4-1)即:流体出口,u ,t L0)()(222=+--´´+dt dl t u C r t T rdl K t u C r P W p r p p rp化简上式得其温度的微分方程:(4-3)微分方程中各变量的含义如下:通过求解微分方程(4-3),就可以得到管内流体的温度随管子长度而改变的曲线,为化工模拟和设计提供依据。
如果方程(4-3)中传热系数、物流性质不随温度或位置的变化,那么,方程(4-3)是可以解析求解的(数值求解当然可以),得到我们常见的换热器传热方程;如果上述性质可能随温度或位置而改变,那么方程(4-3)就只能用数值的方法求解了。
事实上传热系数也好,物流性质也好都会随着温度的改变而改变,换热器各点温度分布时,拟采)( 2t T rC u K dl dt W P -=r mr m Kg KKg J C s m u K T l K t P W 内套管半径,套管内流体的密度套管内流体的比热套管内流体的速度套管的管壁温度置流体在套管内所处的位套管内某一点的温度,/, /,,/,,,m , ,,,3,r ·另一个在化工中常见的微分方程是物料冷却过程的数学模型,其模型可用下式表示:它含有自变量t (时间)、未知函数T (随时间变化的物料温度)、T 0(环境温度)、k (降温速率)以及温度的一阶导数,是一个常微分方程。
在微分方程中我们称自变量函数只有一个的微分方程为常微分方程,自变量函数个数为两个或两个以上的微分方程为偏微分方程。
打靶法求边值问题..
本科毕业论文(设计)论文(设计)题目:打靶法求边值问题学院:理学院专业:数学应用数学班级:091学号:**********学生姓名:***指导教师:***2013年4月21日打靶法求边值问题目录摘要: (1)引言: (2)第一章常微分方程初值问题的解法 (3)1.1 常微分方程的离散化_________________________________________ 31.2 欧拉(Euler)方法___________________________________________ 41.3 改进的Euler方法____________________________________________ 61.4 龙格—库塔(Runge—Kutta)方法 _____________________________ 71.5 4阶龙格—库塔公式 __________________________________________ 91.6 线性多步法_________________________________________________ 9第二章边值问题的数值解法 (11)2.1 打靶法____________________________________________________ 112.2 差分法____________________________________________________ 15 第三章Matlab数值解 (166)3.1 常微分方程的解法_________________________________________ 1663.2 打靶法的matlab实现_______________________________________ 23致谢: (27)主要参考文献 (27)摘要常微分方程在很多领域都有非常重要的应用,然而很多常微分方程的解是无法用解析解写出的,因而要借助于数值方法。
数值分析的松弛法和打靶法
数值分析的松弛法和打靶法当微分方程要求在多于一个的自变量值上满足边界条件时,这种问题叫做两点边值问题。
解两点边值问题有两种不同类型的数值解法:打靶法和松弛法1、打靶法:打靶法的积分过程是从x1到x2,并且努力使积分结果在积分的终点和边界条件匹配。
在一个边界x1上选择了所有因变量的值,这些值必须和该边界的边界条件保持一致。
而另一个边界x2上的因变量依赖于随机猜测的参数。
在迭代过程中,渐渐地接近真实值,就像打靶一样。
打靶法适合于解震荡的很厉害的情况,精确地运用了多维全局收敛Newton-Raphson,设法零化n2个变元的n2个函数,这些函数通过从x1到x2积分N个微分方程得到。
2、对拟合点打靶:有时,由于错误严重的起始条件,初始解从x1到x2要碰到某些不可计算的,或是灾难性的结果。
拟合点打靶首先从x1积分到x1和x2之间的一个点xf,然后再从x2反向积分到xf。
3、松弛法:“松弛法”用了另外一种逼近方法,微分方程由覆盖积分限的一系列有限个差分方程来替代,试验解由各个网格点上的因变量的值组成,并不满足所需的有限个差分方程和边界条件。
迭代调整所有在网格上的值,使他们满足各个联系的差分方程,也满足边界条件。
适用于解平滑的情况,需要良好的初始预测值。
常微分方程的数值解法的思想是将微分方程改写成有限差分方程,打靶法和松弛法都是采用了这一思想。
它们的区别在于如何去处理边界条件物理中很常见的情况是知道初始点和终点的函数值,对于一维无限深势阱情况下的概率幅函数,在两个边界上的概率幅函数值是打靶法的基础是龙格库塔方法。
需要得到一个边界点上的函数值和函数的导数值在导数值不知道的情况下,采取的解决办法是在一定范围内猜测导数值,从初始位置边界:点开始计算,计算到终止位置边界点,然后比较终止位置边界点计算的函数值和预期值,如果计算值和预期值在误差允许范围内,就结束计算,反之,就重新猜测初始位置的导数值,重新计算,直到符合误差允许范围、这个过程和打靶射击是极其相似的,所以也被称为“打靶法”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题:一维均匀介质稳态导热问题。设其一端绝热,
另一端恒温为T1,求此均匀介质上的温度分布?
(x0, T1)
xL此处绝热
x1
温度?
x2
x3
温度? 温度?
T=f(x)?
d
(k dT ) 0
dx f (0)
dx T1
dT
0
dx xL
2020/6/19
化工应用数学
3
边值问题是指在自变量x的某一区间[a,b]的两个端点
常微分方程数值解
常微分方程边值问题
问题:一维均匀介质稳态导热问题。设其一端绝热,
另一端恒温为T1,求此均匀介质上的温度分布?
(x0, T1)
xL此处绝热
x1
温度?
x2
温度?
x3
温度?
T=f(x) 其中x代表均匀介质上某一位置距离端点的距离; T代表x处的温度。
2020/6/19
化工应用数学
2
常微分方程边值问题
二阶方程的 y'' f (x, y, y' ),a<x<b
第一边值问题:
y(a)
;
y(b)
二阶方程的 y'' f (x, y, y' ),a<x<b
初值问题:
y(a)
;
y
'
(a)
m
2020/6/19
化工应用数学
任务:寻找 m,使得 y(b)=β
6
y
m=m1
(b,β) m=m3
m=m2
(a,α) x
F(m)
F (m2 )
(F (m2 ) ) (F (m1) )
m2 m1
F (m1)
F (m2 )
m2 - m3
x
m3
m2
-
[F (m2 )
F (m2 )
F (m1)] /(m2
m1 )
m3
m1
m4,m5, mn
m2
2020/6/19
化工应用数学
11
二阶边值问题:
处提供信息,即在x=a和x=b处提供边界条件的常微
分方程的问题。 我们以二阶常微分方程为例讨论两点边值问题。
y'' f (x, y, y' ), a<x<b 边界条件可以有三类:
第一类边界条件: y(a) ; y(b)
第二类边界条件: y' (a) ; y' (b)
第三类边界条件: a0 y(a) a1 y' (a)
其中a0, a1,b0,b1均为常数, 并且ai 0;bi 0; a0 b0>0,i 0,1
b0 y(b) b1 y'用数学
4
打靶法和差分法
2020/6/19
化工应用数学
5
打靶法
打靶法可用于解线性和非线性边值问题。其基本思 想是把边值问题转化为等价的初值问题,然后使用 初值问题的数值解法求解。
y'' 8 1 y
4
y(0) 0, y(10) 0
试用打靶法求解
令:y1 y; y2 y1' y' 转为初值问题:
y1'
y2
y2'
8-
1 4
y1
y1
(0)
0
y2 (0) m
寻求合适的m使得y1(10) 0
m1=10,h=0.1,采用显式欧拉法
2020/6/19
化工应用数学
12
所以y(b)=F(m),于是问题就是寻求F(m)=β。
2020/6/19
化工应用数学
9
问题就是寻求F(m)=β 如何寻求m y
2020/6/19
(a,α)
化工应用数学
m=m1 (b,β) m=m3
m=m2
x
10
问题就是寻求F(m)=β y
如何寻求m
弦截法
目的:寻找曲线
F(m) 与X轴的交点
打靶法的几何意义:就是要从微分方程 y'' f (x, y, y' )
的经过点(a,α)出发,从具有不同斜率的一族积分
曲线中去找一个通过点(b,β)的曲线。
2020/6/19
化工应用数学
7
y
m=m1
(b,β) m=m3
m=m2
(a,α) x
最初可根据对客观过程的理解先假设一个斜率m1解初
值问题。这样便得到一个解y1(x),如果y1(b)=β或
者 y1(b) < ,则y1(x)即为所求解。否则就要重新修
正m值,使其所得积分曲线经过点(b,β)。
2020/6/19
化工应用数学
8
y
m=m1
(b,β) m=m3
m=m2
(a,α) x
由于它和弹道问题类似,故称打靶法,意思是寻求曲线
初始的合适的斜率,使其击中目标 y(b)=β 。
显然, y(b)的值随m值变化而变化,即y(b)是m的函数,