WolframAlpha

常数变易法:从齐次解到非齐次通解的推导步骤

更新于

常数变易法解一阶线性方程 y′+P(x)y=Q(x) 分三步:先解对应的齐次方程 y′+P(x)y=0,得到 y=Ce^(−∫P dx);再把常数 C 换成未知函数 u(x),设 y=u(x)e^(−∫P dx);最后代回原方程,含 u 的项会互相抵消,只剩 u′ 的方程,积分求出 u 再乘回齐次解,就得到通解。通解公式其实就是这三步的结果,公式记不住时,按常数变易法现推一遍即可。之所以叫「变易」,是因为齐次通解里本来是常数的 C,被放宽成随 x 变化的函数,多出来的这点自由度正好用来凑出右边的 Q(x)。

三步推导:通解公式从哪里来

下面先推一般形式,再做两道具体题;推一般形式时 ∫P dx 只取一个原函数,不加常数。

第一步,解齐次方程。 y′=−P(x)y 可以分离变量:dy/y=−P(x)dx,积分得 y=Ce^(−∫P dx)。

第二步,把 C 换成 u(x)。 设 y=u·e^(−∫P dx),求导用乘积法则:y′=u′e^(−∫P dx)−P·u·e^(−∫P dx)。

第三步,代回原方程。 y′+Py 中,−P·u·e^(−∫P dx) 与 +P·u·e^(−∫P dx) 正好抵消,剩下 u′e^(−∫P dx)=Q,于是 u′=Q·e^(∫P dx)。积分后代回,就是通解公式:

由 u′ 等于 Q 乘 e 的 ∫P 次方积分得到一阶线性通解公式

第三步里「u 的项抵消」是一个自带的检查:代回之后若还剩着 u 本身,说明第二步求导或第一步齐次解写错了,不必算到最后才发现。

常数变易法三步:解齐次、换 C 为 u(x)、代回求 u

例 1:y′−y/x=x²ln x(x>0)

解齐次。 y′=y/x,分离变量 dy/y=dx/x,得 y=Cx。

变易常数。 设 y=u(x)·x,则 y′=u′x+u。

代回。 左边 u′x+u−u,含 u 的两项抵消,得 u′x=x²ln x,即 u′=x ln x。这一步要分部积分:取 ln x 为被求导的一方,得 u=(x²/2)ln x−x²/4+C。

例 1 代回后 u 的两项抵消,u′ 等于 x ln x,分部积分得 u

乘回齐次解 x,通解 y=(x³/2)ln x−x³/4+Cx。

对照通解公式。 P=−1/x,e^(−∫P dx)=x,∫Q·e^(∫P dx)dx=∫x²ln x·(1/x)dx=∫x ln x dx,与上面的 u′ 完全相同,只是公式把这一步藏起来了。

代数值核对:取 C=2,在 x=2.5 处用差商算 y′−y/x,得 5.72682,与 2.5²×ln 2.5≈5.72682 一致。

例 2:y′+y=e^(−x)cos x,y(0)=1

解齐次。 y′=−y,得 y=Ce^(−x)。

变易常数。 设 y=u·e^(−x),y′=u′e^(−x)−u·e^(−x)。

代回。 u′e^(−x)−ue^(−x)+ue^(−x)=e^(−x)cos x,抵消后 u′=cos x,u=sin x+C,通解 y=(sin x+C)e^(−x)。

定常数。 x=0 时 y=(0+C)·1=1,C=1,特解 y=(sin x+1)e^(−x)。代回核对:y′=cos x·e^(−x)−(sin x+1)e^(−x),加上 y 后正好剩 e^(−x)cos x。

编辑器里例 2 设 u、代回、定常数的三行推导

常见错误对照

错误 后果 改法
y′ 前有系数就开始做 P 读错,齐次解全错 先两边除以 y′ 的系数
求导时把 u 当常数,漏掉 u′ 那一项 代回得 0=Q,推不下去 乘积法则两项都写
积分 u′ 时忘加 C 只得到一个特解 u 的积分常数就是通解里的 C
把 C 加在最外面 例 1 写成 (x³/2)ln x−x³/4+C C 要乘上齐次解 x,写成 Cx

三步推导适合写成上下对齐的几行。在本站编辑器点「LaTeX」,把例 2 的「设、代回、积分」三行用 aligned 排好,切回「可视化」模式看指数 −x 是否都排进了上标;多道题要合成一份时,到「文档编辑」逐条「插入公式」,再导出「Word 文档 (.docx)」,这一步要登录并开通本站会员。分式较多的行,可以参考分数输入里的写法。

常数变易法为什么总能走通,看例 1 代回那一行就明白:+u 与 −u 一定相消,剩下的只有 u′,一次积分就求出 u。

延伸阅读

  • 分数输入:y/x、x²/2 这类分式在公式里的规范排法
  • 帮助中心:LaTeX 模式与文档编辑的操作说明

常见问题

常数变易法能用于二阶方程吗?
能,二阶线性方程同样适用。先求出对应齐次方程的两个线性无关解 y1、y2,把通解里的两个常数都换成函数 C1(x)、C2(x),再补一个条件 C1'y1+C2'y2=0,与代回原方程得到的方程联立,解出 C1'、C2' 后积分。例如 y''+y=sec x,用这个办法得到特解 cos x·ln|cos x|+x·sin x。