数値計算法:直前対策パック

公式集、全トピックの解法の要点、8 問の演習問題。完全な解答は巻末にあります。

新しい問題科目に戻る

印刷ウィンドウで「PDF として保存」を選ぶと、コピーを端末に保存できます。

1公式と解法

数値計算法

二分法
c = (a + b)/2, width after n steps (b − a)/2ⁿ
ニュートン–ラフソン法
xn+1 = xₙ − f(xₙ)/f′(xₙ)
線形補間
y = y₁ + (y₂ − y₁)(x − x₁)/(x₂ − x₁)
台形公式
T = (h/2)[f₀ + 2f₁ + … + 2fn−1 + fₙ], h = (b − a)/n
シンプソンの公式(n は偶数)
S = (h/3)[f₀ + 4f₁ + 2f₂ + … + 4fn−1 + fₙ]
台形公式の誤差評価
|E| ≤ (b − a)h²M/12, M = max|f″|
オイラー
yn+1 = yₙ + h·f(tₙ, yₙ)
ホイン法
yn+1 = yₙ + (h/2)(k₁ + k₂), k₂ = f(tₙ + h, yₙ + hk₁)
RK4
yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)

解き方

  1. 方程式の解では:二分法なら符号の変化を確かめ、ニュートン法なら f と f′ を計算し、反復値の表では有効数字を 6 桁以上保ちましょう。
  2. 表の値では:隣り合う 2 点の間で線形補間しましょう。
  3. 積分では:h = (b − a)/n を求め、すべての節点で f を並べ、重み(台形公式は 1, 2, …, 2, 1、n が偶数のシンプソンの公式は 1, 4, 2, …, 4, 1)を適用して、h/2 または h/3 を掛けます。
  4. 常微分方程式では:t₀ から yₙ₊₁ = yₙ + h·f(tₙ, yₙ)(オイラー法)または平均した傾き(ホイン法)で進み、1 ステップにつき 1 行で、求められた t に達するまで続けます。

数列と級数

等差数列
aₙ = a₁ + (n − 1)d, Sₙ = n(a₁ + aₙ)/2
等比数列
aₙ = a₁rⁿ⁻¹, Sₙ = a₁(1 − rⁿ)/(1 − r)
無限等比級数
S = a₁/(1 − r), |r| < 1
p 級数
Σ1/kᵖ converges only for p > 1
比判定法
L = lim |ak+1/ak|: L < 1 converges, L > 1 diverges
収束半径
R = lim |ck/ck+1|
テイラー多項式
Pₙ(x) = Σ f⁽ᵏ⁾(a)(x − a)ᵏ/k!
マクローリン級数
eˣ = Σxᵏ/k!, sin x = x − x³/3! + …, cos x = 1 − x²/2! + …, ln(1 + x) = x − x²/2 + …
ラグランジュの誤差評価
|Rₙ| ≤ M·|x − a|ⁿ⁺¹/(n + 1)!

解き方

  1. 種類を見極めましょう:等差(一定の差)、等比(一定の比)、標準的な級数、べき級数、テイラー多項式。
  2. 和には Sₙ = n(a₁ + aₙ)/2、Sₙ = a₁(1 − rⁿ)/(1 − r)、または |r| < 1 のとき S = a₁/(1 − r) を使います。a₁ はその和の最初の項です。
  3. 収束については:まず第 n 項判定法、次に Σ1/kᵖ や等比級数との比較を行い、階乗や k 乗には比判定法か根判定法を使います。
  4. テイラー多項式では、f(a)、f′(a)、f″(a)、… を並べ、第 k 階導関数を k! で割り、誤差を M·|x − a|ⁿ⁺¹/(n + 1)! で評価します。

行列と行列式

2×2 の行列式
det = ad − bc
2×2 の逆行列
A⁻¹ = (1/det)·[d −b; −c a]
製品
(AB)ij = Σk AikBkj
固有値
det(A − λI) = 0
クラメルの公式
xi = det(Ai)/det(A)

