MCP로 연결 →

계산 입력

공식

광고

결과

y(xn) — approximate value at endpoint
0.7652614605
Euler approximation with step size h = 0.02
분할 개수 n 50
단계 크기 h 0.02
k xk yk
0 0 0
1 0.02 0.02
2 0.04 0.039992
3 0.06 0.0599600128
4 0.08 0.0798881087
5 0.1 0.0997604665
6 0.12 0.1195614235
7 0.14 0.1392755248
8 0.16 0.1588875714
9 0.18 0.1783826662
10 0.2 0.1977462587
11 0.22 0.216964187
12 0.24 0.2360227179
13 0.26 0.2549085834
14 0.28 0.2736090157
15 0.3 0.2921117778
16 0.32 0.310405192
17 0.34 0.3284781643
18 0.36 0.3463202062
19 0.38 0.3639214525
20 0.4 0.3812726761
21 0.42 0.398365299
22 0.44 0.4151914008
23 0.46 0.4317437228
24 0.48 0.4480156699
25 0.5 0.4640013091
26 0.52 0.4796953648
27 0.54 0.495093212
28 0.56 0.5101908662
29 0.58 0.5249849718
30 0.6 0.5394727874
31 0.62 0.5536521696
32 0.64 0.5675215551
33 0.66 0.5810799408
34 0.68 0.5943268629
35 0.7 0.6072623745
36 0.72 0.6198870226
37 0.74 0.6322018242
38 0.76 0.6442082413
39 0.78 0.6559081561
40 0.8 0.6673038459
41 0.82 0.6783979575
42 0.84 0.6891934817
43 0.86 0.6996937286
44 0.88 0.7099023023
45 0.9 0.7198230767
46 0.92 0.7294601715
47 0.94 0.7388179287
48 0.96 0.74790089
49 0.98 0.7567137752
50 1 0.7652614605

이 계산기의 기능

이 도구는 초기조건 \(y(x_0) = y_0\)이 주어진 \(y' = F(x, y)\) 형태의 1계 상미분방정식을 고전적인 전진(양함수) 오일러 방법으로 수치적으로 풉니다. \(x_0\)에서 \(x_n\)까지 \(n\)개의 동일한 구간으로 나누어 진행하며, 단계 크기 \(h\), \((x, y)\) 근삿값의 전체 표, 그리고 끝점에서의 근사값 \(y(x_n)\)을 함께 보여줍니다.

사용 방법

우변 \(F(x, y)\)를 변수 \(x\)와 \(y\)에 대한 수식으로 입력하세요(연산자 + - * / ^, 괄호, 그리고 sin, cos, exp, log/ln, sqrt, abs 같은 함수와 상수 pi, e를 사용할 수 있습니다). 시작점 \(x_0\), 초깃값 \(y_0\), 끝점 \(x_n\)을 설정하고 분할 개수 \(n\)을 선택합니다. \(n\)이 클수록 단계 크기가 작아져 일반적으로 더 정확한 결과를 얻을 수 있습니다.

공식 풀이

단계 크기는 다음과 같고, 격자점은 \(x_k = x_0 + k \cdot h\)입니다.

$$\begin{gathered} y_{i+1} = y_i + h \cdot F(x_i,\, y_i), \qquad x_{i+1} = x_i + h \\[1.5em] \text{where}\quad \left\{ \begin{aligned} h &= \dfrac{\text{x}_n - \text{x}_0}{\text{n}} \\ x_0 &= \text{x}_0, \quad y_0 = \text{y}_0 \\ F &= \text{F(x,y)} \end{aligned} \right. \end{gathered}$$

\(y_0\)에서 출발하여 각 새로운 값은 \(y_{k+1} = y_k + h \cdot F(x_k, y_k)\)로 계산됩니다. 즉, 현재 점에서 기울기 \(F\)를 구해 폭이 \(h\)인 직선 형태의 한 걸음을 내딛는 것입니다. 이 방법은 1차 정확도를 가지므로 전체 오차는 \(O(h)\) 규모로 변합니다.

광고
한 점에서 다음 점으로 접선을 따라 진행하는 오일러 방법
각 오일러 단계는 접선 기울기 \(F(x,y)\)를 따라 한 단계 크기 \(h\)만큼 진행하며, 실제 곡선에서 점점 벗어납니다.

계산 예시

\(y' = 1 - y^2\)에서 \(x_0 = 0\), \(y_0 = 0\), \(x_n = 1\), \(n = 5\)일 때 단계 크기는 \(h = 0.2\)입니다. 반복 계산을 하면 \(y_1 = 0.2\), \(y_2 = 0.392\), \(y_3 = 0.5612672\), \(y_4 \approx 0.6982668\), \(y_5 \approx 0.8007513\)이 됩니다. 따라서 \(x = 1\)에서의 오일러 추정값은 약 \(0.8008\)입니다. 정확한 해는 \(\tanh(x)\)이므로 \(\tanh(1) \approx 0.7616\)이며, \(n\)을 늘릴수록 오일러 값은 이 참값에 가까워집니다.

x와 y 열로 이루어진 오일러 반복 단계 표
예제에서는 끝점 \(x_n\)까지 \(x_k\)와 \(y_k\) 값의 단계별 표를 만듭니다.

자주 묻는 질문

왜 정확한 해와 결과가 다른가요? 오일러 방법은 1차 정확도만 가집니다. 오차는 대략 \(h\)에 비례해 줄어들기 때문에 \(n\)을 크게(단계를 작게) 잡으면 정확도가 좋아집니다.

\(x_n\)이 \(x_0\)보다 작아도 되나요? 네. 단계 크기 \(h\)가 음수가 되어 동일한 점화식으로 거꾸로 적분합니다.

어떤 함수를 지원하나요? sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, exp, log/ln, log10, sqrt, abs와 상수 pi, e를 지원합니다.

최종 업데이트: