伯努利方程:令z=y^(1−n)化为一阶线性的步骤

更新于

伯努利方程是形如 y′+P(x)y=Q(x)yⁿ(n≠0、1)的一阶方程,解法固定为四步:两边同除以 yⁿ,令 z=y^(1−n),方程就化成关于 z 的一阶线性方程;用一阶线性通解公式求出 z,再换回 y。n>0 时 y=0 也满足原方程,第一步除以 yⁿ 时把它丢掉了,答案里要单独补上。下面给出识别方法与四步速查,再用 n=2 和 n=1/2 两道例题完整走一遍。

识别与四步速查

识别只看一处:把方程整理成左边 y′+P(x)y 的样子后,右边是不是「x 的函数乘 y 的某次幂」。常见的伪装有两种:xy′+y=… 要先两边除以 x;右端写成 y²ln x/x 时,要看出 Q(x)=ln x/x、n=2。n 可以是负数或分数,例如右端是 x/y 时 n=−1,是 x√y 时 n=1/2,照样按下面四步走。

步骤 做什么 要写清的量
① 化标准形 整理成 y′+P(x)y=Q(x)yⁿ P(x)、Q(x)、n
② 除以 yⁿ 并代换 令 z=y^(1−n),z′=(1−n)y^(−n)y′ 代换后方程里 P、Q 前的系数
③ 解线性方程 用 z′+p(x)z=q(x) 的通解公式 积分因子 e^(∫p dx)
④ 回代并补解 z 换回 y^(1−n);n>0 时补 y=0 通解与特解分开写

第二步是整道题的关键。z′ 里多出的系数 1−n 要乘到 P 和 Q 上,代换后的方程统一写成:

令 z 等于 y 的 1−n 次方后得到的一阶线性方程

例 1:n=2,带初值

题目 求 xy′+y=y²ln x 满足 y(1)=1/2 的特解。

化标准形:两边除以 x,得 y′+(1/x)y=(ln x/x)y²,所以 P=1/x,Q=ln x/x,n=2。

代换:令 z=y⁻¹,按上面的公式,系数 1−n=−1,方程化为 z′−z/x=−ln x/x。

解线性方程:积分因子是 1/x,两边乘上后得到 (z/x)′=−ln x/x²。右端积分用分部积分:∫(−ln x/x²)dx=(ln x+1)/x+C,所以 z=ln x+1+Cx。

回代:y=1/(ln x+1+Cx)。代入 y(1)=1/2,得 1+C=2,C=1,特解为 y=1/(ln x+x+1)。y=0 虽然也满足原方程,但不满足初值,不写进答案。推导在编辑器里逐行排好是这样:

编辑器里例 1 的四行推导,到特解为止

例 2:n=1/2,y=0 要单独写

题目 求 y′−y=x√y 的通解。

化标准形:P=−1,Q=x,n=1/2,这里默认 y≥0。

代换:令 z=y^(1/2),系数 1−n=1/2,方程化为 z′−z/2=x/2。

解线性方程:积分因子是 e^(−x/2),得 (z·e^(−x/2))′=(x/2)e^(−x/2)。分部积分后 z·e^(−x/2)=−(x+2)e^(−x/2)+C,所以 z=Ce^(x/2)−x−2。

回代并补解:√y=Ce^(x/2)−x−2,即

y=\left(Ce^{\frac{x}{2}}-x-2\right)^{2}\quad\left(Ce^{\frac{x}{2}}-x-2\geqslant 0\right),\qquad y=0

y=0 代回原方程两边都是 0,它不在通解里(没有哪个 C 能让 Ce^(x/2)−x−2 恒为 0),所以要单独列出。把 C=2 和 C=3 的曲线画出来能看到,C=2 那条在原点正好碰到 y=0:

例 2 中 C=2、C=3 两条积分曲线与解 y=0

数值核对:取 C=5、x=1.3,左边 y′−y 与右边 x√y 都约等于 8.161。

四处常见错误

错误 出在哪一步 改法
z′ 写成 y^(−n)y′,漏了 1−n ② z′=(1−n)y^(−n)y′
例 1 化成 z′+z/x=ln x/x ② P、Q 都要乘 1−n=−1
例 2 回代写成 y=√(Ce^(x/2)−x−2) ④ z=y^(1/2),所以 y=z²
只写通解,丢了 y=0 ④ n>0 时检查 y=0 是否满足原方程

四步的顺序与每步的输出如下,做题时可以照着一步一行往下写:

伯努利方程四步:标准形、代换、解线性方程、回代补解

d、y′ 这些记号怎么读、写在什么位置,可以看 微分符号。

例 2 的答案有两部分,誊写时最容易漏掉后半个。把通解与 y=0 并排写在同一行,用「以及」连接;只交这一条时,从顶栏「导出」选「Word(含公式)」,需登录并开通会员。

延伸阅读

常见问题

n=0或1时还是伯努利方程吗?
形式上能写成同一个样子,但通常不再叫伯努利方程。n 等于 0 时右端没有 y,本身就是一阶线性方程;n 等于 1 时右端的 y 可以移到左边,得到一阶线性齐次方程,也就是可分离变量方程。两种情况都用不着变量代换,所以讨论伯努利方程时一般约定 n 不等于 0 也不等于 1。