化归视角下的常数变易法与待定系数法

写在前面

学微分方程的时候,最烦人的应该就是这两个方法:常数变易法和待定系数法。

书上是这么教的:直接甩一句“设 y=u(x)e−xy = u(x)e^{-x}”,或者“设特解 y∗=Ae2xy^* = Ae^{2x}”,代进去,配系数,答案就出来了。步骤背得下来,可这些形式到底是从哪冒出来的?书上不说。做题照葫芦画瓢还行,换道题就卡住。

其实不只这两个。伯努利方程的换元 z=y1−nz = y^{1-n},欧拉方程的换元 x=etx = e^t,黎卡提方程的换元 y=y∗+1uy = y^* + \frac{1}{u},书里都是一句“作如下变换”带过。个个都像变魔术。

这篇文章想把它们拆开。拆开你会发现,背后其实是同一个再简单不过的念头:

把不会的,变成会的。

这个念头叫化归,大致有三种走法:

常数变易法和待定系数法,表面上八竿子打不着,其实是这个念头的两种用法,统一于化归。路上还会碰到积分因子法——它同样统一于化归。

(这三条路,后面会一一对应上。)下面从小学算术讲起,一路走到微分方程,看这些“魔术”是怎么从这个念头里长出来的。

正文之后是进阶部分,放着完整的推导、多种解法和大量例子——看到“见进阶 XX”时点过去就行,用到再翻,不必从头看。左上角有导航栏,点栏下的按钮可以展开或收起。


一、先聊聊化归

先看一道小学题:5−35 - 3 等于几?

还没学减法的时候,你会怎么办?反过来问:33 加几等于 55?加 22。

除法也一样。6÷26 \div 2 不会,就问:22 乘几等于 66?乘 33。

两道题一个套路:不会的运算,换成会的运算,再把那个不知道的数补出来。

这个“把不会的变成会的”,就是这篇文章要说的化归。后面你会看到,那些像魔术的方法,说到底都是这一招。

为什么说它是自然的

因为这根本就是我们学数学的第一种策略。从小学开始,我们就在不知不觉地重复这个套路:

碰到新问题,第一反应常常是:“这和我们会的哪个东西像?能不能把它变成那个东西?”——这就是化归。

这个习惯不用专门学,它就是我们把 5−35-3 想成“33 加几等于 55”的那一瞬间。

接下来你会看到,这个简单的念头会一路延伸到线性方程、微分方程,成为处理一切“非齐次线性问题”的底层逻辑。


二、先备几样工具

解微分方程要两样东西:导数和积分。导数你高中已经学过,这里只花一句话回顾;积分是新的,但很好懂。

导数:变化率

一个物体位置随时间变,位置的变化率就是速度,速度的变化率就是加速度。这个“变化率”,数学上叫导数,记作 y′y'。比如 (x2)′=2x(x^2)' = 2x、(ex)′=ex(e^x)' = e^x、(sin⁡x)′=cos⁡x(\sin x)' = \cos x,这些你都会。

积分:导数的反过程

导数是“给函数,求它的变化率”。反过来,给变化率,求原来的函数,就是积分,记作 ∫\int。

最熟悉的例子:已知速度 v(t)v(t),要求走过的路程 s(t)s(t)。因为 s′=vs' = v,所以 s=∫v dts = \int v\,dt。

∫f dx\int f\,dx 的意思就是:找一个函数,让它的导数正好是 ff。比如 ∫2x dx=x2\int 2x\,dx = x^2,因为 (x2)′=2x(x^2)' = 2x。

这里有个小地方要留意:(x2)′=2x(x^2)' = 2x,但 (x2+1)′=2x(x^2+1)' = 2x,(x2−3)′=2x(x^2-3)' = 2x 也都是 2x2x。求导会把常数信息丢掉。所以积分找回来的时候,得补一个“任意常数” CC:

∫2x dx=x2+C\int 2x\,dx = x^2 + C

这个 CC 后面会反复出现,先混个脸熟。

微分方程:方程里藏着未知函数

普通方程,比如 2x=62x = 6,未知的是个数,解是 x=3x = 3。

微分方程不一样:未知的是一个函数,而且方程里既有这个函数、又有它的导数。比如:

N′=−λNN' = -\lambda N

这句话说的是:某个量 NN 的变化率,和它自己成正比,前面带个负号,表示越来越少。

什么东西符合这个规律?放射性物质。它衰减得多快,取决于它现在还剩多少——剩得多,衰减得快。人口增长也类似,只是不带负号:P′=kPP' = kP。

解这个方程,就是找出一个函数 N(t)N(t),让它代入后等式处处成立。这种“找出函数”的活,就是这篇文章要干的。

顺便记一个词:方程里最高是几阶导数,就叫几阶方程。N′=−λNN' = -\lambda N 里最高是一阶导 N′N',所以是一阶方程;要是出现 y′′y'',就是二阶。


三、先把几个词认清楚

后面会反复冒出几个词,这里一次认全,每个都配个例子。

通解和特解

一个微分方程往往不止一个解,是一大串。比如 y′=2xy' = 2x,解是 y=x2+Cy = x^2 + C,CC 取不同值就得到不同的解。

这一整串(带着 CC 的)叫通解;你指定一个具体的(比如让 C=0C = 0,得到 y=x2y = x^2),叫特解。

线性和非线性

看一个物理例子。

物体在空气里运动,受空气阻力。速度慢的时候,阻力大致和速度成正比:F=−kvF = -kv,一次;速度快起来,阻力和速度的平方成正比:F=−kv2F = -kv^2,二次。

用牛顿第二定律写成方程:

一句话:线性就是未知函数和它的导数都只出现一次(不平方、不相乘、不套三角函数);出现 y2y^2、y⋅y′y\cdot y'、sin⁡y\sin y 这些,就是非线性。

齐次和非齐次

看方程的右边。

右边是 00 的,叫齐次,比如 y′+2y=0y' + 2y = 0。右边不是 00 的,叫非齐次,比如 y′+2y=3y' + 2y = 3。

判断就一条:右边是不是 00。

常系数和变系数

看未知函数前面乘的数。

线性相关和线性无关

这是说两个函数的关系。

两个函数,如果其中一个就是另一个乘个常数,比如 e2xe^{2x} 和 3e2x3e^{2x},它俩就是线性相关的——本质上是同一个,只是胖瘦不同。

反过来,exe^x 和 e2xe^{2x} 谁也成不了谁的常数倍,它俩线性无关——各带各的信息,谁也不能替谁。

这个词第四章马上要用,先记住:无关 = 不是常数倍关系。


四、齐次方程怎么解

它从哪来

先看一个电路。一个电阻 RR 和一个电感 LL 串在一起,通上电,再把电源断开。

断开后,电流 i(t)i(t) 不会立刻归零,会慢慢衰减。规律是:电流减小的速度,和电流本身成正比。写成方程:

i′=−RL ii' = -\frac{R}{L}\,i

也就是

i′+RL i=0i' + \frac{R}{L}\,i = 0

右边是 00,这是个齐次方程,而且是一阶、线性、常系数的。

这种“变化率和自己成正比”的方程到处都有:放射性衰变、人口增长、放电、冷却……所以学会解它,很值。

拿什么去试

先盯着最简单的 y′+ay=0y' + ay = 0 看(把 RL\frac{R}{L} 简写成 aa)。要找函数 yy,让 y′y' 和 ayay 加起来正好是 00。

也就是说,y′y' 得正好等于 −ay-ay——导数和函数本身,只差一个常数倍。

先停一下,想一想:什么样的函数,求导之后还是它自己,顶多多个常数?

……

想到了吗?指数函数。exe^x 求导还是 exe^x,最像自己。

拿 y=exy = e^x 试试,代入 y′+ay=0y' + ay = 0,得到 ex+aex=(1+a)exe^x + a e^x = (1+a)e^x。要它等于 00,得 1+a=01 + a = 0,也就是 a=−1a = -1。可我们的 aa 是任意的,一般不是 −1-1,配不平。

问题出在哪?exe^x 太“死”了——求导之后不多出任何系数,没东西可调。

那就给它松个绑:指数上别写死 xx,写成一个待定的 rr,用 y=erxy = e^{rx}。求导:

(erx)′=rerx(e^{rx})' = r e^{rx}

多出一个 rr 了。代入 y′+ay=0y' + ay = 0:

rerx+aerx=(r+a)erx=0r e^{rx} + a e^{rx} = (r + a) e^{rx} = 0

erxe^{rx} 永远不是 00,约掉,剩下:

r+a=0r + a = 0

现在 rr 是待定的,解这个代数方程得 r=−ar = -a。于是解是 y=e−axy = e^{-ax},再补上任意常数,通解是 y=Ce−axy = C e^{-ax}。

二阶:特征方程

一阶这么办,二阶 y′′+ay′+by=0y'' + ay' + by = 0 也照葫芦画瓢,还是拿 y=erxy = e^{rx} 去试。

(erx)′=rerx(e^{rx})' = r e^{rx},(erx)′′=r2erx(e^{rx})'' = r^2 e^{rx},代入:

r2erx+arerx+berx=0r^2 e^{rx} + a r e^{rx} + b e^{rx} = 0

约掉 erxe^{rx}:

r2+ar+b=0r^2 + ar + b = 0

这个代数方程就叫特征方程,它的根 rr 叫特征根。

到这里,解微分方程被化归成了“解一个一元二次方程”——又是一个“把不会的变成会的”。

接下来就看这个二次方程的两个根长什么样了。

叠加原理:两个解加起来还是解

分情况之前,先补一件重要的事。

如果 y1y_1 和 y2y_2 都是齐次方程的解,那么 C1y1+C2y2C_1 y_1 + C_2 y_2(两个解各自乘个常数再加起来)也是解。

代进去看就明白。左边是线性的,把 y=C1y1+C2y2y = C_1 y_1 + C_2 y_2 代入,会拆成“C1C_1 乘(y1y_1 代入左边)”加上“C2C_2 乘(y2y_2 代入左边)”。而 y1y_1、y2y_2 都是解,代入左边都是 00,加起来还是 00。

这个道理叫叠加原理,马上要用。

情形一:两个不相等的实根

特征方程 r2+ar+b=0r^2 + ar + b = 0 解出两个不同的实根 r1≠r2r_1 \neq r_2。

那么 er1xe^{r_1 x} 和 er2xe^{r_2 x} 是两个解,而且线性无关(比值 e(r2−r1)xe^{(r_2-r_1)x} 不是常数)。按叠加原理,通解是:

y=C1er1x+C2er2xy = C_1 e^{r_1 x} + C_2 e^{r_2 x}

为什么正好两个常数?因为二阶方程的通解需要两个能独立取值的常数——二阶要积两次分,自然冒出两个。

情形二:重根

r1=r2=rr_1 = r_2 = r 时,两个根重合了。麻烦的是:erxe^{rx} 只给了一个解,还差一个。

第二个解去哪找?

先回到两个根不相等的时候。这时 er1xe^{r_1 x}、er2xe^{r_2 x} 是两个解,它们的差商:

er2x−er1xr2−r1\frac{e^{r_2 x} - e^{r_1 x}}{r_2 - r_1}

也是解——因为它是两个解的线性组合(系数是 1r2−r1\frac{1}{r_2-r_1} 和 −1r2−r1-\frac{1}{r_2-r_1})。

现在让 r2r_2 慢慢靠近 r1r_1,最后重合。差商的分子、分母都趋向 00,但比值不会消失,它趋向一个确定的函数,算出来是 xerxx e^{rx}。

(为什么这么想?两个不同的齐次解之间有一个差值,这个差值正是“它们是两个不同的解”的体现;当两个解越靠越近、趋于相同时,差值就趋于 00。差值趋于 00,说明变化极其微小,为了把这点微小的变化放大,就除上一个同样趋于 00 的分母——让看不见的微小变化变成看得见的变化。这研究的正是“变化的变化”,也就是变化率;而求变化率就是求导。求出来的这个变化率,就是一个齐次解,一个不同于原来那个(重合的)解的新解。)

如果你会洛必达法则,这一步一眼就出来:把 rr 当变量,对 erxe^{rx} 求导就是 xerxx e^{rx}。不会也没关系,先记住结果,进阶十一有详细推导。

所以重根时第二个解是 xerxx e^{rx},通解:

y=(C1+C2x)erxy = (C_1 + C_2 x) e^{rx}

情形三:共轭复根

有时候 r2+ar+b=0r^2 + ar + b = 0 没有实根。比如 y′′+y=0y'' + y = 0,特征方程 r2+1=0r^2 + 1 = 0,根是 ±i\pm i(虚数)。

这时解是 eixe^{ix} 和 e−ixe^{-ix},里面带着虚数。想要实实在在的函数解,得靠一条把复数和三角函数连起来的公式——欧拉公式:

eiθ=cos⁡θ+isin⁡θe^{i\theta} = \cos\theta + i\sin\theta

有了它,复指数就能拆成实部和虚部:

e(α+iβ)x=eαx(cos⁡βx+isin⁡βx)e^{(\alpha + i\beta)x} = e^{\alpha x}(\cos\beta x + i\sin\beta x)

(这条公式的来历、怎么用它把解凑成实数,进阶十二细说。)

回到 y′′+y=0y'' + y = 0,两个复解 eixe^{ix}、e−ixe^{-ix} 用欧拉公式拆开,再相加、相减,凑出两个实解:

y1=cos⁡x,y2=sin⁡xy_1 = \cos x, \qquad y_2 = \sin x

它们线性无关,通解是:

y=C1cos⁡x+C2sin⁡xy = C_1 \cos x + C_2 \sin x

一般地,特征根是 α±iβ\alpha \pm i\beta 时,通解是 y=eαx(C1cos⁡βx+C2sin⁡βx)y = e^{\alpha x}(C_1\cos\beta x + C_2\sin\beta x)。


五、非齐次怎么办:解的结构

有外力的时候

上一章那个 RL 电路是断了电源的,所以方程右边是 00(齐次)。现在把电源接上,电源电压是 E(t)E(t),方程就变成:

i′+RL i=E(t)Li' + \frac{R}{L}\,i = \frac{E(t)}{L}

右边不再是 00,是个非齐次方程。右边那项,物理上就是电源这个“外力”。

非齐次比齐次难。齐次的我们已经会了,非齐次的呢?

化归的念头先冒出来:要是右边的 ff 也是 00 该多好——右边是 00 的方程(齐次方程)我们已经会解。方程当然不能随便改,但可以换个角度看它:把右边那个 ff(在电路里就是电源那项),重新看成“某个函数被左边这套运算作用之后的结果”——就像把 55 重新看成“33 加上某个数”一样。这么一换,“不齐次的”就被看成了“齐次的”样子。

先看个最简单的例子

动手解微分方程之前,看一个谁都会的一元一次方程。

齐次:2x=02x = 0,解是 x=0x = 0。

非齐次:2x=62x = 6,解是 x=3x = 3。

注意看 33 这个解:它可以写成 0+30 + 3。00 是齐次方程的解,33 是让非齐次方程成立的那个“特殊”解。

也就是:非齐次的解 = 齐次的解 + 一个非齐次的解。

先停一下,想一想:这是不是碰巧?换一个方程、甚至换成微分方程,还成立吗?

不是碰巧,这是线性的必然结果。道理是这样的:

设 y∗y^* 是非齐次方程的一个解(随便哪个都行)。对任意非齐次解 yy,把它们相减,看 y−y∗y - y^* 满足什么。

(为什么要断言这个 y∗y^* 一定存在?因为我们解的本来就是“有解”的方程——右边既然那样给出,就说明有对应的函数能让它成立,那个函数就是 y∗y^*。)

因为左边是线性的,“yy 代入左边”减“y∗y^* 代入左边”,等于“y−y∗y - y^* 代入左边”。而 yy 和 y∗y^* 代入非齐次方程,左边都等于右边的那个 ff。所以 y−y∗y - y^* 代入左边,得到 f−f=0f - f = 0——它满足齐次方程,是个齐次解。

于是 y−y∗y - y^* 就是某个齐次解,移项:

y=(齐次解)+y∗y = \text{(齐次解)} + y^*

非齐次解 = 齐次解 + 一个非齐次特解。

换句话说,非齐次通解由两块叠起来:一块是齐次通解,一块是一个非齐次特解。这个结构是线性的必然,不是碰巧。

拿个微分方程走一遍

道理再抽象,也得落到方程上。看 y′+2xy=3xy' + 2xy = 3x。

它的齐次版 y′+2xy=0y' + 2xy = 0,通解是 Ce−x2Ce^{-x^2},记作 Cy1Cy_1。

按上面的思路,主动找一个函数 y∗y^*,让它满足 (y∗)′+2xy∗=3x(y^*)' + 2xy^* = 3x——也就是非齐次方程的一个特解。现在原方程和 y∗y^* 的方程右边一样,两边相减:

(y−y∗)′+2x(y−y∗)=0(y - y^*)' + 2x(y - y^*) = 0

令 z=y−y∗z = y - y^*,则 zz 满足齐次方程 z′+2xz=0z' + 2xz = 0,所以 z=Cy1z = Cy_1,也就是

y=Cy1+y∗y = Cy_1 + y^*

整个推导只用了“求导、乘系数都是线性的”这一条。所以非齐次通解 = 齐次通解 + 非齐次特解,不是背下来的定理,是这一步代数算出来的结果。

(这个例子剩余部分——y∗y^* 具体长什么样、怎么把 u(x)u(x) 解出来——前三章的方法都能做,第 1 题的答案里有完整过程。)

这有什么用:把难题拆成两个小题

研究这个结构,图的是简化。

非齐次通解本来不好求。但有了这个结构,就拆成两件小事:

  1. 求齐次通解——上一章刚会;
  2. 求一个非齐次特解——只要求一个,不用求全部。

一个大难题,变成两个小题。后面三章,全是围着第 2 件事(怎么找那个特解)转。


六、常数变易法

前面说,非齐次通解 = 齐次通解 + 一个特解。齐次通解会了,就差那个特解。这一章开始,专攻“怎么找特解”。

先想一个更朴素的事:打包

平时对付“一堆东西”,常用的一招是打包:

共同点:把多个量聚合成一个量,看成一个整体,零散变集中,问题就简单了。这一招马上会用在找特解上。

先试老办法:分离变量

拿最一般的一阶非齐次方程 y′+p(x)y=q(x)y' + p(x)y = q(x) 开刀。

解齐次 y′+py=0y' + py = 0 时,用的是分离变量:dyy=−p dx\frac{dy}{y} = -p\,dx,积分得 y=Ce−∫p dxy = C e^{-\int p\,dx}。现在非齐次,还这么干行不行?试试。

两边除以 yy:

y′y+p=qy\frac{y'}{y} + p = \frac{q}{y}

对 xx 积分:

ln⁡y+∫p dx=∫qy dx\ln y + \int p\,dx = \int \frac{q}{y}\,dx

移项、取指数:

y=e∫qy dx⋅e−∫p dxy = e^{\int\frac{q}{y}\,dx} \cdot e^{-\int p\,dx}

看这个结果,拆成两半:

那好办:给它起个名字,记成 u(x)u(x)。于是

y=u(x) e−∫p dx=u(x) y1y = u(x)\, e^{-\int p\,dx} = u(x)\, y_1

分离变量走到这就走不动了——但路的形状被指出来了:解一定长成“齐次解乘一个 xx 的函数”。

先停一下,想一想:这个 u(x)u(x) 能解出来吗?

能。把这个形式代回原方程 y′+py=qy' + py = q,会发生一件好事:含 uu(不带撇)的项正好抵消,只剩 u′u' 的方程。

代入后,含 u 的项为什么抵消

算一下。y=uy1y = u y_1,y1=e−∫p dxy_1 = e^{-\int p\,dx}。用乘积求导:

y′=u′y1+uy1′y' = u' y_1 + u y_1'

代入 y′+py=qy' + py = q:

u′y1+uy1′+puy1=qu' y_1 + u y_1' + p u y_1 = q

把含 uu 的合到一起:

u′y1+u(y1′+py1)=qu' y_1 + u\big(y_1' + p y_1\big) = q

括号里 y1′+py1=0y_1' + p y_1 = 0,因为 y1y_1 是齐次解。于是:

u′y1=qu' y_1 = q

含 uu 的项消失了,只剩 u′u'。这个抵消不是巧合,是齐次结构决定的:y1y_1 是齐次解,y1′+py1=0y_1' + p y_1 = 0 恒成立,所以只要把解写成“y1y_1 乘一个函数”,那一堆含 uu 的项必然自动消掉。解出 u′=qy1u' = \frac{q}{y_1},再积一次分,uu 就出来了。代回 y=uy1y = u y_1,特解、通解全到手。

换个角度看:消元

同一个 y=u(x)y1y = u(x)y_1,还有另一个看法。

通解结构 y=Cy1+y∗y = C y_1 + y^* 里,有两个没定的东西:CC 和 y∗y^*。但这两项其实都挂在 y1y_1 上:Cy1C y_1 是 y1y_1 的常数倍,y∗y^* 也能写成 y1y_1 乘上“它自己除以 y1y_1”。

这不只是代数恒等变形,更关键的是把 y∗y^* 与 y1y_1 的比值看成一个整体——视角从“两个数相加”换到“一个函数乘以一个函数”。

既然两项都是 y1y_1 的倍数,就合并成一个 y1y_1 的倍数:

y=(C+y∗y1)y1=u(x) y1y = \left(C + \frac{y^*}{y_1}\right)y_1 = u(x)\, y_1

