常微分方程的數值方法

初值問題(initial-value problem)

想像一顆球沿著軌道滾動,軌道上每一點的斜率都告訴你球此刻往哪個方向、以多快的速度前進。如果有人精確告訴你球從哪裡出發,你就能想像放手讓它走,看著整條路徑展開。初值問題正是如此:一條描述每一刻變化率的規則,加上一個已知的起始狀態,再問未來的軌跡長什麼樣子。

寫下來,常微分方程(ODE)的初值問題是 y'(t) = f(t, y),且 y(t0) = y0。這裡 y 是未知函數(可以是單一數值,也可以是一整個向量),y' = dy/dt 是它的變化率,f 是給定的法則,告訴你當下處於時間 t、狀態 y 時 y 變化得多快,而 y0 是起始時間 t0 處的已知值。斜率場 f 並不直接把 y 交給你;它只給出每一點的方向,而解就是通過 (t0, y0)、處處沿著這些方向走的那條唯一曲線。例如 y' = y、y(0) = 1 的解是 y(t) = e^t,因為變化率等於自身、從 1 出發的函數,正是指數函數。

這是數值解 ODE 的核心對象,之所以重要,是因為科學中幾乎每個動態模型都是初值問題:行星軌道、化學反應速率、人口成長、疫情擴散、機械手臂的運動。一條漂亮的定理(Picard-Lindelof,皮卡-林德洛夫)保證:若 f 在起點附近對 y 夠平滑,則至少在一小段時間內存在唯一解。但「存在」很少代表「有整潔的公式」——多數有用的 f 都寫不出用初等函數表示的解,這正是為什麼我們用數值方法把解「推進」向前,而非在紙上求解。

衰減律 y' = -2y、y(0) = 5 的精確解是 y(t) = 5 e^(-2t):狀態從 5 出發,任一刻的斜率是當下值的 -2 倍,所以值大時縮得快、值小時縮得慢,逐漸趨近 0。求解器其實不需要這個公式——它只反覆呼叫 f(t, y) = -2y 取得局部斜率。

初值問題給出處處的斜率加上一個起點;解就是同時服從兩者的那條曲線。

存在與唯一並非免費:若 f 對 y 太不平滑,解可能不唯一(y' = sqrt(|y|)、y(0) = 0 有無窮多解),或在有限時間內爆掉(y' = y^2 在 t = 1/y0 處衝到無限大)。本身就不適定的問題,數值求解器救不了。

又称
IVPODE initial-value problem初始值問題