1. 분할차분법
2. 보간 다항식의 오차
3. 뉴턴의 전향 차분 공식
4. 접촉 보간법
분할 차분표를 사용하는 이유
- 뉴턴 공식에 있는 모든 분할 차분을 간단하게 구할수 있기 때문
분할 차분법의 개념
- 서로다른 n+1개의 점 x0, x1, ... xn에 대해서 함수 f(x)와 함수 값이 같은 n차 이하의 다항식 P_n(x)가 다음과 같이 주어질때(뉴턴 형이라 부름)
- x 값에 따라 상수 항들을 순서대로 구할 수 있게 됨
중복된 계산식(예 : x1-x0)을 줄이기 위해, 분할 차분 기호 사용
분할 차분표의 일반화
- n차 분할 차분 공식을 이용하여 분할차분표라는 표를 제작
분할 차분표를 사용하면?
- 뉴턴 공식에 있는 모든 분할 차분을 간단한 방법으로 구할 수 있음
- 뉴턴 공식을 사용하여 P_n(x)를 구할 때, 분할 차분표의 각 열에서 처음 항들이 그 다항식의 계수가 됨
보간 다항식 오차의 발생 원인
- 실제 함수를 알수없는 상황에서 임의의 점에 대한 값을 얻기 위해 사용하는 보간 다항식은 실제 함수와 달라 오차 발생
보간 다항식의 오차
- f(x)가 폐구간 [a, b]에서 정의된 함수이고, x0, x1, ... xn을 구간에 있는 n + 1개의 서로 다른 점이라할때
- 차수 n보다 크지않은 다항식 P_n(x)를 점 x0, ... xn에서 f(x)의 보간 다항식이라 한다면
=> 오차 = 실제 함수 - 보간 다항식
- bar_x를 주어진 점 x0, x1, ... xn이 아닌 임의의 점이며
- 차수가 n+1보다 크지 않은 다항식 p_(n+1)(x)를 점 x0, x1, ..xn, bar_x 에서 f(x)의 보간 다항식이라 한다면
뉴턴 공식에 따라 아래와 같이 정리됨.
앞에서 나온 식을 통해 bar_x != x0, x1, ... xn 인 경우에 대해
-> 임의의 점 bar_x에 대한 보간 다항식 오차
=> f(bar_x)를 알아야 e_n(bar_x)를 구할 수 있음
f(bar_x)를 모르면 e_n(bar_x)를 구할수 없는가?
- 함수 f(x)가 구간 [a,b]에서 정의된 함수이고 (a, b)에서 k차 미분 가능하다고 할때, x0, .. xk가 [a,b] 안에 있는 (k+1)개의 서로 다른 점이라면
를 만족하는점 epsilon in (a, b) 가 존재한다.
보간 다항식의 오차 2
- 함수 f가 폐구간 [a, b]에 정의된 함수
- 개구간 (a, b)에서 (n+1)차 미분 가능
-> P_n(x) 차수가 n보다 크지 않고 [a, b] 안에 있는 n+1개의 점 x0, x1 ..., xn에 대해 f(x)의 보간 다항식이라 한다면 [a, b]안의 임의의 점 bar_x에 대해
=> epsilon in (a,b) 가 존재
epsilon은 bar_x에 따라 결정되고 공식을 사용하려면?
- epsilon과 f(x)의 (n+1)차 도함수 f^(n+1) (x)를 일아야함
- epsilon은 구간 (a, b)안에 있는 어떤 점이라는 사실만 알고 실제로는 정확한 epsilon을 알 수 없음.
- f^(n+1) (x)도 모르는 경우가 많음
=> [a, b]에서 |f^(n+1) (x)|의 상계 (upper bound)를 알면 보간 다항식 오차의 한계를 구할 수 있음.
뉴턴의 전향 차분 공식
- [a, b] 안의 점 x0, ... xn에서 함수 f(x)의 보간 다항식 Pn(x)
- 분할 차분 f([x0, ..., xn]을 계싼하고 뉴턴 공식 사용
- 소구간들의 길이가 같은 경우 분할 차분보다 더 간단한 전향 차분을 사용하여 보간 다항식 P_n(x)를 구하는 방법
=> 점 a = x0 < x1 < x2 ... < xn = b에 의해 만들어 지는 각 소구간의 길이가 같다고 가정
=> 구간 [a, b]를 N등분 하고 h= (b-a)/N으로 놓으면?
각 점에서 함수 값을 안다고 가정하면
[a, b]에 있는 임의의 점 x를 x0 + sh로 나타낼수 있으므로
- 선형 변수 변환 공식을 사용하여, 차수가 n인 x의 다항식 -> 차수 n인 s의 다항식
전향 차분은 다음과 같이 정의
전향 차분과 분할 차분의 관계
P_n(x)를 점 x_k, x_k+1, ..., x_(k+n)에서 f(x)의 보간 다항식 이라면
위 식을 뉴턴 공식에 대입하면
아래의 식에 따라
보간다항식은 다음과 같이 정리가 된다.
이항 함수 binomial function을 이용
- 임의의 실수 y와 임의의 정수 i >= 0 에 대해 이항함수 (y; i)를 다음과 같이 정의
=> y가 양의 정수면 (y; i)는 이항 계수 binomial coefficient가 됨
뉴턴의 전향 차분 공식
- 점 x_k + i h (i = 0, 1, ..., n)에서 f(x)의 보간 다항식에 대한 뉴턴의 전향 차분 공식 (Forward difference formula)라 부름.
뉴턴의 전향 차분 공식 예시
- k = 0인경우, 보간 점을 x_0, x_1, ..., x_n일 때
- 위 식의 계수는 전향 차분표로 쉽게 구할 수 있음
function y = NewtonDiff(xd, yd, x)
nd = length(xd);
F = zeros(nd, nd);
F(:, 1) = yd(:);
for j = 2:nd
for i= 1:nd-j+1
F(i,j) = (F(i+1, j-1) - F(i, j-1))/(xd(i+j-1)-xd(i));
end
end
y = F(1, 1);
ytemp = 1;
for j=2:nd
ytemp = ytemp*(x - xd(j-1));
y = y + F(1, j)*ytemp;
end
end
x = [2 3 4 5 6];
y =[4.8 9.4 19.2 36.6 58];
NewtonDiff(x, y, 2.5)
접촉 보간
- 앞에서 보간 다항식을 구할 떄 구간 [a, b]안에 있는 점 x0, x1, x2 , .. xn이 서로 다른 경우에만 고려
- 점들이 서로 다른점이라 가정하지 않고 보간 다항식을 구하는 방법
- 점 x0, ... xk가 구간 [a, b]에서 서로 다른 점일때 -> f(x)의 k차 분할 차분 f[x0, .. xk]를 차수가 k보다 크지않은 보간 다항식 p_k(x)의 최고차 계수 (x^k의 계수) 계수로 정의
서로 같은 점들이 있는 경우 P_k(x_i) = f(x_i)의 의미
- 점 x0, ..., xk 중 m번째 나타나는 점 x - f^(j) (x) = g^(j) (x) => j = 0, 1, ..., m-1
- f(x), g(x)는 점 x0, x1, ... xk에서 같다고 정의
=> 보간 다항식이 한 점 c에서 f(x)와 (m+1)번 접촉(m번 같을 때) 접촉 보간
스플라인
- 매끄러운 곡선을 그리기위해 제도하는 도구에서 유래
- 급격하게 변하는 데이터를 나타내는데 적합한 방법
- 두 점 사이의 각 구간에 대해 스플라인으로 불리는 낮은 차수의 다항식을 이용하여 점들을 연결
'수학 > 수학, 수치해석' 카테고리의 다른 글
수치해석 - 1. 수치해석학 소개 (0) | 2020.07.10 |
---|---|
수치해석 및 실습 - 7 방정식의 해법 1 (0) | 2020.06.07 |
수치해석 및 실습 - 5 보간다항식 (0) | 2020.06.06 |
수치해석 및 실습 - 4 오차 해석 (0) | 2020.06.06 |
수치해석 및 실습 - 3 매트랩과 2차원 그래프 (0) | 2020.06.06 |