# 一阶线性 ODE > [!note]- 这名字什么意思 > 一阶,指方程里出现的最高导数是一阶导数 $\dfrac{\mathrm{d}m}{\mathrm{d}t}$。 > 线性,指方程里 $m$ 和它的导数都以一次方出现,也就是只用到 $m$ 本身、$\dfrac{\mathrm{d}m}{\mathrm{d}t}$ 本身,前面可乘常数。$m$ 本身就是那个未知函数,单独一个 $m$;像 $am$,是 $m$ 前面乘了常数 $a$。 > 常微分方程(ODE),指带导数的等式。「常」指未知函数只依赖一个变量 $t$,用普通导数 $\dfrac{\mathrm{d}}{\mathrm{d}t}$。 > 合起来,一阶线性 ODE 就是常微分方程里「最高一阶导数、$m$ 和导数都一次方」的那一类,我们这条 $\dfrac{\mathrm{d}m}{\mathrm{d}t}=a\,m$ 就在其中。 > [!abstract] 题型与结果 > **形如 $\dfrac{\mathrm{d}m}{\mathrm{d}t}=a\,m$,其中 $a$ 是常数。**起始值 $m(0)$ 已知,它是 $t=0$ 时的函数值。解直接就是: > $m(t)=m(0)\,e^{at}$ > **认出这个形状,套上这条结果即可,不用每次重新推导。**$a$、$m(0)$ 换成题里给的值。 > [!abstract] 怎么用这条结果 > 整条 $m(0)\,e^{at}$ 就是函数 $m(t)$。给它一个 $t$,它吐出那一刻的值。$m(0)$ 是起始值,$e^{at}$ 是随 $t$ 变的部分。 > 要算具体数字,把 $a$、$m(0)$、$t$ 都换成给定的值,算一遍即可。例:$a=2$、$m(0)=5$、$t=3$,$m(3)=5\,e^{2\times 3}=5\,e^{6}$,约 2017。 > [!note]- 为什么解是 $m(0)\,e^{at}$ > 整条思路分两步,先求出一族解,再用起始值挑一条。 > > 第一步,求出一族。 > 要找导数等于 $a$ 乘它自己的函数。$e^{at}$ 就是这样一个,它的导数: > $\dfrac{\mathrm{d}}{\mathrm{d}t}e^{at}=e^{at}\cdot a=a\,e^{at}$ > 正好是自己的 $a$ 倍。它乘任意常数 $C$ 也是解: > $\dfrac{\mathrm{d}}{\mathrm{d}t}\big(C\,e^{at}\big)=C\cdot a\,e^{at}=a\,\big(C\,e^{at}\big)$ > 导数还是 $a$ 乘它自己。所以符合方程的是一整族 $C\,e^{at}$,$C$ 还没定。 > > 第二步,挑出一条。 > 方程只定规则,定不下从多大起步,所以要起始值。在 $C\,e^{at}$ 里代 $t=0$: > $C\,e^{a\cdot 0}=C\,e^{0}=C\cdot 1=C$ > 函数在 $t=0$ 的值就是 $C$,也就是起始值。题给的起始值是 $m(0)$,所以 $C=m(0)$。代回得: > $m(t)=m(0)\,e^{at}$ > [!note]- 用到 $e$ 的两条性质 > 一,$e^{at}$ 求导得 $a$ 倍自己,$\dfrac{\mathrm{d}}{\mathrm{d}t}e^{at}=a\,e^{at}$,正好对上方程「导数 = $a$ 乘自己」,所以 $Ce^{at}$ 是解。 > 二,$e^{0}=1$,所以 $t=0$ 时值就是 $C$,于是 $C=m(0)$。 > [!question]- 练习 > 一,$\dfrac{\mathrm{d}m}{\mathrm{d}t}=3m$,$m(0)=2$,写出 $m(t)$。 > 二,$\dfrac{\mathrm{d}m}{\mathrm{d}t}=-m$,$m(0)=5$,写出 $m(t)$。 > [!note]- 练习答案 > 一,$a=3$、$m(0)=2$,套结果得 $m(t)=2\,e^{3t}$。 > 二,$a=-1$、$m(0)=5$,套结果得 $m(t)=5\,e^{-t}$。 > [!note]- 和主线(扩散)的关系 > **加噪过程的均值,就按这种一阶线性 ODE 收缩,只是常数 $a$ 换成随时间变的 $a(t)$。** > 采样(DDIM、概率流)就是解一个 ODE;「下一步 = 当前 + 速度 × 步长」是它的数值解法。 > Song 2021 里的 probability flow ODE,用的就是这套写法。 > 一句话,这是读论文采样那块的语言。常数版吃透,后面换成 $a(t)$ 就接得上。