5 minute read

์ˆ˜ํ•™๊ณผ ๋ณต์ˆ˜์ „๊ณต์„ ์œ„ํ•ด ์กธ์—… ๋งˆ์ง€๋ง‰ ํ•™๊ธฐ์— โ€œ์ˆ˜์น˜ํ•ด์„๊ฐœ๋ก โ€ ์ˆ˜์—…์„ ๋“ฃ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜ํ•™๊ณผ ์กธ์—…์‹œํ—˜๋„ ๊ฒธ์‚ฌ๊ฒธ์‚ฌ ์ค€๋น„ํ•  ๊ฒธ ํ™”์ดํŒ… ํ•ด๋ด…์‹œ๋‹ค!! ์ „์ฒด ํฌ์ŠคํŠธ๋Š” โ€œNumerical Analysisโ€œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋“ค์–ด๊ฐ€๋ฉฐ

์ง€๊ธˆ๊นŒ์ง€ ํ•จ์ˆ˜ $f(x)$๋ฅผ ๋งค๋„๋Ÿฌ์šด ํ•จ์ˆ˜๋กœ ๋ณด๊ฐ„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋‹ค๋ค˜๊ณ , ์ด๋ ‡๊ฒŒ ๋ณด๊ฐ„ํ•œ ํ•จ์ˆ˜๋กœ ๋„ํ•จ์ˆ˜ $fโ€™(x)$๋ฅผ ๊ทผ์‚ฌํ•˜๋Š” ๊ฒƒ๋„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ํฌ์ŠคํŠธ๋ถ€ํ„ฐ ๋ณด๊ฐ„ ๊ธฐ๋ฐ˜์ด ์•„๋‹Œ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค! ๊ทธ๋ฆฌ๊ณ  ๋„ํ•จ์ˆ˜ $fโ€™(x)$์— ๋Œ€ํ•œ ๋‹ค๋ฅธ ๊ทผ์‚ฌ ๋ฐฉ๋ฒ•์ธ โ€œ๋‰ดํ„ด-์ฝ”์ธ  ๋ฐฉ์‹โ€์— ๋Œ€ํ•ด ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

Forward, Backward Difference

๋ณธ๋ž˜ ํ•จ์ˆ˜์˜ ๋„ํ•จ์ˆ˜๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ๊ทนํ•œ์„ ์‚ฌ์šฉํ•ด ์ •์˜ ํ•ฉ๋‹ˆ๋‹ค.

