- •Конспект лекций
- •Владикавказ
- •1. Предисловие.
- •2. Введение
- •3. Понятие сложной системы.
- •2.1. Понятие модели
- •2.2. Классификация моделей
- •2.3. Последовательность разработки математических моделей
- •2.3.1. Построение концептуальной модели.
- •2.3.2. Разработка алгоритма модели.
- •Структурный анализ процессов.
- •Формализованное описание модели.
- •2.3.3. Разработка программы
- •Построение модели.
- •Проведение модельного эксперимента.
- •2.3.4. Проведение машинных экспериментов с моделью системы
- •5.1. Применение производственных функций в макро- и микроэкономике
- •5.3. Задача потребления.
- •1. Градиент.
- •2. Основы теории подобия
- •2.1. Подобие физических явлений и его признаки
- •2.2. Анализ размерностей
- •2.3. Первая теорема подобия
- •2.4. Применение методов подобия в математическом
- •3. Численные методы решения дифференциальных уравнений
- •3.1. Постановка задачи
- •3.2. Процесс численного решения
- •3.3. Метод Эйлера
- •3.4. Модифицированный метод Эйлера
- •3.5. Метод Рунге – Кутта
- •3.6. Метод Рунге – Кутта для систем дифференциальных уравнений
- •3.7. Общая характеристика одношаговых методов
- •3.8. Многошаговые методы
- •3.9. Методы прогноза и коррекции
- •3.10. Краткая характеристика методов прогноза и коррекции.
- •3.11. Выбор шага и погрешность решения.
- •3.12. Жесткие задачи
- •4.3. Динамическая модель технического объекта
- •4.4. Построение имитационных моделей динамических систем
- •4.5. Преобразование передаточных функций звеньев в дифференциальные уравнения в форме Коши
- •4.6. Синтез имитационной модели на основе структурной схемы
3. Численные методы решения дифференциальных уравнений
3.1. Постановка задачи
Дифференциальными называются уравнения, содержащие одну или несколько производных. Инженеру очень часто приходится сталкиваться с ними при разработке новых изделий или технологических процессов, так как большая часть законов физики формулируется именно в виде дифференциальных равнений. Любая задача проектирования, связанная с расчетом потоков энергии или движением тел, в конечном счете, сводится к решению дифференциальных уравнений. Лишь очень немногие из них удается решить без помощи вычислительных машин. Поэтому численные методы решения дифференциальных уравнений играют такую важную роль в практике инженерных расчетов и в моделировании.
При реализации цифровых систем управления инженеру системотехнику приходится решать дифференциальные уравнения в реальном масштабе времени, т.е. непосредственно в процессе управления объектом. Примером могут служить цифровые регуляторы в системах управления электроприводами металлорежущих станков и промышленных роботов, а также цифровые системы управления автомобильными и авиационными двигателями, летательными аппаратами, морскими судами и т.д.
Рис. 3.1. Решения дифференциального уравнения
Известные математические программы – MathCAD, Matlab, Mathematica и др. непригодны для решения таких задач. Эти программы занимают в ЭВМ много памяти и, кроме того, они не могут работать в реальном масштабе времени. Поэтому для построения компактных, работающих в реальном времени цифровых моделей и систем инженеру приходится самостоятельно разрабатывать алгоритмы и программы для решения дифференциальных уравнений тем или иным численным методом.
В зависимости от числа независимых переменных и, следовательно, типа входящих в них производных дифференциальные уравнения делятся на две различные категории:
обыкновенные, содержащие одну независимую переменную и производные по ней, и уравнения в частных производных, содержащие несколько независимых переменных и производные по ним, которые называют частными.
Мы будем рассматривать методы решения только обыкновенных дифференциальных уравнений (ОДУ).
Дифференциальное уравнение первого порядка можно записать в виде
y' = f(y,t).
Это уравнение имеет семейство решений y(t) . Например, если f(y,t) = y , то для произвольной константы С функция y(t) = Cet является решением (рис.3.1). Выбор начального значения, скажем y(0) , служит для выделения одной кривой из семейства кривых. Зачастую имеется более чем одна зависимая переменная, и тогда задача заключается в решении системы уравнений первого порядка, например,
Решение этой системы содержит две постоянные интегрирования, и, следовательно, нужны два начальных условия, чтобы определить эти константы.
Если значения y и z указаны при одном и том же значении независимой переменной t0, то система будет иметь единственное решение. Задача определения y и z для будущих значений t > t0 называется задачей с начальными условиями или задачей Коши. Если же условия задаются при двух или более значениях независимой переменной, то задача называется краевой. В задаче Коши дополнительные условия называют начальными, а в краевой задаче – граничными.
Любое обыкновенное дифференциальное уравнение порядка n, которое можно записать так, что его левая часть есть производная наивысшего порядка, а в правой части эта производная не встречается, может быть записана из n уравнений первого порядка путем введения n-1 новых переменных.
Например, уравнение
u'' = g(u,u' t)
можно записать как систему
где z'(t) = u''(t).
При обсуждении методов для задачи Коши удобно представлять
себе единственное уравнение
y '= f(y,t)
с начальным условием y(t0 ) = y0. Однако методы с равным успехом применимы и к системам уравнений. Часто в задаче Коши в роли независимой переменной выступает время.
Пример 3.1
Примером может служить задача о траектории. Предположим, что снаряд выпускается с начальной скоростью V0 под заданным углом наклона Q0 к поверхности.
Рис 3.2. К задаче о траектории
Как видно из рис. 3.2 функции x(t) и y(t) обозначают координаты x и у снаряда в момент времени t, а функции и определяют его скорость V (t ) .
Расстояние xk , на котором упадет снаряд, зависит от целого ряда факторов: массы снаряда, начальной скорости, гравитационных сил и т.д.
Математическая модель этой задачи выводится из второго закона Ньютона:
(3.1)
где m - масса снаряда; F - результирующая действующих на снаряд сил.
На снаряд действуют две силы:
1) cила сопротивления воздуха
(3.2)
где C - коэффициент сопротивления; ρ - плотность воздуха; S - поперечное сечение снаряда;
2) сила гравитации
F2 = -mg, (3.3)
где g - ускорение свободного падения.
Чтобы записать уравнение (3.1) в переменных x и y , заметим, что сила сопротивления F1 действует вдоль оси снаряда, а сила гравитации F2 только в вертикальном направлении. Поэтому уравнение (3.1) можно записать покоординатно следующим образом:
(3.4)
Используя (3.2), (3.3) и меняя порядок членов, перепишем
уравнения (3.4) в виде:
(3.5)
Для численного решения необходимо преобразовать два уравнения второго порядка (3.5) в систему четырех уравнений первого порядка. Дифференцируя соотношение
(3.6)
Имеем
(3.7)
Подставляя теперь выражения (3.7) в уравнение (3.5) и разрешая последние относительно V& и Q&, получаем
(3.8)
Уравнения (3.6) вместе с (3.8) составляют систему четырех нелинейных уравнений первого порядка относительно функций x, y,V, θ. Это связанная система нелинейных дифференциальных уравнений, явное решение которых невозможно и возникает необходимость в приближенном численном решении на ЭВМ. Решение системы (3.6), (3.8) должно удовлетворять четырем необходимым начальным условиям.
Считаем, что снаряд выпускается в момент времени t = 0, так что
(x0) = 0,
(y0) = 0.
Другие два начальных условия даются соотношениями
Следовательно, в данном случае рассматривается задача Коши. При заданных характеристиках снаряда и заданном V0 имеется только один свободный параметр – угол стрельбы Q0. Его изменение будет, очевидно, приводить к изменению траектории.