微分方程式

指数関数的な増加・減少
dy/dt = ky → y = y0ekt
半減期
k = ln 2 / t½
ニュートンの冷却法則
T(t) = Ta + (T0 − Ta)e−kt
積分因子
y′ + p(x)y = q(x): μ = e∫p dx, (μy)′ = μq
混合タンク
dm/dt = r·c − (r/V)·m

2演習問題

1.数値計算法ふつう
xy00.250.50.7511.251.5

台形公式を n = 6 個の短冊で使って、∫01.5 √(1 + x³) dx を近似してください。T を答えてください。

f(x) = √(1 + x³)[a, b] = [0, 1.5]n = 6
T =
2.数値計算法むずかしい
00.510.20.4ty(0, 0.5)

ホイン法(改良オイラー法)を h = 0.5 で y′ = −2ty、y(0) = 0.5 に使い、y2 ≈ y(1) を推定してください。

y′ = −2tyy(0) = 0.5h = 0.5
y2 =
3.数列と級数ふつう
AΣ 5/kk = 1 … ∞BΣ k/2ᵏk = 1 … ∞CΣ (−1)ᵏ/√kk = 1 … ∞DΣ 1/(3ᵏ + k)k = 1 … ∞

4 つの級数のうち、ちょうど 1 つが発散します。それをクリックしてください。

A: Σ 5/kB: Σ k/2ᵏC: Σ (−1)ᵏ/√kD: Σ 1/(3ᵏ + k)
  1. 1A: Σ 5/k
  2. 2B: Σ k/2ᵏ
  3. 3C: Σ (−1)ᵏ/√k
  4. 4D: Σ 1/(3ᵏ + k)
4.数列と級数むずかしい
xyfP₂0.3

f(x) = ln(1 − x) の 2 次のマクローリン多項式を使って、f(0.3) を近似してください。P₂(0.3) を答えてください。

f(x) = ln(1 − x)n = 2x = 0.3
P₂(0.3) =
5.行列と行列式ふつう
A =−54−2−5430−4−5

示された 3×3 行列 A の行列式 det A を求めなさい。

A = [−5 4 −2; −5 4 3; 0 −4 −5]
det A =
6.行列と行列式むずかしい
A =−2−145b =−11−2

連立方程式 −2x − y = −11、4x + 5y = −2 を解きなさい。x を求めなさい。

−2x − y = −114x + 5y = −2
x =
7.微分方程式ふつう
tyy(0) = 3y(2) = ?

y(0) = 3、y′(0) = 2 として y″ + 8y′ + 16y = 0 を解きなさい。y(2) を求めなさい。

y″ + 8y′ + 16y = 0y(0) = 3y′(0) = 2
y(2) =
8.微分方程式むずかしい
tyK = 10y(0.5) = ?

系が t ≥ 0 で y″ + 2y′ + 5y = 50 に従い、静止状態 y(0) = 0、y′(0) = 0 から始まります。y(0.5) を求めなさい。角度はラジアンとします。

y″ + 2y′ + 5y = 50y(0) = 0y′(0) = 0
y(0.5) =

3溶液

1.数値計算法

答え: T = 1.985

数値積分:[a, b] を、幅 h = (b − a)/n、節点 x₀ … xₙ の n 個の短冊に分けます。台形公式:T = (h/2)[f₀ + 2f₁ + 2f₂ + … + 2fn−1 + fₙ]。シンプソンの公式(n は偶数):S = (h/3)[f₀ + 4f₁ + 2f₂ + 4f₃ + … + 4fn−1 + fₙ]。台形公式の誤差は h² のように小さくなり(M = max|f″| として評価式 (b − a)h²·M/12)、シンプソンの公式は h⁴ のように小さくなるので、同じ節点ならシンプソンの公式のほうが通常はずっと正確です。

