微分方程数值解法(信息与计算科学专业核心课程)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
所谓微分方程数值解法,就是研究利用计算机 求解微分方程的近似解的数值方法及相关理论 。 《微分方程数值解法》是“信息与计算科学”专 业的专业基础课程之一,与数值代数、数值逼近和 计算几何统称三大核心课程。
本课程主要研究用计算机求解微分方程问题 的数值计算方法及其理论与软件实现 主要内容包括: 常微分方程初值问题数值解法
u′(t0 ) ⋅ h = f (t0 , u0 ) ⋅ h
⇒
u1
•
u1 = u0 + f (t0 , u0 ) ⋅ h
u
u2
• •
u (t )
u2 = u1 + f (t1 , u1 ) ⋅ h u1 ⋅ h = f (t1 , u1 ) ⋅ h
u (t0 ) = u0
u (t1 )
• •
⇑
u (t 2 )
数学界的战略科学家吴文俊
吴文俊,1919年出生,早年毕业于上海交通大学 数学系,1949年获法国Strassbourg大学博士学位,1957 年当选中科院学部委员(后改为院士)。现任中国科学 院系统科学研究所名誉所长。1991年当选第三世界科 学院院士。 1991年,吴文俊任国家科委攀登项目“机器证明及其应用”首席科学家。 从1956年到2001年,他曾先后获得国家自然科学一等奖、第三世界科学院 数学奖、陈嘉庚数理科学奖、香港求是科技基金会杰出科学家奖、国际Herbrand 自动推理杰出成就奖、首届国家最高科技奖等。 八十年代,美国计算机科学界的权威曾联名写信给我国中央领导,认为吴先 生的工作是“第一流的”,“独自使中国在该领域走上了世界领导的岗位”。 他所以能取得如此的成就,一个重要的因素是他对中国古代数学的深刻理解。 中国古代数学是构造性的,可计算的,而只有构造性的数学才可能在计算机 上实现。
这里u1是u(t1)的近似值,利用u1又可以算出u2,如此下去 可算出u(t)在所有节点上的近似值。 一般的计算公式为:
un +1 = un + h f (tn , un ) n = 0, 1, 2, L, N − 1 (1.4)
这就是求解初值问题的Euler公式。 Euler方法是最简单的数值方法。
f (t , u1 ) − f (t , u2 )
≤ L u1 − u2
(1.2)
则(1.1)的解存在且唯一。
不是所有的初值问题(1.1)都有解析解u(t)的。因此, 对于科学和工程目的,有必要用逼近方法求出其近似解, 若要求解有多位有效数字,则需要更多的计算量和复杂的 算法。 逼近方法求解初值问题一般可分为两类: 近似解析方法 级数法和Picard逐步逼近法 数值解法
微分方程数值解法
信息与计算科学专业核心课程
数学科学学院
课程基本情况
课 程名称:
微分方程数值解法法 Numerical Solution of Equation
学分 4 学时 64 必修
课程类型:专业核心课 课程设立:1995年 课程设立:
开课范围:信息与计算科学专业 (国家特色专业建设点、省级示范性专业) 开课对象与届数:本科三级学生、十六届 修读规模:近五届平均每届 90人 2008年被评为国家精品课程
什么是数值解法? 它是一种离散化方法,利用这种方法,可以在一系 列事先取定的[a,b]中的离散点(称为节点),如
a < t1 < t 2 < L < t n ≤ b
(通常取成等距,即ti=t0+ih,i=1,…,N 其中 h>0 称为 步长) 上求出未知函数u(t)之值 u (t1 ), u (t2 ), L, u (t N ) 的近似值 u1 , u2 , L , u N 。 而 u1 , u2 , L, u N 通常称为数值解。 求 u1 , u2 , L, u N 的方法通常称为数值解法。
o
t1
t2
L
tN
t
利用Taylor公式,在t=tn+1处将u(tn)展开成: 1 u ( tn ) = u ( tn +1 ) − u ′ ( tn +1 ) h + u ′′ (ξ ) h 2 2! 1 − u ′′ (ξ ) h 2 , 用un近似代替u(tn)得: 舍去二次项 2! 一般的计算公式为:
也可用数值积分法推导Euler公式和梯形公式, 将(1.1)写成等价的积分形式:
u (tn +1 ) = u (tn ) + ∫
tn+1 tn
f (t , u (t ))dt
若用左矩形数值积分公式近似右端积分:
∫ ∫
tn+1 tn
f (t , u (t ))dt ≈ h f (tn , u (tn ))
)
2 2 = un + 0.1× t n + 100un
(
)
由初值 u (0) = u0 = 0,计算得 2 2 u ( 0 .1) ≈ u1 = u0 + 0.1× t0 + 100u0
( ) = 0.0 + 0.1× (0.1 + 100 × 0.0 ) = 0.0010 u(0.3) ≈ u = u + 0.1× ( t + 100u )
线性多步法 有限差分法 单步法
u ′ = f (t , u ) u (t0 ) = u0
Δu = f
∂u ∂ 2u =a 2 + f ∂t ∂x ∂ 2u ∂ 2u = a2 2 ∂t 2 ∂x
偏微分方程数值解法
有限元法
课程的特点:
一、通过对典型、常用的数值方法的研究,进一步了解 构造数值方法的基本思想、技巧; 二、通过掌握数值方法所涉及的基本概念和基本理论(如 稳定性、收敛性、误差估计等),使我们具有一定的理论分析 能力; 三、通过数值实验,运用所学的数值方法求出数值结果, 培养实际解题能力。
微分方程包括:常微分方程(ODE)和偏微分方程(PDE)
在科学、技术和工程中的大量数学模型都可以用微分方程 来描述, 很多近代自然科学的基本方程本身是微分方程。 人们一 直用微分方程来解释、预见各种自然现象,不断取得了显著成 绩。遗憾的是,绝大多数微分方程定解问题的解不能以实用的 解析形式来表示。 这就产生了理论和应用的矛盾: 一方面,人们列出了反应客观现象的各类微分方程,建立 了大量实用的数学模型; 一方面,人们又无法得到这些方程的准确解以定量的描述 客观过程。 随着计算机技术的出现和发展,解决上述矛盾的一门科学 ——微分方程的数值解法,得到了前所未有的发展和应用。
从而要用如下迭代公式: 取初值为
un +1 = u n , 反复迭代,即
[0 ]
un +1
3 2 1
0 h 1 2 = un + f (t n , un ) + f (t n +1 , un +1 ) 2
[
] ]
一般的迭代公式表示为:k= 0,1,2,…,
un +1
[k +1]
h [k ] = un + f (t n , un ) + f (tn +1 , un +1 ) 2
利用Taylor公式,在t=t0处将u(t1)展开 1 u ( t1 ) = u ( t0 ) + u ′ ( t0 ) h + u ′′ (ξ ) h 2 2!
= u0 ( t0 ) + f ( t0 , u0 ) h + R0 ,
(1.3)
1 其中 R0 = u′′ (ξ ) h 2 , 若步长h足够小,则可忽略二次项 2! R0,记得: u1 = u0 + h f (t0 , u0 )
授课方式
课堂授课:64学时 课堂授课: 计算实验:24学时 计算实验:
考试方法
总评成绩=平时作业+课堂测验+期末考试成绩 期末试题:涵盖了全书的基本知识点,特点是 期末试题: 题量较大,知识点较多,无偏题和难题。 评分标准:作业成绩(按A\B\C记载)占10%左 评分标准: 右,课堂测验占10%左右,期末考试成绩占80%左右
[
如此迭代下去得到迭代序列: [ [] [ [ L L un0+]1 ,un1+1 ,u n2 ]1 , ,u nk+]1 , +
[ [ 若序列 { unk+]1 }k =0收敛于 un*+]1,当
∞
k →∞
时,得到:
[ u n +1 = u n*+]1 为第n+1个近似值。 则取
h [*] un +1 = un + f (tn , un ) + f (tn +1 , un +1 ) 2
2
3
= 0.0 + 0.1× (0.0 + 100 × 0.0 ) = 0.0000 u(0.2) ≈ u2= u1 + 0.1× t12 + 100u12
2 2 2 2
(
)
2
= 0.0010 + 0.1× 0.2 2 + 100 × (0.0010 )
(
2
) = 0.0051
Euler法(切线法)的几何解释
un +1 = un + h f (tn +1 , un +1 ) n = 0, 1, 2, L, N − 1
这就是求解初值问题的隐式Euler公式。
(1.5)
将Euler与隐式Euler公式做算术平均,可得梯形公式: h un +1 = un + [ f (tn , un ) + f (tn +1 , un +1 ) ] 2 (1.6) n = 0, 1, 2, L, N − 1
第1章 常微分方程初值问题数值解法
常微分方程的数值解法
常微分方程数值解法主要分为两大部分,初值问题 的数值解法与边值问题的数值解法。 本章仅限于讨论初值问题的数值解法,不涉及边 值问题。因为边值问题的典型问题与椭圆型方程边值 问题具有某些近性,我们放在后面讨论。
考虑如下一阶常微分方Baidu Nhomakorabea的初值问题
tn+1
右端积分项使用右矩形求积公式,则得
∫
tn+1 tn
f (t , u (t ))dt ≈ h f (tn +1 , u (tn +1 ))
则用un替代u(tn)得: un +1 = un + h f (tn +1 , un +1 ) 隐Euler公式,又称右矩形公式。 显然梯形公式与Euler公式相比要精确的多(由于两 种数值积分公式的代数精度不同)。 但是梯形公式的计 算量要大一些。 每步计算要解一个非线性关于un+1方程。
1.2 Euler法 考虑初值问题(1.1),首先将区间[t0,T]划分为N个 等距小区间,小区间长度
T − t0 h= N
并选取网格点, 点列
ti=ih,i=0,1,…,N(不妨设t0=0)。已知u(0)=u0,则可计算
f (t0 , u (t0 )) = f (t0 , u0 ) = u ′(t0 ) ,
⎧ u = f (t , u ), ⎨ ⎩ u (a) = u
'
0
a≤t ≤b
(1.1)a (1.1)b
或与其等价的积分方程
u (t ) = u0 + ∫ f (τ , u (τ ))dτ
a
t
若f(t,u)关于u满足Lipschitz条件,即存在常数L,对任意 t∈[a,b]和u1,u2∈(-∞, ∞)均成立着
例:用Euler公式计算如下初值问题
′(t ) = t 2 + 100u 2 ⎧u ⎨ ⎩ u (0) = 0
0 < t ≤1
的解u(t)在t=0.3处的数值解u3。 (取步长h=0.1,小数点后保留4位) 解:相应的Euler公式:
u n +1 = u n + h t + 100u
2 n
(
2 n
h un +1 = un + ( f (t n , un ) + f (t n +1 , un +1 ) ) 2
主讲教材 微分方程数值解法
(第三 版)
李荣华 冯果忱
编
高等教育出版社
参考书目 (Reference)
科学计算中的偏微分方程有限差分法 张文生 编著(高等教育出版社) 微分方程数值方法 胡建伟 汤怀民 著 (科学出版社)
知识,只有当它靠积极的 思考得来而不是凭记忆得来的 时候,才是真正的知识。 列夫 ⋅ 托尔斯泰
则用un替代u(tn)得: un +1 = un + h f (tn +1 , un +1 ) 若用梯形形数值积分公式近似右端积分:
h f (t , u (t ))dt ≈ [ f (tn , u (tn )) + f (tn +1 , u (tn +1 ))] tn 2 h 则用un替代u(tn)得: un +1 = un + [ f (tn , un ) + f (tn +1 , un +1 ) ] 2
[*]
(
)
在实际计算中,通常要求满足如下不等式:
[ [ u nk++ 1] − u nk+]1 < ε 1
此时取 [k +1] 作为 的近似 u(tn +1 ) un+1 做为终止条件, 值 。
un+1
为了避免求解非线性代数方程,可以用Euler法将它显化, 建立预测——校正系统:
un +1 = un + hf (t n , un )