ギターの弦を弾くと波が伝わります。熱い鉄板の温度は時間とともに均一化されます。静電場は電荷の分布で決まります。これらの現象に共通するのは、複数の独立変数(空間と時間)に依存する未知関数の振る舞いを記述しているという点です。
常微分方程式(ODE)が1つの独立変数に関する方程式であるのに対し、偏微分方程式(PDE: partial differential equation)は2つ以上の独立変数に関する微分方程式です。たとえば弦の変位 $u(x, t)$ は空間座標 $x$ と時間 $t$ の両方に依存しており、その運動を記述するには偏微分が必要になります。自然科学と工学のほとんどの基本法則はPDEで記述されており、PDEの理解は理工系の学問に不可欠です。
偏微分方程式を理解すると、以下のような場面で活用できます。
- 物理学: マクスウェル方程式(電磁気学)、シュレーディンガー方程式(量子力学)、ナビエ-ストークス方程式(流体力学)
- 工学: 熱伝導解析、構造解析(弾性体の変形)、音響解析
- 金融工学: ブラック-ショールズ方程式(オプション価格決定)
- 画像処理: 拡散フィルタ、レベルセット法
本記事の内容
- 偏微分方程式の基本概念(階数・線形性・同次性)
- 2階線形PDEの分類(楕円型・放物型・双曲型)
- 3大基本方程式(波動・拡散・ラプラス)
- 変数分離法の手法
- 境界条件と初期条件
- Pythonでの数値解と可視化
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。
- 2階線形常微分方程式の解法 — 定数係数ODEの解法
- フーリエ級数の理論 — 変数分離法で登場
- 偏微分の基礎 — 偏微分の定義と連鎖律
偏微分方程式とは
基本用語
偏微分方程式の一般形は
$$ F\left(x_1, \ldots, x_n, u, \frac{\partial u}{\partial x_1}, \ldots, \frac{\partial^2 u}{\partial x_1^2}, \ldots\right) = 0 $$
ここで $u = u(x_1, \ldots, x_n)$ が未知関数、$x_1, \ldots, x_n$ が独立変数です。
階数(order)は最高階の偏微分の階数です。たとえば $\frac{\partial^2 u}{\partial t^2} = c^2 \frac{\partial^2 u}{\partial x^2}$ は2階PDEです。
線形PDEとは、$u$ とその偏導関数について線形なものです。たとえばナビエ-ストークス方程式は $(\bm{v} \cdot \nabla)\bm{v}$ の項のために非線形です。
ODEとPDEの本質的な違い
ODEの一般解は任意定数を含みますが、PDEの一般解は任意関数を含みます。たとえば波動方程式 $u_{tt} = c^2 u_{xx}$ の一般解はダランベールの解
$$ u(x, t) = f(x – ct) + g(x + ct) $$
で、$f, g$ は任意の2回微分可能な関数です。これは右進行波と左進行波の重ね合わせを表しています。
この「自由度の大きさ」のため、PDEの解を一意に定めるには境界条件と初期条件が必要です。問題が適切に定義される(存在・一意性・安定性)ための条件設定は、PDEの理論で重要なテーマであり、フランスの数学者アダマール(Hadamard)はこの3条件を満たす問題を適切問題(well-posed problem)と定義しました。逆にこれらの条件のいずれかが満たされない場合は不適切問題(ill-posed problem)と呼ばれ、数値計算では特別な注意が必要です。
初期条件と境界条件の役割をもう少し具体的に見てみましょう。初期条件は「$t = 0$ のときに系がどのような状態にあるか」を指定します。一方、境界条件には主に3種類があります。(1) ディリクレ条件は境界上で解の値を指定する条件(例: 弦の両端を固定)、(2) ノイマン条件は境界上で解の法線微分を指定する条件(例: 断熱壁での熱流束ゼロ)、(3) ロビン条件は解とその法線微分の線形結合を指定する混合条件です。適切な条件の組み合わせはPDEの型によって異なるため、分類の理解が実用上も重要になります。
3大基本方程式の解説に入る前に、まず2階線形PDEの分類法を理解しましょう。
2階線形PDEの分類
一般形と分類
2つの独立変数 $(x, y)$ に対する2階線形PDEの一般形は
$$ a u_{xx} + 2b u_{xy} + c u_{yy} + d u_x + e u_y + f u = g $$
ここで係数 $a, b, c, d, e, f, g$ は $(x, y)$ の関数です。
分類は判別式 $D = b^2 – ac$ によって決まります。
| 条件 | 分類 | 代表的方程式 | 物理的意味 |
|---|---|---|---|
| $D > 0$ | 双曲型(hyperbolic) | 波動方程式 | 波の伝搬 |
| $D = 0$ | 放物型(parabolic) | 拡散方程式 | 拡散・熱伝導 |
| $D < 0$ | 楕円型(elliptic) | ラプラス方程式 | 定常状態 |
なぜこの分類が重要か
この分類は円錐曲線(conic sections)の分類と同じ判別式を使います。$ax^2 + 2bxy + cy^2$ が双曲線か放物線か楕円かを決めるのと同じ条件です。
分類が重要なのは、PDEの型によって解の性質と適切な境界条件が全く異なるからです。
- 双曲型: 情報が有限速度で伝搬。初期条件が必要。特性曲線が存在
- 放物型: 情報が瞬時に(ただし指数的に減衰して)伝搬。初期条件 + 境界条件が必要
- 楕円型: 解はすべての境界条件の影響を受ける。初期条件は不要(定常問題)
高次元への拡張
3次元以上の場合、係数行列
$$ \begin{pmatrix} a_{11} & a_{12} & \cdots \\ a_{12} & a_{22} & \cdots \\ \vdots & & \ddots \end{pmatrix} $$
の固有値で分類します。全固有値が同符号なら楕円型、1つだけ異符号なら双曲型、1つが0なら放物型です。
では、3つの代表的なPDEを順に見ていきましょう。
波動方程式
方程式と物理的意味
1次元波動方程式は
$$ \begin{equation} \frac{\partial^2 u}{\partial t^2} = c^2 \frac{\partial^2 u}{\partial x^2} \end{equation} $$
ここで $u(x, t)$ は弦の変位、$c$ は波の伝搬速度です。
この方程式は、ニュートンの第2法則を微小な弦の要素に適用すると導出されます。長さ $dx$ の微小弦要素を考え、弦が十分に小さな角度で変位しているとすると、弦の張力 $T$ の鉛直方向成分が復元力となります。両端に働く張力の鉛直成分の差は $T \cdot \partial^2 u / \partial x^2 \cdot dx$ であり、微小要素の質量は $\rho \, dx$($\rho$ は線密度)なので、ニュートンの第2法則から直接 $\rho \frac{\partial^2 u}{\partial t^2} = T \frac{\partial^2 u}{\partial x^2}$ が得られます。したがって波の伝搬速度は $c = \sqrt{T/\rho}$ です。ギターの弦を強く張る($T$ を大きくする)と高い音が出る、太い弦($\rho$ が大きい)は低い音が出るという経験的事実が、この式から定量的に理解できます。
ダランベールの解
変数変換 $\xi = x – ct$, $\eta = x + ct$ を行うと
$$ \frac{\partial^2 u}{\partial \xi \partial \eta} = 0 $$
これは直接積分できて
$$ u(\xi, \eta) = f(\xi) + g(\eta) = f(x – ct) + g(x + ct) $$
$f(x – ct)$ は速度 $c$ で右に進む波、$g(x + ct)$ は速度 $c$ で左に進む波です。
初期条件 $u(x, 0) = \phi(x)$, $u_t(x, 0) = \psi(x)$ から $f, g$ が定まります。
$$ f(x) = \frac{1}{2}\phi(x) – \frac{1}{2c}\int_0^x \psi(s)\,ds $$
$$ g(x) = \frac{1}{2}\phi(x) + \frac{1}{2c}\int_0^x \psi(s)\,ds $$
代入してダランベールの公式を得ます。
$$ \begin{equation} u(x, t) = \frac{1}{2}[\phi(x – ct) + \phi(x + ct)] + \frac{1}{2c}\int_{x-ct}^{x+ct} \psi(s)\,ds \end{equation} $$
変数分離法による解
有限区間 $[0, L]$ で境界条件 $u(0, t) = u(L, t) = 0$(両端固定)の場合、変数分離法を使います。
$u(x, t) = X(x)T(t)$ と置くと
$$ X(x)T”(t) = c^2 X”(x)T(t) $$
両辺を $c^2 X T$ で割ると
$$ \frac{T”}{c^2 T} = \frac{X”}{X} = -\lambda \quad (\text{分離定数}) $$
$x$ のみの関数と $t$ のみの関数が等しいので、両者は定数(分離定数 $-\lambda$)に等しくなければなりません。
空間部分: $X” + \lambda X = 0$, $X(0) = X(L) = 0$
これは固有値問題です。自明でない解が存在するのは $\lambda_n = (n\pi/L)^2$($n = 1, 2, 3, \ldots$)のときで、対応する固有関数は
$$ X_n(x) = \sin\frac{n\pi x}{L} $$
時間部分: $T” + c^2\lambda_n T = 0$
$$ T_n(t) = A_n \cos\frac{n\pi ct}{L} + B_n \sin\frac{n\pi ct}{L} $$
一般解:
$$ \begin{equation} u(x, t) = \sum_{n=1}^{\infty} \left(A_n \cos\frac{n\pi ct}{L} + B_n \sin\frac{n\pi ct}{L}\right) \sin\frac{n\pi x}{L} \end{equation} $$
各項は固有モード(定在波)で、$n$ 番目のモードの振動数は $\omega_n = n\pi c/L$ です。$n = 1$ が基本振動、$n \geq 2$ が倍音に対応します。ギターの弦が豊かな音色を持つのは、複数のモードが同時に振動するためです。
波動方程式は「情報が有限速度で伝わる」現象を記述します。この性質は、波動方程式が特性曲線($x \pm ct = \text{const.}$)を持つことに由来しています。初期条件の情報はこの特性曲線に沿ってのみ伝搬するため、位置 $x_0$ での初期擾乱は時刻 $t$ に $[x_0 – ct, x_0 + ct]$ の範囲にしか影響を与えません。この領域を影響領域と呼びます。アインシュタインの特殊相対性理論では $c$ が光速に対応し、情報伝搬速度の上限を規定するという物理的に根本的な意味を持ちます。
次は、情報が瞬時に伝わるように見える拡散現象を記述する方程式を見てみましょう。
拡散方程式(熱伝導方程式)
方程式と物理的意味
1次元拡散方程式は
$$ \begin{equation} \frac{\partial u}{\partial t} = \kappa \frac{\partial^2 u}{\partial x^2} \end{equation} $$
ここで $u(x, t)$ は温度分布、$\kappa > 0$ は熱拡散率です。
フーリエの法則(熱流束は温度勾配に比例)とエネルギー保存則から導出されます。波動方程式が2階の時間微分を含むのに対し、拡散方程式は1階の時間微分のみで、物理的にも数学的にも大きく異なる性質を持ちます。
拡散方程式の性質
-
平滑化効果: 初期条件がどんなに不規則でも、$t > 0$ で解は無限回微分可能になります。これは熱が瞬時に(ただし微小量だけ)全空間に影響を与えることを意味します
-
最大値原理: 解の最大値は初期条件または境界に存在します。内部で温度が初期値や境界値を超えることはありません
-
不可逆性: 拡散方程式は時間反転に対して不変ではありません。$t \to -t$ とすると方程式の符号が変わり、過去に遡る問題は不適切問題(ill-posed problem)になります
変数分離法による解
$[0, L]$ で $u(0, t) = u(L, t) = 0$, $u(x, 0) = \phi(x)$ の場合、$u(x, t) = X(x)T(t)$ と置くと
$$ \frac{T’}{\kappa T} = \frac{X”}{X} = -\lambda_n $$
空間部分: 波動方程式と同じ固有値問題
$$ X_n(x) = \sin\frac{n\pi x}{L}, \quad \lambda_n = \left(\frac{n\pi}{L}\right)^2 $$
時間部分: $T’ + \kappa\lambda_n T = 0$ → $T_n(t) = e^{-\kappa\lambda_n t}$
一般解:
$$ \begin{equation} u(x, t) = \sum_{n=1}^{\infty} B_n e^{-\kappa(n\pi/L)^2 t} \sin\frac{n\pi x}{L} \end{equation} $$
高次モード($n$ が大きい)ほど $e^{-\kappa n^2\pi^2 t/L^2}$ の減衰が速くなります。これは「細かい温度変動ほど速く消える」という物理的直感に合致しています。たとえば $n = 10$ のモードは $n = 1$ のモードに比べて100倍速く減衰します。日常的な例で言えば、コーヒーに入れたミルクの細かい渦模様(高い空間周波数)はすぐに消えますが、全体的な濃度の偏り(低い空間周波数)はなかなか消えないのと同じです。
フーリエ係数は初期条件から
$$ B_n = \frac{2}{L}\int_0^L \phi(x) \sin\frac{n\pi x}{L}\,dx $$
波動方程式と拡散方程式は時間を含む発展方程式でした。次は、時間に依存しない定常状態を記述するラプラス方程式を見てみましょう。
ラプラス方程式とポアソン方程式
方程式と物理的意味
ラプラス方程式は
$$ \begin{equation} \nabla^2 u = \frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2} = 0 \end{equation} $$
ラプラス方程式の解は調和関数(harmonic function)と呼ばれます。
ポアソン方程式 $\nabla^2 u = f$ はラプラス方程式の非同次版です。
これらは以下の物理現象を記述します。
- 静電場: $\nabla^2 \phi = -\rho/\varepsilon_0$(ポアソン方程式)
- 定常熱伝導: $\nabla^2 T = 0$(内部熱源なし)
- 非圧縮流体: $\nabla^2 \psi = 0$(渦なし流れの流れ関数)
- 重力場: $\nabla^2 \Phi = 4\pi G\rho$
調和関数の性質
調和関数は美しい性質を数多く持っています。
平均値の性質: 調和関数の任意の点での値は、その点を中心とする任意の円(球)上での平均値に等しい。
$$ u(\bm{x}_0) = \frac{1}{2\pi r}\oint_{|\bm{x} – \bm{x}_0| = r} u(\bm{x})\,ds $$
最大値原理: 調和関数の最大値と最小値は領域の境界上にのみ存在する。
これらの性質から、ラプラス方程式の解は「尖った」特徴を持たず、境界値の「平滑な補間」になっていることがわかります。平均値の性質は直感的にも理解できます。定常状態の温度分布では、ある点の温度がその周囲の温度の平均と等しくなるのは当然です — もし平均より高ければ周囲に熱が流れてその点の温度が下がり、平均より低ければ周囲から熱が流れ込んで温度が上がるからです。定常状態ではこの熱の流れが均衡しているため、平均値の性質が成り立つのです。
矩形領域での変数分離法
$[0, a] \times [0, b]$ の矩形領域で $u(x, 0) = 0$, $u(x, b) = 0$, $u(0, y) = 0$, $u(a, y) = g(y)$ の場合、$u(x, y) = X(x)Y(y)$ と置くと
$$ \frac{X”}{X} = -\frac{Y”}{Y} = \lambda $$
$Y” + \lambda Y = 0$, $Y(0) = Y(b) = 0$ から $\lambda_n = (n\pi/b)^2$, $Y_n = \sin(n\pi y/b)$。
$X” – \lambda_n X = 0$, $X(0) = 0$ から $X_n = \sinh(n\pi x/b)$。
一般解は
$$ u(x, y) = \sum_{n=1}^{\infty} C_n \sinh\frac{n\pi x}{b} \sin\frac{n\pi y}{b} $$
$u(a, y) = g(y)$ から係数が決まります。
3大基本方程式の性質が理解できたところで、Pythonでこれらの解を可視化してみましょう。
Pythonによる実装
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import cm
fig, axes = plt.subplots(2, 2, figsize=(14, 12))
# --- (a) 波動方程式の時間発展 ---
ax = axes[0, 0]
L = 1.0
c = 1.0
N_modes = 20
x = np.linspace(0, L, 200)
# 初期条件: 三角波
def initial_displacement(x):
return np.where(x < 0.5, 2 * x, 2 * (1 - x))
# フーリエ係数
B_n = np.zeros(N_modes + 1)
dx = x[1] - x[0]
for n in range(1, N_modes + 1):
B_n[n] = 2 / L * np.trapz(initial_displacement(x) * np.sin(n * np.pi * x / L), x)
# 各時刻での波形
times = [0, 0.1, 0.25, 0.5, 0.75, 1.0]
colors_wave = plt.cm.viridis(np.linspace(0, 1, len(times)))
for i, t in enumerate(times):
u = np.zeros_like(x)
for n in range(1, N_modes + 1):
u += B_n[n] * np.cos(n * np.pi * c * t / L) * np.sin(n * np.pi * x / L)
ax.plot(x, u, color=colors_wave[i], linewidth=1.5, label=f"$t = {t}$")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$u(x, t)$", fontsize=12)
ax.set_title("(a) Wave Equation: Standing Waves", fontsize=13)
ax.legend(fontsize=9, ncol=2)
ax.grid(True, alpha=0.3)
# --- (b) 拡散方程式の時間発展 ---
ax = axes[0, 1]
kappa = 0.01
# 初期条件: 矩形波
def initial_temp(x):
return np.where((x > 0.3) & (x < 0.7), 1.0, 0.0)
# フーリエ係数
C_n = np.zeros(N_modes + 1)
for n in range(1, N_modes + 1):
C_n[n] = 2 / L * np.trapz(initial_temp(x) * np.sin(n * np.pi * x / L), x)
times_heat = [0, 0.5, 1.0, 2.0, 5.0, 10.0]
colors_heat = plt.cm.hot(np.linspace(0, 0.8, len(times_heat)))
for i, t in enumerate(times_heat):
u = np.zeros_like(x)
for n in range(1, N_modes + 1):
u += C_n[n] * np.exp(-kappa * (n * np.pi / L)**2 * t) * np.sin(n * np.pi * x / L)
ax.plot(x, u, color=colors_heat[i], linewidth=1.5, label=f"$t = {t}$")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$u(x, t)$", fontsize=12)
ax.set_title("(b) Diffusion Equation: Heat Spreading", fontsize=13)
ax.legend(fontsize=9, ncol=2)
ax.grid(True, alpha=0.3)
# --- (c) 波動方程式の時空間プロット ---
ax = axes[1, 0]
t_range = np.linspace(0, 2, 200)
X, T = np.meshgrid(x, t_range)
U_wave = np.zeros_like(X)
for n in range(1, N_modes + 1):
U_wave += B_n[n] * np.cos(n * np.pi * c * T / L) * np.sin(n * np.pi * X / L)
im = ax.pcolormesh(X, T, U_wave, cmap="RdBu_r", shading="auto", vmin=-1, vmax=1)
plt.colorbar(im, ax=ax, label="$u(x,t)$")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$t$", fontsize=12)
ax.set_title("(c) Wave Equation: Space-Time", fontsize=13)
# --- (d) 拡散方程式の時空間プロット ---
ax = axes[1, 1]
U_heat = np.zeros_like(X)
for n in range(1, N_modes + 1):
U_heat += C_n[n] * np.exp(-kappa * (n * np.pi / L)**2 * T) * np.sin(n * np.pi * X / L)
im = ax.pcolormesh(X, T, U_heat, cmap="hot", shading="auto", vmin=0, vmax=1)
plt.colorbar(im, ax=ax, label="$u(x,t)$")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$t$", fontsize=12)
ax.set_title("(d) Diffusion Equation: Space-Time", fontsize=13)
plt.tight_layout()
plt.savefig("pde_introduction.png", dpi=150, bbox_inches="tight")
plt.show()
この4つの図から、波動方程式と拡散方程式の本質的な違いが明確に読み取れます。
-
左上(波動方程式の波形): 初期の三角波が時間とともに形を変えながら振動しています。$t = 0.5$ で弦が反転し、$t = 1.0$ で元の形に戻っています。これは両端固定弦の周期 $T = 2L/c = 2$ の半分($t = 1$)で反転が起こることを示しています
-
右上(拡散方程式の温度分布): 初期の矩形波が時間とともに滑らかに広がり、最終的に0に収束していきます。$t = 10$ ではほぼ平坦になっています。鋭い角が即座に丸くなるのが拡散方程式の平滑化効果の顕著な現れです
-
左下(波動方程式の時空間図): 時空間平面上で波が行き来する様子が見えます。対角方向の模様は特性曲線($x \pm ct = \text{const.}$)に沿った波の伝搬を反映しています。情報が有限速度 $c$ で伝わることが視覚的に確認できます
-
右下(拡散方程式の時空間図): 初期の局所的な高温領域が時間とともに急速に拡散し、情報が即座に全領域に広がっています。波動方程式の鋭い特性曲線とは対照的に、拡散は滑らかに進行しています
import numpy as np
import matplotlib.pyplot as plt
# ラプラス方程式の数値解(有限差分法)
fig, axes = plt.subplots(1, 2, figsize=(14, 5.5))
# --- (a) ラプラス方程式の解 ---
ax = axes[0]
N = 50
x_grid = np.linspace(0, 1, N)
y_grid = np.linspace(0, 1, N)
dx = x_grid[1] - x_grid[0]
# 境界条件: u(x, 1) = sin(pi*x), 他はゼロ
u = np.zeros((N, N))
u[:, -1] = np.sin(np.pi * x_grid) # 上辺
# ヤコビ反復法
for iteration in range(5000):
u_old = u.copy()
for i in range(1, N - 1):
for j in range(1, N - 1):
u[i, j] = 0.25 * (u[i+1, j] + u[i-1, j] + u[i, j+1] + u[i, j-1])
# 境界条件の再設定
u[:, -1] = np.sin(np.pi * x_grid)
u[:, 0] = 0
u[0, :] = 0
u[-1, :] = 0
if np.max(np.abs(u - u_old)) < 1e-8:
break
X, Y = np.meshgrid(x_grid, y_grid)
im = ax.contourf(X, Y, u.T, levels=20, cmap="coolwarm")
ax.contour(X, Y, u.T, levels=10, colors="black", linewidths=0.5)
plt.colorbar(im, ax=ax, label="$u(x, y)$")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$y$", fontsize=12)
ax.set_title("(a) Laplace Equation: Numerical Solution", fontsize=13)
ax.set_aspect("equal")
# --- (b) 解析解との比較 ---
ax = axes[1]
# 解析解: u(x,y) = sin(pi*x) * sinh(pi*y) / sinh(pi)
u_exact = np.sin(np.pi * X) * np.sinh(np.pi * Y) / np.sinh(np.pi)
# y = 0.5 での断面比較
y_idx = N // 2
ax.plot(x_grid, u[y_idx, :], "b-", linewidth=2, label="Numerical (Jacobi)")
ax.plot(x_grid, u_exact[y_idx, :], "r--", linewidth=2, label="Analytical")
ax.set_xlabel("$x$", fontsize=12)
ax.set_ylabel("$u(x, 0.5)$", fontsize=12)
ax.set_title("(b) Cross-section at $y = 0.5$", fontsize=13)
ax.legend(fontsize=11)
ax.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig("pde_laplace.png", dpi=150, bbox_inches="tight")
plt.show()
この図から、ラプラス方程式の解の性質が確認できます。
-
左図(2次元分布): 上辺の境界条件 $u(x, 1) = \sin(\pi x)$ が領域内部に滑らかに伝わっています。下辺($y = 0$)に近づくほど温度が0に近づき、最大値は境界上($y = 1$ の中央)にあります。これは最大値原理の直接的な確認です
-
右図(断面比較): $y = 0.5$ での数値解(ヤコビ反復法)と解析解 $\sin(\pi x) \sinh(\pi y) / \sinh(\pi)$ が非常に良く一致しています。ヤコビ反復法という単純なアルゴリズムでも、十分な反復回数で高精度の解が得られることがわかります
まとめ
本記事では、偏微分方程式の基本的な分類と解法を解説しました。
- 2階線形PDEは判別式 $b^2 – ac$ により双曲型(波動)、放物型(拡散)、楕円型(ラプラス)に分類される
- 波動方程式 $u_{tt} = c^2 u_{xx}$ は情報の有限速度伝搬を記述し、ダランベール解と変数分離法で解ける
- 拡散方程式 $u_t = \kappa u_{xx}$ は平滑化効果と不可逆性を持ち、高次フーリエモードの急速な減衰が特徴
- ラプラス方程式 $\nabla^2 u = 0$ は定常問題を記述し、最大値原理と平均値の性質を持つ
- 変数分離法は3つの方程式すべてに適用でき、フーリエ級数と固有値問題に帰着する
次のステップとして、以下の記事も参考にしてください。
- フーリエ級数の理論 — 変数分離法の基盤
- フーリエ変換の理論 — 無限領域のPDE
- 常微分方程式の数値解法 — PDE数値解法の基礎
- 有限要素法入門 — PDEの汎用的数値解法