Купить Matlab  |  Mathematica  |  Mathcad  |  Maple  |  Statistica  |  Другие пакеты Поиск по сайту
Internet-класс  |  Примеры  |  Методики  |  Форум  |  Download
https://hub.exponenta.ru/


Решение диф. уравнений
  • Решение ОДУ
  • Системы дифференциальных уравнений
  • Дополнительные функции
  • Краевые задачи

    В начало книги

  •  

    Список встроенных функций

    Системы диффенциальных уравнений
    К предыдущему разделуК следующему разделу

    Методика решения системы ОДУ очень похожа на методику решения ОДУ высокого порядка, которая была описана выше. Фактически можно рассматривать решение дифференциального уравнения высокого порядка как частный случай решения системы ОДУ.

    Системы ОДУ первого порядка

    Для того чтобы решить систему ОДУ первого порядка, необходимо:

    • Определить вектор, содержащий начальные значения для каждой неизвестной функции.
    • Определить функцию, возвращающую значение в виде вектора из n элементов, которые содержат первые производные каждой из неизвестных функций.
    • Выбрать точки, в которых нужно найти приближенное решение.
    • Передать всю эту информацию в функцию rkfixed.

    16-05.gif (7538 bytes)

    Рисунок 5: Система линейных дифференциальных уравнений первого порядка.

    Функция  rkfixed вернёт матрицу, чей первый столбец содержит точки, в которых ищется приближенное решение, а остальные столбцы содержат значения найденных приближенных решений в соответствующих точках.

    На Рисунке 5 приведен пример решения следующей системы ОДУ:

     x'0(t) = m x0(t) - x1(t) - (x0(t)2 + x1(t)2) x0(t)

     x'1(t) = m x1(t) + x0(t) - (x0(t)2 + x1(t)2) x1(t)

    с начальными условиями:

    x0(0) = 0 и x1(0) = 1

    Системы дифференциальных уравнений более высокого порядка

    Методика решения системы дифференциальных уравнений, каждое из которых может содержать производные от неизвестных функций выше первого порядка, та же, что описана выше. Заметим, что любое уравнение вида

    x(n) = f( t, x(n-1), x(n-2),..., x,...)

    посредством замены

    x1(t) = x(t)
    x2(t) = x'(t)
    ...
    xn(t) = x(n-1)(t)

    может быть приведено к совокупности уравнений

    x'1(t) = x2(t)
    x'2(t) = x3(t)
    ...
    x'n(t) = f( t, xn, xn-1,... x1,...)

    Заметьте, что в приведённых выше уравнениях не встречаются производные выше первого порядка. Преобразовав подобным образом каждое из уравнений, входящих в исходную систему, получим систему с большим количеством неизвестных функций, но с производными только первого порядка. Методика решения таких систем описана в предыдущем подразделе. Пример на Рисунке 6 показывает, как поступать при решении системы дифференциальных уравнений второго порядка:

    u''(t) = 2v(t)

    v''(t) = 4v(t) - 2u(t)

    16-06.gif (8597 bytes)

    Рисунок 6: Система линейных дифференциальных уравнений второго порядка.

    Функция rkfixed возвращает матрицу, в которой:

    • Первый столбец содержит точки, в которых должны быть найдены решения и их производные.
    • Остальные столбцы содержат значения решений и их производных, соответствующие точкам из первого столбца. Порядок, в котором появляются решение  и его производные, повторяет порядок их расположения в функции D(x,y) и векторе начальных условий y.

    В начало страницы  К предыдущему разделуК следующему разделу

    Список встроенных функций

    | На первую страницу | Поиск | Купить Matlab

    Исправляем ошибки: Нашли опечатку? Выделите ее мышкой и нажмите Ctrl+Enter


    Copyright © 1993-2024. Компания Softline. Все права защищены.

    Дата последнего обновления информации на сайте: 04.03.17
    Сайт начал работу 01.09.00