가우스 구적법은 주어진 구간에서 함수의 적분을 르장드르 다항식의 근을 이용하여 계산하는 수치 적분 방법이다. n차 가우스 구적법은 n차 르장드르 다항식에 대응되며, 르장드르 다항식의 근을 가우스 노드로 사용하고, 특정 공식을 통해 가중치를 계산한다. 가우스 구적법은 구간 변환을 통해 일반적인 적분 문제에 적용할 수 있으며, 가중 함수와 직교 다항식을 사용하여 다양한 형태의 적분 문제를 해결할 수 있다. 가우스 구적법의 노드와 가중치는 삼항 점화식, 골럽-웰시 알고리즘, 또는 직교 다항식을 이용하여 계산할 수 있으며, 오차 추정은 도함수 또는 가우스-크론로드 구적법을 통해 수행할 수 있다. 가우스 구적법 외에도 로바토 구적법과 같은 관련 기법이 존재한다.
더 읽어볼만한 페이지
수치적분 - 사다리꼴 공식 사다리꼴 공식은 적분 구간을 나누어 각 구간에서 함수를 일차 함수로 근사하고 사다리꼴 면적을 합산하여 정적분의 근삿값을 구하는 방법이다.
수치적분 - 뉴턴-코츠 공식 뉴턴-코츠 공식은 함수의 값을 샘플링하여 다항식으로 보간하는 수치적분 방법으로 정적분의 근사값을 구하며, 폐쇄형과 개방형 공식으로 나뉘고, 룬게 현상으로 인한 오차는 합성 적분 공식을 통해 보완한다.
가우스 구적법
개요
분야
수치해석학
목적
정적분의 근사값 계산
상세 정보
유형
수치 적분
정확도
높은 정확도를 제공
적용
피적분 함수가 다항식으로 잘 근사될 때 유용
기본 원리
핵심 아이디어
특정 점에서의 함수값을 가중 합하여 정적분 값을 근사
가중치 및 점
가중치와 점의 위치를 신중하게 선택하여 정확도를 높임
장점
효율성
다른 수치 적분 방법보다 적은 수의 함수 평가로 높은 정확도 달성
정확도
다항식에 대해 최적의 정확도를 제공
수렴 속도
빠른 수렴 속도
단점
복잡성
가중치와 점의 계산이 복잡할 수 있음
특이점
피적분 함수가 특이점을 가질 경우 적용이 어려울 수 있음
활용
응용 분야
과학 공학 통계 금융
예시
복잡한 함수의 정적분 계산, 확률 분포의 모멘트 계산
2. 가우스-르장드르 구적법
가우스-르장드르 구적법은 주어진 구간 [-1, 1]에서 함수의 적분을 르장드르 다항식의 근을 이용해 계산하는 방법이다. ''n''차 가우스 구적법은 ''n''차 르장드르 다항식 ''Pn(x)''에 대응한다. 이때, ''n''차 다항식은 ''Pn(1) = 1''이 되도록 정규화되며, ''i''번째 가우스 노드 ''xi''는 ''i''번째 ''Pn''의 근이다. 가중치는 다음 식으로 주어진다.[15]
:
2. 1. 기본 원리
가우스-르장드르 구적법은 적분 구간 에서 정의된 함수 를 르장드르 다항식의 근(노드)과 가중치의 조합으로 근사한다. 관련된 직교 다항식은 르장드르 다항식이며, 로 표시된다. 차 다항식을 이 되도록 정규화하면, 번째 가우스 노드인 는 의 번째 근이며, 가중치는 다음 공식으로 주어진다.[3]
:
몇몇 낮은 차수의 구적 공식은 아래 표와 같다.
점의 수,
점,
가중치,
1
0
2
2
1
3
0
4
5
0
2. 2. 르장드르 다항식과 노드
가장 간단한 적분 문제, 즉 f(x)가 [-1, 1] 구간에서 다항식으로 잘 근사되는 경우, 관련된 직교 다항식은 르장드르 다항식이며, Pn(x)로 표시된다. n차 다항식을 Pn(1) = 1이 되도록 정규화하면, i번째 가우스 노드인 xi는 Pn의 i번째 근이며, 가중치는 다음 공식으로 주어진다.[3]
:
몇몇 낮은 차수의 구적 공식은 아래 표와 같다.
점의 수, n
점, xi
가중치, wi
1
0
2
2
±0.57735...
1
3
0
0.888889...
±0.774597...
0.555556...
4
±0.339981...
0.652145...
±0.861136...
0.347855...
5
0
0.568889...
±0.538469...
0.478629...
±0.90618...
0.236927...
2. 3. 가중치 계산
Legendre영어 다항식의 미분값을 이용하여 각 노드에 대한 가중치를 계산할 수 있다.[3] 번째 가우스 노드 에 대한 가중치는 다음 공식으로 주어진다.
w_{i}는 또한 직교 다항식 p_{n}(x)와 p_{n+1}(x)의 관점에서도 표현할 수 있다. 3항 재귀 관계 p_{n+1}(x_{i}) = (a) p_{n}(x_{i}) + (b) p_{n-1}(x_{i})에서 p_{n}(x_{i})가 있는 항은 사라지므로, 위의 식에서 p_{n-1}(x_{i})는 \frac{1}{b} p_{n+1} \left(x_i\right)로 대체될 수 있다.
6. 2. 직교 다항식 이용
직교 다항식의 성질을 이용하여 가중치 공식을 유도할 수 있다. 가중치 w_i는 다음과 같이 표현된다.[1]
가중치는 이것을 p'_{n}(x_{i})로 나누어 구하며, 이는 위의 표현식을 산출한다.[13]
w_{i}는 또한 직교 다항식 p_{n}(x)와 p_{n+1}(x)의 관점에서도 표현할 수 있다. 3항 재귀 관계[14]p_{n+1}(x_{i}) = (a) p_{n}(x_{i}) + (b) p_{n-1}(x_{i})에서 p_{n}(x_{i})가 있는 항은 사라지므로, 첫번째 식에서 p_{n-1}(x_{i})는 \frac{1}{b} p_{n+1} \left(x_i\right)로 대체될 수 있다.
7. 가중치의 양수성 증명
차수 2n - 2인 다음 다항식을 고려한다.
:f(x) = \prod_{\begin{smallmatrix} 1 \leq j \leq n \\ j \neq i \end{smallmatrix}}\frac{\left(x - x_j\right)^2}{\left(x_i - x_j\right)^2}
여기서, 위와 같이, xj영어는 다항식 p_{n}(x)의 근이다.
분명히 f(x_j) = \delta_{ij}이다. f(x)의 차수가 2n - 1보다 작으므로, p_{n}(x)에서 얻은 가중치와 노드를 포함하는 가우스 구적 공식이 적용된다. j영어가 i영어와 같지 않은 경우 f(x_{j}) = 0이므로, 다음을 얻는다.
가우스 구적법의 노드와 가중치를 계산하는 데는 여러 가지 방법이 있다. 널리 사용되는 골럽-웰시(Golub-Welsch) 알고리즘은 $O(n^2)$ 연산을 필요로 한다. p_n(x) = 0을 풀기 위해 뉴턴 방법을 사용하는 방법도 있는데, 이 역시 3항 점화식을 활용하여 $O(n^2)$ 연산으로 계산 가능하다. n이 큰 경우에는 점근 공식을 사용하여 $O(n)$ 연산만으로도 가능하다.[16][17]
8. 1. 점화식
직교 다항식 p_r은 스칼라 곱 (\cdot , \cdot)에 대해 (p_r, p_s) = 0을 만족하며, 차수가 (p_r) = r이고 최고차항 계수가 1인 모닉 직교 다항식이다. 이는 다음과 같은 점화 관계를 만족한다.
r = 0, 1, \ldots, n - 1에 대해, n은 최대 차수이고, a_{r,s} = \frac{\left(xp_r, p_s\right)}{\left(p_s, p_s\right)}이다. p_0(x) = 1로 시작하는 점화 관계에 의해 정의된 다항식들은 최고차항 계수가 1이고 차수가 올바르다.
만약 스칼라 곱이 (xf, g) = (f,xg)를 만족하는 경우 (가우스 구적법의 경우), 점화 관계는 삼항 점화 관계로 축소된다. s < r - 1인 경우, xp_s는 r-1차 이하의 다항식이고, p_r은 r-1차 이하의 모든 다항식과 직교한다. 따라서, (xp_r, p_s) = (p_r, xp_s) = 0이고 s < r - 1에 대해 a_{r,s} = 0 이다. 그러면 점화 관계는 다음과 같이 단순화된다.
가중치와 노드를 구하려면, 대칭 삼중 대각 행렬 \mathcal{J}를 이용하는 것이 좋다. \mathbf{J}와 \mathcal{J}는 닮음이므로, 고유값(노드)도 같다. 가중치는 행렬 J에서 계산할 수 있다. \phi^{(j)}가 고유값 x_j에 해당하는 정규화된 고유 벡터일 때, 고유 벡터의 첫 번째 성분으로부터 다음과 같이 가중치를 계산할 수 있다.
:
w_j=\mu_0 \left(\phi_1^{(j)}\right)^2.
여기서 \mu_0은 가중 함수의 적분이다.
:
\mu_0=\int_a^b w(x) dx.
8. 2. 골럽-웰시 알고리즘
가우스 구적법의 노드와 가중치를 계산하는 데는 여러 알고리즘이 있다. 가장 널리 사용되는 알고리즘은 골럽-웰시(Golub-Welsch) 알고리즘으로, 연산을 필요로 한다.[16][17] 이 알고리즘은 삼중 대각 행렬의 고유값과 고유 벡터를 이용하여 노드와 가중치를 계산한다.
삼항 점화 관계는 행렬 형식으로 다음과 같이 표현할 수 있다.
:J\tilde{P} = x\tilde{P} - p_n(x) \mathbf{e}_n
여기서 \tilde{P} = \begin{bmatrix} p_0(x) & p_1(x) & \cdots & p_{n-1}(x) \end{bmatrix}^\mathsf{T}이고, \mathbf{e}_n은 n번째 표준 기저 벡터이며, 는 다음과 같은 삼중 대각 행렬인 자코비 행렬이다.
:
\mathbf{J} = \begin{bmatrix}
a_0 & 1 & 0 & \cdots & 0 \\
b_1 & a_1 & 1 & \ddots & \vdots \\
0 & b_2 & \ddots & \ddots & 0 \\
\vdots & \ddots & \ddots & a_{n-2} & 1 \\
0 & \cdots & 0 & b_{n-1} & a_{n-1}
\end{bmatrix}.
가우스 구적법의 노드로 사용되는 차 이하 다항식의 영점 x_j는 이 행렬의 고유값을 계산하여 찾을 수 있다.
가중치와 노드를 계산하기 위해, 다음과 같은 대칭 삼중 대각 행렬 \mathcal{J}를 고려하는 것이 좋다.
: \frac{\left(b - a\right)^{2n+1} \left(n!\right)^4}{(2n + 1)\left[\left(2n\right)!\right]^3} f^{(2n)} (\xi), \qquad a < \xi < b.
슈토어(Stoer)와 불리쉬(Bulirsch)는 이 오차 추정치는 차수 도함수를 추정하기 어려울 수 있고, 실제 오차가 도함수에 의해 설정된 경계보다 훨씬 작을 수 있기 때문에 실용적이지 않다고 언급한다. 다른 접근 방식은 서로 다른 차수의 두 개의 가우스 구적법을 사용하여 두 결과의 차이로 오차를 추정하는 것이다.
9. 1. 도함수 이용
피적분 함수가 2n개의 연속적인 도함수를 가질 때, 가우스 구적법의 오차는 다음과 같이 나타낼 수 있다.[5]
여기서 \xi는 (a, b)에 속하며, p_n은 차수 n의 모닉(최고차항 계수가 1인) 직교 다항식이고,
: (f,g) = \int_a^b \omega(x) f(x) g(x) \, dx.
이다.
\omega(x) = 1인 중요한 특수한 경우, 오차 추정치는 다음과 같다.[6]
: \frac{\left(b - a\right)^{2n+1} \left(n!\right)^4}{(2n + 1)\left[\left(2n\right)!\right]^3} f^{(2n)} (\xi), \qquad a < \xi < b.
슈토어(Stoer)와 불리쉬(Bulirsch)는 이 오차 추정치는 차수 2n 도함수를 추정하기 어려울 수 있고, 실제 오차가 도함수에 의해 설정된 경계보다 훨씬 작을 수 있기 때문에 실용적이지 않다고 언급한다.[14] 다른 접근 방식은 서로 다른 차수의 두 개의 가우스 구적법을 사용하여 두 결과의 차이로 오차를 추정하는 것이다. 이를 위해 가우스-크론로드 구적법이 유용할 수 있다.
9. 2. 가우스-크론로드 구적법 이용
슈토어(Stoer)와 불리쉬(Bulirsch)는 가우스 구적법의 오차 추정치는 차수 도함수를 추정하기 어려울 수 있고, 실제 오차가 도함수에 의해 설정된 경계보다 훨씬 작을 수 있기 때문에 실용적이지 않다고 언급한다.[6] 다른 접근 방식은 서로 다른 차수의 두 개의 가우스 구적법을 사용하여 두 결과의 차이로 오차를 추정하는 것이다. 이를 위해 가우스-크론로드 구적법이 유용할 수 있다.
가우스-크론로드 구적법은 차수가 이 되도록 -점 규칙에 개의 점을 추가하여 생성된 가우스 구적 규칙의 확장이다. 이를 통해 하위 차수 추정의 함수 값을 재사용하면서 고차 추정값을 계산할 수 있다. 가우스 구적 규칙과 크론로드 확장의 차이는 종종 근사 오차의 추정치로 사용된다.
10. 가우스-크론로드 구적법
가우스-크론로드 구적법은 가우스 구적법을 확장하여 오차 추정을 용이하게 하는 방법이다.[19][20] 구간 [''a'', ''b'']]영어를 분할하면, 각 부분 구간의 가우스 평가점은 원래 구간에서의 평가점과 일치하지 않으므로(홀수의 경우 0 제외), 새롭게 평가점을 구할 필요가 있다. 가우스-크론로드 구적법은 가우스 구적법의 n개의 점에 n+1개의 점을 추가하여, 구적법으로서의 차수를 2n+1로 만든다. 이로 인해, 낮은 차수의 근사에서 사용하는 함수값을 높은 차수의 근사 계산에 재사용할 수 있다. 일반적인 가우스 구적법과 크론로드 확장에 의한 근사의 차이가 오차 추정에 자주 이용된다.
11. 가우스-로바토 구적법
'''로바토 구적법'''이라고도 하며[7], 네덜란드 수학자 레휠 로바토의 이름을 따서 명명되었다. 가우스 구적법과 유사하지만 다음과 같은 차이점이 있다.
이 알고리즘의 2개의 내부 노드를 갖는 적응형 변형은[9] GNU Octave와 MATLAB에서 `quadl` 및 `integrate`로 찾을 수 있다.[10][11]
참조
[1]
인용
[2]
인용
[3]
인용
[4]
인용
[5]
인용
[6]
인용
[7]
인용
[8]
인용
[9]
인용
[10]
인용
[11]
인용
[12]
서적
数値計算
岩波書店
[13]
서적
Numerical Recipes in C
Cambridge University Press
1988年
[14]
서적
Introduction to Numerical Analysis
Springer
2002年
[15]
서적
Handbook of Mathematical Functions (with Formulas, Graphs, and Mathematical Tables)
Dover
1972年
[16]
서적
Numerical Methods for Special Functions
SIAM
2007年
[17]
서적
"A Software Repository for Gaussian Quadratures and Christoffel Functions"
SIAM
[18]
서적
Numerical Methods and Software
Prentice-Hall
1989年
[19]
논문
Gauss–Kronrod quadrature formulae–a survey of fifty years of research.
[20]
웹사이트
Gauss-Kronrod quadrature formula
http://www.encyclope[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.