- •Алгебраические трансцендентные уравнения
- •Системы линейных алгебраических уравнений.
- •Реализация в Visual Basic
- •Численное решение обыкновенных дифференциальных уравнений
- •1.Метод прямоугольников
- •2. Метод трапеции
- •3. Метод параболы
- •2.Метод Рунге-Кутта
- •Оду. Численные методы решения обыкновенных уравнений
- •1.Метод Эйлера
Оду. Численные методы решения обыкновенных уравнений
|
Исхдные данные |
Эйлер табл |
Эйлер программа |
Р-К програм. | |||||||
|
хо |
0,7 |
Х |
у |
Х |
у |
х |
У | |||
|
xk |
1,7 |
0,7 |
2,1 |
0,7 |
2,1 |
0,7 |
2,1 | |||
|
y0 |
2,1 |
0,8 |
2,093033 |
0,8 |
2,093033 |
0,8 |
2,097811 | |||
|
h |
0,1 |
0,9 |
2,095259 |
0,9 |
2,095259 |
0,9 |
2,105958 | |||
|
|
|
1 |
2,107742 |
1 |
2,107742 |
1 |
2,12575 | |||
|
|
|
1,1 |
2,131685 |
1,1 |
2,131685 |
1,1 |
2,158795 | |||
|
|
|
1,2 |
2,168537 |
1,2 |
2,168537 |
1,2 |
2,207179 | |||
|
|
|
1,3 |
2,22014 |
1,3 |
2,22014 |
1,3 |
2,27371 | |||
|
|
|
1,4 |
2,288908 |
1,4 |
2,288908 |
1,4 |
2,362222 | |||
|
|
|
1,5 |
2,378059 |
1,5 |
2,378059 |
1,5 |
2,477856 | |||
|
|
|
1,6 |
2,491835 |
1,6 |
2,491835 |
1,6 |
2,627086 | |||
|
|
|
1,7 |
2,635613 |
1,7 |
2,635613 |
1,7 |
2,816747 | |||
|
|
|
|
|
|
1,7 |
1,7 |
2,816747 | |||
1.Метод Эйлера
Function f(x, y)
f = x + Cos(y / Sqr(0.3))
End Function
Sub ilir()
x0 = 0.7
xk = 1.7
y0 = 2.1
h = 0.1
x = x0
y = y0
Worksheets("ОДУ").Range("E3").Value = x
Worksheets("ОДУ").Range("F3").Value = y
i = 4
Do
y = y + h * f(x, y)
x = x + h
Worksheets("ОДУ").Cells(i, 5).Value = x
Worksheets("ОДУ").Cells(i, 6).Value = y
i = i + 1
Loop While x <= xk
End Sub
2.Метод Рунге-Кутта
Sub r_k()
x0 = 0.7
xk = 1.7
y0 = 2.1
h = 0.1
x = x0
y = y0
Worksheets("ОДУ").Range("G3").Value = x
Worksheets("ОДУ").Range("H3").Value = y
i = 4
Do
k0 = h * f(x, y)
k1 = h * f(x + h / 2, y + k0 / 2)
k2 = h * f(x + h / 2, y + k1 / 2)
k3 = h * f(x + h, y + k2)
y = y + (k0 + 2 * k1 + 2 * k2 + k3) / 6
x = x + h
Worksheets("ОДУ").Cells(i, 7).Value = x
Worksheets("ОДУ").Cells(i, 8).Value = y
i = i + 1
Loop While x <= xk
End Sub
Общий вывод: в этом семестре мы изучили все выше перечисленные методы обработки математических функций.
