1. 수치해법 상의 오차
※ 컴퓨터는, 숫자의 크기와 정밀도를 표현하는 능력에, 한계가 있음
ㅇ 수치 근사의 한계/부정확성 구분
- 반올림 오차 : 컴퓨터 근사(유한 자리수)에 의한 오차
- 절단 오차 : 수학적 근사(근사의 불완전성)에 따른 오차
- 모델링 오차 : 잘못된 수학적 모델링을 적용함으로써 발생되는 오차
2. 반올림 오차 (Round-off Error)
ㅇ 컴퓨터가 유한한 자리수(비트들)로 수를 표현하면서, 반올림에 의해 수의 자리수를 줄일 때 발생
ㅇ 즉, 컴퓨터 반올림 근사에 기인 ☞ 유한어장효과 참조
. 특히, 컴퓨터 내 대부분의 부동 소수점 연산에서 반올림 오차가 발생하게 됨
- 例) X=0.123456를, 5자리수 컴퓨터에서 표현하면, 6자리수에서 반올림하게 되므로,
Y=0.12346이 됨. 따라서, 반올림 오차는, e = |X - Y|= 0.000004 = 4 x 10-6
ㅇ 반올림 오차는, 종종 연산 순서의 재배열, 문제의 재구성 등에 의해 낮춰질 수 있음
- 크기가 비슷한 수의 뺄셈을 피함
- 비교 연산을 할 때는 논리 등호(==) 사용을 피함
. 통상, `abs(A - B) < 허용오차 한계`로써 이 문제를 피하게 됨
3. 절단 오차 (Truncation Error)
ㅇ 무한 항들을 유한 항들로 (또는, 계산 불가능한 문제를 계산 가능한 문제로) 변환시킬 때 발생
ㅇ 즉, 수학적 연산에 대해 근사적인 해법의 적용에 기인하여 발생
- 특히, ☞ 테일러 근사 참조
. 例) 테일러 근사를 적용할 때, 통상 첫째 및 둘째 항 만 포함시키고, 나머지 항은 제외(절단)
ㅇ 전체 절단오차
- 국부 절단오차 : 단지 한 단계에서 만 근사를 적용하여 발생되는 오차
- 전파 절단오차 : 모든 단계에서 근사적 방법을 적용하기 때문에 발생되는 오차