Если система дифференциальных уравнений записана в матричной форме, а коэффициенты при неизвестных функциях значительно, например, на несколько порядков величины, отличаются друг от друга, то такую матрицу называют вырожденной, а систему уравнений «жёсткой».
Решение «жёсткой» системы уравнений методом Рунге – Кутта приводит к необходимости уменьшения (измельчения) шага интегрирования, что в свою очередь приводит к накоплению ошибок интегрирования, и как следствие, к неустойчивости решения. Поэтому для решения таких систем разработан специальный алгоритм, названный по имени его автора, методом Розенброка. Метод позволяет получить решение как «жёстких» обыкновенных дифференциальных уравнений одной переменной, так и систем уравнений. В MathCad этот алгоритм реализуется функцией Radau.
В общем случае обращение к функции имеет вид: Radau (y, x1, x2, num, D, kmax, s), в котором аргументы: y, x1, x2, num, D, kmax, s, имеют тот же смысл, что и в рассмотренных выше решающих функциях. В частном случае фиксированного шага интегрирования обращение к функции упрощается - Radau (y, x1, x2, num, D).
На рис.7 приведен пример решения системы ОДУ, элементы матрицы которой отличаются примерно на четыре порядка.
Рис. 7. Пример решения системы ОДУ функцией Radau
Содержание лабораторной работы.
1) Решить ОДУ первого порядка на (рис. 1) блоком Given…Odesolve и исследовать зависимость решения от начального условия.
2) Решить ОДУ третьего порядка на (рис. 2) блоком Given…Odesolve и исследовать зависимость решения от первого начального условия.
3) Решить систему дифференциальных уравнений на рис.3 блоком Given…Odesolve.
4) Решить систему ОДУ на (рис. 4) функцией rkfixed и вывести решение в табличной форме и графической форме.
5) Решить систему ОДУ на (рис. 5) функцией Rkadapt.
6) Решить систему ОДУ на (рис.6) функцией Bulstoer с фиксированным шагом интегрирования.
7) Решить систему ОДУ на (рис. 7) функцией Radau и сравнить полученное решение с решением этой же системы функцией Rkadapt.
8) Решить систему ОДУ, из таблицы 4, функцией rkfixed и вывести решение в графической форме (по указанию преподавателя).
9) Представить отчет по лабораторной работе № 4 согласно приложения 1настоящено сборника.
Варианты заданий к лабораторной работе №4
Таблица 4
Примечание. Для ускорения освоения работы в среде MathCad используйте приложение 2, где приведены часто употребляемые и не всегда явно видимые сочетания клавиш.
Библиографический список
1. Математическое моделирование: Методы, описания, исследования сложных систем / Под ред. А.А.Самарского. - М.: Наука, 1989. - 271 с.
2. Игнатьев В.В. Лекции по курсу: «Математическое моделирование систем и процессов» [Электронная версия].
3. MathСad 13. [Электронный курс].англ.
4. Макаров Е.Г. Инженерные расчеты в MathСad. Учебный курс. - СПб.: Питер, 2003. - 448 с.
5. Березин И.С., Методы вычислений. / Н.П.Жидков 2-е изд., стереотипное.: 1-й том. - М.: Государственное издательство физико-математической литературы, 1962. - 464 с.
6. Справочник по математике: для научных работников и инженеров. Г. Корн, Т.Корн. - М.: Наука, 1968. – 720 с.
Лист 1 Приложение 1
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
Самарский государственный Университет путей сообщения
Кафедра электроснабжения железнодорожного транспорта
«МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ СИСТЕМ И ПРОЦЕССОВ»
ОТЧЕТ
по лабораторной работе №_____
Выполнил: студент гр._______
_______________________(Ф.И.О).
«___»____________200__г.
Проверил:
_____________________(Ф.И.О).
«___»____________200__г.
Самара 2008
Лист 2
Цель работы:________________________
1. Название раздела.
2. Распечатка рабочего листа выполненного задания с комментариями на русском языке (кириллический шрифт).
Подпись, дата
Приложение 2
«Быстрые клавиши» в MatCad.
Название | Пример из Matcad | Быстрые клавиши и их сочетания |
Знак равенства для получения результата | = | [=] |
Булево равенство | [Ctrl] + [=] | |
Присвоение значения | [Shift] + [:](рядом с правой Shift) | |
Сложение | [Shift] + [+] | |
Векторное произведение | [Ctrl] + [8] | |
Скалярное произведение | [* ] + [Shift] | |
Возведение в степень | [Shift] + [6] | |
Производная | [Ctrl] + [F7] [Shift] +[/](рядом с правой Shift) [Ctrl ]+ [Shift] +[/](рядом с правой Shift) | |
Нижний индекс | [[ ] | |
Комплексно-сопряженное число | [Shift] + [”](рядом с правой Shift) | |
Вектор | [Ctrl] + [-] | |
Корень квадратный | [\] | |
Интеграл | [Shift] +[7] | |
Транспонированная матрица | [Ctrl] + [1] | |
Задать диапазон дискретной величины | [; ](рядом с правой Shift) | |
График в декартовых координатах | [Shift] + [2] | |
Создать матрицу | [Ctrl ]+[ M] | |
Добавить строку на рабочем листе | [Ctrl ]+ [Enter] |