ВУЗ:
Составители:
• N – число шагов, на которых находится решение;
• D – векторная функция двух аргументов: скалярного t и векторного y.
Фрагмент решения системы уравнений первого порядка, эквивалентной
уравнению второго порядка , приведен на рис. 6.4.
Рис. 6.4. Решение системы из
двух ОДУ
Dty,()
y
1
y
0
− 0.1 y
1
⋅−
⎛
⎜
⎝
⎞
⎟
⎠
:=
y0
0.1
0
⎛
⎜
⎝
⎞
⎟
⎠
:= N 100:=
Y rkfixed y0 0, 50, N, D,():=
Чтобы построить график решения системы ОДУ, необходимо отложить
компоненты матрицы решения Y по координатным осям: значения аргумента
0
Y – вдоль оси абсцисс, значения функции
1
Y и её производной
2
Y –
вдоль оси ординат.
Для численного решения дифференциальных уравнений в системе
Mathematica используется встроенная функция NDSolve:
- NDSolve[eqns, y, {x, xmin, xmax}], где eqns – дифференциальное
уравнение относительно функции y и независимой переменной x; xmin, xmax
– интервал значений x.
- NDSolve[eqns, {y1, y2, …}, {x, xmin, xmax}], где y1, y2, … - функции
системы дифференциальных уравнений. Решение системы из трех
дифференциальных уравнений приведено на рис. 6.5.
solution = NDSolve[{x′[t] == - y[t] – z[t], x[0] == - 0.04, y
′
[t] == x[t]+.425y[t], y[0] == - 0.30,
z′[t] == 2 - z[t](4 - x[t]), z[0] == 0.52}, {x, y,z}, {t, 0, 25}, Method → RungeKutta ];
ParametricPlot3d[Evaluate[{x[t], y[t], z[t]}, {t, 0, 25}, Plotpoints → 1000,
Plo tRange → All];
29
• N – число шагов, на которых находится решение; • D – векторная функция двух аргументов: скалярного t и векторного y. Фрагмент решения системы уравнений первого порядка, эквивалентной уравнению второго порядка , приведен на рис. 6.4. ⎛ y1 ⎞ D ( t , y ) := ⎜ ⎟ ⎝ − y 0 − 0.1 ⋅ y 1 ⎠ ⎛ 0.1 ⎞ y0 := ⎜ ⎟ N := 100 ⎝ 0 ⎠ Рис. 6.4. Решение системы из двух ОДУ Y := rkfixed ( y0 , 0 , 50 , N , D ) Чтобы построить график решения системы ОДУ, необходимо отложить компоненты матрицы решения Y по координатным осям: значения аргумента 0 1 2 Y – вдоль оси абсцисс, значения функции Y и её производной Y – вдоль оси ординат. Для численного решения дифференциальных уравнений в системе Mathematica используется встроенная функция NDSolve: - NDSolve[eqns, y, {x, xmin, xmax}], где eqns – дифференциальное уравнение относительно функции y и независимой переменной x; xmin, xmax – интервал значений x. - NDSolve[eqns, {y1, y2, …}, {x, xmin, xmax}], где y1, y2, … - функции системы дифференциальных уравнений. Решение системы из трех дифференциальных уравнений приведено на рис. 6.5. solution = NDSolve[{x′[t] == - y[t] – z[t], x[0] == - 0.04, y′[t] == x[t]+.425y[t], y[0] == - 0.30, z′[t] == 2 - z[t](4 - x[t]), z[0] == 0.52}, {x, y,z}, {t, 0, 25}, Method → RungeKutta]; ParametricPlot3d[Evaluate[{x[t], y[t], z[t]}, {t, 0, 25}, Plotpoints → 1000, PlotRange → All]; 29
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »