감마·베타·오차함수 계산기 쉽게 이해하기 — 개념과 원리
감마함수 Γ(x)는 계승(팩토리얼)을 정수가 아닌 수까지 넓힌 함수이고, 베타함수 B(x, y)는 감마함수로 만들어지며, 오차함수 erf(x)는 종 모양 곡선 아래의 넓이를 나타냅니다. 이 계산기는 Γ(x), ln Γ(x), B(x, y), erf(x), erfc(x) = 1 − erf(x)를 계산합니다. 이들 특수함수는 감마·베타·카이제곱·정규분포 같은 통계, 확산과 열전도 같은 물리, 조합론에 두루 쓰입니다.
계산 방법
- 감마함수: x > 0에서 Γ(x) = ∫₀^∞ tˣ⁻¹ e⁻ᵗ dt이며, 자연수 n에 대해 Γ(n) = (n − 1)!입니다. 란초시(Lanczos) 근사로 유효숫자 약 15자리까지 계산합니다.
- 로그감마: ln Γ(x)입니다. x가 크면 Γ 자체가 너무 커지므로 로그로 다룹니다.
- 베타함수: B(x, y) = Γ(x)Γ(y) ÷ Γ(x + y)를 로그감마로 계산합니다.
- 오차함수: erf(x) = (2/√π) ∫₀ˣ e⁻ᵗ² dt는 |x| < 2에서 테일러 급수로 구하고, |x| ≥ 2에서는 erfc(x) = 1 − erf(x)를 연분수로 직접 계산해 아주 작은 꼬리 값도 상대 정확도 약 10⁻¹⁴를 유지합니다.
원리
부분적분을 하면 Γ(x + 1) = x·Γ(x)가 나오는데, 이는 n! = n·(n − 1)!과 같은 점화식입니다. 또 Γ(1) = 1이므로 감마함수는 계승 값을 그대로 재현하면서 그 사이를 매끄럽게 이어 줍니다. 대표적인 값 Γ(1/2) = √π는 가우스 적분에서 나옵니다. 오차함수는 e⁻ᵗ² 아래 넓이를 erf(∞) = 1이 되도록 조정한 것으로, 표준정규분포 Z에 대해 P(|Z| ≤ z) = erf(z/√2)입니다.
예제 풀이
- 기본 입력값은 x = 4.5, y = 2입니다.
- Γ(4.5) = 3.5 × 2.5 × 1.5 × 0.5 × Γ(0.5) = 6.5625 × √π = 11.6317284입니다.
- ln Γ(4.5) = ln 11.6317284 = 2.453736571입니다.
- Γ(6.5) = 5.5 × 4.5 × Γ(4.5), Γ(2) = 1이므로 B(4.5, 2) = 1 ÷ 24.75 = 0.0404040404입니다.
- erf(4.5) = 0.9999999998, erfc(4.5) = 1.96616e-10입니다.
| x | Γ(x) |
|---|---|
| 1.12 | 0.9417426998 |
| 2.25 | 1.133003096 |
| 3.38 | 2.902858374 |
| 4.5 | 11.6317284 |
| 5.62 | 64.11928889 |
| 6.75 | 453.0107661 |
| 9 | 40,320 |
결과 해석
양수 범위에서 Γ(x)는 x ≈ 1.4616에서 최솟값 약 0.8856을 가지며, 그 뒤로는 어떤 지수함수보다 빠르게 커집니다. erf(x)는 x = 0에서 0, x = 1에서 약 0.8427, x = 2에서 약 0.9953이고, 4를 넘으면 소수 여러 자리까지 1이므로 erfc를 따로 보여 줍니다. erf(1/√2) ≈ 0.6827은 정규분포에서 평균 ±1 표준편차 안에 약 68%가 들어간다는 뜻입니다.
흔한 실수
- Γ(n)과 n!을 혼동하는 실수입니다. Γ(5) = 4! = 24입니다.
- x = 0이나 음의 정수를 넣는 경우로, 이 점들에서 Γ는 정의되지 않습니다.
- 정규분포 확률에 erf(z/√2)가 아니라 erf(z)를 쓰는 실수입니다.
자주 묻는 질문
0.5의 계승은 얼마인가요?
0.5! = Γ(1.5) = √π/2 ≈ 0.8862입니다.
베타함수는 어디에 쓰이나요?
비율이나 확률을 모형화하는 베타분포의 정규화 상수로 쓰이며, 베이즈 통계에서 자주 등장합니다.
오차함수와 정규분포의 누적분포함수는 같은가요?
관계가 있습니다. Φ(z) = [1 + erf(z/√2)] ÷ 2입니다.
출처: NIST Digital Library of Mathematical Functions, Chapter 5, Chapter 7 (dlmf.nist.gov) · Lanczos, C. (1964), A precision approximation of the gamma function, SIAM J. Numer. Anal. Ser. B, 1, 86–96