ixᵢf(xᵢ)体重001110.251.007782220.51.06066230.751.1924242411.414214251.251.718466261.52.091651

節点と値

h = 0.25
Σ wᵢfᵢ = 1 + 2·1.007782 + 2·1.06066 + 2·1.192424 + 2·1.414214 + 2·1.718466 + 2.09165 = 15.878742

台形公式

T = (0.25/2)·15.878742 = 1.985

答え

T = 1.985

この積分には初等的な原始関数がなく、まさにそのようなときに数値的な公式が必要になります。

2.数値計算法

答え: y2 = 0.1875

y′ = f(t, y) の数値解法:オイラー法は、各ステップの開始点での傾きに沿って進みます:yn+1 = yₙ + h·f(tₙ, yₙ)。ホイン法(改良オイラー法)は、開始点での傾きと、オイラー法による予測点での傾きを平均します:k₁ = f(tₙ, yₙ)、k₂ = f(tₙ + h, yₙ + h·k₁)、yn+1 = yₙ + (h/2)(k₁ + k₂)。古典的ルンゲ–クッタ法(RK4)は 4 つの傾きを組み合わせます:yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)。大域誤差は、オイラー法では h に、ホイン法では h² に、RK4 では h⁴ に比例します。

ntₙyₙk₁k₂yₙ₊₁000.50−0.50.37510.50.375−0.375−0.3750.1875

ホイン法のステップ

y₁ = 0.5 + (0.5/2)(0 − 0.5) = 0.375
y₂ = 0.375 + (0.5/2)(−0.375 − 0.375) = 0.1875
00.510.20.4ty

グラフ

y2 = 0.1875

答え

y2 = 0.1875

厳密な値は y(1) = 0.18394 です。

3.数列と級数

答え: A: Σ 5/k

収束:項が 0 に近づかなければ、級数は発散します(第 n 項判定法)。Σ1/kᵖ が収束するのは p > 1 のときだけで、Σrᵏ が収束するのは |r| < 1 のときだけです。k が大きいときに項がこれらと同じようにふるまうなら、級数をこれらと比較します。比判定法:L = lim |ak+1/ak|、根判定法:L = lim |ak|1/k。L < 1 なら収束、L > 1 なら発散、L = 1 なら何も決まりません。べき級数 Σck(x − x₀)ᵏ は |x − x₀| < R で収束し、R = lim |ck/ck+1| です。項が 0 に減少していく交代級数は収束します。

各級数を判定する

A: Σ 5/k → 調和級数(p = 1)の定数倍:発散します。
B: Σ k/2ᵏ → 比判定法:L = 1/2 < 1 なので収束します。
C: Σ (−1)ᵏ/√k → 交代級数で、1/√k が 0 に減少します:(条件)収束します。
D: Σ 1/(3ᵏ + k) → 収束する等比級数 (1/3)ᵏ より小さい:比較により収束します。

答え

A: Σ 5/k

答え

A: Σ 5/k
4.数列と級数

答え: P₂(0.3) = −0.345

テイラー多項式:x = a の近くで、滑らかな関数は Pₙ(x) = f(a) + f′(a)(x − a) + f″(a)(x − a)²/2! + … + f⁽ⁿ⁾(a)(x − a)ⁿ/n! で近似されます。a = 0 のときがマクローリン多項式です。標準的な級数:eˣ = Σxᵏ/k!、sin x = x − x³/3! + x⁵/5! − …、cos x = 1 − x²/2! + x⁴/4! − …、ln(1 + x) = x − x²/2 + x³/3 − …、1/(1 − x) = Σxᵏ。ラグランジュの誤差評価:|f(x) − Pₙ(x)| ≤ M·|x − a|ⁿ⁺¹/(n + 1)!。ここで M は a と x の間での |f⁽ⁿ⁺¹⁾| の最大値です。

マクローリン多項式

