9 minute read

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

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

๋งŽ์€ ์ž์—ฐํ˜„์ƒ์ด ๋ฏธ๋ถ„๋ฐฉ์ •์‹์˜ ํ˜•ํƒœ๋กœ ๋ชจ๋ธ๋ง ๋˜์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์˜ ๋ฏธ๋ถ„๋ฐฉ์ •์‹์€ โ€œํ•ด์„์ ์ธ ํ•ด(analytic solution)โ€์„ ๊ตฌํ•˜์ง€ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Ÿด ๋•Œ์— ์ˆ˜์น˜ํ•ด์„์ ์ธ ์ ‘๊ทผ์œผ๋กœ ๊ทผ์‚ฌํ•ด๋ฅผ ์ฐพ์•„์„œ ๋งŽ์€ ๋ฌธ์ œ๋“ค์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฏธ๋ฐฉ์€ ์šฐ๋ฆฌ๊ฐ€ ์‰ฝ๊ฒŒ ํ•ด์„์  ํ•ด๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

\[y' = 2t \rightarrow y(t) = t^2 + C\]

๊ทธ๋Ÿฐ๋ฐ, ๋ณต์žกํ•œ ๋ฏธ๋ฐฉ์ด๋ผ๋ฉด, ํ•ด์„์  ํ•ด๋ฅผ ์‰ฝ๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฏธ๋ฐฉ์€ ์‰ฝ๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

\[y' = y^2 - \sin (t) + e^{-y}\]

์ด๋Ÿฐ ๋ฏธ๋ฐฉ๋“ค์— ๋Œ€ํ•ด ์ˆ˜์น˜์ ์ธ ๊ทผ์‚ฌ๊ฐ’์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ˆ˜์น˜ํ•ด์„ ์ˆ˜์—…์—์„œ ๋ฏธ๋ถ„๋ฐฉ์ •์‹์˜ ๋ฌธ์ œ๋“ค์„ ๋‹ค๋ฃจ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค!

First Step to Numerical Methods for ODEs

์•„๋ž˜์™€ ๊ฐ™์€ ๋ฏธ๋ถ„๋ฐฉ์ •์‹์ด ์žˆ๋‹ค๊ณ  ํ•ฉ์‹œ๋‹ค.

\[u'(t) = - u(t)\]

๊ทธ๋ฆฌ๊ณ  ์ดˆ๊ธฐ๊ฐ’์€ $u(0) = 1$ ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ํ•ด์„์ ์ธ ๋ฐฉ๋ฒ•์„ ์ด์šฉํ•ด ์ถฉ์‹คํžˆ ํ’€์–ด๋‚ด๋ฉด, $u(t) = e^{-t}$๋ผ๋Š” ํ•ด๋ฅผ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฑธ ์ˆ˜์น˜์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ๋„ ํ’€์–ด๋ด…์‹œ๋‹ค!

๋ฏธ๋ถ„ $uโ€™(t)$๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ํ‰๊ท  ๋ณ€ํ™”์œจ๋กœ ๊ทผ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

\[u'(t) \approx \frac{u_{n+1} - u_n}{h}\]

๊ทธ๋ฆฌ๊ณ  ์ด๋ฅผ ์ฒ˜์Œ์˜ ODE์— ์ ์šฉํ•ด๋ณด๋ฉด

\[\frac{u_{n+1} - u_n}{h} = - u_n(t)\]

์‹์„ ์ •๋ฆฌํ•ด๋ณด๋ฉด

\[u_{n+1} = u_n - h u_n\]

์ด์ œ ์ดˆ๊ธฐ๊ฐ’ $u(0) = 1$์„ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ์žฌ๊ท€์ ์œผ๋กœ ๊ตฌํ•ด๋ด…์‹œ๋‹ค. $h = 0.1$๋กœ ๋‘ก๋‹ˆ๋‹ค.

\[u_1 = u_0 - h \cdot u_0 = 1 - 0.1 \cdot 1 = 0.9\]

์ด์–ด์„œ ๊ณ„์†ํ•˜๋ฉด

\[\begin{aligned} u_2 &= 0.9 - 0.1 \cdot 0.9 = 0.81 \\ u_3 &= 0.81 - 0.1 \cdot 0.81 = 0.729 \\ u_4 &= 0.729 - 0.1 \cdot 0.729 = 0.6561 \end{aligned}\]

์ด๊ฒƒ์„ ํ•ด์„์ ์œผ๋กœ ์–ป์€ $e^{-t}$์˜ ๊ฐ’๊ณผ ๋น„๊ตํ•ด๋ณด๋ฉด ๊ฐ’์— ์กฐ๊ธˆ ์ฐจ์ด๋Š” ์žˆ์ง€๋งŒ, ๊ฒฝํ–ฅ์€ ๊ฑฐ์˜ ๋”ฐ๋ผ๊ฐ„๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์„ โ€œEulerโ€™s Methodโ€๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค!

Eulerโ€™s Method

์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์€ ํ˜„์žฌ ์œ„์น˜ $t$์™€ ๊ทธ๊ณณ์—์„œ์˜ ๊ธฐ์šธ๊ธฐ $uโ€™$๋ฅผ ์•ˆ๋‹ค๋ฉด, ๊ทธ ๋ฐฉํ–ฅ์œผ๋กœ ๋‹ค์Œ ์œ„์น˜๋ฅผ ์˜ˆ์ธกํ•˜์—ฌ ํ•จ์ˆ˜๊ฐ’์„ ์ฐพ์•„๋‚ด๋Š” ์ˆ˜์น˜์  ๋ฐฉ๋ฒ• ์ž…๋‹ˆ๋‹ค.

$u(t+h)$์˜ ๊ฐ’์„ ์•Œ๊ธฐ ์œ„ํ•ด ํ…Œ์ผ๋Ÿฌ ์ „๊ฐœ๋ฅผ ํ•ด๋ด…์‹œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด,

\[u(t+h) = u(t) + h u'(t) + \frac{h^2}{2} u''(t) + \cdots\]

์ด๋•Œ, ์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์€ ์ฒซ๋ฒˆ์งธ ํ•ญ๊นŒ์ง€๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

\[u(t+h) \approx u(t) + h u'(t)\]

์šฐ๋ฆฌ๋Š” ODE๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

\[u'(t) = f(t, u)\]

์ด๊ฑธ ํ…Œ์ผ๋Ÿฌ ๊ทผ์‚ฌํ•œ ์‹์— ๋Œ€์ž…ํ•˜๋ฉด,

\[u(t+h) \approx u(t) + h {\color{red} f(t, u(t))}\]

์ด๊ฑธ ๋ฐ˜๋ณตํ•ด์„œ ์ˆ˜ํ–‰ํ•œ๋‹ค๋ฉด,

\[u(t + (n+1)h) \approx u(t + nh) + h f(t + nh, u(t+nh))\]

์ด๊ฒƒ์„ ๊ธฐํ˜ธ๋ฅผ ํ†ตํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฐ”๊พผ ๊ฒƒ์ด ์•„๋ž˜์˜ ์ ํ™”์‹ ์ž…๋‹ˆ๋‹ค.

\[u_{n+1} \approx u_n + h f(t_n, u_n)\]

์ด ๋ฐฉ์‹์€ ์†”๋ฃจ์…˜ ํ•จ์ˆ˜ $u(t)$์˜ ํ•จ์ˆซ๊ฐ’์„ ๊ตฌํ•˜๊ธฐ ๋•Œ๋ฌธ์—, โ€œexplicit methodโ€๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹œ๊ฐ„์ด ๋‚˜์•„๊ฐ์— ๋”ฐ๋ฅธ ์†”๋ฃจ์…˜์˜ ํ•จ์ˆ˜๊ฐ’ ๋ณ€ํ™”๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ๋•Œ๋ฌธ์— โ€œtime-marching methodโ€๋ผ๊ณ ๋„ ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

๊ทธ๋ฆผ์€ ์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์œผ๋กœ ODE์˜ ์†”๋ฃจ์…˜ ํ•จ์ˆ˜์˜ ํ•จ์ˆ˜๊ฐ’์„ ๊ตฌํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ขŒ์ธก์€ ๊ตฌ๊ฐ„์„ 10 ๋‹จ๊ณ„๋กœ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ, ์šฐ์ธก์€ ๊ตฌ๊ฐ„์„ 20 ๋‹จ๊ณ„๋กœ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ ์ž…๋‹ˆ๋‹ค. ์‚ฌ์ง„์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ๊ตฌ๊ฐ„์„ ์ด˜์ด˜ํ•˜๊ฒŒ ๋‚˜๋ˆŒ ์ˆ˜๋ก ํ•ด์„์  ํ•ด๋กœ ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜์™€์˜ ์˜ค์ฐจ๊ฐ€ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค!

Error Analysis

์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์—๋Š” 2๊ฐ€์ง€ ํ˜•ํƒœ์˜ ์˜ค์ฐจ๋ฅผ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ €, โ€œ์ „์—ญ(Global) ์˜ค์ฐจโ€ ์ž…๋‹ˆ๋‹ค.

\[e_n = u(t_n) - u_n\]

์ด๊ฒƒ์€ ์—ฌ๋Ÿฌ ์Šคํ…์„ ์ง„ํ–‰ํ•œ ํ›„์— ๋ˆ„์ ๋œ ์ด ์˜ค์ฐจ๋ฅผ ์˜๋ฏธ ํ•ฉ๋‹ˆ๋‹ค. ์†”๋ฃจ์…˜์˜ ํ•จ์ˆ˜๊ฐ’๊ณผ ๊ทผ์‚ฌํ•ด ์‚ฌ์ด์˜ ์ฐจ์ด ๊ฐ’์„ ํ‘œํ˜„ ํ•ฉ๋‹ˆ๋‹ค.


์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์—์„œ๋Š” โ€œLocal Truncation Errorโ€œ๋ผ๋Š” ๊ตญ์†Œ ์˜ค์ฐจ๋ฅผ ์ •์˜ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ณ€ํ™”์œจ์˜ ๊ทผ์‚ฌ์™€ ์‹ค์ œ ๊ธฐ์šธ์ด์˜ ์ฐจ์ด๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ์–ป์Šต๋‹ˆ๋‹ค.

$uโ€™(t) = f(t, u)$๋Š” ODE์— ์˜ํ•œ ์‹ค์ œ ๊ธฐ์šธ๊ธฐ ๊ฐ’ ์ž…๋‹ˆ๋‹ค. $t_n$์—์„œ์˜ ์‹ค์ œ ๊ธฐ์šธ๊ธฐ๋Š” $f(t_n, u(t_n))$๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์€ ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ทผ์‚ฌ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌํ•ฉ๋‹ˆ๋‹ค.

\[\frac{u(t_{n+1}) - u(t_n)}{k}\]

์ด๋•Œ, ํ•ด์„์  ์†”๋ฃจ์…˜์ธ $u(t)$๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์— ์œ ์˜ ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋‘˜์˜ ์ฐจ์ด๋ฅผ ๊ตฌํ•˜๋ฉด, ์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์ด ์‹ค์ œ ๋ณ€ํ™”์œจ์„ ์–ผ๋งˆ๋‚˜ ์ž˜ ๊ทผ์‚ฌํ•˜๋Š”์ง€๋ฅผ ์ธก์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, ๊ตญ์†Œ ์˜ค์ฐจ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ •์˜ ํ•ฉ๋‹ˆ๋‹ค.

\[\tau_n = \left(\frac{u(t_{n+1}) - u(t_n)}{k}\right) - f(t_n, u(t_n))\]

์‹ค์ œ ํ•ด๋Š” ๊ณก์„ ์ฒ˜๋Ÿผ ๊ตฌ๋ถ€๋Ÿฌ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์€ โ€œ์ง์„ โ€์œผ๋กœ ๊ทผ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ณก์„ ์„ ์ผ์ง์„ ์œผ๋กœ ๊ทผ์‚ฌํ•จ์œผ๋กœ์จ ์ƒ๊ธฐ๋Š” ์˜ค์ฐจ๊ฐ€ โ€œLocal Truncation Errorโ€๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

Degree of Error

์˜ค์ฐจ์˜ ์ฐจ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•ด๋ด…์‹œ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด $u(t_{n+1})$์— ๋Œ€ํ•ด ํ…Œ์ผ๋Ÿฌ ์ „๊ฐœ๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

\[\begin{aligned} u(t_{n+1}) &= u(t_n + k) \\ &= u(t_n) + k u'(t_n) + \frac{k^2}{2!} u''(\xi_n) \end{aligned}\]

์ด๊ฒƒ์„ ๊ตญ์†Œ ์˜ค์ฐจ $\tau_n$์— ๋Œ€์ž…ํ•ด๋ณด๋ฉด

\[\begin{aligned} \tau_n &= \left(\frac{u(t_{n+1}) - u(t_n)}{k}\right) - f(t_n, u(t_n)) \\ &= \frac{\left(\cancel{u(t_n)} + k u'(t_n) + \frac{k^2}{2} u(\xi_n)\right) \cancel{- u(t_n)}}{k} - u'(t_n) \\ &= \left(u'(t_n) - \frac{k}{2} u''(\xi_n) \right) - u'(t_n) \\ &= \frac{k}{2} u''(\xi_n) \end{aligned}\]

๋”ฐ๋ผ์„œ, ์ตœ์ข…์ ์œผ๋กœ ๋‚จ์€ ๊ฒƒ์€

\[\tau_n = \frac{u''(\xi_n)}{2} k = O(k)\]

์ฆ‰, ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ $k$์— ๋น„๋ก€ํ•˜๋ฏ€๋กœ ์˜ค์ฐจ์˜ ์ •ํ™•๋„๋Š” โ€œ1์ฐจ ์ •ํ™•๋„โ€๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค.

Example

$uโ€™โ€™ > 0$, $t > 0$์ผ ๋•Œ, ๊ทผ์‚ฌ๊ฐ’ $u_{n}$์€ ์™œ ์‹ค์ œ๊ฐ’ $u(t_n)$๋ณด๋‹ค under-estimate ๋˜๋Š”์ง€ ์„ค๋ช…ํ•˜๋ผ. (23๋…„๋„ ์กธ์—…์‹œํ—˜ ๊ธฐ์ถœ)

$u(t_{n+1} = t_n + k)$์— ๋Œ€ํ•ด ํ…Œ์ผ๋Ÿฌ ์ „๊ฐœํ•˜๋ฉด,

\[u(t_{n+1}) = u(t_n) + k u'(t_n) + \frac{k^2}{2} u''(\xi_n)\]

์ด๋•Œ, ์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์€ ๋’ค์˜ $\frac{k^2}{2} uโ€™โ€™(\xi_n)$ ํ…€์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, ๊ทธ ๋ถ€๋ถ„๋งŒํผ ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, $uโ€™โ€™ > 0$๋ผ๋ฉด, ์‹ค์ œ๊ฐ’ $u(t_n)$๊ณผ ๋น„๊ตํ•ด $u_n$์˜ ๊ฐ’์€ ๋” ์ž‘์•„์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฐ ์˜ค์ฐจ๋Š” iteration์ด ์ง„ํ–‰๋˜๋ฉด์„œ ๋ˆ„์ ๋˜๊ณ , ์•„์ฃผ ๊ธด ์‹œ๊ฐ„์ด ์ง€๋‚˜ $t \rightarrow 0$๊ฐ€ ๋˜๋ฉด, ๊ฒฐ๊ตญ ์‹ค์ œ๊ฐ’๊ณผ ๊ทผ์‚ฌ๊ฐ’์˜ ์ฐจ์ด๊ฐ€ ์ปค์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

\[\lim_{n \rightarrow \infty} (u(t_n) - u_n ) = + \infty\]

Degree of Error (Global)

TODOโ€ฆ

Limitation

์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์ด ๊ฝค ๊ดœ์ฐฎ์•„ ๋ณด์ด์ง€๋งŒ, ์–ด๋–ค ODE์—์„œ๋Š” ์ˆ˜์น˜์  ๋ฐฉ๋ฒ•์˜ ์„ฑ๋Šฅ์ด ๊ธ‰๊ฒฉํžˆ ๋–จ์–ด์ง‘๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์•„๋ž˜์™€ ๊ฐ™์€ ODE๋ฅผ ์ˆ˜์น˜์  ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€์–ด๋ณธ๋‹ค๊ณ  ํ•ด๋ด…์‹œ๋‹ค.

\[u' = - 4 t^3 y^2, \quad -10 \le t \le 0, \quad u(-10) = \frac{1}{10001}\]

์ด๋•Œ, ํ•ด์„์  ํ•ด๋Š” $u(t) = 1 / (t^4 + 1)$๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  $u(0) = 1$์ด ๋ฉ๋‹ˆ๋‹ค.

ํ‘œ๋ฉด์ ์œผ๋กœ๋Š” ์ด ODE๋Š” ๋‚˜์ด์Šค ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋Š” ๋ถ€๋“œ๋Ÿฝ๊ณ , ํ•ด์„์  ํ•ด๋„ ์กด์žฌํ•˜๊ณ  ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ๊ทธ๋Ÿฐ๋ฐ, ์˜ค์ผ๋Ÿฌ ๋ฐฉ์‹์€ ์ด ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ ๋งค์šฐ ๋ถ€์ •ํ™•ํ•œ ๊ทผ์‚ฌ๋ฅผ ์ œ๊ณต ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ $h = 10^{-3}, 10^{-4}, 10^{-5}$ ์Šคํ… ์‚ฌ์ด์ฆˆ๋กœ ๊ทผ์‚ฌ๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉด, ์Šคํ…์„ ์•„์ฃผ ์ž‘์€ $10^{-5}$ ์ •๋„๋Š” ํ•ด์•ผ ๊ฒจ์šฐ $u(0) = 1$์— ๊ฐ€๊นŒ์›Œ์ง‘๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ ์ •ํ™•ํ•œ ๊ทผ์‚ฌ์— ๋„๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„์ฃผ ์ž‘์€ ์Šคํ…์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ด๋ฉฐ, ๊ทธ ๊ณผ์ •์—์„œ ์ˆ˜๋งŽ์€ ๊ณ„์‚ฐ ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

Floating Point Error

๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ์ˆ˜์น˜์  ๊ทผ์‚ฌ๋„ ๋ชจ๋‘ ๊ฒช๋Š” Floating Point์— ์˜ํ•œ ์˜ค์ฐจ๋ฅผ ์ปดํ“จํ„ฐ๋กœ ๊ณ„์‚ฐํ•  ๋•Œ, ๊ฒช์Šต๋‹ˆ๋‹ค.

์ผ๋‹จ ๋‚ด์šฉ์„ ํ•œ๋ฒˆ ํ›‘๊ณ  ์‹ถ์–ด์„œ ์ด ๋ถ€๋ถ„์€ ์Šคํ‚ต ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

๋งบ์Œ๋ง

๋ฏธ๋ถ„๋ฐฉ์ •์‹์œผ๋กœ ์ˆ˜์น˜์ ์œผ๋กœ ์ ‘๊ทผํ•˜๋Š” ์ฒซ ๊ฑธ์Œ์„ ๋‚ด๋”›์—ˆ์Šต๋‹ˆ๋‹ค! ๐Ÿง‘โ€๐Ÿš€

ํ•˜์ง€๋งŒ โ€œ์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•โ€์—๋„ ํ•œ๊ณ„๊ฐ€ ๋ถ„๋ช…ํžˆ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค! ๋‹ค์Œ ํฌ์ŠคํŠธ์—์„  ์˜ค์ผ๋Ÿฌ ๋ฐฉ๋ฒ•์„ ๊ฐœ์„ ํ•œ ๋ฒ„์ „์„ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.