접선 근사
기하학적 아이디어
상미분방정식 dy/dx = f(x,y)는 (x,y) 평면의 모든 점에 기울기를 할당합니다 — 방향장입니다. 참 해 y(x)는 모든 곳에서 할당된 기울기를 따르는 곡선입니다.
오일러 방법은 연속 방향장을 이산 경로로 변환합니다:
> (xₙ, yₙ) → (xₙ + h, yₙ + h·f(xₙ, yₙ))
점 (xₙ, yₙ)에서, 접선을 따라 거리 h만큼 이동합니다. 근사 다음 점에 도달합니다. 반복합니다.
기하학적 오차: 점 (xₙ, yₙ)에서의 접선은 기울기 f(xₙ, yₙ)을 갖지만, 참 곡선은 구간 [xₙ, xₙ + h]의 모든 점에서 다른 기울기를 갖습니다. 오일러 단계는 처음 끝점에서의 기울기를 내내 사용합니다 — '있었던 기울기'입니다. 단계당 오차는 h²로 증가합니다.
누적 오차
고정 끝점 x = a에 도달하기 위해 N 단계 이상, h = a/N일 때:
- 단계당 국소 절단 오차: O(h²)
- 단계의 개수: N = a/h
- 전역 오차: O(h²) × (a/h) = O(h) — 1차 정확도
오일러 방법은 1차: h를 절반으로 줄이면 전역 오차도 절반으로 줄어듭니다.
오일러 방법 실행
dy/dx = y를 초기 조건 y(0) = 1로 생각해봅시다. 참 해: y(x) = eˣ이므로 y(1) = e ≈ 2.71828입니다.
h = 0.5로 오일러 방법을 x = 0에서 x = 1까지 적용합니다 (2 단계):
단계 1: y₁ = y₀ + h·f(x₀, y₀) = 1 + 0.5·(1) = 1.5. 새 점: (0.5, 1.5).
단계 2: y₂ = y₁ + h·f(x₁, y₁) = 1.5 + 0.5·(1.5) = 2.25. 새 점: (1.0, 2.25).
오일러는 2.25를 제공하지만 참 값은 2.71828입니다. 오차: 0.468. 상대 오차: ~17%.
오일러의 안정성 영역 유도
테스트 방정식 dy/dx = λy (여기서 λ는 복소수)의 경우, 오일러 방법은 다음을 제공합니다:
> yₙ₊₁ = yₙ + h·λ·yₙ = yₙ·(1 + hλ)
단계당 증폭 인수: z = 1 + hλ.
안정성 조건: 계산된 해는 |z| ≤ 1, 즉 |1 + hλ| ≤ 1일 때만 유계입니다.
이것은 복소 hλ-평면의 기하학적 조건입니다: 점 hλ는 (-1, 0)을 중심으로 반지름 1인 원 내부에 있어야 합니다.
오일러의 안정성 영역: { hλ ∈ ℂ : |1 + hλ| ≤ 1 }
실수 음수 λ (dy/dx = -2y 같은 감소하는 ODE)의 경우: hλ는 실수 축의 구간 (-2, 0]에 있어야 합니다. λ = -2, h = 0.5일 때: hλ = -1. 이는 정확히 안정성 경계에 있습니다 — 이 방법은 한계 안정이며, 이는 이전 예에서 정성적 실패를 설명합니다.
h = 1, λ = -2일 때: hλ = -2이므로 안정성 영역 바깥입니다. 해는 증가하는 진폭으로 진동합니다.
안정성 경계 찾기
룽게-쿠타 4 (RK4)는 오일러보다 더 큰 안정성 영역을 가지며, 이것이 대부분의 문제에서 선호되는 이유 중 하나입니다.
실수 음수 λ의 경우, RK4는 실수 축에서 약 -2.785까지 hλ를 허용합니다 (오일러의 -2 제한 대비).
고유값이 매우 다른 크기의 경직 방정식의 경우 — λ₁ = -1, λ₂ = -1000이라 합시다 — 안정성은 hλ₂를 영역 내에 유지해야 합니다. 실수 축에서 RK4의 경우: h·(-1000) ≥ -2.785이므로 h ≤ 0.002785.
이 아주 작은 스텝 크기는 경직 고유값 λ₂에 의해 지정되며, 느린 성분 λ₁은 h = 2를 사용할 수 있음에도 불구하고 시뮬레이션을 비싸게 만듭니다.
고정점 & 인력 분지
dy/dx = f(y)에 적용된 오일러 방법은 이산 맵을 정의합니다: yₙ₊₁ = g(yₙ) = yₙ + h·f(yₙ).
이 맵의 고정점: y는 g(y) = y를 만족합니다. dy/dx = f(y)에 대한 오일러의 경우, 고정점은 f(y) = 0을 만족합니다 — ODE의 평형점입니다.
고정점의 안정성: |g'(y)| < 1이면, 근처의 반복은 y로 수렴합니다. |g'(y*)| > 1이면, 발산합니다.
g'(y) = 1 + h·f'(y). 고정점 y에서: |1 + h·f'(y)| < 1은 안정성을 위함입니다.
이것은 정확히 오일러 안정성 조건인데 λ = f'(y*) — 평형에서의 ODE의 선형화입니다.
인력 분지: y* 아래에서 오일러 맵으로 수렴하는 초기 조건의 집합입니다. 비선형 시스템의 경우, 분지 경계는 시뮬레이션이 ODE 평형점을 안정적으로 추적할 것인지 아니면 다른 인력자로 발산할 것인지를 정의합니다.
시뮬레이션 루프는 이산 동역학계입니다. 그 정성적 행동 — 수렴, 진동, 발산 — 스텝 크기 h가 ODE의 방향장의 기하학과 비교하여 어떤 위치인지에 달려 있습니다.
기하학을 시뮬레이션 설계와 연결
수치 시뮬레이션의 기하학은 세 가지 질문으로 귀결됩니다:
1. 안정성 영역은 어디에 있습니까? 오일러의 경우: 원판 |1 + hλ| ≤ 1. RK4의 경우 더 큽니다. 암시적 방법 (전체 좌반부)의 경우 무한합니다.
2. ODE의 고유값은 어디에 있습니까? f의 각 점에서의 야코비안의 고유값 λ는 안정성 영역이 hλ를 포함해야 하는지를 결정합니다.
3. 어떤 h가 모든 hλ를 영역 내에 유지합니까? 최대 허용 h = (안정성 영역 반지름) / max|λ|.
경직 시스템의 경우: max|λ|는 거대하여, 명시적 방법에 대해 아주 작은 h를 강제합니다. 암시적 방법은 단계당 비싸지만 큰 h를 허용합니다 — 이들은 단계당 비용을 안정성으로 교환합니다.
해밍의 통찰력 번역: 수치 방법의 선택은 ODE의 고유값 스펙트럼의 기하학에 대한 내기를 부호화합니다. 그 내기를 명시적으로 만드는 것은 모든 시뮬레이션의 첫 설계 결정입니다.