|    | 
СИ-БИ техника | КВ техника | УКВ техника | Радиоизмерения | Защита от TVI | Источники питания | Софт | Расчеты | Справочники
Главная arrow Проектирование arrow MathCAD arrow Дифференциальные уравнения  

Дифференциальные уравнения

Оглавление
Дифференциальные уравнения
Страница 2
Страница 3
Страница 4
Страница 5
Страница 2 из 5

На рис. 5.5 показано сравнение методов Эйлера и Рунге — Кутты четвертого порядка на решении нашей задачи о развитии эпидемии.

Рис. 5.5. Методы Эйлера и Рунге — Кутты в задаче об эпидемии

Автор не описывает работу остальных функций, введенных в 6-ю версию Math-cad для решения дифференциальных уравнений, по следующим причинам:

- достаточно полное описание дано в документации и справочной системе;

- многие отмеченные функции так и не прижились в расчетной практике;

- в последующих версиях Mathcad появились новые функции, во многом перекрывающие работу старых.

Отметим только следующее. При решении жестких систем дифференциальных уравнений следует использовать одну из двух встроенных функций, разработанных специально для таких случаев: stiffb и stiffr. Они используют метод Булирша— Штера (b) или Розенброка (r). Форма матрицы-решения, полученной с помощью этих функций, идентична матрице, полученной через rkfixed, Однако stiffb и stiff r требуют дополнительного аргумента j:

Stiffb(x, tнач, tкон, n, f, J) Stiffr(x, tнач, tкон, n, f, J)

где:

- x — вектор п начальных значений;

- tнач, tкон — конечные точки интервала, в котором должно быть найдено решение дифференциальных уравнений. Начальные значения х определяются в точке tнач;

- n — количество точек за начальной точкой, в которых должно быть определено решение. Это определяет число рядов (l+n) матрицы, которую генерируют функции stiffb и stiffг;

- f (t, x) — функция-вектор правых частей системы;

- j(t, х)— матрица-функция размера n(n+l), в которой содержится матрица Якоби правых частей дифференциальных уравнений.

На рис. 5.6 показано сравнение работы функции stiffr с функцией rkfixed при решении жесткой системы.

Сравнение, правда, не совсем "честное". Стоит только изменить значение п с 180 на 200, например, как разница в расчетах сразу нивелируется: проверьте на MA/CS —http://twt.mpei.ac.ru/MASAVorksheets/rkfixad_Stiffr_Stiffb.mcd.

В Mathcad 2000 появилась функция odesoive, предназначенная для решения (solve) обыкновенных дифференциальных уравнений (ode), и заодно решающая две побочные задачи — повышается наглядность решения и объединяются в одной функции разные алгоритмы.

Примечание

В Mathcad 2000 функция odesoive решала только одиночное дифференциальное уравнение, а в версии 2001 — уже и системы дифференциальных уравнений.

Рис. 5.6. Сравнение двух методов решения жесткой системы дифференциальных уравнений

На рис. 5.7 показано, как функция odesolve решает нашу задачу о развитии эпидемии.


« Пред. - След. »


RLBN.ru - Электроника и компьютеры

0.1517
Hosted by uCoz