GAMES001课程笔记11-微分方程
这个系列是GAMES001-图形学中的数学(GAMES 001: Mathematics in Computer Graphics)的同步课程笔记。课程旨在总结归纳图形学学习过程中重要的数学概念、理论和方法,并将以索引的形式在每一章节中穿插讲解该数学专题在图形学中的应用。本课程既可以作为GAMES系列其它课程学习的基础或「手册」,也可以作为站在不一样的视角复习图形学知识的平台。本节主要介绍微分方程的相关知识。
微分方程是描述未知函数及其(偏)导数关于自变量之间关系的方程,许多数学和物理问题本质上都可以归结为求解一个微分方程。根据未知函数是否是一元函数,微分方程可以简单分为常微分方程以及偏微分方程两大类。长期以来,人们开发了多种求解微分方程的技术,包括通解法、分离变量法和格林函数法等。而在图形学研究中,我们往往更关注微分方程的数值解法。

可分离变量的微分方程
分离变量法是一种非常实用的求解常微分方程的方法。它的基本思想是将微分方程中的未知函数及其导数项分离到方程的两边,使每一边只含一个变量。然后,通过同时对两边进行积分来获得方程的通解。

一阶线性微分方程
除了分离变量法外,一些具有特定形式的微分方程可以直接套用公式来进行求解。我们把具有如下标准形式的微分方程称为一阶线性微分方程:
\[\frac{\mathrm{d} y}{\mathrm{d} x} + P(x) y = Q(x)\]当\(Q(x) \equiv 0\)时,称方程是齐次的;否则称方程是非齐次的。
线性齐次微分方程
对于线性齐次方程,我们可以通过分离变量法得到微分方程的通解
\[y = C e^{- \int P(x) \ \mathrm{d} x}\]
线性非齐次微分方程
对于非齐次的情况则可以通过待定系数法来得到通解
\[y = C(x) \cdot e^{- \int P(x) \ \mathrm{d} x}\] \[C(x) = \int Q(x) \cdot e^{- \int P(x) \ \mathrm{d} x} \ \mathrm{d} x + C\]不难发现,线性齐次微分方程的通解实际上就是非齐次微分方程在\(Q(x) = 0\)情况下的特解。

一阶非线性微分方程
伯努利方程是一类典型的一阶非线性微分方程,它可以通过变量代换法进行求解。

二阶微分方程
对于高阶的微分方程,可以考虑通过降阶的方法把它转换为一个已知的低阶微分方程。

二阶线性微分方程
在高阶微分方程中,二阶微分方程是一类重要的微分方程。其中,二阶线性微分方程的标准形式为:
\[\frac{\mathrm{d}^2 y}{\mathrm{d} x^2} + P(x) \frac{\mathrm{d} y}{\mathrm{d} x} + Q(x) y = f(x)\]根据等式右边\(f(x)\)是否为零,二阶线性微分方程可以划分为齐次和非齐次两种情况。
对于二阶线性齐次方程,一个重要的定理是方程的两个线性无关解得线性组合即为方程的通解。这个定理可以拓展到n阶线性齐次方程的情况。类似于一阶线性非齐次方程解的结构,二阶线性非齐次方程的解可以表示为齐次方程的通解加上非齐次方程的特解。

以二阶常系数齐次线性微分方程为例,它的求解过程可以参考如下:

更高阶的常系数齐次线性微分方程的求解方法与二阶类似,我们可以通过构造特征方程并求根的方式来计算每一项通解。

二阶偏微分方程
偏微分方程的情况要比常微分方程复杂一些。以二元二阶线性偏微分方程为例,根据系数(函数)的判别式可以将方程分为双曲型、抛物型以及椭圆型偏微分方程三类。这三类偏微分方程都有着大量典型的例子。


波动方程


拉普拉斯方程





泊松方程





微分方程的数值解法
在图形学中我们一般更关心微分方程的数值解法。对于各种各样的微分方程,我们可以通过使用差分来近似微分的方法求解微分方程,这样微分方程就转换为了一个线性系统。关于求解线性系统的相关知识,我们会在下一节进行更深入的介绍。