P₂(x) = −x − 0.5x²

代入する

P₂(0.3) = −0.3 − 0.045 = −0.345

答え

P₂(0.3) = −0.345

厳密な値は f(0.3) = −0.356675 です。項を増やすか、0 に近い点を取ると、誤差 −0.0116749 は小さくなります。

5.行列と行列式

答え: det A = −100

行列:2×2 行列の行列式は ad − bc です。3×3 では 1 つの行に沿って展開します:各成分に、その行と列を除いた 2×2 行列の行列式を掛け、符号は + − + と交互にします。固有値 λ は det(A − λI) = 0 を満たし、2×2 では λ² −(トレース)·λ + det = 0 です。

第 1 行の 2×2 小行列式

M₁₁ = −8, M₁₂ = 25, M₁₃ = 20

余因子展開

det A = (−5)·(−8) − 4·25 + (−2)·20 = −100

答え

det A = −100
6.行列と行列式

答え: x = 9.5

行列:2×2 行列の行列式は ad − bc です。3×3 では 1 つの行に沿って展開します:各成分に、その行と列を除いた 2×2 行列の行列式を掛け、符号は + − + と交互にします。固有値 λ は det(A − λI) = 0 を満たし、2×2 では λ² −(トレース)·λ + det = 0 です。

係数行列の行列式

det A = (−2)·5 − (−1)·4 = −6

x の列を置き換える

det Aₓ = (−11)·5 − (−1)·(−2) = −57
x = −57/(−6) = 9.5

答え

x = 9.5
y = −8
7.微分方程式

答え: y(2) = 0.0104

2 階線形方程式:y″ + b·y′ + c·y = 0 では y = ert とおきます。これから特性方程式 r² + b·r + c = 0 が得られます。異なる 2 つの実根 r₁ ≠ r₂ のときは y = A·er₁t + B·er₂t(過減衰)、重根 r のときは y = (A + Bt)·ert(臨界減衰)、複素根 −α ± jω のときは y = e−αt(A cos ωt + B sin ωt)(不足減衰、振動)となります。初期値 y(0) と y′(0) から A と B が決まります。y″ + 2ζωny′ + ωn²y = 0 の形に書くと、ωn は固有角周波数、ζ は減衰比で、ζ < 1 なら振動します。入力が一定の y″ + by′ + cy = c·K では、解は定常値 K に自由応答を加えたものです。

重根

(r + 4)² = 0 → r = −4

定数

A = y(0) = 3
y′(0) = B − 4A → B = 2 + 12 = 14

計算する

y(2) = (3 + 14·2)·e−8 = 0.0104

答え

y(2) = 0.0104
8.微分方程式

答え: y(0.5) = 4.171

2 階線形方程式:y″ + b·y′ + c·y = 0 では y = ert とおきます。これから特性方程式 r² + b·r + c = 0 が得られます。異なる 2 つの実根 r₁ ≠ r₂ のときは y = A·er₁t + B·er₂t(過減衰)、重根 r のときは y = (A + Bt)·ert(臨界減衰)、複素根 −α ± jω のときは y = e−αt(A cos ωt + B sin ωt)(不足減衰、振動)となります。初期値 y(0) と y′(0) から A と B が決まります。y″ + 2ζωny′ + ωn²y = 0 の形に書くと、ωn は固有角周波数、ζ は減衰比で、ζ < 1 なら振動します。入力が一定の y″ + by′ + cy = c·K では、解は定常値 K に自由応答を加えたものです。

定常値と根

yss = 10, r = −1 ± 2j

初期値から求める定数

y(0) = 10 + A = 0 → A = −10
y′(0) = −1A + 2B = 0 → B = −5

計算する

y(0.5) = 10·(1 − e−0.5(cos 1 + 0.5·sin 1)) = 4.171

答え

y(0.5) = 4.171

ExamProblems · examproblems.com/courses/numerical-methods