\[f'(x) = \lim_{h\rightarrow 0} \frac{f(x+h) - f(x)}{h}\]

๊ทธ๋Ÿฐ๋ฐ, ์ˆ˜์น˜์  ์ ‘๊ทผ์—์„œ๋Š” $h \rightarrow 0$ ๊ฐ™์€ ๊ฑธ ํ•  ์ˆ˜ ์—†์œผ๋‹ˆ, ์ ๋‹นํ•œ ๋ฏธ์†Œ๊ฐ’ $h$๋ฅผ ์žก์€ ํ›„ ์•„๋ž˜์™€ ๊ฐ™์ด ๋ฏธ๋ถ„ ๊ทผ์‚ฌ๊ฐ’์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค.

\[D_+ f(x) = \frac{f(x+h) - f(x)}{h}\]

๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์„ โ€œ์ „๋ฐฉ ์ฐจ๋ถ„(Forward Difference)โ€๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ ์ด์ „ ๊ฐ’์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

\[D_{-} f(x) = \frac{f(x) - f(x-h)}{h}\]

์ด๊ฒƒ์„ โ€œํ›„๋ฐฉ ์ฐจ๋ถ„(Backward Difference)โ€๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ „๋ฐฉ ์ฐจ๋ถ„๊ณผ ํ›„๋ฐฉ ์ฐจ๋ถ„์€ ํ•œ์ชฝ์— ๋Œ€ํ•œ ๊ทผ์‚ฌ ์ž…๋‹ˆ๋‹ค: one-sided approximation of $fโ€™(x)$.

1st order Accuracy

$D_{+}f(x)$์™€ $D_{-}f(x)$ ๋ชจ๋‘ โ€œ1์ฐจ ์ •ํ™•๋„โ€๋ฅผ ๊ฐ€์ง€๋Š” ๊ทผ์‚ฌ๋ฒ• ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‹ค์ œ ๋ฏธ๋ถ„๊ฐ’๊ณผ ์ „๋ฐฉ/ํ›„๋ฐฉ ์ฐจ๋ถ„์œผ๋กœ ๊ทผ์‚ฌํ•œ ๊ฐ’์˜ ์˜ค์ฐจ๊ฐ€ $h$์— ๋น„๋ก€ํ•˜๋Š” $O(h)$๋กœ ์ •์˜๋œ๋‹ค๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ $h$ ๊ฐ’์„ ์ž‘๊ฒŒ ํ• ์ˆ˜๋ก ์‹ค์ œ๊ฐ’๊ณผ์˜ ์ฐจ์ด๊ฐ€ ์„ ํ˜•์œผ๋กœ ๊ฐ์†Œํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

Centered Difference

์š”๋ ‡๊ฒŒ ๋ณผ๋ก์ ์—์„œ์˜ ๋ฏธ๋ถ„๊ฐ’์„ ๊ทผ์‚ฌํ•œ๋‹ค๊ณ  ํ•˜๋ฉด, ์ „๋ฐฉ ์ฐจ๋ถ„๊ณผ ํ›„๋ฐฉ ์ฐจ๋ถ„์€ ๊ทธ๋ฆฌ ์ข‹์€ ๊ฐ’์„ ์ œ์‹œํ•˜์ง€ ๋ชป ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋“ฑ์žฅํ•œ ๊ฒƒ์ด ์ด ๋‘˜์˜ ํ‰๊ท ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋Š” ์ค‘์•™ ์ฐจ๋ถ„ ์ž…๋‹ˆ๋‹ค.

\[D_0 f(x) = \frac{f(x+h) - f(x-h)}{2h} = \frac{D_{+}f(x) - D_{-}f(x)}{2}\]

์œ„ ๊ทธ๋ฆผ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์ค‘์•™ ์ฐจ๋ถ„ $D_0 f(x)$๊ฐ€ ํ•œ์ชฝ๋งŒ ๋ณด๋Š” ์ฐจ๋ถ„๋ณด๋‹ค๋Š” ๋” ์ข‹์€ ๊ทผ์‚ฌ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ฑธ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ค‘์•™ ์ฐจ๋ถ„์€ โ€œ2์ฐจ ์ •ํ™•๋„โ€๋ฅผ ์ œ๊ณต ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‹ค์ œ๊ฐ’๊ณผ์˜ ์˜ค์ฐจ๊ฐ€ $h^2$์— ๋น„๋ก€ํ•œ๋‹ค๋Š” ๊ฒƒ์œผ๋กœ $O(h^2)$๋ผ๊ณ  ํ‘œํ˜„ ํ•ฉ๋‹ˆ๋‹ค.

Higher-order Accuracy

์ค‘์•™ ์ฐจ๋ถ„๋ณด๋‹ค ๋” ๋†’์€ ์ •ํ™•๋„๋ฅผ ๊ฐ–๋„๋ก ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅ ํ•ฉ๋‹ˆ๋‹ค.

\[D_3 f(x) = \frac{2f(x+h) + 3f(x) - 6 f(x-h) + f(x-2h)}{6h}\]

๋ผ๊ณ  ์ฐจ๋ถ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ฐจ๋ถ„์€ $x-2h, x-h, x, x+h$ 4๊ฐœ ์ ์„ ํ™œ์šฉํ•ด ์ฐจ๋ถ„์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค. ์ด ์ฐจ๋ถ„์€ โ€œ3์ฐจ ์ •ํ™•๋„โ€๋ฅผ ์ œ๊ณต ํ•ฉ๋‹ˆ๋‹ค: $O(h^3)$.

์œ„์™€ ๊ฐ™์€ ๊ณต์‹์„ ์œ ๋„ํ•˜๋Š” ์‹œ์Šคํ…œ์ด โ€œ๋‰ดํ„ด-์ฝ”์ธ  ๋ฐฉ์‹โ€์ž…๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์ด์–ด์ง€๋Š” ๋‚ด์šฉ์—์„œ ์ด ๋ฐฉ์‹์— ๋Œ€ํ•ด ์‚ดํŽด๋ณผ ์˜ˆ์ • ์ž…๋‹ˆ๋‹ค.

log-log scale

โ€ฆ ์Šคํ‚ต!

Truncation Error

$f(x+h)$์™€ $f(x-h)$๋ฅผ ํ…Œ์ผ๋Ÿฌ ์ „๊ฐœ ํ•ด๋ด…์‹œ๋‹ค.

\[\begin{aligned} f(x+h) &= f(x) + hf'(x) + \frac{1}{2}h^2 f''(x) + \frac{1}{6}h^3 f'''(x) + O(h^4) \\ f(x+h) &= f(x) - hf'(x) + \frac{1}{2}h^2 f''(x) - \frac{1}{6}h^3 f'''(x) + O(h^4) \end{aligned}\]

๊ทธ๋ฆฌ๊ณ  ์ด๊ฑธ ์ „๋ฐฉ/ํ›„๋ฐฉ ์ฐจ๋ถ„์˜ ๊ณต์‹์— ๋Œ€์ž…ํ•ด๋ณด๋ฉดโ€ฆ

\[D_{+} f(x) = \frac{f(x+h) - f(x)}{h} = f'(x) + \frac{1}{2}h f''(x) + \frac{1}{6} h^2 f'''(x) + O(h^3)\]

์ „๋ฐฉ ์ฐจ๋ถ„์€ $fโ€™(x)$๋Š” ์ •ํ™•ํžˆ ๋‚˜์˜จ ๊ฒƒ์ด๊ณ , ๊ทธ ๋‹ค์Œ ์˜ค์ฐจํ•ญ์€ $\frac{h}{2} fโ€™โ€˜(x)$ ํฌ๊ธฐ๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ „๋ฐฉ ์ฐจ๋ถ„์˜ ์˜ค์ฐจ๋Š” $O(h)$๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ํ›„๋ฐฉ ์ฐจ๋ถ„์˜ ์˜ค์ฐจ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ $O(h)$๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค.

์ค‘์•™ ์ฐจ๋ถ„์— ๋Œ€ํ•ด์„œ๋„ ๊ตฌํ•ด๋ด…์‹œ๋‹ค. ์ค‘์•™ ์ฐจ๋ถ„์€ ์ „๋ฐฉ/ํ›„๋ฐฉ ์ฐจ๋ถ„์„ ๋”ํ•œ ๊ฒƒ์˜ ํ‰๊ท ์œผ๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

\[D_0 f(x) = \frac{D_{+}f(x) + D_{-}f(x)}{2} = f'(x) + \frac{1}{6} h^2 f'''(x) + O(h^4)\]

๊ทธ๋ž˜์„œ ์ค‘์•™ ์ฐจ๋ถ„์—์„œ๋Š” ์˜ค์ฐจ๊ฐ€ $O(h^2)$์˜ ์ •ํ™•๋„๋ฅผ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.


๋งˆ์ง€๋ง‰์œผ๋กœ $D_3 f(x)$์— ๋Œ€ํ•ด์„œ๋„ ์ˆ˜ํ–‰ํ•ด๋ด…์‹œ๋‹ค. $D_3$๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„  $f(x-2h)$์˜ ํ…Œ์ผ๋Ÿฌ ์ „๊ฐœ๊ฐ€ ํ•„์š” ํ•ฉ๋‹ˆ๋‹ค.

\[f(x - 2h) = f(x) - 2h f'(x) + \frac{1}{2}(2h)^2 f''(x) - \frac{1}{6}(2h)^3 f'''(x) + O(h^4)\]

์ด๊ฑธ $D_3 f(x)$์˜ ๊ณต์‹์— ๋”ฐ๋ผ ์กฐํ•ฉํ•˜๊ณ  ์ •๋ฆฌํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ๋ฉ๋‹ˆ๋‹ค.

\[D_3 f(x) = f'(x) + \frac{1}{12} h^3 f^{(4)} (x) + O(h^4)\]

๋”ฐ๋ผ์„œ, 3์ฐจ ์ •ํ™•๋„๊ฐ€ $O(h^3)$๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

Rounding Error

์ˆ˜์น˜ ๋ฏธ๋ถ„์€ $h$ ๊ฐ’์— ๋”ฐ๋ผ ์˜ค์ฐจ๊ฐ€ ์ž‘์•„์ง‘๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‹จ์ˆœํžˆ $h$๋ฅผ ๋ฌด์กฐ๊ฑด ์ž‘๊ฒŒ ๋งŒ๋“ ๋‹ค๊ณ  ์ข‹์€ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค!

$h$๊ฐ€ ๋„ˆ๋ฌด ์ž‘์•„์ง€๋ฉด, โ€œ๋ฐ˜์˜ฌ๋ฆผ ์˜ค์ฐจ(round-off error)โ€๊ฐ€ ์ปค์ ธ์„œ ์˜คํžˆ๋ ค ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜๋น ์งˆ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.