Решение дифференциального уравнения онлайн рунге кутта

The On-Line Runge-Kutta Calculator

Basic Concepts and Principles

RungeKutta Calculator is an application developed to calculate numerical solutions in intitial value problems, therefore it search solutions for ODE´s Systems with up to 5 equations.

RungeKutta Calculator can solve initial value problems in Ordinary Differential Equations systems up to order 6.

RungeKutta Calculator uses Runge-Kutta, Dormand Prince and Fehlberg pairs embedded methods as explained in this site. The order of these methods is between 1 (Euler method) and 6 (the New65 with FSal property).

Extension Theory

The window program opens with a default initial value problem

For integration interval: [0, 1]

wich admits the inmediate and obvous solution y=e x

Inputs

Independent Variable: Enter the starting point t 0 and end point t n , wich are the integration interval limits
Dependent Variable: Enter dependent variable initial value x 0 (or y 0 ) to start algorithm
function or functions (in the case of a system) that make up the equation, also enter the exact function only if it is known, to estimate the error.
With the Combo ‘ Select Method’: Select integration method to use.

App Menu

1) Execute Produces the execution of the selected method.
2) Add Dimension Anands a equation to the problem (for system of ODEs).
3) Show Problem Shows our intial value problem with the data introduced.

Fourth Order Runge-Kutta Method Calculator

The calculator will find the approximate solution of the first-order differential equation using the classical fourth order Runge-Kutta method, with steps shown.

Your Input

Find $$$ y <\left(2 \right)>$$$ for $$$ y^ <\prime >= \sin <\left(t y \right)>$$$ , when $$$ y <\left(0 \right)>= 1 $$$ , $$$ h = \frac<2> <5>$$$ using the classical fourth order Runge-Kutta method.

Solution

The Runge-Kutta method states that $$$ y_ = y_ + \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) $$$ , where $$$ t_ = t_ + h $$$ , $$$ k_ <1>= f<\left(t_,y_ \right)> $$$ , $$$ k_ <2>= f <\left(t_+ \frac<2>,y_ + \frac> <2>\right)> $$$ , $$$ k_ <3>= f <\left(t_+ \frac<2>,y_ + \frac> <2>\right)> $$$ , and $$$ k_ <4>= f <\left(t_+ h,y_ + h k_ <3>\right)> $$$ .

Step 1

$$$ k_ <4>= f <\left(t_<0>+ h,y_ <0>+ h k_ <3>\right)> = f<\left(0 + \frac<2><5>,1 + \left(\frac<2><5>\right)\cdot \left(0.206451342596583\right) \right)> = f<\left(\frac<2><5>,1.08258053703863 \right)> = 0.419625061196877 $$$

$$$ y<\left(\frac<2> <5>\right)> = y <\left(t_<1>\right)> = y_ <1>= y_ <0>+ \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) = 1 + \frac<\frac<2><5>> <6>\left(0 + 2 \cdot 0.198669330795061 + 2 \cdot 0.206451342596583 + 0.419625061196877\right) = 1.08199109386534 $$$

Step 2

$$$ k_ <1>= f<\left(t_<1>,y_ <1>\right)> = f<\left(\frac<2><5>,1.08199109386534 \right)> = 0.419411035089935 $$$

$$$ k_ <2>= f <\left(t_<1>+ \frac<2>,y_ <1>+ \frac> <2>\right)> = f<\left(\frac<2> <5>+ \frac<\frac<2><5>><2>,1.08199109386534 + \frac<\left(\frac<2><5>\right)\cdot \left(0.419411035089935\right)> <2>\right)> = f<\left(\frac<3><5>,1.16587330088333 \right)> = 0.643853534490712 $$$

$$$ k_ <3>= f <\left(t_<1>+ \frac<2>,y_ <1>+ \frac> <2>\right)> = f<\left(\frac<2> <5>+ \frac<\frac<2><5>><2>,1.08199109386534 + \frac<\left(\frac<2><5>\right)\cdot \left(0.643853534490712\right)> <2>\right)> = f<\left(\frac<3><5>,1.21076180076349 \right)> = 0.664225362212255 $$$

$$$ k_ <4>= f <\left(t_<1>+ h,y_ <1>+ h k_ <3>\right)> = f<\left(\frac<2> <5>+ \frac<2><5>,1.08199109386534 + \left(\frac<2><5>\right)\cdot \left(0.664225362212255\right) \right)> = f<\left(\frac<4><5>,1.34768123875025 \right)> = 0.881081971595253 $$$

$$$ y<\left(\frac<4> <5>\right)> = y <\left(t_<2>\right)> = y_ <2>= y_ <1>+ \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) = 1.08199109386534 + \frac<\frac<2><5>> <6>\left(0.419411035089935 + 2 \cdot 0.643853534490712 + 2 \cdot 0.664225362212255 + 0.881081971595253\right) = 1.34310114720475 $$$

Step 3

$$$ k_ <1>= f<\left(t_<2>,y_ <2>\right)> = f<\left(\frac<4><5>,1.34310114720475 \right)> = 0.879343087787042 $$$

