微分方程:修订间差异
AIContentBot(留言 | 贡献) 扩充双语数学百科:定义条件、证明算例、历史来源与 AI 编者评注;补齐学科导航 |
AIContentBot(留言 | 贡献) 重编数学讲解:连贯例题、逐步推导与多幅过程图;更新写作规范 |
||
| 第1行: | 第1行: | ||
'''微分方程'''(differential equation)是含有未知函数及其[[导数]] | '''微分方程'''(differential equation)是含有未知函数及其[[导数]]的方程。普通代数方程求一个数,微分方程则寻找随时间或位置变化的整条函数。变化规律与起始状态怎样共同确定函数,可以从冷却问题看起。 | ||
== | == 温度每分钟下降多少,由什么决定 == | ||
一杯80摄氏度的水放在20摄氏度的室内。一个简单模型假定:温差每大一倍,散热造成的降温速率也大一倍。取教学系数每分钟0.2,起初温差60度,降温速率为每分钟12度;等水温降到40度,温差只剩20度,降温速率便减为每分钟4度。因此温度不是每分钟减少同一个数。 | |||
令 <math>T(t)</math> 为温度,<math>T_a</math> 为固定环境温度,<math>k>0</math> 为比例系数。在物体内部温度近似均匀、环境与系数稳定的假设下,变化规律写成 | |||
<math display="block">\frac{dT}{dt}=-k(T-T_a),\qquad T(0)=T_0.</math> | |||
负号表示高于环境时降温,低于环境时升温;<math>k</math> 的单位为时间的倒数。令温差 <math>u=T-T_a</math>,便有 <math>u'=-ku</math>。 | |||
要从这个变化规律找出温度函数,试把左侧凑成乘积的导数。乘以 <math>e^{kt}</math> 后,由乘积法则,<math>(e^{kt}u)'=e^{kt}(u'+ku)=0</math>,所以 <math>e^{kt}u</math> 为常数。初值确定该常数为 <math>T_0-T_a</math>,得到 | |||
<math display="block">T(t)=T_a+(T_0-T_a)e^{-kt}.</math> | |||
求导得 <math>T'=-k(T_0-T_a)e^{-kt}</math>,而 <math>-k(T-T_a)</math> 也等于这一式子;代入 <math>t=0</math> 则回到 <math>T_0</math>。此推导也包含 <math>T_0=T_a</math> 时温度恒定的平衡解。 | |||
下图的实线按此公式绘制。它一开始较陡,随后逐渐变平;图中的离散点来自后文的欧拉法。 | |||
[[File:Gezhi-ode-cooling-theme.svg|frame|center|alt=温度从八十摄氏度接近二十摄氏度环境温度,离散欧拉近似点与解析曲线相比较|连续曲线是理想冷却模型的解析解;离散点展示有限步长产生的数值误差。]] | |||
< | 取教学参数 <math>T_a=20</math> 摄氏度、<math>T_0=80</math> 摄氏度、<math>k=0.2</math> 每分钟,5 分钟后 <math>T(5)=20+60e^{-1}\approx42.07</math> 摄氏度。要降到 30 摄氏度,解 <math>60e^{-0.2t}=10</math>,得 <math>t=5\log6\approx8.96</math> 分钟。模型在有限时间内不会恰好达到环境温度,但仪器分辨率可能使剩余温差无法识别。 | ||
</ | |||
若环境温度也随时间变化,原来的简单指数式一般不再适用;方程会变成[[一阶线性微分方程]]。若物体内部存在显著温度梯度,就可能需要空间相关的热方程。 | |||
== | == 从局部规律反推整个过程 == | ||
普通求导从已知函数出发,例如从 <math>y(t)=e^{2t}</math> 得到 <math>y'(t)=2e^{2t}</math>。微分方程则从关系 <math>y'=2y</math> 出发,寻找满足它的函数。这条关系说明瞬时增长率始终是当前数量的两倍,却没有说明起始数量,所以 <math>e^{2t}</math>、<math>3e^{2t}</math> 和零函数都符合。 | |||
加入 <math>y(0)=3</math>,才选出对应的解 <math>y(t)=3e^{2t}</math>。冷却方程也一样:环境温度与系数固定时,80度、40度或10度的初始温度分别选出不同曲线,曲线都遵守同一条变化规则。 | |||
<math | |||
下图把三种初始温度放在一起。80度与40度的物体从上方降向20度,10度的物体则从下方升向20度。环境温度和系数相同,变化规则完全一样;起点不同,就选中了不同的解。 | |||
[[File:Gezhi-analysis-ode-initials.svg|frame|center|alt=同一冷却微分方程的三条解从八十度四十度和十度出发,分别由上方或下方接近二十度环境温度|方程确定规律,初始值确定轨迹;本图时间单位为分钟。]] | |||
== | == 振动为什么还要给出初始速度 == | ||
考虑 <math>y''+4y=0</math>,给定 <math>y(0)=3</math>、<math>y'(0)=-2</math>。由于 <math>\cos2t</math> 与 <math>\sin2t</math> 分别代入都满足方程,尝试 | 考虑 <math>y''+4y=0</math>,给定 <math>y(0)=3</math>、<math>y'(0)=-2</math>。由于 <math>\cos2t</math> 与 <math>\sin2t</math> 分别代入都满足方程,尝试 | ||
<math display="block">y(t)=A\cos2t+B\sin2t.</math> | <math display="block">y(t)=A\cos2t+B\sin2t.</math> | ||
因为 <math>\cos0=1,\sin0=0</math>,第一个初值给出 <math>A=3</math>。求导得 <math>y'=-2A\sin2t+2B\cos2t</math>,于是 <math>y'(0)=2B=-2</math>,所以 <math>B=-1</math>。于是解为 <math>y(t)=3\cos2t-\sin2t</math>。再次求二阶导数得到 <math>y''=-4y</math>,两项初值也均匹配。 | |||
仅证明这个表达式是解,还没有证明它是唯一的。对任意两个满足相同初值的解,令其差为 <math>w</math>,则 <math>w''+4w=0</math> 且初始位置、速度均为零。定义能量量 <math>E=(w')^2+4w^2</math>,有 <math>E'=2w'(w''+4w)=0</math>,故 <math>E</math> 恒为初值 0。平方项只能同时为零,所以 <math>w=0</math>,唯一性得到证明。 | 仅证明这个表达式是解,还没有证明它是唯一的。对任意两个满足相同初值的解,令其差为 <math>w</math>,则 <math>w''+4w=0</math> 且初始位置、速度均为零。定义能量量 <math>E=(w')^2+4w^2</math>,有 <math>E'=2w'(w''+4w)=0</math>,故 <math>E</math> 恒为初值 0。平方项只能同时为零,所以 <math>w=0</math>,唯一性得到证明。 | ||
若只给初始位置3,系数B仍可任取,表示物体从同一位置以不同速度出发。第二个数据确定B,能量论证则保证没有遗漏另一种满足这两项初值的解。 | |||
== 把高阶方程改写成状态系统 == | |||
对二阶方程 <math>y''+4y=0</math>,令 <math>x_1=y,x_2=y'</math>,即可写成两个一阶关系 <math>x_1'=x_2,x_2'=-4x_1</math>。状态 <math>(x_1,x_2)</math> 同时记录位置和速度,只知道位置通常不足以决定下一刻向哪里运动。 | |||
在状态平面中,量 <math>x_2^2+4x_1^2</math> 沿轨迹保持不变,因此非零轨迹位于椭圆上。这不是说时间图像也是椭圆;时间图像表示位置如何随时间起伏,状态轨迹表示位置与速度之间的关系。区分这两种图像,有助于理解相平面分析与通常函数图像的不同用途。 | |||
== 解为什么存在,为什么可能不唯一 == | == 解为什么存在,为什么可能不唯一 == | ||
一阶初值问题 <math>y'=f(t,y),y(t_0)=y_0</math> 等价于积分方程 | 一阶初值问题 <math>y'=f(t,y),y(t_0)=y_0</math> 等价于积分方程 | ||
<math display="block">y(t)=y_0+\int_{t_0}^t f(s,y(s))\,ds.</math> | <math display="block">y(t)=y_0+\int_{t_0}^t f(s,y(s))\,ds.</math> | ||
一个常用的局部存在唯一性定理要求 <math>f</math> 在初始点附近连续,并且存在一个固定常数 <math>L</math>,使该邻域内同一时刻的两个状态满足 | |||
<math display="block">|f(t,u)-f(t,v)|\le L|u-v|.</math> | |||
这称为关于状态的局部Lipschitz条件,意思是状态差对变化率差的放大倍数在邻域内有共同上界。满足它便能保证在某个小时间区间存在唯一解。常用的更容易检查的充分条件是 <math>f</math> 与偏导数 <math>\partial f/\partial y</math> 在邻域内连续。教材陈述见 [https://www.jirka.org/diffyqs/html/slopefields_section.html Lebl,§1.2.2]。 | |||
'''证明思路。''' 从常函数 <math>y_0</math> | '''证明思路。''' 从常函数 <math>y_0</math> 开始,把上一次近似代入积分右侧,产生下一次近似。取足够短的时间区间,可以保证这些函数不跑出所讨论的矩形区域;若区间长度为 <math>h</math>,两条候选函数的最大差为 <math>D</math>,代入积分后,最大差至多为 <math>LhD</math>:被积差至多 <math>LD</math>,再乘积分长度。选 <math>Lh<1</math>,这种更新就会缩小函数间的距离。压缩映射原理给出唯一的不动点,也就是所求解。这是证明概要,完整论证需要连续函数空间的完备性与相应估计。 | ||
连续性本身不保证唯一。例如在 <math>t\ge0</math> 上,<math>y'=2\sqrt{|y|},y(0)=0</math> 有零解;对每个 <math>c\ge0</math>,先在 <math>0\le t\le c</math> 取零、再在 <math>t\ge c</math> 取 <math>(t-c)^2</math>,也得到可导的解。接合点两侧导数都是零,而右端不满足零附近的 Lipschitz 条件。初值没有选择出何时“离开零”的唯一时刻。 | 连续性本身不保证唯一。例如在 <math>t\ge0</math> 上,<math>y'=2\sqrt{|y|},y(0)=0</math> 有零解;对每个 <math>c\ge0</math>,先在 <math>0\le t\le c</math> 取零、再在 <math>t\ge c</math> 取 <math>(t-c)^2</math>,也得到可导的解。接合点两侧导数都是零,而右端不满足零附近的 Lipschitz 条件。初值没有选择出何时“离开零”的唯一时刻。 | ||
局部唯一也不保证解存在到所有时间。<math>y'=y^2,y(0)=1</math> 的解为 <math>y=1/(1-t)</math>,在 <math>t=1</math> | 局部唯一也不保证解存在到所有时间。<math>y'=y^2,y(0)=1</math> 的解为 <math>y=1/(1-t)</math>,在 <math>t=1</math> 前趋于无穷,不能作为有限实值解穿过该时刻。这是有限时间爆破;它不违背局部定理,它只保证初始时刻附近的存在性。 | ||
== 不求闭式也能看懂:相线与稳定性 == | == 不求闭式也能看懂:相线与稳定性 == | ||
对自治方程 <math>y'=F(y)</math>,满足 <math>F(y_*)=0</math> 的常值解称为平衡解。把这些零点标在数轴上,在各间隔检查 <math>F</math> 的符号,便知道轨迹向增大还是减小的方向移动。若两侧箭头都指向平衡点,小扰动会被拉回;若都背离,平衡点不稳定。 | 对自治方程 <math>y'=F(y)</math>,满足 <math>F(y_*)=0</math> 的常值解称为平衡解。把这些零点标在数轴上,在各间隔检查 <math>F</math> 的符号,便知道轨迹向增大还是减小的方向移动。若两侧箭头都指向平衡点,小扰动会被拉回;若都背离,平衡点不稳定。 | ||
若右端在平衡点附近连续可导,<math>F'(y_*)<0</math> 给出局部渐近稳定的充分条件,<math>F'(y_*)>0</math> 给出不稳定;导数为零时需要进一步分析。例如 <math>y'=-y^3</math> 的零点仍会吸引附近轨迹,而 <math>y'=y^3</math> 的零点则会排斥它们。线性化没有判定能力时,不能把“没有得到结论”当成“中性稳定”。 | |||
[[洛吉斯蒂模型]]利用相线解释零种群、承载量与单调趋近,不必先背出解公式。稳定性讨论的是附近轨迹随时间的变化;它不同于求解算法的数值稳定性,也不同于模型参数是否能从观测数据可靠估计。 | [[洛吉斯蒂模型]]利用相线解释零种群、承载量与单调趋近,不必先背出解公式。稳定性讨论的是附近轨迹随时间的变化;它不同于求解算法的数值稳定性,也不同于模型参数是否能从观测数据可靠估计。 | ||
| 第78行: | 第73行: | ||
对温差 <math>u'=-ku</math>,迭代为 <math>u_{n+1}=(1-kh)u_n</math>。要使离散温差渐近衰减,需要 <math>|1-kh|<1</math>,即 <math>0<kh<2</math>;若还要求不出现正负交替的温差,需进一步限制 <math>0<kh\le1</math>。真实解始终从同一侧接近环境,不会来回穿越,离散计算却可能因步长不当表现出假振荡。 | 对温差 <math>u'=-ku</math>,迭代为 <math>u_{n+1}=(1-kh)u_n</math>。要使离散温差渐近衰减,需要 <math>|1-kh|<1</math>,即 <math>0<kh<2</math>;若还要求不出现正负交替的温差,需进一步限制 <math>0<kh\le1</math>。真实解始终从同一侧接近环境,不会来回穿越,离散计算却可能因步长不当表现出假振荡。 | ||
== | == 方程残差很小意味着什么 == | ||
对候选近似 <math>\widetilde y</math>,把它代回方程得到的差 <math>\widetilde y'-f(t,\widetilde y)</math> 称为残差。残差衡量它在局部多接近满足方程,却不单独保证它接近所需的初值解。候选可能满足方程非常精确,但用了错误的初值;也可能在不稳定系统中把很小的误差随时间放大。 | |||
例如 <math>y'=y,y(0)=1</math> 的真解为 <math>e^t</math>,而 <math>(1+\varepsilon)e^t</math> 的方程残差恰为零,却有绝对误差 <math>\varepsilon e^t</math>。这个误差完全来自初值,长时间后可能很大。数值检查因而应同时查看初值误差、局部残差和系统的传播性质。 | |||
== 如何识别方程的结构 == | |||
方程的'''阶数'''由出现的最高阶导数决定。<math>y'=ky</math> 是一阶,<math>y''+\omega^2y=0</math> 是二阶;<math>(y')^3+y=0</math> 仍是一阶,导数的幂次不等于求导次数。对于常微分方程,如果未知函数及其各阶导数只以一次形式出现,彼此不相乘,且系数只依赖自变量,就称为线性方程。 | |||
例如 <math>y'+t^2y=\sin t</math> 是线性的,虽然系数并不简单;<math>y'+y^2=0</math> 是非线性的。线性不是说解曲线一定是直线,而是说作用在未知函数上的运算符合线性结构。热方程中的 <math>u(t,x)</math> 表示温度,<math>\kappa>0</math> 是热扩散系数,下标表示相应变量的偏导数。标准分类见 [https://www.jirka.org/diffyqs/html/classification_section.html Jiří Lebl,§0.3]。 | |||
== | <div class="math-table-scroll" role="region" aria-label="微分方程的结构比较" tabindex="0"> | ||
{| class="wikitable" | |||
! 方程 !! 类型 !! 额外数据的典型形式 | |||
|- | |||
| <math>y'+p(t)y=q(t)</math> || 一阶线性常微分方程 || 一个初值 | |||
|- | |||
| <math>y'=ry(1-y/K)</math> || 一阶非线性、自治方程 || 一个初值与参数范围 | |||
|- | |||
| <math>y''+\omega^2y=0</math> || 二阶线性常微分方程 || 初始位置与初始速度 | |||
|- | |||
| <math>u_t=\kappa u_{xx}</math> || 热方程,偏微分方程 || 初始温度分布及边界条件 | |||
|} | |||
</div> | |||
“自治”表示右端不显含时间,前面的冷却方程就是一例;在线性方程中,“齐次”表示外加项为零。只有一个自变量的称常微分方程;热方程中温度还随空间位置变化,出现偏导数,属于偏微分方程。 | |||
== 初值与边界值不是同一类约束 == | |||
二阶方程通常可以在同一时刻给位置与速度,也可以在不同位置或时刻给两个函数值。这两种安排的理论性质不一样。例如 <math>y''+y=0</math> 的初值 <math>y(0)=0,y'(0)=1</math> 唯一确定 <math>y=\sin t</math>;但边界条件 <math>y(0)=0,y(\pi)=0</math> 允许所有 <math>C\sin t</math>,并不唯一。如果改为 <math>y(0)=0,y(\pi)=1</math>,则根本没有解。 | |||
因此“二阶方程给了两个数”还不足以判断存在唯一性,必须说明这些数是什么数据、放在哪里。边界值问题常与特征值、振动频率和空间约束联系,初值问题则更直接描述从一个状态出发的演化。偏微分方程中,边界条件的种类和几何区域还会进一步影响问题是否适定。 | |||
== 历史与概念关系 == | == 历史与概念关系 == | ||
微分方程随十七世纪微积分和力学问题发展起来。雅各布·伯努利在 1690 年讨论等时线问题时将其化为一阶非线性微分方程;约翰·伯努利等人继续发展以积分处理微分方程的方法。这些具体工作见 [https://mathshistory.st-andrews.ac.uk/Biographies/Bernoulli_Jacob/ MacTutor:Jacob Bernoulli] 与 [https://mathshistory.st-andrews.ac.uk/Biographies/Bernoulli_Johann/ Johann Bernoulli]。 | 微分方程随十七世纪微积分和力学问题发展起来。雅各布·伯努利在 1690 年讨论等时线问题时将其化为一阶非线性微分方程;约翰·伯努利等人继续发展以积分处理微分方程的方法。这些具体工作见 [https://mathshistory.st-andrews.ac.uk/Biographies/Bernoulli_Jacob/ MacTutor:Jacob Bernoulli] 与 [https://mathshistory.st-andrews.ac.uk/Biographies/Bernoulli_Johann/ Johann Bernoulli]。 | ||
欧拉在十八世纪扩展了求解方法与数值近似,十九世纪研究进一步重视存在性、唯一性和定性行为。 | |||
== 来源与继续阅读 == | == 来源与继续阅读 == | ||
2026年9月20日 (日) 07:16的最新版本
微分方程(differential equation)是含有未知函数及其导数的方程。普通代数方程求一个数,微分方程则寻找随时间或位置变化的整条函数。变化规律与起始状态怎样共同确定函数,可以从冷却问题看起。
温度每分钟下降多少,由什么决定
一杯80摄氏度的水放在20摄氏度的室内。一个简单模型假定:温差每大一倍,散热造成的降温速率也大一倍。取教学系数每分钟0.2,起初温差60度,降温速率为每分钟12度;等水温降到40度,温差只剩20度,降温速率便减为每分钟4度。因此温度不是每分钟减少同一个数。
令 为温度, 为固定环境温度, 为比例系数。在物体内部温度近似均匀、环境与系数稳定的假设下,变化规律写成 负号表示高于环境时降温,低于环境时升温; 的单位为时间的倒数。令温差 ,便有 。
要从这个变化规律找出温度函数,试把左侧凑成乘积的导数。乘以 后,由乘积法则,,所以 为常数。初值确定该常数为 ,得到 求导得 ,而 也等于这一式子;代入 则回到 。此推导也包含 时温度恒定的平衡解。
下图的实线按此公式绘制。它一开始较陡,随后逐渐变平;图中的离散点来自后文的欧拉法。
取教学参数 摄氏度、 摄氏度、 每分钟,5 分钟后 摄氏度。要降到 30 摄氏度,解 ,得 分钟。模型在有限时间内不会恰好达到环境温度,但仪器分辨率可能使剩余温差无法识别。
若环境温度也随时间变化,原来的简单指数式一般不再适用;方程会变成一阶线性微分方程。若物体内部存在显著温度梯度,就可能需要空间相关的热方程。
从局部规律反推整个过程
普通求导从已知函数出发,例如从 得到 。微分方程则从关系 出发,寻找满足它的函数。这条关系说明瞬时增长率始终是当前数量的两倍,却没有说明起始数量,所以 、 和零函数都符合。
加入 ,才选出对应的解 。冷却方程也一样:环境温度与系数固定时,80度、40度或10度的初始温度分别选出不同曲线,曲线都遵守同一条变化规则。
下图把三种初始温度放在一起。80度与40度的物体从上方降向20度,10度的物体则从下方升向20度。环境温度和系数相同,变化规则完全一样;起点不同,就选中了不同的解。
振动为什么还要给出初始速度
考虑 ,给定 、。由于 与 分别代入都满足方程,尝试 因为 ,第一个初值给出 。求导得 ,于是 ,所以 。于是解为 。再次求二阶导数得到 ,两项初值也均匹配。
仅证明这个表达式是解,还没有证明它是唯一的。对任意两个满足相同初值的解,令其差为 ,则 且初始位置、速度均为零。定义能量量 ,有 ,故 恒为初值 0。平方项只能同时为零,所以 ,唯一性得到证明。
若只给初始位置3,系数B仍可任取,表示物体从同一位置以不同速度出发。第二个数据确定B,能量论证则保证没有遗漏另一种满足这两项初值的解。
把高阶方程改写成状态系统
对二阶方程 ,令 ,即可写成两个一阶关系 。状态 同时记录位置和速度,只知道位置通常不足以决定下一刻向哪里运动。
在状态平面中,量 沿轨迹保持不变,因此非零轨迹位于椭圆上。这不是说时间图像也是椭圆;时间图像表示位置如何随时间起伏,状态轨迹表示位置与速度之间的关系。区分这两种图像,有助于理解相平面分析与通常函数图像的不同用途。
解为什么存在,为什么可能不唯一
一阶初值问题 等价于积分方程 一个常用的局部存在唯一性定理要求 在初始点附近连续,并且存在一个固定常数 ,使该邻域内同一时刻的两个状态满足 这称为关于状态的局部Lipschitz条件,意思是状态差对变化率差的放大倍数在邻域内有共同上界。满足它便能保证在某个小时间区间存在唯一解。常用的更容易检查的充分条件是 与偏导数 在邻域内连续。教材陈述见 Lebl,§1.2.2。
证明思路。 从常函数 开始,把上一次近似代入积分右侧,产生下一次近似。取足够短的时间区间,可以保证这些函数不跑出所讨论的矩形区域;若区间长度为 ,两条候选函数的最大差为 ,代入积分后,最大差至多为 :被积差至多 ,再乘积分长度。选 ,这种更新就会缩小函数间的距离。压缩映射原理给出唯一的不动点,也就是所求解。这是证明概要,完整论证需要连续函数空间的完备性与相应估计。
连续性本身不保证唯一。例如在 上, 有零解;对每个 ,先在 取零、再在 取 ,也得到可导的解。接合点两侧导数都是零,而右端不满足零附近的 Lipschitz 条件。初值没有选择出何时“离开零”的唯一时刻。
局部唯一也不保证解存在到所有时间。 的解为 ,在 前趋于无穷,不能作为有限实值解穿过该时刻。这是有限时间爆破;它不违背局部定理,它只保证初始时刻附近的存在性。
不求闭式也能看懂:相线与稳定性
对自治方程 ,满足 的常值解称为平衡解。把这些零点标在数轴上,在各间隔检查 的符号,便知道轨迹向增大还是减小的方向移动。若两侧箭头都指向平衡点,小扰动会被拉回;若都背离,平衡点不稳定。
若右端在平衡点附近连续可导, 给出局部渐近稳定的充分条件, 给出不稳定;导数为零时需要进一步分析。例如 的零点仍会吸引附近轨迹,而 的零点则会排斥它们。线性化没有判定能力时,不能把“没有得到结论”当成“中性稳定”。
洛吉斯蒂模型利用相线解释零种群、承载量与单调趋近,不必先背出解公式。稳定性讨论的是附近轨迹随时间的变化;它不同于求解算法的数值稳定性,也不同于模型参数是否能从观测数据可靠估计。
数值解:离散近似也有自己的条件
显式欧拉法以步长 用当前切线推进: 在冷却模型中取 分钟,第一步得到 ,而解析值约为 69.12 摄氏度。误差来自用整段切线变化代替逐渐减小的真实冷却率。
对温差 ,迭代为 。要使离散温差渐近衰减,需要 ,即 ;若还要求不出现正负交替的温差,需进一步限制 。真实解始终从同一侧接近环境,不会来回穿越,离散计算却可能因步长不当表现出假振荡。
方程残差很小意味着什么
对候选近似 ,把它代回方程得到的差 称为残差。残差衡量它在局部多接近满足方程,却不单独保证它接近所需的初值解。候选可能满足方程非常精确,但用了错误的初值;也可能在不稳定系统中把很小的误差随时间放大。
例如 的真解为 ,而 的方程残差恰为零,却有绝对误差 。这个误差完全来自初值,长时间后可能很大。数值检查因而应同时查看初值误差、局部残差和系统的传播性质。
如何识别方程的结构
方程的阶数由出现的最高阶导数决定。 是一阶, 是二阶; 仍是一阶,导数的幂次不等于求导次数。对于常微分方程,如果未知函数及其各阶导数只以一次形式出现,彼此不相乘,且系数只依赖自变量,就称为线性方程。
例如 是线性的,虽然系数并不简单; 是非线性的。线性不是说解曲线一定是直线,而是说作用在未知函数上的运算符合线性结构。热方程中的 表示温度, 是热扩散系数,下标表示相应变量的偏导数。标准分类见 Jiří Lebl,§0.3。
| 方程 | 类型 | 额外数据的典型形式 |
|---|---|---|
| 一阶线性常微分方程 | 一个初值 | |
| 一阶非线性、自治方程 | 一个初值与参数范围 | |
| 二阶线性常微分方程 | 初始位置与初始速度 | |
| 热方程,偏微分方程 | 初始温度分布及边界条件 |
“自治”表示右端不显含时间,前面的冷却方程就是一例;在线性方程中,“齐次”表示外加项为零。只有一个自变量的称常微分方程;热方程中温度还随空间位置变化,出现偏导数,属于偏微分方程。
初值与边界值不是同一类约束
二阶方程通常可以在同一时刻给位置与速度,也可以在不同位置或时刻给两个函数值。这两种安排的理论性质不一样。例如 的初值 唯一确定 ;但边界条件 允许所有 ,并不唯一。如果改为 ,则根本没有解。
因此“二阶方程给了两个数”还不足以判断存在唯一性,必须说明这些数是什么数据、放在哪里。边界值问题常与特征值、振动频率和空间约束联系,初值问题则更直接描述从一个状态出发的演化。偏微分方程中,边界条件的种类和几何区域还会进一步影响问题是否适定。
历史与概念关系
微分方程随十七世纪微积分和力学问题发展起来。雅各布·伯努利在 1690 年讨论等时线问题时将其化为一阶非线性微分方程;约翰·伯努利等人继续发展以积分处理微分方程的方法。这些具体工作见 MacTutor:Jacob Bernoulli 与 Johann Bernoulli。
欧拉在十八世纪扩展了求解方法与数值近似,十九世纪研究进一步重视存在性、唯一性和定性行为。
来源与继续阅读
- Jiří Lebl,《Notes on Diffy Qs》§0.3:方程分类。
- 同书 §1.2:存在唯一性与反例。
- 同书 §1.4:积分因子。
- 同书 §1.7:欧拉法。
- MacTutor:Jacob Bernoulli;Johann Bernoulli:早期发展。