유한차분법
📂수치해석유한차분법
정의
유한차분법finite difference method, FDM은 미분계수를 계산하는 수치적방법으로, 짧은 구간에서의 평균 변화율로 미분계수를 근사한다.
설명
공식 유도의 핵심은 테일러 전개이다.
f(x+h)=f(x)+f′(x)h+2!f′′(x)h2+3!f′′′h3+⋯(1)
도함수만 좌변에 오도록 정리하면,
f′(x)=hf(x+h)−f(x)+2!f′′(x)h+⋯=hf(x+h)−f(x)+O(h)≈hf(x+h)−f(x)
여기서 O(h)는 점근 표기법이다. h가 충분히 작다면 우변은 좌변을 꽤나 잘 근사할 것이다. 실제로 미분이나 가속도를 처음 배울 때 평균 변화율의 극한으로 설명하곤 한다.
도함수
전방차분
x에서의 미분계수를 x와 다음 타임스텝 x+h의 평균변화율로 근사하는 것을 전방차분forward difference이라 한다. 에러 항은 O(h)이다.
f′(x)≈hf(x+h)−f(x)
후방차분
x에서의 미분계수를 x와 이전 타임스텝 x−h의 평균변화율로 근사하는 것을 후방차분backword difference이라 한다. 에러 항은 O(h)이다.
f′(x)≈hf(x)−f(x−h)
중앙차분
중앙차분central difference은 위의 두 방법과 달리 에러 항이 O(h2)이다. (1)에서 h대신 ±2h를 대입하면,
f(x+h/2)=f(x)+f′(x)2h+2!f′′(x)(2h)2+3!f′′′(x)(2h)3+⋯
f(x−h/2)=f(x)−f′(x)2h+2!f′′(x)(2h)2−3!f′′′(x)(2h)3+⋯
위의 식에서 아래의 식을 빼면,
f(x+h/2)−f(x−h/2)=f′(x)h+23!f′′′(x)(2h)3+⋯
f′(x)에 대해서 정리하면,
f′(x)=hf(x+h/2)−f(x−h/2)+3!f′′′(x)(2h)2+⋯=hf(x+h/2)−f(x−h/2)+O(h2)≈hf(x+h/2)−f(x−h/2)
이계도함수
(1)과 (1)에 h 대신 −h를 대입한 두 식을 서로 더하면 다음과 같다.
+f(x+h)f(x−h)f(x+h)+f(x−h)=f(x)+f′(x)h+2!f′′(x)h2+3!f′′′h3+⋯=f(x)−f′(x)h+2!f′′(x)h2−3!f′′′h3+⋯=2f(x)+f′′(x)h2+24!f′′′′h4+⋯
f′′에 대해서 정리하면,
f′′(x)=h2f(x+h)−2f(x)+f(x−h)+24!f′′′′h2+⋯=h2f(x+h)−2f(x)+f(x−h)+O(h2)≈h2f(x+h)−2f(x)+f(x−h)
에러 항을 고려하지 않는다면, 위 식은 f′에 전방차분법과 후방차분법을 차례로 적용하여서 얻을 수도 있다.
f′′(x)≈hf′(x+h)−f′(x)≈hhf(x+h)−f(x)−hf(x)−f(x−h)=h2f(x+h)−2f(x)+f(x−h)
같이보기