markdown
存在一意性と数値解法-基本演習md 35fdb4e
exercise/math/differential-equations/existence-uniqueness-and-numerical-methods.exercise.n.md
存在一意性と数値解法-基本演習
mathdifferential-equationsexerciseexistence-uniquenessnumerical-method
data/lecture/math/differential-equations/existence-uniqueness-and-lipschitz-condition.lecture.n.md
1演習方針
この演習では、微分方程式を解く前に、解が存在するか、一意に定まるか、数値解が安定に計算されるかを確認する。公式で閉じた形の解を得ることと、解の存在を保証することは別の問題である。
2問題 1
初期値問題
y'=x+y^2,\qquad y(0)=0
について、局所解の存在と一意性を判定せよ。
2.1解答例
○
f(x,y)=x+y^2 は連続であり、y に関する偏微分 f_y=2y も初期点の近傍で連続である。したがって、初期点の近傍で一意な局所解が存在する。
2.2解説
存在には f の連続性が基本であり、y に関する局所 Lipschitz 性は一意性を導く標準的な十分条件である。f_y の連続性は Lipschitz 性を確認する分かりやすい十分条件である。
3問題 2
初期値問題
y'=\sqrt{|y|},\qquad y(0)=0
について、一意性が破れる理由を説明せよ。
3.1解答例
○
y=0 は解である。一方、任意の a\ge 0 に対して、x\le a で y=0、x\ge a で y=(x-a)^2/4 と定めた関数も解である。したがって一意性は成立しない。
3.2解説
f(y)=\sqrt{|y|} は連続なので存在は期待できる。しかし y=0 の近傍で Lipschitz 条件を満たさない。原点で待機してから動き始める解が許されるため、初期条件だけでは解が一意に定まらない。
4問題 3
初期値問題
y'=y^2,\qquad y(0)=1
を解き、最大存在区間を求めよ。
4.1解答例
○
y=\frac{1}{1-x}
であり、最大存在区間は (-\infty,1) である。
4.2解説
変数分離により dy/y^2=dx である。積分して -1/y=x+C、初期条件から C=-1 なので y=1/(1-x) を得る。右辺 y^2 は滑らかであり局所一意解は存在するが、x=1 で blow-up する。一意な解が存在しても、全実数で存在するとは限らない。
5問題 4
Forward Euler 法で
y'=-2y,\qquad y(0)=1
を刻み幅 h=0.25 で二歩だけ計算せよ。
5.1解答例
○
更新式は y_{n+1}=y_n+h(-2y_n)=(1-2h)y_n である。h=0.25 なので y_{n+1}=0.5y_n であり、y_1=0.5、y_2=0.25 である。
5.2解説
Forward Euler 法は接線の傾きで短時間だけ進む近似である。正確な値から 1 歩だけ更新したときの一歩誤差、すなわち欠損は、真の解が十分に滑らかなとき O(h^2) である。さらに f の y に関する Lipschitz 性などを仮定すると、固定有限区間の大域誤差は O(h) になる。欠損を h で割った量を局所打切り誤差と呼ぶ流儀では、その次数は O(h) である。精度と安定性は別概念である。
6問題 5
Forward Euler 法を
y'=-10y
へ適用する。数値解が減衰するための刻み幅 h の条件を求め、h=0.3 が不安定になる理由を述べよ。
6.1解答例
○
更新式は y_{n+1}=(1-10h)y_n である。減衰には |1-10h|<1 が必要なので、0<h<0.2 である。h=0.3 では 1-10h=-2 となり、絶対値が 1 を超えるため不安定である。
6.2解説
真の解 e^{-10x} は単調に減衰する。しかし数値法では、更新係数の絶対値が 1 を超えると誤差が拡大する。微分方程式が安定でも、数値解法と刻み幅の選択が不適切なら計算は不安定になりうる。
7問題 6
閉じた式で解くことが困難な初期値問題に対して、解析解、数値解、定性的解析の役割を一文ずつ説明せよ。
7.1解答例
○
解析解は、式として構造を理解する役割を持つ。数値解は、具体的な初期値に対して近似値を計算する役割を持つ。定性的解析は、平衡点、安定性、増減、長時間挙動を読解する役割を持つ。
7.2解説
解けないという語を、解が存在しないという意味で使用してはならない。初等関数で表現できない場合でも、存在一意性、数値計算、定性的解析により情報を取得できる。