"룽에-쿠타 방법"의 두 판 사이의 차이
Pythagoras0 (토론 | 기여) |
Pythagoras0 (토론 | 기여) |
||
1번째 줄: | 1번째 줄: | ||
==개요== | ==개요== | ||
* 미분방정식 | * 미분방정식 | ||
− | + | :<math> | |
\frac{dy}{dx}=f(x,y) \label{eqn} | \frac{dy}{dx}=f(x,y) \label{eqn} | ||
− | + | </math> | |
의 수치해를 구하는 방법 | 의 수치해를 구하는 방법 | ||
− | * 작은 상수 | + | * 작은 상수 <math>h</math>를 고정 |
− | * | + | * <math>x_{k+1}=x_{k}+h</math>라 두자 |
− | * 초기값 | + | * 초기값 <math>(x_0,y_0)</math>가 주어져 있을 때, 다음의 점화식을 이용하여 \ref{eqn}의 수치해를 구함 |
:<math> | :<math> | ||
y_{k+1} = y_k + \tfrac{1}{6}h\left(z_1 + 2z_2 + 2z_3 + z_4 \right) | y_{k+1} = y_k + \tfrac{1}{6}h\left(z_1 + 2z_2 + 2z_3 + z_4 \right) | ||
24번째 줄: | 24번째 줄: | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
− | * 일반적으로, 적당한 상수 | + | * 일반적으로, 적당한 상수 <math>\alpha_0,\{\alpha_j,b_j,\mu_j\}_{j=1}^{p}</math>에 대하여 다음과 같은 형태의 점화식을 이용하여 \ref{eqn}의 수치해를 구하는 것을 룽에-쿠타 방법이라 함 |
:<math> | :<math> | ||
y_{k+1} = y_k + h\left(\alpha_0(x_k,y_k)+\sum_{j=1}^{p}\alpha_jf(x_k+\mu_jh,y_k+b_jh) \right) | y_{k+1} = y_k + h\left(\alpha_0(x_k,y_k)+\sum_{j=1}^{p}\alpha_jf(x_k+\mu_jh,y_k+b_jh) \right) | ||
30번째 줄: | 30번째 줄: | ||
==예== | ==예== | ||
− | ===미분방정식 | + | ===미분방정식 <math>y'=y</math>=== |
− | * | + | * <math>h=0.1</math>, <math>x_0=0,y_0=1</math> |
− | + | :<math> | |
\begin{array}{c|c|c|c|c} | \begin{array}{c|c|c|c|c} | ||
x & \text{Runge-Kutta} & e^x \\ | x & \text{Runge-Kutta} & e^x \\ | ||
48번째 줄: | 48번째 줄: | ||
1. & 2.71828 & 2.71828 \\ | 1. & 2.71828 & 2.71828 \\ | ||
\end{array} | \end{array} | ||
− | + | </math> | |
− | ===미분방정식 | + | ===미분방정식 <math>y'=-2x y</math>=== |
− | * | + | * <math>h=0.1</math>, <math>x_0=0,y_0=1</math> |
− | + | :<math> | |
\begin{array}{c|c|c} | \begin{array}{c|c|c} | ||
x & \text{Runge-Kutta} & e^{-x^2} \\ | x & \text{Runge-Kutta} & e^{-x^2} \\ | ||
69번째 줄: | 69번째 줄: | ||
1. & 0.367881 & 0.367879 \\ | 1. & 0.367881 & 0.367879 \\ | ||
\end{array} | \end{array} | ||
− | + | </math> | |
− | ===미분방정식 | + | ===미분방정식 <math>y'+y=x</math>=== |
− | * | + | * <math>h=0.1</math>, <math>x_0=0,y_0=1</math> |
− | + | :<math> | |
\begin{array}{c|c|c} | \begin{array}{c|c|c} | ||
x & \text{Runge-Kutta} & x+2 e^{-x}-1 \\ | x & \text{Runge-Kutta} & x+2 e^{-x}-1 \\ | ||
90번째 줄: | 90번째 줄: | ||
1. & 0.73576 & 0.735759 \\ | 1. & 0.73576 & 0.735759 \\ | ||
\end{array} | \end{array} | ||
− | + | </math> | |
==연립 미분방정식에의 응용== | ==연립 미분방정식에의 응용== | ||
102번째 줄: | 102번째 줄: | ||
\label{eqn2} | \label{eqn2} | ||
</math> | </math> | ||
− | * 초기값 | + | * 초기값 <math>(x_0,y_0,u_0)</math>가 주어져 있을 때, 다음의 점화식을 이용하여 \ref{eqn2}의 수치해를 구함 |
:<math> | :<math> | ||
\begin{align} | \begin{align} | ||
135번째 줄: | 135번째 줄: | ||
</math> | </math> | ||
− | === | + | ===<math>y''+y=0</math>의 예=== |
− | * 미분방정식 | + | * 미분방정식 <math>y''=-y</math>은 연립미분방정식 <math>y'=u, u'=-y</math>으로 이해할 수 있다 |
− | * \ref{eqn2}에서 | + | * \ref{eqn2}에서 <math>f(x,y,u)=u, g(x,y,u)=-y</math>인 경우에 해당 |
− | * | + | * <math>h=0.1</math>, <math>x_0=0,y_0=0,u_0=-1</math>로 두면 다음을 얻는다 |
− | + | :<math> | |
\begin{array}{c|c|c} | \begin{array}{c|c|c} | ||
x & \text{Runge-Kutta} & \sin x \\ | x & \text{Runge-Kutta} & \sin x \\ | ||
155번째 줄: | 155번째 줄: | ||
1. & 0.84147 & 0.841471 \\ | 1. & 0.84147 & 0.841471 \\ | ||
\end{array} | \end{array} | ||
− | + | </math> | |
2020년 11월 12일 (목) 23:28 기준 최신판
개요
- 미분방정식
\[ \frac{dy}{dx}=f(x,y) \label{eqn} \] 의 수치해를 구하는 방법
- 작은 상수 \(h\)를 고정
- \(x_{k+1}=x_{k}+h\)라 두자
- 초기값 \((x_0,y_0)\)가 주어져 있을 때, 다음의 점화식을 이용하여 \ref{eqn}의 수치해를 구함
\[ y_{k+1} = y_k + \tfrac{1}{6}h\left(z_1 + 2z_2 + 2z_3 + z_4 \right) \]
여기서 \[ \begin{align} z_1 &= f(x_k, y_k) \\ z_2 &= f(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_1) \\ z_3 &= f(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_2) \\ z_4 &= f(x_k + h, y_k + h z_3) \end{align} \]
- 일반적으로, 적당한 상수 \(\alpha_0,\{\alpha_j,b_j,\mu_j\}_{j=1}^{p}\)에 대하여 다음과 같은 형태의 점화식을 이용하여 \ref{eqn}의 수치해를 구하는 것을 룽에-쿠타 방법이라 함
\[ y_{k+1} = y_k + h\left(\alpha_0(x_k,y_k)+\sum_{j=1}^{p}\alpha_jf(x_k+\mu_jh,y_k+b_jh) \right) \]
예
미분방정식 \(y'=y\)
- \(h=0.1\), \(x_0=0,y_0=1\)
\[ \begin{array}{c|c|c|c|c} x & \text{Runge-Kutta} & e^x \\ \hline 0. & 1 & 1. \\ 0.1 & 1.10517 & 1.10517 \\ 0.2 & 1.2214 & 1.2214 \\ 0.3 & 1.34986 & 1.34986 \\ 0.4 & 1.49182 & 1.49182 \\ 0.5 & 1.64872 & 1.64872 \\ 0.6 & 1.82212 & 1.82212 \\ 0.7 & 2.01375 & 2.01375 \\ 0.8 & 2.22554 & 2.22554 \\ 0.9 & 2.4596 & 2.4596 \\ 1. & 2.71828 & 2.71828 \\ \end{array} \]
미분방정식 \(y'=-2x y\)
- \(h=0.1\), \(x_0=0,y_0=1\)
\[ \begin{array}{c|c|c} x & \text{Runge-Kutta} & e^{-x^2} \\ \hline 0. & 1 & 1. \\ 0.1 & 0.99005 & 0.99005 \\ 0.2 & 0.960789 & 0.960789 \\ 0.3 & 0.913931 & 0.913931 \\ 0.4 & 0.852144 & 0.852144 \\ 0.5 & 0.778801 & 0.778801 \\ 0.6 & 0.697676 & 0.697676 \\ 0.7 & 0.612627 & 0.612626 \\ 0.8 & 0.527293 & 0.527292 \\ 0.9 & 0.444859 & 0.444858 \\ 1. & 0.367881 & 0.367879 \\ \end{array} \]
미분방정식 \(y'+y=x\)
- \(h=0.1\), \(x_0=0,y_0=1\)
\[ \begin{array}{c|c|c} x & \text{Runge-Kutta} & x+2 e^{-x}-1 \\ \hline 0. & 1 & 1. \\ 0.1 & 0.909675 & 0.909675 \\ 0.2 & 0.837462 & 0.837462 \\ 0.3 & 0.781637 & 0.781636 \\ 0.4 & 0.740641 & 0.74064 \\ 0.5 & 0.713062 & 0.713061 \\ 0.6 & 0.697624 & 0.697623 \\ 0.7 & 0.693171 & 0.693171 \\ 0.8 & 0.698659 & 0.698658 \\ 0.9 & 0.71314 & 0.713139 \\ 1. & 0.73576 & 0.735759 \\ \end{array} \]
연립 미분방정식에의 응용
- 연립미분방정식
\[ \begin{align} y' &= f(x,y,u) \\ u'&= g(x,y,u) \end{align} \label{eqn2} \]
- 초기값 \((x_0,y_0,u_0)\)가 주어져 있을 때, 다음의 점화식을 이용하여 \ref{eqn2}의 수치해를 구함
\[ \begin{align} y_{k+1} & = y_k + \tfrac{1}{6}h\left(z_1 + 2z_2 + 2z_3 + z_4 \right)\\ u_{k+1} & = u_k + \tfrac{1}{6}h\left(w_1 + 2w_2 + 2w_3 + w_4 \right)\\ \end{align} \]
여기서 \[ \begin{align} z_1 &= f(x_k, y_k,u_k) \\ z_2 &= f(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_1,u_k+\tfrac{1}{2}h w_1) \\ z_3 &= f(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_2,u_k+\tfrac{1}{2}h w_2) \\ z_4 &= f(x_k + h, y_k + h z_3,u_k+h w_3) \end{align} \] 그리고 \[ \begin{align} w_1 &= g(x_k, y_k,u_k) \\ w_2 &= g(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_1,u_k+\tfrac{1}{2}h w_1) \\ w_3 &= g(x_k + \tfrac{1}{2}h, y_k + \tfrac{1}{2}h z_2,u_k+\tfrac{1}{2}h w_2) \\ w_4 &= g(x_k + h, y_k + h z_3,u_k+h w_3) \end{align} \]
\(y''+y=0\)의 예
- 미분방정식 \(y''=-y\)은 연립미분방정식 \(y'=u, u'=-y\)으로 이해할 수 있다
- \ref{eqn2}에서 \(f(x,y,u)=u, g(x,y,u)=-y\)인 경우에 해당
- \(h=0.1\), \(x_0=0,y_0=0,u_0=-1\)로 두면 다음을 얻는다
\[ \begin{array}{c|c|c} x & \text{Runge-Kutta} & \sin x \\ \hline 0. & 0 & 0. \\ 0.1 & 0.0998333 & 0.0998334 \\ 0.2 & 0.198669 & 0.198669 \\ 0.3 & 0.29552 & 0.29552 \\ 0.4 & 0.389418 & 0.389418 \\ 0.5 & 0.479425 & 0.479426 \\ 0.6 & 0.564642 & 0.564642 \\ 0.7 & 0.644217 & 0.644218 \\ 0.8 & 0.717356 & 0.717356 \\ 0.9 & 0.783326 & 0.783327 \\ 1. & 0.84147 & 0.841471 \\ \end{array} \]
관련된 항목들
매스매티카 파일 및 계산 리소스