Составители:
Рубрика:
54
ЛАБОРАТОРНАЯ РАБОТА №6
Задание: Решить методом Рунге-Кутта систему дифференциальных
уравнений с данными начальными условиями:
)t(2y
3
8
)t(1y)t(0y)t(2y
dt
d
)t(2y)t(0y)1(1y)t(0y30)t(1y
dt
d
)t(1y8)t(0y8)t(0y
dt
d
⋅−⋅=
⋅−+⋅=
⋅+⋅=
1)0(2y
0)0(1y
1)0(
0y
=
=
=
Решение: В пакете MathCad существует несколько встроенных функ-
ций для решения систем дифференциальных уравнений. Для решения дан-
ной системы мы воспользовались функцией
Rkadapt для поиска прибли-
женного решения.
Задавшись фиксированным числом точек, можно аппроксимировать
функцию более точно, если вычислять ее значения в точках, расположен-
ных следующим образом: достаточно часто на тех интервалах, где функ-
ция меняется быстро, и не очень часто – где функция меняется более
медленно. В отличие от функции
rkfixed, которая ищет приближенное
решение с постоянным шагом, функция
Rkadapt проверяет, как быстро
меняется приближенное решение, и соответственно адаптирует размер
шага. Этот адаптивный контроль величины шага дает возможность
функции
Rkadapt вычислять решение на более мелкой сетке в тех облас-
тях, где оно меняется быстро, и на более крупной – в тех областях, где
оно меняется медленно. Это позволяет и повысить точность, и сокра-
тить время, требуемое для решения уравнения. Следует обратить внима-
ние на то, что функция
Rkadapt возвращает решение системы уравнений
на равномерной сетке.
Функция
Rkadapt(y,x1,x2,npoints,D) имеет те же самые аргументы,
что и функция
rkfixed, и возвращает идентичную по виду матрицу с при-
ближенным решением (см. рис.14)
[39].
ЛАБОРАТОРНАЯ РАБОТА №6 Задание: Решить методом Рунге-Кутта систему дифференциальных уравнений с данными начальными условиями: d y0( t ) = 8 ⋅ y0( t ) + 8 ⋅ y1( t ) dt y0(0) = 1 d y1( t ) = 30 ⋅ y0( t ) + y1(1) − y0( t ) ⋅ y2( t ) y1(0) = 0 dt d 8 y 2 ( 0) = 1 y2( t ) = y0( t ) ⋅ y1( t ) − ⋅ y2( t ) dt 3 Решение: В пакете MathCad существует несколько встроенных функ- ций для решения систем дифференциальных уравнений. Для решения дан- ной системы мы воспользовались функцией Rkadapt для поиска прибли- женного решения. Задавшись фиксированным числом точек, можно аппроксимировать функцию более точно, если вычислять ее значения в точках, расположен- ных следующим образом: достаточно часто на тех интервалах, где функ- ция меняется быстро, и не очень часто где функция меняется более медленно. В отличие от функции rkfixed, которая ищет приближенное решение с постоянным шагом, функция Rkadapt проверяет, как быстро меняется приближенное решение, и соответственно адаптирует размер шага. Этот адаптивный контроль величины шага дает возможность функции Rkadapt вычислять решение на более мелкой сетке в тех облас- тях, где оно меняется быстро, и на более крупной в тех областях, где оно меняется медленно. Это позволяет и повысить точность, и сокра- тить время, требуемое для решения уравнения. Следует обратить внима- ние на то, что функция Rkadapt возвращает решение системы уравнений на равномерной сетке. Функция Rkadapt(y,x1,x2,npoints,D) имеет те же самые аргументы, что и функция rkfixed, и возвращает идентичную по виду матрицу с при- ближенным решением (см. рис.14) [39]. 54
Страницы
- « первая
- ‹ предыдущая
- …
- 54
- 55
- 56
- 57
- 58
- …
- следующая ›
- последняя »