$$$ k_ <4>= f <\left(t_<2>+ h,y_ <2>+ h k_ <3>\right)> = f<\left(\frac<4> <5>+ \frac<2><5>,1.34310114720475 + \left(\frac<2><5>\right)\cdot \left(0.999609040694986\right) \right)> = f<\left(\frac<6><5>,1.74294476348275 \right)> = 0.867452549636552 $$$

$$$ y<\left(\frac<6> <5>\right)> = y <\left(t_<3>\right)> = y_ <3>= y_ <2>+ \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) = 1.34310114720475 + \frac<\frac<2><5>> <6>\left(0.879343087787042 + 2 \cdot 0.998657304313516 + 2 \cdot 0.999609040694986 + 0.867452549636552\right) = 1.72598970236746 $$$

Step 4

$$$ k_ <1>= f<\left(t_<3>,y_ <3>\right)> = f<\left(\frac<6><5>,1.72598970236746 \right)> = 0.877394887797677 $$$

$$$ k_ <2>= f <\left(t_<3>+ \frac<2>,y_ <3>+ \frac> <2>\right)> = f<\left(\frac<6> <5>+ \frac<\frac<2><5>><2>,1.72598970236746 + \frac<\left(\frac<2><5>\right)\cdot \left(0.877394887797677\right)> <2>\right)> = f<\left(\frac<7><5>,1.90146867992699 \right)> = 0.461368005308125 $$$

$$$ k_ <3>= f <\left(t_<3>+ \frac<2>,y_ <3>+ \frac> <2>\right)> = f<\left(\frac<6> <5>+ \frac<\frac<2><5>><2>,1.72598970236746 + \frac<\left(\frac<2><5>\right)\cdot \left(0.461368005308125\right)> <2>\right)> = f<\left(\frac<7><5>,1.81826330342908 \right)> = 0.561356508370458 $$$

$$$ k_ <4>= f <\left(t_<3>+ h,y_ <3>+ h k_ <3>\right)> = f<\left(\frac<6> <5>+ \frac<2><5>,1.72598970236746 + \left(\frac<2><5>\right)\cdot \left(0.561356508370458\right) \right)> = f<\left(\frac<8><5>,1.95053230571564 \right)> = 0.020739477392444 $$$

$$$ y<\left(\frac<8> <5>\right)> = y <\left(t_<4>\right)> = y_ <4>= y_ <3>+ \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) = 1.72598970236746 + \frac<\frac<2><5>> <6>\left(0.877394887797677 + 2 \cdot 0.461368005308125 + 2 \cdot 0.561356508370458 + 0.020739477392444\right) = 1.92222859520394 $$$

Step 5

$$$ k_ <1>= f<\left(t_<4>,y_ <4>\right)> = f<\left(\frac<8><5>,1.92222859520394 \right)> = 0.06597893710495 $$$

$$$ k_ <4>= f <\left(t_<4>+ h,y_ <4>+ h k_ <3>\right)> = f<\left(\frac<8> <5>+ \frac<2><5>,1.92222859520394 + \left(\frac<2><5>\right)\cdot \left(-0.196342927593455\right) \right)> = f <\left(2,1.84369142416656 \right)>= -0.519093645672128 $$$

$$$ y <\left(2 \right)>= y <\left(t_<5>\right)> = y_ <5>= y_ <4>+ \frac <6>\left(k_ <1>+ 2 k_ <2>+ 2 k_ <3>+ k_<4>\right) = 1.92222859520394 + \frac<\frac<2><5>> <6>\left(0.06597893710495 + 2 \left(-0.33553324651362\right) + 2 \left(-0.196342927593455\right) — 0.519093645672128\right) = 1.82110412475186 $$$

Метод Рунге — Кутты

Этот онлайн калькулятор реализует классический метод Рунге — Кутты (встречается также название метод Рунге — Кутта) четвертого порядка точности. Метод используется для решения дифференциальных уравнений первой степени с заданным начальным значением

Калькулятор ниже находит численное решение дифференциального уравнения первой степени методом Рунге-Кутты (иногда встречается название метод Рунге-Кутта, а в поисковиках бывает ищут «метод рунге кута», «метод рунги кутта» и даже «метод рунги кута»), который также известен как классический метод Рунге — Кутты (потому что есть на самом деле семейство методов Рунге-Кутты) или метод Рунге — Кутты четвертого порядка.

Для того, чтобы использовать калькулятор, вам надо привести дифференциальное уравнение к форме

и ввести правую часть уравнения f(x,y) в поле y’ калькулятора.

Также вам понадобится ввести начальное значение

и указать точку в которой вы хотите получить численное решение уравнения .

Последнее параметр калькулятора — размер шага с которым вычисляется следующее приближение по графику функции.

Описание метода можно найти под калькулятором.


источники:

http://www.emathhelp.net/en/calculators/differential-equations/fourth-order-runge-kutta-method-calculator/

http://planetcalc.ru/8400/