这一步是消元:两个未知合成一个。这也是“常数变易法”这个名字的由来——通解里的常数 CC,被并进了函数 u(x)u(x)。

两个角度,同一个结果,哪个顺眼用哪个。

二阶:多一个未知函数,补一个条件

二阶非齐次 y′′+P(x)y′+Q(x)y=R(x)y'' + P(x)y' + Q(x)y = R(x),齐次通解是 C1y1+C2y2C_1 y_1 + C_2 y_2。照上面的思路,设

y=u1(x)y1+u2(x)y2y = u_1(x) y_1 + u_2(x) y_2

现在有两个待定函数 u1,u2u_1, u_2,却只有一个方程。一个方程管不住两个未知量,会有无穷多组解——这反而是好事,因为我们只要一组,可以自己再补一个条件,挑最省事的。

代入时,含 u1,u2u_1, u_2 本身的项会被齐次结构消掉,麻烦的是导数。先求 y′y':

y′=u1y1′+u2y2′+(u1′y1+u2′y2)y' = u_1 y_1' + u_2 y_2' + (u_1' y_1 + u_2' y_2)

如果让 u1′y1+u2′y2=0u_1' y_1 + u_2' y_2 = 0,y′y' 就干净了,再求 y′′y'' 也不会冒出 u1′′,u2′′u_1'', u_2''。所以补的这个条件不是理论强制,只是所有合法选择里最省事的一个(其实也可以让 u1′y1+u2′y2u_1'y_1+u_2'y_2 等于别的,比如 11、22 或其它函数,但那样不好分离变量直接解出来,所以挑等于 00 这个)。

代入整理后,得到关于 u1′,u2′u_1', u_2' 的两个方程:

{u1′y1+u2′y2=0u1′y1′+u2′y2′=R(x)\begin{cases} u_1' y_1 + u_2' y_2 = 0 \\ u_1' y_1' + u_2' y_2' = R(x) \end{cases}

解出 u1′,u2′u_1', u_2',各积一次分,代回就得到特解。完整的一阶、二阶、nn 阶推导在进阶十八。

拿 y′′+y=tan⁡xy'' + y = \tan x 走一遍就是这个流程(完整计算见第 2 题答案)。二阶到 nn 阶的推广也一样:nn 阶要加 n−1n-1 个约束条件,把 uiu_i 的高阶导数都用同样手法令其为 00,最后只剩 ui′u_i' 的方程组。

什么时候能用

常数变易法对一切线性微分方程都有效——常系数、变系数都行,只要能求出齐次方程的 nn 个线性无关解。它唯一的短处是:最后那几个积分有时候积不出来。但方法本身是普适的。


七、待定系数法

常数变易法什么方程都能解,但每次都要积分,有时候积分还挺麻烦。有没有更省事的路子?右边长得“规矩”的时候,有。

有一类函数,怎么求导都跑不出这一类

先看个熟悉的类比:整数加整数、乘整数,结果还是整数——在整数的圈子里运算,结果跑不出去;但整数掺进小数,结果就带小数了。函数族也有这样的“圈子”。

先看一个简单的事实:

也就是说,有这么“一类函数”,怎么求导都跑不出这一类。

常系数方程左边干的无非三件事:求导、乘常数、相加。所以只要右边是某一类,左边折腾完还是这一类,特解也必然长成这一类。

先停一下,想一想:那特解该怎么找?

既然特解只能长成这一类,那就把“这一类里最一般的样子”写出来,带上待定系数,代进去配系数。这就是待定系数法。

照着右边设

看例子:y′′+3y′+2y=5e2xy'' + 3y' + 2y = 5e^{2x}。右边是 e2xe^{2x},指数类。特解也应该是个指数,设

y∗=Ae2xy^* = A e^{2x}

代入:

(4A+6A+2A)e2x=12Ae2x=5e2x(4A + 6A + 2A)e^{2x} = 12A e^{2x} = 5e^{2x}

得 A=512A = \frac{5}{12},特解 y∗=512e2xy^* = \frac{5}{12}e^{2x}。不用积分,纯代数。

右边花样多一点也一样:右边是 xe2xxe^{2x},特解就设成 (Ax+B)e2x(Ax+B)e^{2x};右边是 e2xsin⁡xe^{2x}\sin x,特解就设成 e2x(Asin⁡x+Bcos⁡x)e^{2x}(A\sin x + B\cos x)。总之右边是什么类,特解就照着那一类设,系数待定。

如果右边是好几个类的加和,比如 eλxPm(x)+eαxcos⁡βxe^{\lambda x}P_m(x) + e^{\alpha x}\cos\beta x,就用叠加原理:对每一部分分别求特解,再加起来。因为方程是线性的——若 yp1y_{p1} 满足 L(y)=f1L(y)=f_1,yp2y_{p2} 满足 L(y)=f2L(y)=f_2,则 yp1+yp2y_{p1}+y_{p2} 满足 L(y)=f1+f2L(y)=f_1+f_2。

(四种标准形式——指数乘多项式、指数乘三角、多项式乘三角、指数乘多项式乘三角——的完整推导在进阶十八。)

但有个坑:λ\lambda 正好是特征根

设 y∗=Ae2xy^* = Ae^{2x} 之前,得先看一眼:e2xe^{2x} 会不会是齐次解?如果是,那 Ae2xAe^{2x} 代进左边会得 00,配不出右边的 5e2x5e^{2x}。

这就是“λ\lambda 正好是特征根”的情形,得处理一下,见下一节。

为什么正好是特征根就要乘 xkx^k

拿 y′′+ay′+by=eλxPm(x)y'' + ay' + by = e^{\lambda x}P_m(x) 说(PmP_m 是 mm 次多项式,三角函数的情形放后面用复数)。设

y∗=eλxQ(x)y^* = e^{\lambda x} Q(x)

代入,约掉 eλxe^{\lambda x},得到

Q′′+(2λ+a)Q′+(λ2+aλ+b)Q=Pm(x)Q'' + (2\lambda + a)Q' + (\lambda^2 + a\lambda + b)Q = P_m(x)

注意,这是个恒等式——对任意 xx 都成立。既然两边恒等,那两边就得是同一个东西:左边是多项式,右边也是多项式,类型一样;而且次数也得一样,都是 mm 次。

看左边哪一项次数最高:Q′′Q'' 比 QQ 低两次、Q′Q' 低一次、QQ 不变。谁当最高次,取决于它的系数:

所以“λ\lambda 是特征根就乘 xkx^k”(kk 是重数)不是背的规则,是“恒等式两边次数必须一样”逼出来的:每消失一阶,QQ 就得多升一次补回来。完整推导和一个反例在进阶十八。

三角函数:用复数

右边含 sin⁡\sin、cos⁡\cos 时,直接设要同时设 Acos⁡x+Bsin⁡xA\cos x + B\sin x 两个系数,代进去分别比 cos⁡\cos 项、sin⁡\sin 项的系数,麻烦;右边要是还叠了指数、多项式,更麻烦。

第四章给过欧拉公式 eix=cos⁡x+isin⁡xe^{ix} = \cos x + i\sin x。用它把 sin⁡\sin、cos⁡\cos 合成一个复指数:sin⁡x\sin x 是 eixe^{ix} 的虚部,cos⁡x\cos x 是 eixe^{ix} 的实部。

于是把原方程换成复方程(右边换成 eixe^{ix}),解出复特解,再取虚部(对应 sin⁡\sin)或实部(对应 cos⁡\cos)就回来了。

先停一下,想一想:为什么取实部、虚部能还原?

为什么能取实部、虚部?这要从“为什么敢构造复方程”说起。

原方程是实系数的——左边只对函数求导、乘常数、相加,不含复数。于是对任意复函数 Y=u+ivY = u + iv,作用这个实系数算子 LL 时,实部和虚部各走各的:

L(Y)=L(u)+iL(v)L(Y) = L(u) + iL(v)

也就是先运算再取实部,等于先取实部再运算:

Re⁡(L(Y))=L(Re⁡Y),Im⁡(L(Y))=L(Im⁡Y)\operatorname{Re}(L(Y)) = L(\operatorname{Re}Y), \qquad \operatorname{Im}(L(Y)) = L(\operatorname{Im}Y)

再看构造出的复方程 L(Y)=Pm(x)eibxL(Y) = P_m(x)e^{ibx}。右边复指数 eibx=cos⁡bx+isin⁡bxe^{ibx} = \cos bx + i\sin bx,实部正是 cos⁡bx\cos bx、虚部正是 sin⁡bx\sin bx。对复方程两边取实部:

L(Re⁡Y)=Re⁡(Pmeibx)=Pmcos⁡bxL(\operatorname{Re}Y) = \operatorname{Re}(P_m e^{ibx}) = P_m\cos bx

这恰好就是原 cos⁡\cos 型方程!所以 YY 的实部 Re⁡Y\operatorname{Re}Y 正是原方程的特解。同理取虚部得 sin⁡\sin 型方程的特解。所以“取实部对应 cos⁡\cos 型、取虚部对应 sin⁡\sin 型”不是约定俗成,而是实系数算子与实部、虚部可交换带来的必然结果。

对简单的 sin⁡x\sin x、cos⁡x\cos x,用不用复数差别不大,算起来差不多快。但右边一旦复杂起来(比如同时含指数、多项式、三角函数),复数法的优势就很明显了。第 7 题(y′′+y=sin⁡xy''+y=\sin x)和第 8 题(y′′−2y′+2y=exxsin⁡xy''-2y'+2y=e^xx\sin x)的答案里,各有实数、复数、算子三种方法摆在一起对比,可以感受一下差距。

和常数变易法的关系

拿 y′−2y=xe2xy' - 2y = xe^{2x} 对比一下。

常数变易法:设 y=ue2xy = u e^{2x},代入得 u′=xu' = x,积分 u=12x2u = \frac12 x^2,特解 12x2e2x\frac12 x^2 e^{2x}。

待定系数法:λ=2\lambda = 2 正好是特征根,右边是 xe2xxe^{2x},特解设 x(Ax+B)e2xx(Ax+B)e^{2x},配系数得 A=12A = \frac12,B=0B = 0,也是 12x2e2x\frac12 x^2 e^{2x}。

殊途同归。区别在于:常数变易法靠积分,待定系数法靠“右边是什么类、照着猜”,用代数代替积分。

适用范围:待定系数法只对常系数、且右边是“多项式、指数、正弦余弦及其乘积”的方程好用;变系数会破坏“求导跑不出这一类”,不能直接用。(当然,右边不在这几类里,也不代表一定不能用——只是没法一眼看出该设成什么形式。)


八、积分因子法(降阶)

前面两种方法各有短板:待定系数法快,但右边必须落在那“一类”里;常数变易法不挑右边,但要解方程组、积好几次分。有没有一个折中的:不挑右边,又比常数变易法省事?有。

一阶的老办法:积分因子

一阶线性方程 y′+P(x)y=Q(x)y' + P(x)y = Q(x) 有个熟门熟路的解法。关键是:想把左边凑成一个导数。

回忆乘积求导:(μy)′=μ′y+μy′(\mu y)' = \mu' y + \mu y'。左边 y′+Pyy' + Py 乘个 μ\mu 上去,是 μy′+μPy\mu y' + \mu P y。要让它等于 (μy)′=μy′+μ′y(\mu y)' = \mu y' + \mu' y,就得让 μ′=μP\mu' = \mu P。

先停一下,想一想:μ′=μP\mu' = \mu P 怎么解?

它自己也是个微分方程,但好解:分离变量,dμμ=P dx\frac{d\mu}{\mu} = P\,dx,积分得 μ=e∫P dx\mu = e^{\int P\,dx}。

于是两边乘这个 μ\mu,方程变成:

(μy)′=μQ(\mu y)' = \mu Q

左边是个导数的原样,一积分,yy 就出来了。

二阶怎么用:先降阶

到了二阶常系数 y′′+ay′+by=f(x)y'' + ay' + by = f(x),积分因子好像使不上劲了。为什么?因为左边多了 y′′y'',凑不成一个导数。

但换个角度想:要是能把二阶降成一阶,积分因子不就又能用了吗?把不会的高阶,变成会的一阶——这又是化归。

怎么降?关键在特征方程 r2+ar+b=0r^2 + ar + b = 0。它在复数域总能因式分解:

r2+ar+b=(r−r1)(r−r2)r^2 + ar + b = (r - r_1)(r - r_2)

而 (r−r1)(r−r2)=r(r−r2)−r1(r−r2)(r - r_1)(r - r_2) = r(r - r_2) - r_1(r - r_2)。把 rr 对应“求导”、r2r^2 对应“求两次导”、常数对应“乘 yy”,这个恒等式搬到方程上就是:

y′′+ay′+by=(y′′−r2y′)−r1(y′−r2y)y'' + ay' + by = (y'' - r_2 y') - r_1(y' - r_2 y)

注意:y′′−r2y′=(y′−r2y)′y'' - r_2 y' = (y' - r_2 y)'。把 y′−r2yy' - r_2 y 打包成一个整体 YY:

Y=y′−r2yY = y' - r_2 y

方程就变成关于 YY 的一阶方程:

Y′−r1Y=f(x)Y' - r_1 Y = f(x)

降阶成功。接下来对 YY 用积分因子法解出 YY,再解 y′−r2y=Yy' - r_2 y = Y(又是一个一阶),yy 就出来了。整道题变成求两个积分。

(特征根是复数时,流程照走——代数恒等式不挑实复。比如 y′′+y=f(x)y''+y=f(x),特征方程 r2+1=0r^2+1=0,根是 ±i\pm i:

Y=y′−r2y=y′+iy,Y′−r1Y=Y′−iY=f(x)Y = y'-r_2y = y'+iy, \qquad Y'-r_1Y = Y'-iY = f(x)

但到这里就没实根那么轻松了。积分因子变成复指数 e−ixe^{-ix},两边乘上去:

(e−ixY)′=e−ixf(x)(e^{-ix}Y)' = e^{-ix}f(x)

右边是复的,积分不再是“找一个实函数的原函数”,而是复积分——积出来的 YY 是复函数;再解 y′+iy=Yy'+iy=Y,又是一次复积分,最终得到复的 yy。因为原方程是实系数的,最后对复的 yy 取实部,就得到实解。所以复数根时积分因子法依然能用——实根时是实积分,复根时是复积分加上最后的取实部。想看它有多麻烦,可拿 y′′+y=sin⁡xy''+y=\sin x 试进阶二十第 7 题的方法四。)

一个例子:右边不“规矩”

解 y′′+3y′+2y=1ex+1y'' + 3y' + 2y = \frac{1}{e^x + 1}。

右边 1ex+1\frac{1}{e^x+1} 不是多项式、指数、正余弦的组合,待定系数法没辙。但积分因子法不挑,照走。

特征方程 r2+3r+2=0r^2 + 3r + 2 = 0,因式分解 (r+1)(r+2)=0(r+1)(r+2) = 0,两个根 −1-1、−2-2。取 r1=−1r_1 = -1、r2=−2r_2 = -2,打包 Y=y′+2yY = y' + 2y。代入:

Y′+Y=1ex+1Y' + Y = \frac{1}{e^x + 1}

一阶了。两边乘积分因子 exe^x:

(exY)′=exex+1(e^x Y)' = \frac{e^x}{e^x + 1}

(为什么乘这类东西?因为 (e−r1xY)′=e−r1x(Y′−r1Y)(e^{-r_1x}Y)' = e^{-r_1x}(Y'-r_1Y)——乘上去之后,左边恰好凑成一个整体导数。这正是积分因子法的全部原理。)

积分:

Y=e−xln⁡(ex+1)Y = e^{-x}\ln(e^x + 1)

再解 y′+2y=e−xln⁡(ex+1)y' + 2y = e^{-x}\ln(e^x+1),乘积分因子 e2xe^{2x}:

(e2xy)′=exln⁡(ex+1)(e^{2x} y)' = e^x \ln(e^x+1)

积分(这一步用分部积分,具体过程见进阶十九):

y=(e−x+e−2x)ln⁡(ex+1)−e−xy = (e^{-x} + e^{-2x})\ln(e^x+1) - e^{-x}

其中 −e−x-e^{-x} 是齐次解,可并入任意常数。于是通解:

y=C1e−x+C2e−2x+(e−x+e−2x)ln⁡(ex+1)y = C_1 e^{-x} + C_2 e^{-2x} + (e^{-x}+e^{-2x})\ln(e^x+1)

全程只求了两个积分,没解方程组。

三种方法摆一起

方法 对右边 计算 前提
待定系数法 只挑“规矩”的 设形式、配系数 常系数 + 右边规矩
积分因子法 不挑 解一阶(求积分) 常系数 + 会因式分解
常数变易法 不挑 解方程组 任意 + 会解齐次

积分因子法补上了两者的短:像常数变易法一样不挑右边,又像待定系数法一样轻快(只解一阶,不解方程组)。泛用性比待定系数法好,计算比常数变易法少——这正是我们想要的那个“中间方案”。


九、那些换元是怎么来的

前面都是线性方程。课本上还有一堆非线性、变系数的方程,解法里动不动就是一句“作变换”。这些变换是怎么想出来的?这一章拆三个。

先说明:为什么前面都守着“线性”

前面反复强调线性,是因为“非齐次 = 齐次 + 特解”这个结构、以及常数变易法、待定系数法,全都依赖线性性。非线性方程就没这么幸运了。

举个反例:y′+y2=1y' + y^2 = 1,它有一个特解 y∗=1y^* = 1。仿照线性方程的做法,设 z=y−1z = y - 1,代入:

z′+z2+2z=0z' + z^2 + 2z = 0

这不是线性齐次方程(那个 z2z^2 是麻烦),无法得到“非齐次 = 齐次 + 特解”的结构。

根源在于:线性性保证 L(y)−L(y∗)=L(y−y∗)L(y) - L(y^*) = L(y - y^*)。没有它,做差之后合不回去,就变不出齐次方程。所以非线性方程一般极难求解,很多甚至求不出解析解。接下来要讲的伯努利、黎卡提,是少数能“化非线性为线性”的特例——并不是每个非线性方程都能这么化。

伯努利方程:换元 z=y1−nz = y^{1-n}

伯努利方程:

y′+P(x)y=Q(x)yny' + P(x)y = Q(x)y^n

书里通常直接来一句“令 z=y1−nz = y^{1-n}”。这个换元不是凭空来的。

先看它哪里不线性:左边 yy、y′y' 都是一次,右边却是 nn 次,次数对不齐。线性方程右边应该是不含 yy 的(关于 yy 的零次)。

目标很明确:把右边的 yny^n 消掉。

先停一下,想一想:怎么消掉一个 yny^n?

最朴素的手段:两边同乘 yky^k,看能不能把次数配平:

y′yk+P(x)yk+1=Q(x)yn+ky' y^k + P(x) y^{k+1} = Q(x) y^{n+k}

左边第一项 y′yky' y^k 正好是 yk+1k+1\frac{y^{k+1}}{k+1} 的导数(差个常数)。把 yk+1y^{k+1} 看成一个整体,左边就变成线性的样子:

(yk+1)′+(k+1)P(x)yk+1=(k+1)Q(x)yn+k(y^{k+1})' + (k+1)P(x) y^{k+1} = (k+1)Q(x) y^{n+k}

现在右边还剩 yn+ky^{n+k}。要它变成“零次”(不含 yy),就得 n+k=0n + k = 0,也就是 k=−nk = -n。代进去:

(y1−n)′+(1−n)P(x)y1−n=(1−n)Q(x)(y^{1-n})' + (1-n)P(x) y^{1-n} = (1-n)Q(x)

令 z=y1−nz = y^{1-n},就成了标准的一阶线性方程:

z′+(1−n)P(x)z=(1−n)Q(x)z' + (1-n)P(x) z = (1-n)Q(x)

回头看,z=y1−nz = y^{1-n} 这个“巧妙”换元,本质就是“乘 y−ny^{-n} 把右边的 yny^n 消掉、顺便把 y′y−ny'y^{-n} 吸收成 y1−ny^{1-n} 的导数”。消掉非线性项、凑出线性形式,换元自然就出来了。具体例子见进阶二十。

黎卡提方程:换元 y=y∗+1uy = y^* + \frac{1}{u}

黎卡提方程:

y′=P(x)y2+Q(x)y+R(x)y' = P(x)y^2 + Q(x)y + R(x)

非线性项是 y2y^2。书上的解法:先找一个特解 y∗y^*,再设 y=y∗+1uy = y^* + \frac{1}{u}。为什么?

还是“把非线性变线性”,这次目标是消掉 y2y^2。

已知 y∗y^* 满足 y∗′=P(x)y∗2+Q(x)y∗+R(x){y^*}' = P(x){y^*}^2 + Q(x)y^* + R(x)。用原方程减掉 y∗y^* 的方程,y2y^2 和 y∗2{y^*}^2 相减可以因式分解:

(y−y∗)′=P(x)(y2−y∗2)+Q(x)(y−y∗)(y - y^*)' = P(x)(y^2 - {y^*}^2) + Q(x)(y - y^*)

令 z=y−y∗z = y - y^*,用平方差 y2−y∗2=(y−y∗)(y+y∗)y^2 - {y^*}^2 = (y-y^*)(y+y^*):

z′=P(x)z(y+y∗)+Q(x)zz' = P(x) z (y + y^*) + Q(x) z

而 y+y∗=(y−y∗)+2y∗=z+2y∗y + y^* = (y - y^*) + 2y^* = z + 2y^*,于是:

z′=P(x)z(z+2y∗)+Q(x)z=P(x)z2+(2P(x)y∗+Q(x))zz' = P(x) z (z + 2y^*) + Q(x) z = P(x) z^2 + (2P(x)y^* + Q(x)) z

这是一个伯努利方程(有 z2z^2 项)。伯努利我们已经会了:乘 z−2z^{-2} 消掉 z2z^2,也就是换元

u=1z,z′=−u′u2u = \frac{1}{z}, \qquad z' = -\frac{u'}{u^2}

代入 z′=Pz2+(2Py∗+Q)zz' = Pz^2 + (2Py^*+Q)z:

−u′u2=P⋅1u2+(2Py∗+Q)⋅1u-\frac{u'}{u^2} = P\cdot\frac{1}{u^2} + (2Py^*+Q)\cdot\frac{1}{u}

两边乘 −u2-u^2、整理:

u′+(2P(x)y∗+Q(x))u+P(x)=0u' + (2P(x)y^* + Q(x))u + P(x) = 0

这是一个一阶线性微分方程,解出 uu 再代回 y=y∗+1uy = y^* + \frac1u 就行。

所以 y=y∗+1uy = y^* + \frac{1}{u} 这个“一步到位”的换元,其实是两步:先做差(消掉 R(x)R(x)、把 y2y^2 因式分解),再套伯努利的标准换元 u=1zu = \frac{1}{z}。书里合成了一步,就显得像魔术。

欧拉方程:换元 x=etx = e^t

欧拉方程:

x2y′′+pxy′+qy=0x^2 y'' + p x y' + q y = 0

系数是 xx 的幂,是变系数。书上的换元是 x=etx = e^t。为什么?

想法还是“打包”:把变化的系数和导数绑在一起,凑成常系数。

观察式子,xx 的幂次和导数的阶数正好相同:x2y′′x^2 y''、x1y′x^1 y'、x0yx^0 y。而 xy′xy' 有个漂亮的变形:

xy′=xdydx=dydxx=dydln⁡xxy' = x\frac{dy}{dx} = \frac{dy}{\frac{dx}{x}} = \frac{dy}{d\ln x}

先停一下,想一想:这个变形说明了什么?

它说明:乘 xx 再对 xx 求导,等于对 ln⁡x\ln x 求导。那把 ln⁡x\ln x 看成一个新变量 tt,就有 xy′=dydtxy' = \frac{dy}{dt}——系数 xx 就被并进 tt 里了。

x2y′′x^2 y'' 也能这么处理。由 xy′=dydtxy' = \frac{dy}{dt} 知 y′=1xdydty' = \frac{1}{x}\frac{dy}{dt},再对 xx 求导(链式法则):

y′′=−1x2dydt+1x⋅1xd2ydt2=1x2(d2ydt2−dydt)y'' = -\frac{1}{x^2}\frac{dy}{dt} + \frac{1}{x}\cdot\frac{1}{x}\frac{d^2 y}{dt^2} = \frac{1}{x^2}\left(\frac{d^2 y}{dt^2} - \frac{dy}{dt}\right)

所以 x2y′′=d2ydt2−dydtx^2 y'' = \frac{d^2 y}{dt^2} - \frac{dy}{dt}。

(或者写成导数的形式,用 y′(x),y′′(x)y'(x),y''(x) 的记号:

y′′(x)=[y′(x)]′=[1xy′(t)]′=(1x)′y′(t)+1x[y′(t)]′=−1x2y′(t)+1x⋅y′′(t)⋅1x=1x2[y′′(t)−y′(t)]y''(x) = [y'(x)]' = \left[\frac{1}{x}y'(t)\right]' = \left(\frac{1}{x}\right)'y'(t) + \frac{1}{x}[y'(t)]' = -\frac{1}{x^2}y'(t) + \frac{1}{x}\cdot y''(t)\cdot\frac{1}{x} = \frac{1}{x^2}[y''(t)-y'(t)]

其中 [y′(t)]′[y'(t)]' 是对 xx 求导,[y′(t)]′=y′′(t)⋅t′=y′′(t)⋅1x[y'(t)]' = y''(t)\cdot t' = y''(t)\cdot\frac{1}{x}。两种写法一个结果。)

代入原方程,全变成对 tt 的常系数方程:

d2ydt2+(p−1)dydt+qy=0\frac{d^2 y}{dt^2} + (p-1)\frac{dy}{dt} + qy = 0

所以 x=etx = e^t 的本质:发现 xy′=dydln⁡xxy' = \frac{dy}{d\ln x},于是用 t=ln⁡xt = \ln x 把“乘 xx 再求导”翻译成“对 tt 求导”,系数就变常数了。三阶以上的规律 xky(k)=D(D−1)⋯(D−k+1)yx^k y^{(k)} = D(D-1)\cdots(D-k+1)y 见进阶十六。

一般的变系数方程

欧拉方程能换元,是因为它的系数和导数阶数“配套”。一般的二阶变系数方程 y′′+P(x)y′+Q(x)y=0y'' + P(x)y' + Q(x)y = 0 没这么整齐,也就没有通法。

这种时候只能“试”:先试指数 eλxe^{\lambda x},不行再试幂函数 xkx^k,看能不能试出一个齐次解 y1y_1。有了一个 y1y_1,就能用刘维尔公式造出另一个线性无关解 y2y_2(见进阶十三)。齐次通解凑齐后,再用常数变易法求非齐次特解。变系数实例见进阶二十。


小结

从 5−35-3 到 y′+2xy=3xy'+2xy=3x,从 2+2+2+22+2+2+2 的打包到 y=u(x)y1y=u(x)y_1,从整数封闭性到 y∗=Ae2xy^*=Ae^{2x}——贯穿始终的都是化归。

回头看,整篇只做了一件事:把不会的变成会的。

这三条路,正好对应开头说的化归三种走法:常数变易法把“加”打包成“乘”,是换个角度;待定系数法把特解看成几个基础形状的叠加,是有限叠加;积分因子法把高阶一层层降下来,是不断分解。

换个说法,三个方法各自出发的地方也不一样:常数变易法从解空间的基底出发(把通解里的常数变易成函数),待定系数法从非齐次项的形式出发(照着右边猜),积分因子法则把高阶降成一阶。它们做的都是同一件事:把非齐次拉回齐次,把高阶降成一阶。

每一步都不是灵光一闪,是顺着化归这个念头走出来的。而这个念头,其实在你第一次把减法想成加法时就有了。下面转入进阶:完整的推导、更多例子和练习,用到时再翻。


进阶

十、nn 阶推广

nn 阶常系数齐次方程 any(n)+an−1y(n−1)+⋯+a0y=0a_n y^{(n)} + a_{n-1} y^{(n-1)} + \cdots + a_0 y = 0,同样拿 y=erxy = e^{rx} 去试,得到 nn 次特征方程:

anrn+an−1rn−1+⋯+a0=0a_n r^n + a_{n-1} r^{n-1} + \cdots + a_0 = 0

它在复数域恰有 nn 个根(重根按重数计),规则和二阶一样:

这些解线性组合起来,正好凑出含 nn 个独立常数的通解。

精确计数一下:设互异实根有 ii 个,记为 r1,…,rir_1,\dots,r_i,各对应一个解,共 ii 个;重实根有 jj 个,记为 ri+1,…,ri+jr_{i+1},\dots,r_{i+j},重数分别是 k1,…,kjk_1,\dots,k_j,共对应 ∑l=1jkl\sum_{l=1}^{j}k_l 个解;共轭复根对有 mm 对 α1±iβ1,…,αm±iβm\alpha_1\pm i\beta_1,\dots,\alpha_m\pm i\beta_m,重数分别是 kj+1,…,kj+mk_{j+1},\dots,k_{j+m},共对应 2∑l=1mkj+l2\sum_{l=1}^{m}k_{j+l} 个解。总数

i+∑l=1jkl+2∑l=1mkj+l=ni+\sum_{l=1}^{j}k_l + 2\sum_{l=1}^{m}k_{j+l} = n

把每个根都写成因式(每对共轭复根合成一个二次因式:(r−α−iβ)(r−α+iβ)=r2−2αr+(α2+β2)(r-\alpha-i\beta)(r-\alpha+i\beta)=r^2-2\alpha r+(\alpha^2+\beta^2)),完整特征方程就是:

(r−r1)⋯(r−ri)(r−ri+1)k1⋯(r−ri+j)kj[r2−2α1r+(α12+β12)]kj+1⋯[r2−2αmr+(αm2+βm2)]kj+m=0(r-r_1)\cdots(r-r_i)(r-r_{i+1})^{k_1}\cdots(r-r_{i+j})^{k_j}\big[r^2-2\alpha_1 r+(\alpha_1^2+\beta_1^2)\big]^{k_{j+1}}\cdots\big[r^2-2\alpha_m r+(\alpha_m^2+\beta_m^2)\big]^{k_{j+m}} = 0

每个括号的 kk 次方都对应 kk 个解(共轭复根那个括号对应 2k2k 个),加起来的个数正好是 nn。

正好凑齐 nn 个线性无关解。

其中 r1,…,rir_1,\dots,r_i 是互异实根,ri+1,…,ri+jr_{i+1},\dots,r_{i+j} 是重实根(重数 k1,…,kjk_1,\dots,k_j),α1±iβ1,…,αm±iβm\alpha_1\pm i\beta_1,\dots,\alpha_m\pm i\beta_m 是共轭复根对(重数 kj+1,…,kj+mk_{j+1},\dots,k_{j+m})。每一项对应一批解,全部加起来正好 nn 个。

十一、重根的差商极限(完整推导)

正文里说,重根时第二个解来自差商的极限。这里补完整。

两个不等根 r1≠r2r_1 \neq r_2 时,er2x−er1xr2−r1\frac{e^{r_2 x} - e^{r_1 x}}{r_2 - r_1} 是解(两个解的线性组合)。让 r2→r1=rr_2 \to r_1 = r,这是个 00\frac00 型极限。

设 t=r2−r1t = r_2 - r_1,则 r2=r1+tr_2 = r_1 + t:

er2x−er1xr2−r1=e(r1+t)x−er1xt=er1x⋅etx−1t\frac{e^{r_2 x} - e^{r_1 x}}{r_2 - r_1} = \frac{e^{(r_1+t)x} - e^{r_1 x}}{t} = e^{r_1 x}\cdot\frac{e^{tx}-1}{t}

当 t→0t \to 0,etx−1t→x\frac{e^{tx}-1}{t} \to x(洛必达:分子分母对 tt 求导,xetx1→x\frac{x e^{tx}}{1} \to x)。注意这里 tt 是变量,xx 是常量。

所以:

lim⁡r2→rer2x−er1xr2−r1=xerx\lim_{r_2 \to r} \frac{e^{r_2 x} - e^{r_1 x}}{r_2 - r_1} = x e^{rx}

这正是重根的第二个解。

换个角度:把 erxe^{rx} 对参数 rr 求导,∂∂rerx=xerx\frac{\partial}{\partial r} e^{rx} = x e^{rx}。差商取极限,本质上就是“对参数求导”。

还有一个角度:直接用常数变易法(第六章那招)。已知 y1=erxy_1 = e^{rx} 是一个解,设第二个解 y2=u(x)erxy_2 = u(x)e^{rx}。求导:

y2′=u′erx+urerx,y2′′=u′′erx+2u′rerx+ur2erxy_2' = u'e^{rx} + u r e^{rx}, \qquad y_2'' = u''e^{rx} + 2u'r e^{rx} + u r^2 e^{rx}

代入 y′′+ay′+by=0y''+ay'+by=0,按 u,u′,u′′u,u',u'' 合并:

u(y1′′+ay1′+by1)+u′(2y1′+ay1)+u′′y1=0u(y_1''+ay_1'+by_1) + u'(2y_1'+ay_1) + u''y_1 = 0

y1y_1 是齐次解,第一项为 00;两根重合时 r=−a2r = -\frac a2,即 2r+a=02r+a=0,所以 2y1′+ay1=(2r+a)y1=02y_1'+ay_1 = (2r+a)y_1 = 0,第二项也为 00。只剩 u′′y1=0u''y_1 = 0,即 u′′=0u'' = 0。取最简单的 u=xu = x,得 y2=xerxy_2 = xe^{rx}。

这跟差商取极限殊途同归,也顺便看出“常数变易”这个名字的又一来源:求重根第二个解时,把 erxe^{rx} 前的常数换成了函数 uu。

十二、复数根与欧拉公式(完整过程)

正文里用欧拉公式把复解凑成实解,这里补完整。

欧拉公式 eiθ=cos⁡θ+isin⁡θe^{i\theta} = \cos\theta + i\sin\theta。对共轭复根 r=α±iβr = \alpha \pm i\beta,两个复解:

Y1=e(α+iβ)x=eαx(cos⁡βx+isin⁡βx)Y_1 = e^{(\alpha + i\beta)x} = e^{\alpha x}(\cos\beta x + i\sin\beta x)Y2=e(α−iβ)x=eαx(cos⁡βx−isin⁡βx)Y_2 = e^{(\alpha - i\beta)x} = e^{\alpha x}(\cos\beta x - i\sin\beta x)

相加、相减:

Y1+Y2=2eαxcos⁡βx,Y1−Y2=2ieαxsin⁡βxY_1 + Y_2 = 2 e^{\alpha x}\cos\beta x, \qquad Y_1 - Y_2 = 2i e^{\alpha x}\sin\beta x

所以:

y1=Y1+Y22=eαxcos⁡βx,y2=Y1−Y22i=eαxsin⁡βxy_1 = \frac{Y_1 + Y_2}{2} = e^{\alpha x}\cos\beta x, \qquad y_2 = \frac{Y_1 - Y_2}{2i} = e^{\alpha x}\sin\beta x

由叠加原理,Y1,Y2Y_1, Y_2 是解,y1,y2y_1, y_2 是它们的线性组合,所以也是解。又因为 y1y2=cot⁡βx\frac{y_1}{y_2} = \cot\beta x 不是常数,y1,y2y_1, y_2 线性无关,能当基础解组。

注:通解里的 C1,C2C_1, C_2,看题目要求取实数还是复数——要求实解就取实数,允许复数解就取复数。


十三、刘维尔公式

刘维尔公式用于:已知 nn 阶方程前 n−1n-1 个线性无关的齐次解,求第 nn 个;在二阶里,就是已知一个齐次解 y1y_1,求另一个线性无关解 y2y_2(即 y2≠Cy1y_2 \neq Cy_1,CC 是常数)。

已知二阶齐次方程 y′′+p(x)y′+q(x)y=0y'' + p(x)y' + q(x)y = 0 的一个非零解 y1y_1,求 y2y_2。

齐次方程的通解形如 Cy1Cy_1,但只给了一个独立常数。为了得到第二个独立解,模仿常数变易法的思想,把常数 CC 变易成函数 u(x)u(x),设 y2=u(x)y1y_2 = u(x)y_1。求导:

y2′=u′y1+uy1′,y2′′=u′′y1+2u′y1′+uy1′′y_2' = u'y_1 + uy_1', \qquad y_2'' = u''y_1 + 2u'y_1' + uy_1''

代入方程 y′′+p(x)y′+q(x)y=0y''+p(x)y'+q(x)y=0,按 u,u′,u′′u,u',u'' 合并:

u′′y1+2u′y1′+uy1′′+p(u′y1+uy1′)+quy1=0u''y_1 + 2u'y_1' + uy_1'' + p(u'y_1 + uy_1') + quy_1 = 0u′′y1+u′(2y1′+py1)+u(y1′′+py1′+qy1)=0u''y_1 + u'(2y_1'+py_1) + u(y_1''+py_1'+qy_1) = 0

因为 y1y_1 是齐次解,y1′′+py1′+qy1=0y_1''+py_1'+qy_1=0,含 uu 的项整个消掉,只剩:

y1u′′+(2y1′+py1)u′=0y_1 u'' + (2y_1' + p y_1) u' = 0

两边除以 y1y_1,得 u′′+(2y1′y1+p)u′=0u'' + \left(2\frac{y_1'}{y_1}+p\right)u' = 0。令 v=u′v = u',降成可分离变量的一阶方程:

dvv=−(2y1′y1+p)dx\frac{dv}{v} = -\left(2\frac{y_1'}{y_1} + p\right)dx

积分:ln⁡∣v∣=−2ln⁡∣y1∣−∫p dx+C1\ln|v| = -2\ln|y_1| - \int p\,dx + C_1,去对数得

u′(x)=e−∫p(x)dxy12(x)u'(x) = \frac{e^{-\int p(x)dx}}{y_1^2(x)}

取 C1=1C_1=1(只需要一个线性无关的特解,常数倍数可被通解中的任意常数吸收),再积一次、取积分常数 C2=0C_2=0:

y2(x)=y1(x)∫e−∫p(x)dxy12(x) dxy_2(x) = y_1(x)\int \frac{e^{-\int p(x)dx}}{y_1^2(x)}\,dx

这就是二阶的刘维尔公式。

十四、朗斯基行列式

先补一个概念:行列式。二阶行列式是四个数摆成两行两列,算一个值:

∣abcd∣=ad−bc\begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad - bc

也就是主对角线(a,da,d)乘积减副对角线(b,cb,c)乘积。三阶、更高阶是类似的推广,下面主要用二阶,nn 阶不展开。

朗斯基行列式,就是拿一组函数和它们的导数,排成这样的“竖线框”,用来判断这组函数是否线性无关。

定义

nn 个函数 y1,…,yny_1, \dots, y_n 的朗斯基行列式,是它们和它们前 n−1n-1 阶导数排成的 n×nn\times n 行列式:

W(x)=∣y1y2⋯yny1′y2′⋯yn′⋮⋮⋮y1(n−1)y2(n−1)⋯yn(n−1)∣W(x) = \begin{vmatrix} y_1 & y_2 & \cdots & y_n \\ y_1' & y_2' & \cdots & y_n' \\ \vdots & \vdots & & \vdots \\ y_1^{(n-1)} & y_2^{(n-1)} & \cdots & y_n^{(n-1)} \end{vmatrix}

二阶最简单:W=y1y2′−y1′y2W = y_1 y_2' - y_1' y_2。

它回答什么:线性无关吗

(直观理解:行列式为零,意味着行向量(各阶导数)之间线性相关——这 nn 个函数“挤在一起”,彼此都能由对方组合出来,谁也没带来新方向;行列式非零,意味着它们张成了完整的 nn 维空间,谁也替代不了谁。)

为什么(二阶为例)

W=y1y2′−y1′y2W = y_1 y_2' - y_1' y_2。

(y2y1)′=y1y2′−y1′y2y12=Wy12≠0\left(\frac{y_2}{y_1}\right)' = \frac{y_1 y_2' - y_1' y_2}{y_1^2} = \frac{W}{y_1^2} \neq 0

所以 y2y1\frac{y_2}{y_1} 不是常数,y2y_2 不是 y1y_1 的常数倍,线性无关。

所以“线性无关”和“朗斯基行列式处处非零”是同一件事的两种说法。

在常数变易法中的作用

解 ui′u_i' 的线性方程组,它的系数排成的行列式正是 W(x)W(x)。yiy_i 线性无关 ⇒W≠0⇒\Rightarrow W \neq 0 \Rightarrow 方程组唯一可解。

为什么 W′=−p(x)WW' = -p(x)W

对二阶方程 y′′+p(x)y′+q(x)y=0y'' + p(x)y' + q(x)y = 0,y1,y2y_1, y_2 都是解,W=y1y2′−y1′y2W = y_1 y_2' - y_1' y_2。求导:

W′=y1′y2′+y1y2′′−y1′′y2−y1′y2′=y1y2′′−y1′′y2W' = y_1' y_2' + y_1 y_2'' - y_1'' y_2 - y_1' y_2' = y_1 y_2'' - y_1'' y_2

由方程 y′′=−py′−qyy'' = -py' - qy,得 y1′′=−py1′−qy1y_1'' = -py_1' - qy_1,y2′′=−py2′−qy2y_2'' = -py_2' - qy_2。代入:

W′=y1(−py2′−qy2)−(−py1′−qy1)y2=−p(y1y2′−y1′y2)=−pWW' = y_1(-py_2' - qy_2) - (-py_1' - qy_1)y_2 = -p(y_1 y_2' - y_1' y_2) = -pW

(中间 −qy1y2+qy1y2-qy_1 y_2 + qy_1 y_2 抵消。)

解这个一阶方程 W′=−pWW' = -pW,得 W=Ce−∫p dxW = Ce^{-\int p\,dx}——这正是刘维尔公式的来源(见进阶十三)。

推广到 nn 阶:y(n)+pn−1y(n−1)+⋯+p0y=0y^{(n)}+p_{n-1}y^{(n-1)}+\cdots+p_0y=0,WW 是基本解组排成的 n×nn\times n 行列式。把 WW 求导,由行列式的多线性(对每一行用乘积法则),等于“把每一行分别求导后所得行列式之和”:

W′=∑k=1nWk,Wk=把第 k 行求导后所得的行列式W'=\sum_{k=1}^{n}W_k,\qquad W_k=\text{把第 }k\text{ 行求导后所得的行列式}

所以 W′=−pn−1WW'=-p_{n-1}W。不管几阶,朗斯基行列式都满足 W′=−pn−1WW'=-p_{n-1}W(二阶就是 W′=−pWW'=-pW),解出来正是刘维尔公式。

反过来:已知解,反推方程

已知 nn 个线性无关解 y1,…,yny_1, \dots, y_n,能反推出它们所属的方程。把未知函数 yy 和已知解连同各阶导数排成行列式,令其为 00:

∣yy1⋯yny′y1′⋯yn′⋮⋮⋮y(n)y1(n)⋯yn(n)∣=0\begin{vmatrix} y & y_1 & \cdots & y_n \\ y' & y_1' & \cdots & y_n' \\ \vdots & \vdots & & \vdots \\ y^{(n)} & y_1^{(n)} & \cdots & y_n^{(n)} \end{vmatrix} = 0

按第一列展开,得到 yy 及其导数的线性组合等于 00,就是一个 nn 阶线性齐次方程;把 yy 换成任何一个 yiy_i,行列式两列相同、值为 00,所以 y1,…,yny_1, \dots, y_n 都是它的解。

(也可以把行和列对调:把 yy 的各阶导数排到第一行,其余各行依次放 y1,…,yny_1,\dots,y_n 的各阶导数。行列式有个性质——行和列对调后值不变,所以两种写法等价。对调后按第一行展开,第一行正好是 y,y′,…,y(n)y,y',\dots,y^{(n)},方程的形态一目了然。)

二阶例子:已知 y1=exy_1 = e^x,y2=e2xy_2 = e^{2x},反推方程:

∣yy′y′′exexexe2x2e2x4e2x∣=0\begin{vmatrix} y & y' & y'' \\ e^x & e^x & e^x \\ e^{2x} & 2e^{2x} & 4e^{2x} \end{vmatrix} = 0

按第一行展开、除以 e3xe^{3x},得 y′′−3y′+2y=0y'' - 3y' + 2y = 0。这正是以 ex,e2xe^x, e^{2x} 为基本解组(特征根 1,21,2)的那个方程。


十五、克拉默法则

解 nn 个方程、nn 个未知数的线性方程组(消元法能解的那种)。常数变易法解 ui′u_i' 正是用它。先说二阶,最清楚。

为什么成立(二阶为例)

二阶方程组 {a11x1+a12x2=b1a21x1+a22x2=b2\begin{cases} a_{11}x_1 + a_{12}x_2 = b_1 \\ a_{21}x_1 + a_{22}x_2 = b_2 \end{cases}。用消元法:第一式乘 a22a_{22}、第二式乘 a12a_{12},相减消去 x2x_2:

a22(a11x1+a12x2)−a12(a21x1+a22x2)=a22b1−a12b2a_{22}(a_{11}x_1 + a_{12}x_2) - a_{12}(a_{21}x_1 + a_{22}x_2) = a_{22}b_1 - a_{12}b_2(a11a22−a12a21)x1=a22b1−a12b2(a_{11}a_{22} - a_{12}a_{21})x_1 = a_{22}b_1 - a_{12}b_2

所以

x1=a22b1−a12b2a11a22−a12a21=∣b1a12b2a22∣∣a11a12a21a22∣x_1 = \frac{a_{22}b_1 - a_{12}b_2}{a_{11}a_{22} - a_{12}a_{21}} = \frac{\begin{vmatrix}b_1 & a_{12}\\b_2 & a_{22}\end{vmatrix}}{\begin{vmatrix}a_{11} & a_{12}\\a_{21} & a_{22}\end{vmatrix}}

分子正是“把系数行列式的第一列换成 b1,b2b_1,b_2”所得的行列式。x2x_2 同理(换第二列)。这就是克拉默法则:求哪个未知数,就把系数行列式的那一列换成右边那列数,再除以系数行列式。

例:解 {2x+y=5x−y=1\begin{cases}2x+y=5\\x-y=1\end{cases}。系数行列式 ∣211−1∣=2(−1)−1⋅1=−3\begin{vmatrix}2&1\\1&-1\end{vmatrix} = 2(-1)-1\cdot1 = -3。

x=∣511−1∣−3=−6−3=2,y=∣2511∣−3=−3−3=1x = \frac{\begin{vmatrix}5&1\\1&-1\end{vmatrix}}{-3} = \frac{-6}{-3} = 2, \qquad y = \frac{\begin{vmatrix}2&5\\1&1\end{vmatrix}}{-3} = \frac{-3}{-3} = 1

验证:2⋅2+1=52\cdot2+1=5,2−1=12-1=1,对。

在常数变易法里

求 ui′u_i',就把系数排成的行列式(朗斯基行列式)的第 ii 列换成右边那列数(0,…,0,f(x)0,\dots,0,f(x)),再除以 W(x)W(x)。

以二阶为例(解 y′′+y=sin⁡xy''+y=\sin x 时那个方程组):

{u1′cos⁡x+u2′sin⁡x=0−u1′sin⁡x+u2′cos⁡x=sin⁡x\begin{cases} u_1'\cos x + u_2'\sin x = 0 \\ -u_1'\sin x + u_2'\cos x = \sin x \end{cases}

系数排成的行列式 ∣cos⁡xsin⁡x−sin⁡xcos⁡x∣=cos⁡2x+sin⁡2x=1\begin{vmatrix}\cos x & \sin x\\-\sin x & \cos x\end{vmatrix} = \cos^2x+\sin^2x = 1。克拉默法则:

u1′=∣0sin⁡xsin⁡xcos⁡x∣1=−sin⁡2x,u2′=∣cos⁡x0−sin⁡xsin⁡x∣1=sin⁡xcos⁡xu_1' = \frac{\begin{vmatrix}0 & \sin x \\ \sin x & \cos x\end{vmatrix}}{1} = -\sin^2 x, \qquad u_2' = \frac{\begin{vmatrix}\cos x & 0 \\ -\sin x & \sin x\end{vmatrix}}{1} = \sin x\cos x

十六、算子法

把求导记成算子 D=ddxD = \frac{d}{dx},则 Dy=y′Dy = y',D2y=y′′D^2 y = y'',…… 常系数线性方程就能写成紧凑形式:

P(D)y=f(x)P(D) y = f(x)

其中 P(D)=anDn+⋯+a1D+a0P(D) = a_n D^n + \cdots + a_1 D + a_0 是关于 DD 的多项式。P(D)yP(D)y 的意思,就是对 yy 做“乘系数、求导、再求和”这一套固定操作。

基本性质:P(D)eλx=P(λ)eλxP(D)e^{\lambda x} = P(\lambda)e^{\lambda x}

对指数函数,一次求导 Deλx=λeλxDe^{\lambda x} = \lambda e^{\lambda x},两次 D2eλx=λ2eλxD^2 e^{\lambda x} = \lambda^2 e^{\lambda x},依此类推 Dkeλx=λkeλxD^k e^{\lambda x} = \lambda^k e^{\lambda x}。所以:

P(D)eλx=(anDn+⋯+a0)eλx=(anλn+⋯+a0)eλx=P(λ)eλxP(D)e^{\lambda x} = (a_n D^n + \cdots + a_0)e^{\lambda x} = (a_n \lambda^n + \cdots + a_0)e^{\lambda x} = P(\lambda)e^{\lambda x}

这就是“把 DD 换成 λ\lambda”的依据。它没有引入任何额外假设,只是把求导的规律写出来。

顺带说一下“封装”是什么意思:封装就是把“一步一步算”换成“当成一个整体对象来算”。待定系数法里,遇到 eλxe^{\lambda x} 就得一次次代入、提公因子、把导数换成 λ\lambda 的幂——算子法把这些机械操作打包成一条固定规则,用的时候直接套。

(这封装了什么?待定系数法里,猜特解含 eλxe^{\lambda x} 时,每次都要代入方程、提公因子 eλxe^{\lambda x}、把各阶导数换成 λ\lambda 的幂。性质 P(D)eλx=P(λ)eλxP(D)e^{\lambda x} = P(\lambda)e^{\lambda x} 把这一套一次性封装成:P(D)P(D) 作用在 eλxe^{\lambda x} 上,等同于把 DD 换成 λ\lambda 再乘 eλxe^{\lambda x}。)

纯指数型:逆算子公式

要解 P(D)y=eλxP(D)y = e^{\lambda x},想法是把算子“除过去”,写成 y=1P(D)eλxy = \frac{1}{P(D)}e^{\lambda x}。这里 1P(D)\frac{1}{P(D)} 是记号,表示“找一个函数 ypy_p 使 P(D)yp=eλxP(D)y_p = e^{\lambda x}”。

情形一:λ\lambda 不是特征根(P(λ)≠0P(\lambda) \neq 0)

由基本性质,P(D)eλx=P(λ)eλxP(D)e^{\lambda x} = P(\lambda)e^{\lambda x}。两边除以非零常数 P(λ)P(\lambda):

P(D)(1P(λ)eλx)=eλxP(D)\left(\frac{1}{P(\lambda)}e^{\lambda x}\right) = e^{\lambda x}

所以:

1P(D)eλx=1P(λ)eλx\frac{1}{P(D)}e^{\lambda x} = \frac{1}{P(\lambda)}e^{\lambda x}

(这封装了什么?待定系数法里,f=Aeλxf=Ae^{\lambda x} 且 λ\lambda 不是根时,要设 yp=Ceλxy_p=Ce^{\lambda x},代入得 CP(λ)eλx=AeλxCP(\lambda)e^{\lambda x}=Ae^{\lambda x},解出 C=A/P(λ)C=A/P(\lambda)。现在用一步代数求值——算一个数 P(λ)P(\lambda) 取倒数——就取代了“设→求导→消去→解 CC”整个流程。)

用起来就一句话:对 f=Aeλxf=Ae^{\lambda x} 这类(且 P(λ)≠0P(\lambda)\neq0),直接把 P(D)P(D) 写出来,用 λ\lambda 替换其中的 DD,取倒数乘上 AeλxAe^{\lambda x} 即可。

例:y′′+3y′+2y=5e2xy''+3y'+2y=5e^{2x}。P(D)=D2+3D+2P(D)=D^2+3D+2,P(2)=4+6+2=12≠0P(2)=4+6+2=12\neq0,所以 yp=5e2xP(2)=512e2xy_p=\frac{5e^{2x}}{P(2)}=\frac{5}{12}e^{2x}。

情形二:λ\lambda 是 kk 重特征根(P(λ)=P′(λ)=⋯=P(k−1)(λ)=0P(\lambda)=P'(\lambda)=\cdots=P^{(k-1)}(\lambda)=0,但 P(k)(λ)≠0P^{(k)}(\lambda)\neq0)

这时分母为 00,公式不能直接用。但基本性质 P(D)eλx=P(λ)eλxP(D)e^{\lambda x} = P(\lambda)e^{\lambda x} 是关于 λ\lambda 的恒等式,可以对 λ\lambda 求导:

P(D)(xeλx)=P′(λ)eλx+P(λ)xeλxP(D)(xe^{\lambda x}) = P'(\lambda)e^{\lambda x} + P(\lambda)xe^{\lambda x}

若 λ\lambda 是单根,P(λ)=0P(\lambda)=0、P′(λ)≠0P'(\lambda)\neq0,得

1P(D)eλx=1P′(λ)xeλx\frac{1}{P(D)}e^{\lambda x} = \frac{1}{P'(\lambda)}xe^{\lambda x}

若 λ\lambda 是二重根,对 λ\lambda 再求一次导:

P(D)(x2eλx)=P′′(λ)eλxP(D)(x^2 e^{\lambda x}) = P''(\lambda)e^{\lambda x}

得

1P(D)eλx=1P′′(λ)x2eλx\frac{1}{P(D)}e^{\lambda x} = \frac{1}{P''(\lambda)}x^2 e^{\lambda x}

更高重数同理:每多一重,对 λ\lambda 多求一次导、多乘一个 xx。归纳成:

1P(D)eλx=1P(k)(λ)xkeλx\frac{1}{P(D)}e^{\lambda x} = \frac{1}{P^{(k)}(\lambda)}x^k e^{\lambda x}

这正是待定系数法“乘 xkx^k”规则的代数解释。具体说:单根时,待定系数法设 yp=Cxeλxy_p=Cxe^{\lambda x},代入后含 CeλxCe^{\lambda x} 的项抵消,剩下 CP′(λ)eλx=eλxCP'(\lambda)e^{\lambda x}=e^{\lambda x},解出 C=1/P′(λ)C=1/P'(\lambda);二重根时设 Cx2eλxCx^2e^{\lambda x},系数由 P′′(λ)P''(\lambda) 决定。算子法直接通过对 λ\lambda 求导,自动完成“升次—比较系数”的全过程,不用每次列方程。

指数乘多项式:平移性质与级数展开

对 f(x)=eλxPm(x)f(x) = e^{\lambda x}P_m(x),用乘积求导法则能证明一个一般的平移性质:

P(D)(eλxv(x))=eλxP(D+λ)v(x)P(D)\big(e^{\lambda x}v(x)\big) = e^{\lambda x}P(D+\lambda)v(x)

证明:由 D(eλxv)=eλx(λv+v′)=eλx(D+λ)vD(e^{\lambda x}v) = e^{\lambda x}(\lambda v + v') = e^{\lambda x}(D+\lambda)v,累次作用得 Dk(eλxv)=eλx(D+λ)kvD^k(e^{\lambda x}v) = e^{\lambda x}(D+\lambda)^k v,从而 P(D)(eλxv)=eλxP(D+λ)vP(D)(e^{\lambda x}v) = e^{\lambda x}P(D+\lambda)v。这不过是把每次求导时 eλxe^{\lambda x} 提出的 λ\lambda 与 v′v' 合并的结果。

由平移性质,逆算子满足:

1P(D)eλxPm(x)=eλx1P(D+λ)Pm(x)\frac{1}{P(D)}e^{\lambda x}P_m(x) = e^{\lambda x}\frac{1}{P(D+\lambda)}P_m(x)

现在 1P(D+λ)\frac{1}{P(D+\lambda)} 是关于 DD 的有理分式。因为 Pm(x)P_m(x) 是 mm 次多项式,Dm+1Pm(x)=0D^{m+1}P_m(x) = 0,所以只需把 1P(D+λ)\frac{1}{P(D+\lambda)} 按 DD 的升幂展开到 DmD^m 项(用多项式除法或形式级数),然后每一项直接对多项式求导即可。

例:y′′−2y′+y=xe2xy'' - 2y' + y = xe^{2x}。P(D)=(D−1)2P(D) = (D-1)^2。

yp=1(D−1)2xe2x=e2x1(D+2−1)2x=e2x1(D+1)2xy_p = \frac{1}{(D-1)^2}xe^{2x} = e^{2x}\frac{1}{(D+2-1)^2}x = e^{2x}\frac{1}{(D+1)^2}x

把 (1+D)−2(1+D)^{-2} 展开为 1−2D+3D2−⋯1 - 2D + 3D^2 - \cdots,作用在 xx 上(一次函数,二阶及以上导数为 00):

(1−2D+3D2−⋯ )x=x−2(1 - 2D + 3D^2 - \cdots)x = x - 2

所以 yp=e2x(x−2)=(x−2)e2xy_p = e^{2x}(x-2) = (x-2)e^{2x}。这里的 x−2x-2 对应设 yp=(Ax+B)e2xy_p=(Ax+B)e^{2x} 时解出的 A=1,B=−2A=1, B=-2。

这套封装了什么? 待定系数法面对 eλxPm(x)e^{\lambda x}P_m(x) 时,要设 yp=eλxQ(x)y_p = e^{\lambda x}Q(x)(QQ 是系数待定的 mm 次多项式),代入约去 eλxe^{\lambda x},再比较同次幂系数解出各系数。算子法把这一整套封装成“把 1P(D+λ)\frac{1}{P(D+\lambda)} 展开、逐项作用在 Pm(x)P_m(x) 上”,展开式的系数就是要解出的那些系数,一步到位。

如何计算 1P(D+λ)\frac{1}{P(D+\lambda)}:只需展开到 DmD^m 项(Dm+1D^{m+1} 及以上作用在 mm 次多项式上得零)。

方法一(λ\lambda 不是特征根,P(λ)≠0P(\lambda)\neq0):把 P(D+λ)P(D+\lambda) 写成常数项加高阶项,P(D+λ)=P(λ)+Q(D)P(D+\lambda) = P(\lambda) + Q(D)(Q(D)Q(D) 是 DD 的幂次 ≥1\ge1 的项之和)。则

1P(D+λ)=1P(λ)⋅11+Q(D)P(λ)=1P(λ)(1−Q(D)P(λ)+(Q(D)P(λ))2−⋯ )\frac{1}{P(D+\lambda)} = \frac{1}{P(\lambda)}\cdot\frac{1}{1+\frac{Q(D)}{P(\lambda)}} = \frac{1}{P(\lambda)}\left(1 - \frac{Q(D)}{P(\lambda)} + \left(\frac{Q(D)}{P(\lambda)}\right)^2 - \cdots\right)

截断到 DmD^m 项即可。例:1(D+1)2=11+2D+D2=1−(2D+D2)+(2D+D2)2−⋯\frac{1}{(D+1)^2} = \frac{1}{1+2D+D^2} = 1 - (2D+D^2) + (2D+D^2)^2 - \cdots,截到 D1D^1 项是 1−2D1 - 2D。

方法二(λ\lambda 是 kk 重特征根,P(λ)=0P(\lambda)=0):此时 P(D+λ)P(D+\lambda) 的常数项为零,先提取公因子 DkD^k,P(D+λ)=DkR(D)P(D+\lambda) = D^k R(D)(R(0)≠0R(0)\neq0),则 1P(D+λ)=1Dk⋅1R(D)\frac{1}{P(D+\lambda)} = \frac{1}{D^k}\cdot\frac{1}{R(D)},其中 1Dk\frac{1}{D^k} 表示积分 kk 次,1R(D)\frac{1}{R(D)} 用方法一的级数算。

例:计算 1D2+D\frac{1}{D^2+D} 展开到 D1D^1 项。1D2+D=1D⋅11+D=1D(1−D+D2−⋯ )\frac{1}{D^2+D} = \frac{1}{D}\cdot\frac{1}{1+D} = \frac{1}{D}(1-D+D^2-\cdots),截到 D1D^1 项是 1D−1+D\frac{1}{D}-1+D。作用在 xx 上:1Dx−x+Dx=x22−x+1\frac{1}{D}x - x + Dx = \frac{x^2}{2}-x+1。

(说到底,计算 1P(D+λ)\frac{1}{P(D+\lambda)} 就是个代数操作:把“设 Q(x)Q(x)→代入→比较系数→解方程组”整个流程,换成了“展开算子→逐项求导”的机械计算。)

用泰勒展开证明重根公式:也可以用平移性质证明 λ\lambda 为 kk 重根的公式 1P(D)eλx=1P(k)(λ)xkeλx\frac{1}{P(D)}e^{\lambda x} = \frac{1}{P^{(k)}(\lambda)}x^k e^{\lambda x}。

设 P(D)P(D) 为 nn 次多项式,P(D)=∑j=0najDjP(D) = \sum_{j=0}^{n}a_j D^j(a0≠0a_0 \neq 0,若 a0=0a_0=0 先提取公因式)。P(D)P(D) 在 D=λD=\lambda 处的泰勒展开为

P(D)=∑j=0nP(j)(λ)j!(D−λ)jP(D) = \sum_{j=0}^{n}\frac{P^{(j)}(\lambda)}{j!}(D-\lambda)^j

由于 P(λ)=P′(λ)=⋯=P(k−1)(λ)=0P(\lambda)=P'(\lambda)=\cdots=P^{(k-1)}(\lambda)=0,P(k)(λ)≠0P^{(k)}(\lambda)\neq0,λ\lambda 是 kk 重根,所以

P(D)=∑j=knP(j)(λ)j!(D−λ)jP(D) = \sum_{j=k}^{n}\frac{P^{(j)}(\lambda)}{j!}(D-\lambda)^j

从而

P(D+λ)=∑j=knP(j)(λ)j!Dj=Dk∑j=knP(j)(λ)j!Dj−kP(D+\lambda) = \sum_{j=k}^{n}\frac{P^{(j)}(\lambda)}{j!}D^j = D^k\sum_{j=k}^{n}\frac{P^{(j)}(\lambda)}{j!}D^{j-k}

于是

1P(D)eλx=eλx1P(D+λ)1=eλx1Dk⋅1∑j=knP(j)(λ)j!Dj−k1\frac{1}{P(D)}e^{\lambda x} = e^{\lambda x}\frac{1}{P(D+\lambda)}1 = e^{\lambda x}\frac{1}{D^k}\cdot\frac{1}{\sum_{j=k}^{n}\frac{P^{(j)}(\lambda)}{j!}D^{j-k}}1

对 e0x=1e^{0x}=1 用纯指数公式(这里 λ=0\lambda=0),那坨算出来是 k!P(k)(λ)\frac{k!}{P^{(k)}(\lambda)},所以

1P(D)eλx=eλx⋅xkk!⋅k!P(k)(λ)=1P(k)(λ)xkeλx\frac{1}{P(D)}e^{\lambda x} = e^{\lambda x}\cdot\frac{x^k}{k!}\cdot\frac{k!}{P^{(k)}(\lambda)} = \frac{1}{P^{(k)}(\lambda)}x^k e^{\lambda x}

证毕。

三角函数型:复数封装

当非齐次项含 cos⁡βx\cos\beta x 或 sin⁡βx\sin\beta x 时,用欧拉公式 eiβx=cos⁡βx+isin⁡βxe^{i\beta x} = \cos\beta x + i\sin\beta x 转为复指数:cos⁡βx=Re⁡(eiβx)\cos\beta x = \operatorname{Re}(e^{i\beta x}),sin⁡βx=Im⁡(eiβx)\sin\beta x = \operatorname{Im}(e^{i\beta x})。解出复特解后取实部(cos⁡\cos 型)或虚部(sin⁡\sin 型)即可。

(这封装了什么?常规待定系数法处理 sin⁡/cos⁡\sin/\cos,要同时设 eαx(Acos⁡βx+Bsin⁡βx)e^{\alpha x}(A\cos\beta x+B\sin\beta x),代入后用三角恒等式展开、分别比 cos⁡\cos 和 sin⁡\sin 的系数、解出 A,BA,B,碰上特征根还要乘 xkx^k,很繁。算子法借助复数,把一对三角函数打包成一个复指数,直接套纯指数的逆算子公式,求特解变成复数求值和取实/虚部。)

例1:y′′+y=sin⁡xy'' + y = \sin x。对应复方程 Y′′+Y=eixY'' + Y = e^{ix},P(D)=D2+1P(D) = D^2 + 1,λ=i\lambda = i。P(i)=0P(i) = 0,求导 P′(D)=2DP'(D) = 2D,P′(i)=2i≠0P'(i) = 2i \neq 0,故

Yp=1D2+1eix=12ixeix=−i2x(cos⁡x+isin⁡x)=x2sin⁡x−ix2cos⁡xY_p = \frac{1}{D^2+1}e^{ix} = \frac{1}{2i}x e^{ix} = -\frac{i}{2}x(\cos x + i\sin x) = \frac{x}{2}\sin x - i\frac{x}{2}\cos x

取虚部得 yp=−x2cos⁡xy_p = -\frac{x}{2}\cos x。

例2:y′′+4y=excos⁡2xy'' + 4y = e^x\cos 2x。对应复方程 Y′′+4Y=e(1+2i)xY'' + 4Y = e^{(1+2i)x},P(D)=D2+4P(D) = D^2 + 4,λ=1+2i\lambda = 1+2i。P(1+2i)=(1+2i)2+4=1+4i≠0P(1+2i) = (1+2i)^2 + 4 = 1+4i \neq 0,故

Yp=1D2+4e(1+2i)x=11+4ie(1+2i)xY_p = \frac{1}{D^2+4}e^{(1+2i)x} = \frac{1}{1+4i}e^{(1+2i)x}

把 11+4i\frac{1}{1+4i} 有理化:1−4i(1+4i)(1−4i)=1−4i17\frac{1-4i}{(1+4i)(1-4i)} = \frac{1-4i}{17}。于是

Yp=1−4i17ex(cos⁡2x+isin⁡2x)Y_p = \frac{1-4i}{17}e^x(\cos 2x + i\sin 2x)

乘开、分开实虚:

Yp=117ex(cos⁡2x+4sin⁡2x)+i117ex(sin⁡2x−4cos⁡2x)Y_p = \frac{1}{17}e^x(\cos 2x + 4\sin 2x) + i\frac{1}{17}e^x(\sin 2x - 4\cos 2x)

取实部得 yp=117ex(cos⁡2x+4sin⁡2x)y_p = \frac{1}{17}e^x(\cos 2x + 4\sin 2x)。整个过程只做了一次复数除法,没展开任何 sin⁡,cos⁡\sin,\cos。

简化技巧:当非齐次项是纯三角函数或三角×指数时,可以把 D2D^2 替换成 −β2-\beta^2(对 eiβxe^{i\beta x} 作用,D2D^2 相当于乘 −β2-\beta^2),再用平方差公式。

例1 简化:yp=1D2+1sin⁡x=x12Dsin⁡x=−x2cos⁡xy_p = \frac{1}{D^2+1}\sin x = x\frac{1}{2D}\sin x = -\frac{x}{2}\cos x。

例2 简化:

yp=1D2+4excos⁡2x=ex1(D+1)2+4cos⁡2x=ex1D2+2D+5cos⁡2x=ex12D+1cos⁡2x=ex2D−1(2D+1)(2D−1)cos⁡2x=ex2D−14D2−1cos⁡2x=ex2D−1−17cos⁡2x=117ex(1−2D)cos⁡2x=117ex(cos⁡2x+4sin⁡2x)\begin{aligned} y_p &= \frac{1}{D^2+4}e^x\cos 2x = e^x\frac{1}{(D+1)^2+4}\cos 2x = e^x\frac{1}{D^2+2D+5}\cos 2x \\[4pt] &= e^x\frac{1}{2D+1}\cos 2x = e^x\frac{2D-1}{(2D+1)(2D-1)}\cos 2x = e^x\frac{2D-1}{4D^2-1}\cos 2x \\[4pt] &= e^x\frac{2D-1}{-17}\cos 2x = \frac{1}{17}e^x(1-2D)\cos 2x = \frac{1}{17}e^x(\cos 2x + 4\sin 2x) \end{aligned}

这种简化法只适合纯三角或三角×指数,适用范围小,想求快可以学,但不推荐依赖它。它的本质,就是把 D=iβD=i\beta 变成实数的 D2=−β2D^2=-\beta^2。

欧拉方程的算子法

核心等式:令 t=ln⁡xt = \ln x,D=ddtD = \frac{d}{dt},则

xddx=Dx\frac{d}{dx} = D

因为 xy′=xdydx=dydx/x=dydln⁡x=dydt=Dyxy' = x\frac{dy}{dx} = \frac{dy}{dx/x} = \frac{dy}{d\ln x} = \frac{dy}{dt} = Dy。

(这条等式封装了什么?前面处理欧拉方程,每次都要“令 x=etx=e^t、用链式法则展开 y′,y′′,y′′′y',y'',y'''”这一套。现在从 xy′xy' 的变形出发,引入 t=ln⁡xt=\ln x 和算子 DD,把这一套封装成一条核心等式:以后把 xddxx\frac{d}{dx} 整体换成 DD,不用再逐步展开链式法则。)

高阶推广为

xky(k)=D(D−1)(D−2)⋯(D−k+1) yx^k y^{(k)} = D(D-1)(D-2)\cdots(D-k+1)\,y

证明(数学归纳法):

基础 k=1k=1:xy′=Dyxy' = Dy,刚证过。

归纳假设:xky(k)=Pk(D)yx^k y^{(k)} = P_k(D)y,其中 Pk(D)=D(D−1)⋯(D−k+1)P_k(D) = D(D-1)\cdots(D-k+1)。

递推:对等式两边关于 xx 求导。左边用乘积法则:

ddx[xky(k)]=kxk−1y(k)+xky(k+1)\frac{d}{dx}\left[x^k y^{(k)}\right] = k x^{k-1} y^{(k)} + x^k y^{(k+1)}

右边用链式法则(ddx=1xD\frac{d}{dx} = \frac{1}{x}D):

ddx[Pk(D)y]=1xDPk(D)y\frac{d}{dx}\left[P_k(D)y\right] = \frac{1}{x} D P_k(D)y

左边 = 右边,两边乘 xx:

kxky(k)+xk+1y(k+1)=DPk(D)yk x^k y^{(k)} + x^{k+1} y^{(k+1)} = D P_k(D)y

移项、用归纳假设替换 xky(k)=Pk(D)yx^k y^{(k)} = P_k(D)y:

xk+1y(k+1)=DPk(D)y−kPk(D)y=(D−k)Pk(D)y=D(D−1)⋯(D−k)yx^{k+1} y^{(k+1)} = D P_k(D)y - k P_k(D)y = (D-k)P_k(D)y = D(D-1)\cdots(D-k)y

即 k+1k+1 时也成立。由归纳法,对一切正整数 kk 成立。

(这也封装了一件事:前面处理欧拉方程,每次都要算 k=1,2,3,⋯k=1,2,3,\cdots 的链式展开式;现在把这一整套展开规则封装成一个连乘算子 D(D−1)⋯(D−k+1)D(D-1)\cdots(D-k+1)。)

于是欧拉方程 anxny(n)+⋯+a0y=f(x)a_n x^n y^{(n)} + \cdots + a_0 y = f(x) 逐项替换后,得到常系数方程 P(D)y(t)=f(et)P(D)y(t) = f(e^t)。

(这封装了什么?前面处理欧拉方程,每次都要走“识别→代换→展开→合并”整套流程;现在封装成一步——把 xky(k)x^ky^{(k)} 换成 D(D−1)⋯(D−k+1)yD(D-1)\cdots(D-k+1)y,直接得到常系数方程。)

例:x2y′′−2xy′+2y=x3x^2 y'' - 2xy' + 2y = x^3。

由 x2y′′=D(D−1)y=(D2−D)yx^2 y'' = D(D-1)y = (D^2-D)y,xy′=Dyxy' = Dy,代入:

(D2−D)y−2Dy+2y=e3t(D^2-D)y - 2Dy + 2y = e^{3t}

即

(D2−3D+2)y=e3t(D^2-3D+2)y = e^{3t}

P(D)=D2−3D+2P(D) = D^2-3D+2,P(3)=9−9+2=2≠0P(3) = 9-9+2 = 2 \neq 0,特解 yp=12e3ty_p = \frac12 e^{3t}。齐次通解 yh=C1et+C2e2ty_h = C_1 e^t + C_2 e^{2t}。所以

y(t)=C1et+C2e2t+12e3ty(t) = C_1 e^t + C_2 e^{2t} + \frac12 e^{3t}

代回 t=ln⁡xt = \ln x:

y(x)=C1x+C2x2+12x3y(x) = C_1 x + C_2 x^2 + \frac12 x^3

欧拉方程的算子法只适用于欧拉方程(各项形如 xky(k)x^k y^{(k)});本质是对“变量代换 + 链式法则”这套操作的封装。

总的看,算子法把待定系数法的“设解—求导—比较系数”流程,封装成了求多项式值、对参数求导、级数展开、复数运算这些代数操作。

特征方程因式分解与降阶

nn 阶常系数方程的特征方程 rn+an−1rn−1+⋯+a0=0r^n + a_{n-1}r^{n-1} + \cdots + a_0 = 0 在复数域总能分解成 (r−r1)(r−r2)⋯(r−rn)(r-r_1)(r-r_2)\cdots(r-r_n)。

(为什么“总能”?因为代数基本定理:nn 次多项式在复数域恰好有 nn 个根(重根按重数计)。这正是复数域比实数域“更完整”的地方——实系数方程未必有实根(比如 r2+1=0r^2+1=0),但在复数域总能把根找齐,从而把多项式分解到底。)

因式分解的每一步,都在“提出一个因式”。二阶:(r−r1)(r−r2)=r(r−r2)−r1(r−r2)(r-r_1)(r-r_2) = r(r-r_2) - r_1(r-r_2),公共部分是 (r−r2)(r-r_2)。三阶:(r−r1)(r−r2)(r−r3)=r(r−r2)(r−r3)−r1(r−r2)(r−r3)(r-r_1)(r-r_2)(r-r_3) = r(r-r_2)(r-r_3) - r_1(r-r_2)(r-r_3),公共部分是 (r−r2)(r−r3)(r-r_2)(r-r_3)。一般地,任意阶都成立。每一步都在重复同一个动作:把公共的部分抓出来,剩下一个低一次的多项式。(对称地,提出 (r−r1)(r-r_1) 也一样。)

把“提出公共部分”这个动作搬到方程上(rr 对应求导、r2r^2 对应求两次导、常数对应乘 yy),方程左边就能重排:

y′′+ay′+by=(y′′−r2y′)−r1(y′−r2y)y''+ay'+by = (y''-r_2y') - r_1(y'-r_2y)

把 y′−r2yy'-r_2y 打包成 YY,得 Y′−r1Y=f(x)Y'-r_1Y = f(x),降了一阶。

每提出一个因式,就打包一次、降一阶。因式分解有几个因子,就能降几阶;拆到底,nn 阶方程就变成 nn 个依次求解的一阶方程。这正是正文第八章降阶法的完整根据。


十七、变系数方程:试探 + 刘维尔

一般的二阶变系数齐次方程 y′′+P(x)y′+Q(x)y=0y'' + P(x)y' + Q(x)y = 0 没有通法,只能“试”:先试指数 eλxe^{\lambda x},不行再试幂函数 xkx^k;试出一个解 y1y_1 后,用刘维尔公式(进阶十三)求第二个线性无关解 y2y_2。齐次通解凑齐,再用常数变易法求非齐次特解。下面三个完整例子。

例1:xy′′+(2x+1)y′+(x+1)y=x2e−xxy''+(2x+1)y'+(x+1)y = x^2 e^{-x}

  1. 试指数。代入齐次方程 xy′′+(2x+1)y′+(x+1)y=0xy''+(2x+1)y'+(x+1)y=0,y=eλxy=e^{\lambda x}:
eλx[xλ2+(2x+1)λ+(x+1)]=0e^{\lambda x}\big[x\lambda^2+(2x+1)\lambda+(x+1)\big]=0

整理成关于 λ\lambda 的式子:

x(λ+1)2+(λ+1)=0⟺(λ+1)[x(λ+1)+1]=0x(\lambda+1)^2+(\lambda+1)=0 \quad\Longleftrightarrow\quad (\lambda+1)\big[x(\lambda+1)+1\big]=0

要对一切 xx 成立,xx 前的系数必须是 00,得 λ+1=0\lambda+1=0,即 λ=−1\lambda=-1。所以 y1=e−xy_1 = e^{-x} 是一个齐次解。

  1. 刘维尔公式求第二个解。方程除以 xx 化为标准形式:p(x)=2+1xp(x) = 2 + \frac{1}{x}。
y2=e−x∫e−∫(2+1/x)dxe−2xdx=e−x∫e−2x−ln⁡xe−2xdx=e−x∫1xdx=e−xln⁡xy_2 = e^{-x}\int\frac{e^{-\int(2+1/x)dx}}{e^{-2x}}dx = e^{-x}\int\frac{e^{-2x-\ln x}}{e^{-2x}}dx = e^{-x}\int\frac{1}{x}dx = e^{-x}\ln x

齐次通解 yh=e−x(C1+C2ln⁡x)y_h = e^{-x}(C_1 + C_2\ln x)。

  1. 常数变易法求特解。设 yp=u1e−x+u2e−xln⁡xy_p = u_1 e^{-x} + u_2 e^{-x}\ln x,令 u1′e−x+u2′e−xln⁡x=0u_1'e^{-x} + u_2'e^{-x}\ln x = 0,代入原方程(除以 xx 后右边是 xe−xxe^{-x})得:
{u1′+u2′ln⁡x=0−u1′+u2′(1x−ln⁡x)=x\begin{cases} u_1' + u_2'\ln x = 0 \\ -u_1' + u_2'(\frac{1}{x} - \ln x) = x \end{cases}

由第一式 u1′=−u2′ln⁡xu_1' = -u_2'\ln x,代入第二式得 u2′⋅1x=xu_2'\cdot\frac{1}{x} = x,即 u2′=x2u_2' = x^2。积分 u2=x33u_2 = \frac{x^3}{3};而 u1=−∫x2ln⁡x dxu_1 = -\int x^2\ln x\,dx,用分部积分:

∫x2ln⁡x dx=x33ln⁡x−∫x33⋅1xdx=x33ln⁡x−x39\int x^2\ln x\,dx = \frac{x^3}{3}\ln x - \int\frac{x^3}{3}\cdot\frac{1}{x}dx = \frac{x^3}{3}\ln x - \frac{x^3}{9}

所以 u1=−x33ln⁡x+x39u_1 = -\frac{x^3}{3}\ln x + \frac{x^3}{9}。特解:

yp=(−x33ln⁡x+x39)e−x+x33e−xln⁡x=x39e−xy_p = \left(-\frac{x^3}{3}\ln x + \frac{x^3}{9}\right)e^{-x} + \frac{x^3}{3}e^{-x}\ln x = \frac{x^3}{9}e^{-x}

通解:

y=e−x(C1+C2ln⁡x)+x39e−xy = e^{-x}(C_1 + C_2\ln x) + \frac{x^3}{9}e^{-x}

例2:(x−1)y′′−xy′+y=(x−1)2(x-1)y''-xy'+y=(x-1)^2

变系数方程求齐次解没有通法,只能“试”。这个方程恰好有三种试探的走法,殊途同归。

走法一:先试指数 eλxe^{\lambda x}

  1. 试指数。代入齐次方程 (x−1)y′′−xy′+y=0(x-1)y''-xy'+y=0,y=eλxy=e^{\lambda x}:
eλx[(x−1)λ2−xλ+1]=0,(x−1)λ2−xλ+1=(λ−1)[xλ−(λ+1)]e^{\lambda x}\big[(x-1)\lambda^2-x\lambda+1\big]=0, \qquad (x-1)\lambda^2-x\lambda+1=(\lambda-1)\big[x\lambda-(\lambda+1)\big]

提出 λ−1\lambda-1 因式,λ=1\lambda=1,得 y1=exy_1=e^x。

  1. 刘维尔公式求第二个解。p(x)=−xx−1=−1−1x−1p(x)=-\frac{x}{x-1}=-1-\frac{1}{x-1}:
y2=ex∫ex(x−1)e2xdx=ex∫(x−1)e−xdxy_2=e^x\int\frac{e^x(x-1)}{e^{2x}}dx = e^x\int(x-1)e^{-x}dx

其中 ∫(x−1)e−xdx\int(x-1)e^{-x}dx 分部积分(令 u=x−1u=x-1,dv=e−xdxdv=e^{-x}dx):

∫(x−1)e−xdx=−(x−1)e−x+∫e−xdx=−(x−1)e−x−e−x=−xe−x\int(x-1)e^{-x}dx = -(x-1)e^{-x}+\int e^{-x}dx = -(x-1)e^{-x}-e^{-x} = -xe^{-x}

所以 y2=ex⋅(−xe−x)=−xy_2=e^x\cdot(-xe^{-x})=-x,取 y2=xy_2=x,齐次通解 yh=C1ex+C2xy_h=C_1e^x+C_2x。

走法二:只试幂函数 xkx^k

  1. 试幂函数。代入 y=xky=x^k:
k(k−1)xk−1−k(k−1)xk−2−kxk+xk=(k−1)[kxk−1−kxk−2−xk]=0k(k-1)x^{k-1}-k(k-1)x^{k-2}-kx^k+x^k = (k-1)\big[kx^{k-1}-kx^{k-2}-x^k\big] = 0

提出 k−1k-1,k=1k=1,得 y1=xy_1=x。

  1. 刘维尔公式求第二个解。用 (exx)′=ex(1x−1x2)\left(\frac{e^x}{x}\right)'=e^x\left(\frac1x-\frac1{x^2}\right):
y2=x∫ex(1x−1x2)dx=x⋅exx=exy_2=x\int e^x\left(\frac1x-\frac1{x^2}\right)dx = x\cdot\frac{e^x}{x} = e^x

齐次通解 yh=C1x+C2exy_h=C_1x+C_2e^x。

走法三:两种都试,直接进常数变易

试幂函数得 y1=xy_1=x,试指数得 y2=exy_2=e^x,比值 ex/xe^x/x 非常数,线性无关。齐次通解 yh=C1x+C2exy_h=C_1x+C_2e^x,不必再用刘维尔公式。

常数变易法求特解(三种走法共用):设 yp=u1x+u2exy_p=u_1x+u_2e^x,令 u1′x+u2′ex=0u_1'x+u_2'e^x=0,代入原方程(除以 x−1x-1 后右边是 x−1x-1):

{u1′x+u2′ex=0u1′+u2′ex=x−1\begin{cases} u_1'x+u_2'e^x=0 \\ u_1'+u_2'e^x=x-1 \end{cases}

由第一式 u1′=−u2′exxu_1'=-\frac{u_2'e^x}{x},代入第二式得 u2′=xe−xu_2'=xe^{-x}。分部积分(令 u=xu=x,dv=e−xdxdv=e^{-x}dx):

∫xe−xdx=−xe−x+∫e−xdx=−xe−x−e−x=(x+1)e−x\int xe^{-x}dx = -xe^{-x}+\int e^{-x}dx = -xe^{-x}-e^{-x} = (x+1)e^{-x}

所以 u1=−∫1 dx=−xu_1=-\int 1\,dx=-x,u2=−(x+1)e−xu_2=-(x+1)e^{-x}。特解 yp=−x2−x−1y_p=-x^2-x-1(代入验证左边恰得 (x−1)2(x-1)^2)。通解:

y=C1x+C2ex−x2−x−1y=C_1x+C_2e^x-x^2-x-1

例3:(x2ln⁡x)y′′−xy′+y=0(x^2\ln x)y''-xy'+y=0

这是齐次方程,只需找两个线性无关的齐次解。

  1. 先试指数 eλxe^{\lambda x},失败。代入得 eλx[(x2ln⁡x)λ2−xλ+1]=0e^{\lambda x}[(x^2\ln x)\lambda^2-x\lambda+1]=0。x2ln⁡xx^2\ln x 与 xx 是两种不同的“型”,无论 λ\lambda 怎么取都无法让等式恒成立。

  2. 再试幂函数 xkx^k。代入 y=xky=x^k:

(x2ln⁡x)k(k−1)xk−2−x⋅kxk−1+xk=xk[k(k−1)ln⁡x−(k−1)]=(k−1)xk[kln⁡x−1](x^2\ln x)k(k-1)x^{k-2}-x\cdot kx^{k-1}+x^k = x^k\big[k(k-1)\ln x-(k-1)\big] = (k-1)x^k\big[k\ln x-1\big]

k=1k=1 时整个为 00,所以 y1=xy_1=x。

  1. 刘维尔公式求第二个解。方程化为标准形式 y′′−1xln⁡xy′+1x2ln⁡xy=0y''-\frac{1}{x\ln x}y'+\frac{1}{x^2\ln x}y=0,p(x)=−1xln⁡xp(x)=-\frac{1}{x\ln x}。由刘维尔公式(用到 ∫dxxln⁡x=ln⁡∣ln⁡x∣\int\frac{dx}{x\ln x}=\ln|\ln x|):
y2=x∫ln⁡xx2dxy_2 = x\int\frac{\ln x}{x^2}dx

其中 ∫ln⁡xx2dx\int\frac{\ln x}{x^2}dx 分部积分(令 u=ln⁡xu=\ln x,dv=dxx2dv=\frac{dx}{x^2}):

∫ln⁡xx2dx=−ln⁡xx+∫1x2dx=−ln⁡xx−1x=−ln⁡x+1x\int\frac{\ln x}{x^2}dx = -\frac{\ln x}{x}+\int\frac{1}{x^2}dx = -\frac{\ln x}{x}-\frac{1}{x} = -\frac{\ln x+1}{x}

所以 y2=x⋅(−ln⁡x+1x)=−(ln⁡x+1)y_2=x\cdot\left(-\frac{\ln x+1}{x}\right)=-(\ln x+1),取 y2=ln⁡x+1y_2=\ln x+1。

  1. 通解:y=C1x+C2(ln⁡x+1)y=C_1x+C_2(\ln x+1)。

十八、完整推导

常数变易法的一阶通解公式

对 y′+P(x)y=Q(x)y' + P(x)y = Q(x):

  1. 齐次解 y1=e−∫P(x)dxy_1 = e^{-\int P(x)dx};
  2. 设 y=uy1y = u y_1,代入得 u′y1=Qu' y_1 = Q,即 u′=Qe∫Pdxu' = Q e^{\int P dx};
  3. 积分 u=∫Qe∫Pdxdx+Cu = \int Q e^{\int P dx} dx + C。

通解:

y=e−∫Pdx(∫Qe∫Pdxdx+C)y = e^{-\int P dx}\left(\int Q e^{\int P dx} dx + C\right)

其中 Ce−∫PdxC e^{-\int P dx} 是齐次通解,e−∫Pdx∫Qe∫Pdxdxe^{-\int P dx}\int Q e^{\int P dx} dx 是一个非齐次特解。

常数变易法的二阶与 nn 阶推导

二阶非齐次方程 y′′+P(x)y′+Q(x)y=R(x)y'' + P(x)y' + Q(x)y = R(x),齐次通解 C1y1+C2y2C_1 y_1 + C_2 y_2,设 y=u1y1+u2y2y = u_1 y_1 + u_2 y_2。

  1. 求导:y′=u1y1′+u2y2′+(u1′y1+u2′y2)y' = u_1 y_1' + u_2 y_2' + (u_1' y_1 + u_2' y_2)。

    这里已经看得见麻烦:再往下求 y′′y'',就会冒出 ui′′u_i''。

  2. 于是人为补一个约束 u1′y1+u2′y2=0u_1' y_1 + u_2' y_2 = 0。补上之后 y′y' 变干净:y′=u1y1′+u2y2′y' = u_1 y_1' + u_2 y_2'。

    (为什么要补?因为两个待定函数、只有一个原方程,本就有无穷多组解;既然只要一组,就可以自己挑一个最省事的条件。挑 =0=0 是因为它能让求导不冒出 ui′′u_i'',且方便分离出 ui′u_i'。让它等于 11 或别的函数也行,但那样不好解。)

  3. 再求一次导:y′′=u1′y1′+u2′y2′+(u1y1′′+u2y2′′)y'' = u_1' y_1' + u_2' y_2' + (u_1 y_1'' + u_2 y_2'')(这里用了第 2 步的约束,没有 ui′′u_i'')。

  4. 代入原方程,按 u1,u2u_1,u_2 和 u1′,u2′u_1',u_2' 整理:

[u1(y1′′+Py1′+Qy1)+u2(y2′′+Py2′+Qy2)]+u1′y1′+u2′y2′=R(x)\big[u_1(y_1''+Py_1'+Qy_1) + u_2(y_2''+Py_2'+Qy_2)\big] + u_1' y_1' + u_2' y_2' = R(x)
  1. 因为 y1,y2y_1,y_2 是齐次解,两个括号都是 00,只剩 u1′y1′+u2′y2′=R(x)u_1' y_1' + u_2' y_2' = R(x)。

  2. 和第 2 步的约束联立:

{u1′y1+u2′y2=0u1′y1′+u2′y2′=R(x)\begin{cases} u_1' y_1 + u_2' y_2 = 0 \\ u_1' y_1' + u_2' y_2' = R(x) \end{cases}
  1. 解出 u1′,u2′u_1', u_2' 各积一次分,代回 y=u1y1+u2y2y = u_1 y_1 + u_2 y_2。

nn 阶同理,加 n−1n-1 个约束,把 uiu_i 的高阶导数一路令为 00,最后只剩 ui(n−1)u_i^{(n-1)} 那一个方程:

{∑i=1nui′yi=0∑i=1nui′yi′=0⋯∑i=1nui′yi(n−2)=0∑i=1nui′yi(n−1)=R(x)\begin{cases} \sum_{i=1}^n u_i' y_i = 0 \\ \sum_{i=1}^n u_i' y_i' = 0 \\ \cdots \\ \sum_{i=1}^n u_i' y_i^{(n-2)} = 0 \\ \sum_{i=1}^n u_i' y_i^{(n-1)} = R(x) \end{cases}

这个方程组关于 ui′u_i' 是线性的,系数排成的行列式正是朗斯基行列式 WW(见进阶十四)。y1,…,yny_1,\dots,y_n 线性无关,所以 W≠0W\neq0,方程组恰好有唯一解,每个 ui′u_i' 都定得出来——常数变易法总能走通。

待定系数法四种特解形式

下面都假设指数参数不是特征根。

形式一:指数 × 多项式(右边 eλxPm(x)e^{\lambda x}P_m(x))

把“指数 × 多项式”求导,结果还是“指数 × 多项式”——这就是封闭性。再看次数,多项式每求导一次降一次。设 y∗=eλxQ(x)y^* = e^{\lambda x}Q(x) 代入,提公因子 eλxe^{\lambda x} 后:

Q′′+(2λ+a)Q′+(λ2+aλ+b)Q=Pm(x)Q'' + (2\lambda+a)Q' + (\lambda^2+a\lambda+b)Q = P_m(x)

最高次是 QQ 项(系数 λ2+aλ+b≠0\lambda^2+a\lambda+b\neq0),所以 QQ 是 mm 次:

y∗=eλx(Amxm+Am−1xm−1+⋯+A0)y^* = e^{\lambda x}(A_m x^m + A_{m-1}x^{m-1} + \cdots + A_0)

形式二:指数 × 三角函数(右边 eαxcos⁡βxe^{\alpha x}\cos\beta x 或 eαxsin⁡βxe^{\alpha x}\sin\beta x)

用欧拉公式打包成复指数 e(α+iβ)xe^{(\alpha+i\beta)x},回到形式一(0 次多项式)。复特解是“复常数 × 复指数”。翻译回实数:复指数写 eαx(cos⁡βx+isin⁡βx)e^{\alpha x}(\cos\beta x+i\sin\beta x),复常数写 C1+iC2C_1+iC_2,乘开:

(C1+iC2)eαx(cos⁡βx+isin⁡βx)=eαx[(C1cos⁡βx−C2sin⁡βx)+i(C1sin⁡βx+C2cos⁡βx)](C_1+iC_2)e^{\alpha x}(\cos\beta x+i\sin\beta x) = e^{\alpha x}\big[(C_1\cos\beta x - C_2\sin\beta x) + i(C_1\sin\beta x + C_2\cos\beta x)\big]

右边是余弦取实部、正弦取虚部,都整理成统一形式(两个待定常数,对应形式一里 0 次多项式的一个常数,只是复数打包带来了实部、虚部两个系数):

y∗=eαx(D1cos⁡βx+D2sin⁡βx)y^* = e^{\alpha x}(D_1\cos\beta x + D_2\sin\beta x)

形式三:多项式 × 三角函数(右边 Pm(x)cos⁡βxP_m(x)\cos\beta x 或 Pm(x)sin⁡βxP_m(x)\sin\beta x)

复数打包成“mm 次多项式 × 复指数”,回到形式一。复特解的多项式也是 mm 次,但系数是复数,写成“实部多项式 + ii·虚部多项式”Qm(x)=Um(x)+iVm(x)Q_m(x)=U_m(x)+iV_m(x)(Um,VmU_m,V_m 都是 mm 次实系数多项式)。乘开 Y∗=eiβxQm=(cos⁡βx+isin⁡βx)(Um+iVm)Y^*=e^{i\beta x}Q_m=(\cos\beta x+i\sin\beta x)(U_m+iV_m):实部是 Umcos⁡βx−Vmsin⁡βxU_m\cos\beta x-V_m\sin\beta x,虚部是 Umsin⁡βx+Vmcos⁡βxU_m\sin\beta x+V_m\cos\beta x。取实部或虚部,特解总是:

y∗=(Amxm+⋯+A0)cos⁡βx+(Bmxm+⋯+B0)sin⁡βxy^* = (A_m x^m + \cdots + A_0)\cos\beta x + (B_m x^m + \cdots + B_0)\sin\beta x

形式四:指数 × 三角函数 × 多项式(最一般)

三角函数和指数合并成一个复指数,回到形式一:

y∗=eαx[(Amxm+⋯+A0)cos⁡βx+(Bmxm+⋯+B0)sin⁡βx]y^* = e^{\alpha x}\Big[(A_m x^m + \cdots + A_0)\cos\beta x + (B_m x^m + \cdots + B_0)\sin\beta x\Big]

升次的完整推导与反例

正文已经讲了升次的根据(恒等式两边类型、次数都得一样)。这里补一个反例,说明为什么“低于 kk 次的部分不必设”。

例:y′′−3y′+2y=e2xy''-3y'+2y = e^{2x},特征根 1,21,2,λ=2\lambda = 2 是单根。

本该设 y∗=Axe2xy^* = Axe^{2x}。为说明问题,故意设一个完整的一次多项式 y∗=(Ax+B)e2xy^* = (Ax+B)e^{2x}。求导:

(y∗)′=Ae2x+2(Ax+B)e2x=(A+2B)e2x+2Axe2x(y^*)' = Ae^{2x}+2(Ax+B)e^{2x} = (A+2B)e^{2x}+2Axe^{2x}(y∗)′′=2Ae2x+2[Ae2x+2(Ax+B)e2x]=4(A+B)e2x+4Axe2x(y^*)'' = 2Ae^{2x}+2[Ae^{2x}+2(Ax+B)e^{2x}] = 4(A+B)e^{2x}+4Axe^{2x}

代入:

[y∗]′′−3[y∗]′+2y∗=Ae2x[y^*]''-3[y^*]'+2y^* = Ae^{2x}

右式是 e2xe^{2x},得 A=1A=1。而 BB 定不出来——它被齐次解的任意常数吸收了。所以特解就是 xe2xxe^{2x}。

分析我们设的形式 y∗=(Ax+B)e2xy^* = (Ax+B)e^{2x},说白了就是由 e2x,xe2xe^{2x}, xe^{2x} 线性组合得到的:y∗=Axe2x+Be2x=v1+v2y^* = Axe^{2x} + Be^{2x} = v_1 + v_2(v1=Axe2xv_1 = Axe^{2x}、v2=Be2xv_2 = Be^{2x})。v2=Be2xv_2 = Be^{2x} 是齐次解,代入左边得 00,对结果毫无影响。所以含 BB 的项加起来是 00 不是巧合——低于 kk 次的部分不必设,特解直接按重数乘 xkx^k。

(其实所有 xe2xxe^{2x} 有关的项为 0 也不是巧合。把 Axe2xAxe^{2x} 看成 xv3xv_3(v3=Ae2xv_3=Ae^{2x}),求导 (xv3)′=v3+xv3′(xv_3)'=v_3+xv_3'、(xv3)′′=2v3′+xv3′′(xv_3)''=2v_3'+xv_3'',代入原式:

(xv3)′′−3(xv3)′+2(xv3)=(2v3′+xv3′′)−3(v3+xv3′)+2xv3=x(v3′′−3v3′+2v3)+2v3′−3v3=0+2v3′−3v3(xv_3)''-3(xv_3)'+2(xv_3) = (2v_3'+xv_3'')-3(v_3+xv_3')+2xv_3 = x(v_3''-3v_3'+2v_3)+2v_3'-3v_3 = 0+2v_3'-3v_3

而 v3,v3′v_3,v_3' 都是纯指数,和右边的 e2xe^{2x} 同次,直接对比系数即可。)

两个完整算例:


十九、步骤速查

一阶非齐次线性方程

对 y′+P(x)y=Q(x)y' + P(x)y = Q(x):

  1. 求齐次通解:yh=Ce−∫P dxy_h = Ce^{-\int P\,dx}。
  2. 求特解:
    • 常数变易法:设 yp=ue−∫P dxy_p = u e^{-\int P\,dx},代入得 u′=Qe∫P dxu' = Q e^{\int P\,dx},积分得 uu;
    • 公式法(直接用上面的结果):yp=e−∫P dx∫Qe∫P dxdxy_p = e^{-\int P\,dx}\int Q e^{\int P\,dx}dx。
  3. 通解:
y=yh+yp=e−∫P dx(∫Qe∫P dxdx+C)y = y_h + y_p = e^{-\int P\,dx}\left(\int Q e^{\int P\,dx}dx + C\right)

二阶常系数非齐次线性方程

对 y′′+ay′+by=f(x)y'' + ay' + by = f(x):

  1. 齐次通解:特征方程 r2+ar+b=0r^2+ar+b=0,按根的类型写 yhy_h(不等实根 / 重根 / 共轭复根)。
  2. 求特解:
    • 常数变易法:设 yp=u1y1+u2y2y_p = u_1 y_1 + u_2 y_2,解方程组
{u1′y1+u2′y2=0u1′y1′+u2′y2′=f(x)\begin{cases} u_1' y_1 + u_2' y_2 = 0 \\ u_1' y_1' + u_2' y_2' = f(x) \end{cases}

积分得 u1,u2u_1, u_2。

  1. 通解 y=yh+ypy = y_h + y_p。

二阶变系数非齐次线性方程(已知一个齐次解)

对 y′′+p(x)y′+q(x)y=f(x)y'' + p(x)y' + q(x)y = f(x),已知齐次方程一个非零解 y1y_1:

  1. 用刘维尔公式求第二个线性无关解:
y2=y1∫e−∫p dxy12 dxy_2 = y_1\int\frac{e^{-\int p\,dx}}{y_1^2}\,dx
  1. 常数变易法求特解:设 yp=u1y1+u2y2y_p = u_1 y_1 + u_2 y_2,解
{u1′y1+u2′y2=0u1′y1′+u2′y2′=f(x)\begin{cases} u_1' y_1 + u_2' y_2 = 0 \\ u_1' y_1' + u_2' y_2' = f(x) \end{cases}
  1. 通解 y=C1y1+C2y2+ypy = C_1 y_1 + C_2 y_2 + y_p。

nn 阶常系数非齐次线性方程

对 y(n)+an−1y(n−1)+⋯+a1y′+a0y=f(x)y^{(n)} + a_{n-1}y^{(n-1)} + \cdots + a_1 y' + a_0 y = f(x):

  1. 齐次通解:特征方程 rn+an−1rn−1+⋯+a0=0r^n + a_{n-1}r^{n-1} + \cdots + a_0 = 0,求出 nn 个根(重根按重数计),按根的类型写出基本解组,线性组合得 yh=C1y1+⋯+Cnyny_h = C_1 y_1 + \cdots + C_n y_n。
  2. 特解:
    • 常数变易法:设 yp=u1y1+⋯+unyny_p = u_1 y_1 + \cdots + u_n y_n,附加 n−1n-1 个约束条件,解
{∑i=1nui′yi=0∑i=1nui′yi′=0⋯∑i=1nui′yi(n−2)=0∑i=1nui′yi(n−1)=f(x)\begin{cases} \sum_{i=1}^{n} u_i' y_i = 0 \\ \sum_{i=1}^{n} u_i' y_i' = 0 \\ \cdots \\ \sum_{i=1}^{n} u_i' y_i^{(n-2)} = 0 \\ \sum_{i=1}^{n} u_i' y_i^{(n-1)} = f(x) \end{cases}

再分别积分求 uiu_i。

  1. 通解 y=yh+ypy = y_h + y_p。

(注意:常数变易法对任何连续函数 f(x)f(x) 都适用,但要算 nn 个积分,计算量大;待定系数法只适用于特定形式的 f(x)f(x),但只需代数运算,相对简便。实际做题时按 f(x)f(x) 的形式灵活选用。)

算子法求特解

对 P(D)y=f(x)P(D)y = f(x),D=ddxD = \frac{d}{dx}:

算子法的优势:把“代入—求导—比较系数”变成“多项式求值、求导、级数展开、复数运算”,省去设待定系数、解方程组的麻烦。

算子法解欧拉方程

对 anxny(n)+⋯+a0y=f(x)a_n x^n y^{(n)} + \cdots + a_0 y = f(x):令 t=ln⁡xt = \ln x,D=ddtD = \frac{d}{dt},用 xky(k)=D(D−1)⋯(D−k+1)yx^k y^{(k)} = D(D-1)\cdots(D-k+1)y 逐项替换,化成常系数方程 P(D)y(t)=f(et)P(D)y(t) = f(e^t),解出后回代 t=ln⁡xt = \ln x。

(若出现 (ax+b)ky(k)(ax+b)^k y^{(k)},令 u=ax+bu = ax+b,t=ln⁡ut = \ln u,则 (ax+b)ky(k)=akD(D−1)⋯(D−k+1)y(ax+b)^k y^{(k)} = a^k D(D-1)\cdots(D-k+1)y。)

示例:x2y′′−2xy′+2y=x3x^2y''-2xy'+2y=x^3。令 t=ln⁡xt=\ln x,x2y′′=D(D−1)yx^2y''=D(D-1)y,xy′=Dyxy'=Dy,代入得 (D2−3D+2)y=e3t(D^2-3D+2)y=e^{3t}。P(3)=2≠0P(3)=2\neq0,特解 12e3t\frac12 e^{3t};齐次通解 C1et+C2e2tC_1e^t+C_2e^{2t}。回代 t=ln⁡xt=\ln x:y=C1x+C2x2+12x3y=C_1x+C_2x^2+\frac12 x^3。

注意:本法只适用于欧拉方程(各项形如 xky(k)x^k y^{(k)} 及其 (ax+b)k(ax+b)^k 推广);若 f(x)f(x) 含多项式与对数的混合,回代时注意 ekt=xke^{kt}=x^k、t=ln⁡xt=\ln x。


二十、例题与练习

先做题,再看后面的答案。每道题都对应正文或进阶里的一个方法。

  1. y′+2xy=3xy' + 2xy = 3x
  2. y′′+y=tan⁡xy'' + y = \tan x
  3. y′′+3y′+2y=5e2xy'' + 3y' + 2y = 5e^{2x}
  4. y′′−3y′+2y=e2xy'' - 3y' + 2y = e^{2x}
  5. y′′−2y′+y=exy'' - 2y' + y = e^{x}
  6. y′′−2y′+y=xe2xy'' - 2y' + y = x e^{2x}
  7. y′′+y=sin⁡xy'' + y = \sin x
  8. y′′−2y′+2y=ex⋅x⋅sin⁡xy'' - 2y' + 2y = e^x \cdot x \cdot \sin x
  9. y′−2y=xe2xy' - 2y = x e^{2x}
  10. y′′−3y′+2y=ex+sin⁡xy'' - 3y' + 2y = e^x + \sin x
  11. y′′′+y′=e−xy''' + y' = e^{-x}
  12. x3y′′′+x2y′′−4xy′=3x2x^3y''' + x^2y'' - 4xy' = 3x^2
  13. (2x−1)2y′′+4(2x−1)y′−8y=4x−3(2x-1)^2 y'' + 4(2x-1)y' - 8y = 4x-3
  14. y′−2xy=−x2y2y' - \dfrac{2}{x}y = -x^2 y^2
  15. y′′+3y′+2y=1ex+1y''+3y'+2y = \dfrac{1}{e^x+1}
  16. xy′′+(2x+1)y′+(x+1)y=x2e−xxy''+(2x+1)y'+(x+1)y = x^2e^{-x}
  17. (x−1)y′′−xy′+y=(x−1)2(x-1)y''-xy'+y = (x-1)^2
  18. (x2ln⁡x)y′′−xy′+y=0(x^2\ln x)y''-xy'+y = 0

参考答案

第1题 y′+2xy=3xy' + 2xy = 3x

  1. 求齐次通解:齐次方程 y′+2xy=0y' + 2xy = 0 的通解 yh=Ce−x2y_h = Ce^{-x^2}。

  2. 设非齐次通解 y=u(x)e−x2y = u(x)e^{-x^2},则 y′=u′e−x2−2xue−x2y' = u'e^{-x^2} - 2xue^{-x^2}。

  3. 代入原方程:

u′e−x2−2xue−x2+2xue−x2=3x  ⇒  u′e−x2=3xu'e^{-x^2} - 2xue^{-x^2} + 2xue^{-x^2} = 3x \;\Rightarrow\; u'e^{-x^2} = 3x
  1. 解出 uu:u′=3xex2u' = 3xe^{x^2},积分(令 t=x2t=x^2,则 dt=2x dxdt=2x\,dx,x dx=12 dtx\,dx=\frac12\,dt):
u=∫3xex2dx=∫3et⋅12dt=32et+C=32ex2+Cu = \int 3xe^{x^2}dx = \int 3e^t\cdot\frac12 dt = \frac32 e^t + C = \frac32 e^{x^2} + C
  1. 写出通解:
y=Ce−x2+32y = Ce^{-x^2} + \frac32

第2题 y′′+y=tan⁡xy'' + y = \tan x

齐次方程 y′′+y=0y''+y=0 的通解 yh=C1cos⁡x+C2sin⁡xy_h = C_1\cos x + C_2\sin x。

设 yp=u1cos⁡x+u2sin⁡xy_p = u_1\cos x + u_2\sin x,求导(并令 u1′cos⁡x+u2′sin⁡x=0u_1'\cos x + u_2'\sin x = 0,防止产生高阶导数):

yp′=−u1sin⁡x+u2cos⁡x+u1′cos⁡x+u2′sin⁡x,yp′′=−u1cos⁡x−u2sin⁡x−u1′sin⁡x+u2′cos⁡xy_p' = -u_1\sin x + u_2\cos x + u_1'\cos x + u_2'\sin x, \qquad y_p'' = -u_1\cos x - u_2\sin x - u_1'\sin x + u_2'\cos x

代入原方程得 −u1′sin⁡x+u2′cos⁡x=tan⁡x-u_1'\sin x + u_2'\cos x = \tan x,联立:

{u1′cos⁡x+u2′sin⁡x=0−u1′sin⁡x+u2′cos⁡x=tan⁡x\begin{cases} u_1'\cos x + u_2'\sin x = 0 \\ -u_1'\sin x + u_2'\cos x = \tan x \end{cases}

解得 u1′=−sin⁡2xcos⁡xu_1' = -\frac{\sin^2 x}{\cos x},u2′=sin⁡xu_2' = \sin x。积分:

u1=−∫sin⁡2xcos⁡xdx=−∫1−cos⁡2xcos⁡xdx=−∫(sec⁡x−cos⁡x)dx=−ln⁡∣sec⁡x+tan⁡x∣+sin⁡xu_1 = -\int\frac{\sin^2 x}{\cos x}dx = -\int\frac{1-\cos^2 x}{\cos x}dx = -\int(\sec x - \cos x)dx = -\ln|\sec x + \tan x| + \sin xu2=∫sin⁡x dx=−cos⁡xu_2 = \int\sin x\,dx = -\cos x

取 C1=C2=0C_1=C_2=0,特解 yp=(−ln⁡∣sec⁡x+tan⁡x∣+sin⁡x)cos⁡x+(−cos⁡x)sin⁡x=−cos⁡xln⁡∣sec⁡x+tan⁡x∣y_p = (-\ln|\sec x+\tan x|+\sin x)\cos x + (-\cos x)\sin x = -\cos x\ln|\sec x+\tan x|。通解:

y=C1cos⁡x+C2sin⁡x−cos⁡xln⁡∣sec⁡x+tan⁡x∣y = C_1\cos x + C_2\sin x - \cos x\ln|\sec x + \tan x|

第3题 y′′+3y′+2y=5e2xy'' + 3y' + 2y = 5e^{2x}

特征方程 r2+3r+2=0r^2+3r+2=0,根 −1,−2-1,-2,λ=2\lambda=2 不是特征根。设 y∗=Ae2xy^* = Ae^{2x},代入:

(4A+6A+2A)e2x=12Ae2x=5e2x(4A+6A+2A)e^{2x} = 12Ae^{2x} = 5e^{2x}

A=512A = \frac{5}{12}。通解:

y=C1e−x+C2e−2x+512e2xy = C_1 e^{-x} + C_2 e^{-2x} + \frac{5}{12}e^{2x}

第4题 y′′−3y′+2y=e2xy'' - 3y' + 2y = e^{2x}

特征方程 r2−3r+2=0r^2-3r+2=0,特征根 1,21,2,λ=2\lambda=2 是单重特征根。设 y∗=Axe2xy^* = Axe^{2x},求导:

(y∗)′=Ae2x(1+2x),(y∗)′′=Ae2x(4+4x)(y^*)' = Ae^{2x}(1+2x), \qquad (y^*)'' = Ae^{2x}(4+4x)

代入:

(y∗)′′−3(y∗)′+2y∗=Ae2x[(4+4x)−3(1+2x)+2x]=Ae2x(y^*)''-3(y^*)'+2y^* = Ae^{2x}\big[(4+4x)-3(1+2x)+2x\big] = Ae^{2x}

令其等于 e2xe^{2x},得 A=1A=1。通解:

y=C1ex+C2e2x+xe2xy = C_1 e^{x} + C_2 e^{2x} + xe^{2x}

第5题 y′′−2y′+y=exy'' - 2y' + y = e^{x}

特征方程 r2−2r+1=(r−1)2=0r^2-2r+1=(r-1)^2=0,特征根 11(二重),λ=1\lambda=1 是二重特征根。设 y∗=Ax2exy^* = Ax^2e^x,求导:

(y∗)′=Aex(x2+2x),(y∗)′′=Aex(x2+4x+2)(y^*)' = Ae^{x}(x^2+2x), \qquad (y^*)'' = Ae^{x}(x^2+4x+2)

代入:

(y∗)′′−2(y∗)′+y∗=Aex[(x2+4x+2)−2(x2+2x)+x2]=2Aex(y^*)''-2(y^*)'+y^* = Ae^{x}\big[(x^2+4x+2)-2(x^2+2x)+x^2\big] = 2Ae^{x}

令其等于 exe^{x},得 2A=12A=1,A=12A=\frac12。通解:

y=(C1+C2x)ex+12x2exy = (C_1 + C_2 x)e^x + \frac12 x^2 e^x

第6题 y′′−2y′+y=xe2xy'' - 2y' + y = xe^{2x}

特征方程 r2−2r+1=0r^2-2r+1=0,特征根 r=1r=1,λ=2\lambda=2 不是特征根。设 y∗=(Ax+B)e2xy^* = (Ax+B)e^{2x},求导:

(y∗)′=(2Ax+2B+A)e2x,(y∗)′′=(4Ax+4B+4A)e2x(y^*)' = (2Ax+2B+A)e^{2x}, \qquad (y^*)'' = (4Ax+4B+4A)e^{2x}

代入并约去 e2xe^{2x}:

(4Ax+4B+4A)−2(2Ax+2B+A)+(Ax+B)=(4A−4A+A)x+(4B+4A−4B−2A+B)=Ax+(2A+B)=x(4Ax+4B+4A) - 2(2Ax+2B+A) + (Ax+B) = (4A-4A+A)x + (4B+4A-4B-2A+B) = Ax + (2A+B) = x

比较系数得 A=1A=1,2A+B=0⇒B=−22A+B=0 \Rightarrow B=-2。通解:

y=(C1+C2x)ex+(x−2)e2xy = (C_1+C_2x)e^x + (x-2)e^{2x}

第7题 y′′+y=sin⁡xy'' + y = \sin x

这道题用五种方法各解一遍,体会同一结果的不同来路。

方法一:实数方法

sin⁡x\sin x 是齐次解,设 y∗=x(Acos⁡x+Bsin⁡x)y^* = x(A\cos x + B\sin x)。求导:

(y∗)′=(A+Bx)cos⁡x+(B−Ax)sin⁡x,(y∗)′′=(2B−Ax)cos⁡x+(−2A−Bx)sin⁡x(y^*)' = (A+Bx)\cos x + (B-Ax)\sin x, \qquad (y^*)'' = (2B-Ax)\cos x + (-2A-Bx)\sin x

代入 y′′+y=sin⁡xy''+y = \sin x:

(2B−Ax)cos⁡x+(−2A−Bx)sin⁡x+(Axcos⁡x+Bxsin⁡x)=2Bcos⁡x−2Asin⁡x=sin⁡x(2B-Ax)\cos x + (-2A-Bx)\sin x + (Ax\cos x + Bx\sin x) = 2B\cos x - 2A\sin x = \sin x

比较系数:2B=0⇒B=02B=0 \Rightarrow B=0,−2A=1⇒A=−12-2A=1 \Rightarrow A=-\frac12。通解:

y=C1cos⁡x+C2sin⁡x−12xcos⁡xy = C_1\cos x + C_2\sin x - \frac12 x\cos x

方法二:复数方法

sin⁡x=Im⁡(eix)\sin x = \operatorname{Im}(e^{ix}),考虑复方程 Y′′+Y=eixY''+Y = e^{ix}。特征根 ii 是单根,设 Y∗=AxeixY^* = Axe^{ix},代入得 2iAeix=eix2iA e^{ix} = e^{ix},A=12i=−i2A = \frac{1}{2i} = -\frac{i}{2}。展开:

Y∗=−i2x(cos⁡x+isin⁡x)=12xsin⁡x−i12xcos⁡xY^* = -\frac{i}{2}x(\cos x + i\sin x) = \frac12 x\sin x - i\frac12 x\cos x

取虚部得 y∗=−12xcos⁡xy^* = -\frac12 x\cos x,通解同上。

方法三:算子方法

P(D)=D2+1P(D) = D^2+1,P(i)=0P(i)=0,P′(D)=2DP'(D)=2D,P′(i)=2i≠0P'(i)=2i\neq0。由逆算子公式:

Y∗=1P′(i)xeix=−i2xeixY^* = \frac{1}{P'(i)}xe^{ix} = -\frac{i}{2}xe^{ix}

取虚部得 y∗=−12xcos⁡xy^* = -\frac12 x\cos x,通解同上。

对纯三角函数,前三种方法计算量相当;方法四(积分因子法)在复根下每一步都是复积分,明显繁琐。一旦三角函数和多项式、或三角函数和指数、或三者混合,前三种方法的计算量就天差地别了。

方法四:积分因子法

特征根 r=±ir=\pm i。按恒等式 (r−i)(r+i)=r(r+i)−i(r+i)(r-i)(r+i)=r(r+i)-i(r+i),把 y′+iyy'+iy 打包成 YY:

Y=y′+iyY = y' + iy

则 Y′−iY=y′′+yY'-iY = y''+y,原方程降成带复系数的一阶方程:

Y′−iY=sin⁡xY'-iY = \sin x

两边乘积分因子 e−ixe^{-ix},用欧拉公式 e−ixsin⁡x=1−e−2ix2ie^{-ix}\sin x = \frac{1-e^{-2ix}}{2i}:

(e−ixY)′=1−e−2ix2i(e^{-ix}Y)' = \frac{1-e^{-2ix}}{2i}

积分得

Y=eix(−ix2−e−2ix4)Y = e^{ix}\left(-\frac{ix}{2}-\frac{e^{-2ix}}{4}\right)

再解 y′+iy=Yy'+iy=Y,乘积分因子 eixe^{ix},再积一次分:

y=−xeix4−xe−ix4−ieix8=−x2cos⁡x+18sin⁡x−i18cos⁡xy = -\frac{xe^{ix}}{4}-\frac{xe^{-ix}}{4}-\frac{ie^{ix}}{8} = -\frac{x}{2}\cos x + \frac{1}{8}\sin x - i\frac{1}{8}\cos x

取实部得 y∗=−12xcos⁡xy^* = -\frac12 x\cos x(18sin⁡x\frac18\sin x 是齐次解,被常数吸收)。通解同上。

方法五:常数变易法

基本解组 y1=cos⁡xy_1=\cos x,y2=sin⁡xy_2=\sin x。设 yp=u1cos⁡x+u2sin⁡xy_p = u_1\cos x + u_2\sin x,令 u1′cos⁡x+u2′sin⁡x=0u_1'\cos x + u_2'\sin x = 0,代入得:

{u1′cos⁡x+u2′sin⁡x=0−u1′sin⁡x+u2′cos⁡x=sin⁡x\begin{cases} u_1'\cos x + u_2'\sin x = 0 \\ -u_1'\sin x + u_2'\cos x = \sin x \end{cases}

系数排成的行列式 cos⁡2x+sin⁡2x=1\cos^2x+\sin^2x=1,由克拉默法则:

u1′=−sin⁡2x,u2′=sin⁡xcos⁡xu_1' = -\sin^2 x, \qquad u_2' = \sin x\cos x

积分(∫sin⁡2x dx\int\sin^2x\,dx 用半角公式,∫sin⁡xcos⁡x dx\int\sin x\cos x\,dx 令 t=sin⁡xt=\sin x):

u1=−x2+sin⁡2x4,u2=sin⁡2x2u_1 = -\frac{x}{2}+\frac{\sin 2x}{4}, \qquad u_2 = \frac{\sin^2 x}{2}

特解 yp=(−x2+sin⁡2x4)cos⁡x+sin⁡2x2sin⁡x=−x2cos⁡x+sin⁡x2y_p = \left(-\frac{x}{2}+\frac{\sin 2x}{4}\right)\cos x + \frac{\sin^2 x}{2}\sin x = -\frac{x}{2}\cos x + \frac{\sin x}{2}(sin⁡x2\frac{\sin x}{2} 是齐次解,并入常数)。通解同上,五种方法结果一致。


第8题 y′′−2y′+2y=ex⋅x⋅sin⁡xy'' - 2y' + 2y = e^x \cdot x \cdot \sin x

右边同时含指数、多项式、三角,用三种方法对比繁琐程度。

方法一:实数方法

特征方程 r2−2r+2=0r^2-2r+2=0,根 1±i1\pm i,齐次通解 yh=ex(C1cos⁡x+C2sin⁡x)y_h = e^x(C_1\cos x + C_2\sin x)。

右边是指数 exe^x 乘一次多项式 xx 乘 sin⁡x\sin x。先把指数因子提出来,设 y∗=exu(x)y^* = e^x u(x),则 y∗′=ex(u+u′){y^*}' = e^x(u+u'),y∗′′=ex(u+2u′+u′′){y^*}'' = e^x(u+2u'+u'')。代入原方程:

ex(u+2u′+u′′)−2ex(u+u′)+2exu=ex(u′′+u)e^x(u+2u'+u'') - 2e^x(u+u') + 2e^x u = e^x(u''+u)

令其等于 exxsin⁡xe^x x\sin x,约去 exe^x,得 u′′+u=xsin⁡xu''+u = x\sin x。

右边是 xsin⁡xx\sin x(一次多项式乘正弦,且正弦是齐次解),设 u=(ax2+bx)sin⁡x+(cx2+dx)cos⁡xu = (ax^2+bx)\sin x + (cx^2+dx)\cos x。计算导数:

u′=[(2ax+b)−(cx2+dx)]sin⁡x+[(ax2+bx)+(2cx+d)]cos⁡xu' = \big[(2ax+b)-(cx^2+dx)\big]\sin x + \big[(ax^2+bx)+(2cx+d)\big]\cos xu′′=[−ax2−(b+4c)x+2a−2d]sin⁡x+[−cx2+(4a−d)x+2b+2c]cos⁡xu'' = \big[-ax^2-(b+4c)x+2a-2d\big]\sin x + \big[-cx^2+(4a-d)x+2b+2c\big]\cos x

代入 u′′+uu''+u,合并 sin⁡x\sin x、cos⁡x\cos x 的系数:

u′′+u=[(−4c)x+(2a−2d)]sin⁡x+[4ax+(2b+2c)]cos⁡xu''+u = \big[(-4c)x + (2a-2d)\big]\sin x + \big[4ax + (2b+2c)\big]\cos x

令其等于 xsin⁡xx\sin x,比较系数:4a=04a=0,2b+2c=02b+2c=0,−4c=1-4c=1,2a−2d=02a-2d=0。解得 a=0a=0,d=0d=0,c=−14c=-\frac14,b=14b=\frac14。于是 u=14xsin⁡x−14x2cos⁡xu = \frac14 x\sin x - \frac14 x^2\cos x,回代得特解:

y∗=ex(14xsin⁡x−14x2cos⁡x)y^* = e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right)

通解:

y=ex(C1cos⁡x+C2sin⁡x)+ex(14xsin⁡x−14x2cos⁡x)y = e^x(C_1\cos x + C_2\sin x) + e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right)

实数方法要设 4 个待定系数,两次求导、代入、化简、解四元方程组,繁琐易错。尤其当多项式次数更高、或同时有 cos⁡\cos 和 sin⁡\sin 时,计算量会急剧增加。

方法二:复数方法

特征方程 r2−2r+2=0r^2-2r+2=0,根 1±i1\pm i,齐次通解 yh=ex(C1cos⁡x+C2sin⁡x)y_h = e^x(C_1\cos x + C_2\sin x)。

ex⋅x⋅sin⁡x=Im⁡(xe(1+i)x)e^x \cdot x \cdot \sin x = \operatorname{Im}(x e^{(1+i)x}),考虑复方程 Y′′−2Y′+2Y=xe(1+i)xY''-2Y'+2Y = x e^{(1+i)x}。λ=1+i\lambda = 1+i 正好是单重特征根,设复特解 Y∗=(px2+qx)e(1+i)xY^* = (px^2+qx)e^{(1+i)x}。

(这里可以直接套第七章升次的公式 Q′′+(2λ+a)Q′+(λ2+aλ+b)Q=PmQ''+(2\lambda+a)Q'+(\lambda^2+a\lambda+b)Q = P_m,它对复指数同样适用,代入 λ=1+i\lambda=1+i 即可,下面就是按这个来的。)

令 S=px2+qxS = px^2+qx,代入并约去 eλxe^{\lambda x},利用特征根性质消去 SS 项,得 S′′+2iS′=xS'' + 2iS' = x。S′=2px+qS' = 2px+q,S′′=2pS'' = 2p,代入:

4ipx+(2p+2iq)=x4ipx + (2p+2iq) = x

比较系数:4ip=1⇒p=−i44ip=1 \Rightarrow p=-\frac{i}{4};2p+2iq=0⇒q=142p+2iq=0 \Rightarrow q=\frac14。

复特解 Y∗=(−i4x2+14x)e(1+i)xY^* = \left(-\frac{i}{4}x^2+\frac14 x\right)e^{(1+i)x},取虚部得特解 y∗=ex(14xsin⁡x−14x2cos⁡x)y^* = e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right)。通解:

y=ex(C1cos⁡x+C2sin⁡x)+ex(14xsin⁡x−14x2cos⁡x)y = e^x(C_1\cos x + C_2\sin x) + e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right)

复数方法只需设两个复系数,代入后利用特征根性质消去 SS 项,得到一个关于 S′S' 的一阶方程,比较系数立即解出 p,qp,q。计算量远小于实数方法,且步骤清晰、不易出错。

方法三:算子方法

P(D)=D2−2D+2P(D) = D^2 - 2D + 2,由逆算子公式:

Y∗=1P(D)xe(1+i)x=e(1+i)xxP(D+1+i)=e(1+i)xxD(D+2i)=e(1+i)x(−i4x2+14x)Y^* = \frac{1}{P(D)}xe^{(1+i)x} = e^{(1+i)x}\frac{x}{P(D+1+i)} = e^{(1+i)x}\frac{x}{D(D+2i)} = e^{(1+i)x}\left(-\frac{i}{4}x^2+\frac14 x\right)

取虚部得特解 y∗=ex(14xsin⁡x−14x2cos⁡x)y^* = e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right),通解与前两种方法一致:

y=ex(C1cos⁡x+C2sin⁡x)+ex(14xsin⁡x−14x2cos⁡x)y = e^x(C_1\cos x + C_2\sin x) + e^x\left(\frac14 x\sin x - \frac14 x^2\cos x\right)

对比结论:当非齐次项同时含指数、多项式、三角时,实数法要处理多个待定系数和高阶导数;复数法把三角吸收进复指数,简化为多项式乘指数;算子法直接利用特征根性质和逆算子公式,避免繁琐求导和系数比较,效率最高。因此在实际应用中(尤其是物理和工程领域),算子法成为首选,极大提升效率和准确性。


第9题 y′−2y=xe2xy' - 2y = xe^{2x}

常数变易法:齐次方程 y′−2y=0y'-2y=0 的通解 yh=Ce2xy_h = Ce^{2x}。设 y=ue2xy = ue^{2x},则 y′=u′e2x+2ue2xy' = u'e^{2x} + 2ue^{2x}。代入原方程:

u′e2x+2ue2x−2ue2x=xe2x  ⇒  u′e2x=xe2x  ⇒  u′=xu'e^{2x} + 2ue^{2x} - 2ue^{2x} = xe^{2x} \;\Rightarrow\; u'e^{2x} = xe^{2x} \;\Rightarrow\; u' = x

积分 u=12x2+Cu = \frac12 x^2 + C。通解:

y=(12x2+C)e2xy = \left(\frac12 x^2 + C\right)e^{2x}

待定系数法:λ=2\lambda=2 是特征根(单根),设 y∗=x(Ax+B)e2x=(Ax2+Bx)e2xy^* = x(Ax+B)e^{2x} = (Ax^2+Bx)e^{2x}。求导:

(y∗)′=(2Ax+B)e2x+2(Ax2+Bx)e2x=[2Ax2+(2A+2B)x+B]e2x(y^*)' = (2Ax+B)e^{2x} + 2(Ax^2+Bx)e^{2x} = \big[2Ax^2+(2A+2B)x+B\big]e^{2x}

代入 y′−2y=xe2xy'-2y = xe^{2x}:

[2Ax2+(2A+2B)x+B]e2x−2(Ax2+Bx)e2x=(2Ax+B)e2x=xe2x\big[2Ax^2+(2A+2B)x+B\big]e^{2x} - 2(Ax^2+Bx)e^{2x} = (2Ax+B)e^{2x} = xe^{2x}

比较系数 2A=1⇒A=122A=1 \Rightarrow A=\frac12,B=0B=0,特解 y∗=12x2e2xy^* = \frac12 x^2 e^{2x},与常数变易法一致。

第10题 y′′−3y′+2y=ex+sin⁡xy'' - 3y' + 2y = e^x + \sin x

特征方程 r2−3r+2=0r^2-3r+2=0,特征根 1,21,2,齐次通解 yh=C1ex+C2e2xy_h = C_1 e^x + C_2 e^{2x}。用叠加原理分别求特解。

对 exe^x:λ=1\lambda=1 是单根,设 yp1=Axexy_{p1} = Axe^x,求导 yp1′=Aex(1+x)y_{p1}' = Ae^x(1+x)、yp1′′=Aex(2+x)y_{p1}'' = Ae^x(2+x),代入:

yp1′′−3yp1′+2yp1=Aex[(2+x)−3(1+x)+2x]=−Aex=exy_{p1}''-3y_{p1}'+2y_{p1} = Ae^x\big[(2+x)-3(1+x)+2x\big] = -Ae^x = e^x

得 A=−1A=-1,yp1=−xexy_{p1} = -xe^x。

对 sin⁡x\sin x:用复数,sin⁡x=Im⁡(eix)\sin x = \operatorname{Im}(e^{ix}),考虑复方程 Y′′−3Y′+2Y=eixY''-3Y'+2Y = e^{ix},λ=i\lambda=i 不是特征根,设 Y=BeixY = Be^{ix},代入得 (i2−3i+2)B=1(i^2-3i+2)B = 1,即 (1−3i)B=1(1-3i)B=1,B=11−3i=1+3i10B = \frac{1}{1-3i} = \frac{1+3i}{10}。展开 Y=(110+310i)(cos⁡x+isin⁡x)Y = (\frac{1}{10}+\frac{3}{10}i)(\cos x+i\sin x),取虚部:

yp2=110sin⁡x+310cos⁡xy_{p2} = \frac{1}{10}\sin x + \frac{3}{10}\cos x

叠加 yp=yp1+yp2y_p = y_{p1}+y_{p2},通解:

y=C1ex+C2e2x−xex+310cos⁡x+110sin⁡xy = C_1 e^x + C_2 e^{2x} - xe^x + \frac{3}{10}\cos x + \frac{1}{10}\sin x

第11题 y′′′+y′=e−xy''' + y' = e^{-x}

齐次方程 y′′′+y′=0y'''+y'=0,特征方程 r3+r=r(r2+1)=0r^3+r = r(r^2+1)=0,根 0,i,−i0, i, -i。齐次通解 yh=C1+C2cos⁡x+C3sin⁡xy_h = C_1 + C_2\cos x + C_3\sin x,基本解组 y1=1y_1=1,y2=cos⁡xy_2=\cos x,y3=sin⁡xy_3=\sin x。

设 y=u1⋅1+u2cos⁡x+u3sin⁡xy = u_1\cdot 1 + u_2\cos x + u_3\sin x,附加两个约束,得方程组:

{u1′+u2′cos⁡x+u3′sin⁡x=0−u2′sin⁡x+u3′cos⁡x=0−u2′cos⁡x−u3′sin⁡x=e−x\begin{cases} u_1' + u_2'\cos x + u_3'\sin x = 0 \\ -u_2'\sin x + u_3'\cos x = 0 \\ -u_2'\cos x - u_3'\sin x = e^{-x} \end{cases}

由后两个方程解得 u2′=−e−xcos⁡xu_2' = -e^{-x}\cos x,u3′=−e−xsin⁡xu_3' = -e^{-x}\sin x;代入第一个方程:u1′+(−e−xcos⁡x)cos⁡x+(−e−xsin⁡x)sin⁡x=0u_1' + (-e^{-x}\cos x)\cos x + (-e^{-x}\sin x)\sin x = 0,即 u1′=e−x(cos⁡2x+sin⁡2x)=e−xu_1' = e^{-x}(\cos^2 x+\sin^2 x) = e^{-x}。

积分(用到 ∫e−xcos⁡x dx=e−x2(sin⁡x−cos⁡x)\int e^{-x}\cos x\,dx = \frac{e^{-x}}{2}(\sin x-\cos x)、∫e−xsin⁡x dx=−e−x2(sin⁡x+cos⁡x)\int e^{-x}\sin x\,dx = -\frac{e^{-x}}{2}(\sin x+\cos x)):

u1=−e−x,u2=e−x2(cos⁡x−sin⁡x),u3=e−x2(sin⁡x+cos⁡x)u_1 = -e^{-x}, \quad u_2 = \frac{e^{-x}}{2}(\cos x - \sin x), \quad u_3 = \frac{e^{-x}}{2}(\sin x + \cos x)

代入得特解:

yp=−e−x+e−x2(cos⁡x−sin⁡x)cos⁡x+e−x2(sin⁡x+cos⁡x)sin⁡x=−e−x+e−x2(cos⁡2x−sin⁡xcos⁡x+sin⁡2x+sin⁡xcos⁡x)=−e−x+e−x2(cos⁡2x+sin⁡2x)=−e−x+e−x2=−12e−x\begin{aligned} y_p &= -e^{-x} + \frac{e^{-x}}{2}(\cos x - \sin x)\cos x + \frac{e^{-x}}{2}(\sin x + \cos x)\sin x \\ &= -e^{-x} + \frac{e^{-x}}{2}\big(\cos^2 x - \sin x\cos x + \sin^2 x + \sin x\cos x\big) \\ &= -e^{-x} + \frac{e^{-x}}{2}(\cos^2 x + \sin^2 x) \\ &= -e^{-x} + \frac{e^{-x}}{2} = -\frac12 e^{-x} \end{aligned}

通解:

y=C1+C2cos⁡x+C3sin⁡x−12e−xy = C_1 + C_2\cos x + C_3\sin x - \frac12 e^{-x}

第12题 x3y′′′+x2y′′−4xy′=3x2x^3y''' + x^2y'' - 4xy' = 3x^2

令 x=etx = e^t,则 xy′=dydtxy' = \frac{dy}{dt},x2y′′=d2ydt2−dydtx^2y'' = \frac{d^2y}{dt^2} - \frac{dy}{dt},x3y′′′=d3ydt3−3d2ydt2+2dydtx^3y''' = \frac{d^3y}{dt^3} - 3\frac{d^2y}{dt^2} + 2\frac{dy}{dt}。代入:

(也可以把一阶、二阶、三阶导数都逐步写出来:

一阶:y′(x)=dydx=dydt⋅dtdx=y′(t)⋅1xy'(x) = \frac{dy}{dx} = \frac{dy}{dt}\cdot\frac{dt}{dx} = y'(t)\cdot\frac{1}{x},所以 xy′(x)=y′(t)xy'(x) = y'(t)。

二阶:y′′(x)=[y′(x)]′=[1xy′(t)]′=(1x)′y′(t)+1x[y′(t)]′=−1x2y′(t)+1x⋅y′′(t)⋅1x=1x2[y′′(t)−y′(t)]y''(x) = [y'(x)]' = [\frac{1}{x}y'(t)]' = (\frac{1}{x})'y'(t) + \frac{1}{x}[y'(t)]' = -\frac{1}{x^2}y'(t) + \frac{1}{x}\cdot y''(t)\cdot\frac{1}{x} = \frac{1}{x^2}[y''(t)-y'(t)],所以 x2y′′(x)=y′′(t)−y′(t)x^2y''(x) = y''(t)-y'(t)。

三阶:y′′′(x)=[y′′(x)]′=[1x2(y′′(t)−y′(t))]′=(1x2)′(y′′(t)−y′(t))+1x2[y′′(t)−y′(t)]′=−2x3(y′′(t)−y′(t))+1x2(1xy′′′(t)−1xy′′(t))=1x3[y′′′(t)−3y′′(t)+2y′(t)]y'''(x) = [y''(x)]' = [\frac{1}{x^2}(y''(t)-y'(t))]' = (\frac{1}{x^2})'(y''(t)-y'(t)) + \frac{1}{x^2}[y''(t)-y'(t)]' = -\frac{2}{x^3}(y''(t)-y'(t)) + \frac{1}{x^2}(\frac{1}{x}y'''(t)-\frac{1}{x}y''(t)) = \frac{1}{x^3}[y'''(t)-3y''(t)+2y'(t)],所以 x3y′′′(x)=y′′′(t)−3y′′(t)+2y′(t)x^3y'''(x) = y'''(t)-3y''(t)+2y'(t)。)

d3ydt3−2d2ydt2−3dydt=3e2t\frac{d^3y}{dt^3} - 2\frac{d^2y}{dt^2} - 3\frac{dy}{dt} = 3e^{2t}

特征方程 r3−2r2−3r=r(r−3)(r+1)=0r^3-2r^2-3r = r(r-3)(r+1)=0,根 0,3,−10,3,-1,齐次通解 yh=C1+C2e3t+C3e−ty_h = C_1 + C_2 e^{3t} + C_3 e^{-t}。

λ=2\lambda=2 不是特征根,设 yp=Ae2ty_p = Ae^{2t},代入得 −6A=3-6A = 3,A=−12A = -\frac12。所以 y(t)=C1+C2e3t+C3e−t−12e2ty(t) = C_1 + C_2e^{3t} + C_3e^{-t} - \frac12 e^{2t}。代回 t=ln⁡xt=\ln x:

y=C1+C2x3+C3x−1−12x2y = C_1 + C_2 x^3 + C_3 x^{-1} - \frac12 x^2

(算子法:令 t=ln⁡xt=\ln x、D=ddtD=\frac{d}{dt},则 xy′=Dyxy'=Dy、x2y′′=D(D−1)yx^2y''=D(D-1)y、x3y′′′=D(D−1)(D−2)yx^3y'''=D(D-1)(D-2)y,原方程变成

(D3−2D2−3D)y=3e2t(D^3-2D^2-3D)y = 3e^{2t}

特征方程 r3−2r2−3r=r(r+1)(r−3)=0r^3-2r^2-3r=r(r+1)(r-3)=0,根 0,3,−10,3,-1,齐次通解 C1+C2e3t+C3e−tC_1+C_2e^{3t}+C_3e^{-t}。特解直接代 λ=2\lambda=2:y∗=3e2tD(D+1)(D−3)=3e2t2⋅3⋅(−1)=−12e2ty^*=\frac{3e^{2t}}{D(D+1)(D-3)}=\frac{3e^{2t}}{2\cdot3\cdot(-1)}=-\frac12 e^{2t}。回代得同样结果。)

(算子法:令 t=ln⁡xt=\ln x,D=ddtD=\frac{d}{dt},则 xy′=Dyxy'=Dy,x2y′′=D(D−1)yx^2y''=D(D-1)y,x3y′′′=D(D−1)(D−2)yx^3y'''=D(D-1)(D-2)y。代入得 (D3−2D2−3D)y=3e2t(D^3-2D^2-3D)y = 3e^{2t}。特征根 0,3,−10,3,-1,特解 3e2tD(D+1)(D−3)=−12e2t\frac{3e^{2t}}{D(D+1)(D-3)} = -\frac12 e^{2t}。回代得同样结果。)

第13题 (2x−1)2y′′+4(2x−1)y′−8y=4x−3(2x-1)^2 y'' + 4(2x-1)y' - 8y = 4x-3

令 t=ln⁡(2x−1)t = \ln(2x-1)(则 2x−1=et2x-1 = e^t,dtdx=22x−1\frac{dt}{dx} = \frac{2}{2x-1})。

一阶:y′=dydt⋅dtdx=22x−1dydty' = \frac{dy}{dt}\cdot\frac{dt}{dx} = \frac{2}{2x-1}\frac{dy}{dt},所以 (2x−1)y′=2dydt(2x-1)y' = 2\frac{dy}{dt}。

二阶:y′′=ddx(22x−1dydt)=−4(2x−1)2dydt+4(2x−1)2d2ydt2=4(2x−1)2(d2ydt2−dydt)y'' = \frac{d}{dx}\left(\frac{2}{2x-1}\frac{dy}{dt}\right) = -\frac{4}{(2x-1)^2}\frac{dy}{dt} + \frac{4}{(2x-1)^2}\frac{d^2y}{dt^2} = \frac{4}{(2x-1)^2}\left(\frac{d^2y}{dt^2}-\frac{dy}{dt}\right),所以 (2x−1)2y′′=4(d2ydt2−dydt)(2x-1)^2y'' = 4\left(\frac{d^2y}{dt^2}-\frac{dy}{dt}\right)。

代入原方程(注意 4x−3=4⋅et+12−3=2et−14x-3 = 4\cdot\frac{e^t+1}{2}-3 = 2e^t-1)、化简:

4(d2ydt2−dydt)+4⋅2dydt−8y=2et−1  ⟹  y′′+y′−2y=12et−144\left(\frac{d^2y}{dt^2}-\frac{dy}{dt}\right) + 4\cdot 2\frac{dy}{dt} - 8y = 2e^t-1 \;\Longrightarrow\; y''+y'-2y = \frac12 e^t - \frac14

特征方程 r2+r−2=0r^2+r-2=0,根 1,−21,-2,齐次通解 yh=C1et+C2e−2ty_h = C_1 e^t + C_2 e^{-2t}。

对 12et\frac12 e^t:λ=1\lambda=1 是单根,设 yp1=Atety_{p1} = Ate^t,代入得 3A=123A = \frac12,A=16A = \frac16。对 −14-\frac14:设 yp2=By_{p2} = B,代入得 −2B=−14-2B = -\frac14,B=18B = \frac18。

特解 yp=16tet+18y_p = \frac16 te^t + \frac18。代回 t=ln⁡(2x−1)t=\ln(2x-1):

y=C1(2x−1)+C2(2x−1)−2+16(2x−1)ln⁡(2x−1)+18y = C_1(2x-1) + C_2(2x-1)^{-2} + \frac16(2x-1)\ln(2x-1) + \frac18

(算子法:令 t=ln⁡(2x−1)t=\ln(2x-1),D=ddtD=\frac{d}{dt},则 (2x−1)y′=2Dy(2x-1)y' = 2Dy,(2x−1)2y′′=4D(D−1)y(2x-1)^2y'' = 4D(D-1)y。代入得 (D2+D−2)y=12et−14(D^2+D-2)y = \frac12 e^t - \frac14。P(D)=D2+D−2P(D)=D^2+D-2,P′(1)=3P'(1)=3,特解 12⋅tet3+18=16tet+18\frac12\cdot\frac{te^t}{3} + \frac18 = \frac16 te^t + \frac18。回代得同样结果。)

第14题 y′−2xy=−x2y2y' - \dfrac{2}{x}y = -x^2 y^2

伯努利方程,P(x)=−2xP(x)=-\frac2x,Q(x)=−x2Q(x)=-x^2,n=2n=2。换元 z=y1−n=y−1=1yz = y^{1-n} = y^{-1} = \frac{1}{y},则 y=1zy = \frac{1}{z},y′=−z′z2y' = -\frac{z'}{z^2}。代入原方程:

−z′z2−2x⋅1z=−x2⋅1z2  ⟹  z′+2xz=x2-\frac{z'}{z^2} - \frac{2}{x}\cdot\frac{1}{z} = -x^2\cdot\frac{1}{z^2} \;\Longrightarrow\; z' + \frac{2}{x}z = x^2

这是一阶线性方程。∫P dx=∫2xdx=2ln⁡∣x∣=ln⁡x2\int P\,dx = \int\frac2x dx = 2\ln|x| = \ln x^2,所以 e∫Pdx=x2e^{\int P dx} = x^2、e−∫Pdx=1x2e^{-\int P dx} = \frac{1}{x^2}。代入通解公式:

z=1x2(∫x2⋅x2 dx+C)=1x2(∫x4 dx+C)=1x2(x55+C)=x35+Cx2z = \frac{1}{x^2}\left(\int x^2\cdot x^2\,dx + C\right) = \frac{1}{x^2}\left(\int x^4\,dx + C\right) = \frac{1}{x^2}\left(\frac{x^5}{5}+C\right) = \frac{x^3}{5} + \frac{C}{x^2}

代回 y=1zy = \frac{1}{z}:

y=1x35+Cx2=5x2x5+5Cy = \frac{1}{\frac{x^3}{5} + \frac{C}{x^2}} = \frac{5x^2}{x^5 + 5C}

第15题 y′′+3y′+2y=1ex+1y''+3y'+2y = \dfrac{1}{e^x+1}

右边不是多项式、指数、正余弦的组合,待定系数法没辙。用积分因子法(降阶)。

方法一:积分因子法

  1. 特征方程 r2+3r+2=0r^2+3r+2=0,因式分解 (r+1)(r+2)=0(r+1)(r+2)=0,根 −1,−2-1,-2。取 r1=−1r_1=-1、r2=−2r_2=-2,公共部分 (r+2)(r+2),打包 Y=y′+2yY = y'+2y。则 Y′+Y=y′′+3y′+2yY'+Y = y''+3y'+2y,原方程降成:
Y′+Y=1ex+1Y'+Y = \frac{1}{e^x+1}
  1. 两边乘积分因子 exe^x:(exY)′=exex+1(e^xY)' = \frac{e^x}{e^x+1}。积分:
Y=e−x∫exex+1dx=e−x∫d(ex+1)ex+1=e−xln⁡(ex+1)Y = e^{-x}\int\frac{e^x}{e^x+1}dx = e^{-x}\int\frac{d(e^x+1)}{e^x+1} = e^{-x}\ln(e^x+1)
  1. 再解 y′+2y=e−xln⁡(ex+1)y'+2y = e^{-x}\ln(e^x+1),乘积分因子 e2xe^{2x}:(e2xy)′=exln⁡(ex+1)(e^{2x}y)' = e^x\ln(e^x+1)。积分(分部,令 t=ex+1t=e^x+1):
y=e−2x∫exln⁡(ex+1)dx=e−2x∫ln⁡(ex+1) d(ex+1)=e−2x[(ex+1)ln⁡(ex+1)−ex]=(e−x+e−2x)ln⁡(ex+1)−e−xy = e^{-2x}\int e^x\ln(e^x+1)dx = e^{-2x}\int\ln(e^x+1)\,d(e^x+1) = e^{-2x}\big[(e^x+1)\ln(e^x+1)-e^x\big] = (e^{-x}+e^{-2x})\ln(e^x+1)-e^{-x}

(−e−x-e^{-x} 是齐次解,并入常数。)通解:

y=C1e−x+C2e−2x+(e−x+e−2x)ln⁡(ex+1)y = C_1 e^{-x} + C_2 e^{-2x} + (e^{-x}+e^{-2x})\ln(e^x+1)

方法二:常数变易法

齐次通解 yh=C1e−x+C2e−2xy_h = C_1 e^{-x} + C_2 e^{-2x},基本解组 y1=e−xy_1 = e^{-x},y2=e−2xy_2 = e^{-2x}。设 yp=u1e−x+u2e−2xy_p = u_1 e^{-x} + u_2 e^{-2x},令 u1′e−x+u2′e−2x=0u_1'e^{-x} + u_2'e^{-2x} = 0,代入得:

{u1′e−x+u2′e−2x=0−u1′e−x−2u2′e−2x=1ex+1\begin{cases} u_1'e^{-x} + u_2'e^{-2x} = 0 \\ -u_1'e^{-x} - 2u_2'e^{-2x} = \dfrac{1}{e^x+1} \end{cases}

由克拉默法则(系数行列式 v=∣e−xe−2x−e−x−2e−2x∣=−e−3xv = \begin{vmatrix} e^{-x} & e^{-2x} \\ -e^{-x} & -2e^{-2x} \end{vmatrix} = -e^{-3x};把第一列换成右端列,得 v1=−e−2xex+1v_1 = -\frac{e^{-2x}}{e^x+1};换成第二列,得 v2=e−xex+1v_2 = \frac{e^{-x}}{e^x+1}):

u1′=v1v=exex+1,u2′=v2v=−e2xex+1u_1' = \frac{v_1}{v} = \frac{e^x}{e^x+1}, \qquad u_2' = \frac{v_2}{v} = -\frac{e^{2x}}{e^x+1}

积分:

u1=ln⁡(ex+1),u2=−ex+ln⁡(ex+1)u_1 = \ln(e^x+1), \qquad u_2 = -e^x + \ln(e^x+1)

特解:

yp=ln⁡(ex+1)⋅e−x+(−ex+ln⁡(ex+1))⋅e−2x=(e−x+e−2x)ln⁡(ex+1)−e−xy_p = \ln(e^x+1)\cdot e^{-x} + (-e^x+\ln(e^x+1))\cdot e^{-2x} = (e^{-x}+e^{-2x})\ln(e^x+1) - e^{-x}

通解与积分因子法一致:

y=C1e−x+C2e−2x+(e−x+e−2x)ln⁡(ex+1)y = C_1 e^{-x} + C_2 e^{-2x} + (e^{-x}+e^{-2x})\ln(e^x+1)

第16~18题(变系数)已在进阶十七给出完整解答,见那里的例1、例2、例3。

学习打卡


化归视角下的常数变易法与待定系数法
一、先聊聊化归
二、先备几样工具
三、先把几个词认清楚
四、齐次方程怎么解
五、非齐次怎么办:解的结构
六、常数变易法
七、待定系数法
八、积分因子法(降阶)
九、那些换元是怎么来的
进阶
十四、朗斯基行列式
十五、克拉默法则
十六、算子法
十七、变系数方程:试探 + 刘维尔
十八、完整推导
十九、步骤速查
二十、例题与练习
≡