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


Mathcad-справочник по высшей математике
  • Математический анализ
  • Линейная алгебра
  • Обыкновенные дифференциальные уравнения

  • Электронные книги
    ~ книги по Matlab
    ~ книги по Mathcad
    ~ книги по Mathematica
    ~ другая IT литература
  •  
    Обыкновенные дифференциальные уравнения в среде пакета Mathcad

    Для решения дифференциальных уравнений Mathcad предоставляет пользователю библиотеку встроенных функций Differential Equation Solving, предназначенных для численного решения дифференциальных уравнений.

    • Встроенная функция odesolve (Mathcad 2000), предназначенная для решения дифференциальных уравнений, линейных относительно старшей производной (наиболее проста в использовании).
    подробная информация о функции odesolve,
    примеры
    • Встроенные функции, предназначенные для решения задачи Коши и граничных задач для систем обыкновенных дифференциальных уравнений в нормальной форме.
    подробная информация о функциях,
    примеры

    ODESOLVE

    Встроенная функция odesolve предназначена для решения дифференциальных уравнений, линейных относительно старшей производной. В отличие от других функций библиотеки Differential Equation Solving, odesolve решает дифференциальные уравнения, записанные в общепринятом в математической литературе виде.

    • Функция odesolve решает для уравнений вида
      a(x) y(n) + F(x, y, y' , ..., y(n-1) )=f(x)
      задачу Коши
      y(x0 )=y0 , y'(x0 )=y0,1 , y''(x0 )=y0,2 , ..., y(n-1)(x0 )=y0,n-1
      или простейшую граничную задачу
      y(k) (a)=ya,k , y(m) (b)=yb,k , 0<= k<= n-1, 0<= m<= n-1.
    • Функция odesolve решает поставленную задачу методом Рунге-Кутты с фиксированным шагом. Для решения задачи методом Рунге-Кутты с автоматическим выбором шага нужно щелкнуть в рабочем документе по имени функции правой кнопкой мыши и пометить во всплывающем меню пункт Adaptive
    • Обращение к функции имеет вид
      Y:=odesolve(x,b,step) или Y:=odesolve(x,b),
      где Y - имя функции, содержащей значения найденного решения, x — переменная интегрирования, b — конец промежутка интегрирования, step — шаг, который используется при интегрировании уравнения методом Рунге-Кутты.
    • Перед обращением к функции odesolve необходимо записать ключевое слово Given, затем ввести уравнение и начальные либо граничные условия. При вводе уравнения и условий задачи используется знак символьного равенства (<Ctrl>+<=>), а для записи производных можно использовать как оператор дифференцирования, так и знак производной, например, вторую производную можно вводить в виде m15.gif (994 bytes)  или в виде y''(x). При этом необходимо обязательно записывать аргумент искомой функции.
    • Для того чтобы вывести в рабочий документ значения решения в любой точке промежутка интегрирования, достаточно ввести имя функции Y, указать в скобках значение аргумента и знак равенства.
    • Значения решения в любой точке промежутка интегрирования можно использовать в дальнейших вычислениях, достаточно ввести в нужном месте имя функции Y, указав в скобках значение аргумента.

    Полную информацию о правилах использования функции odesolve можно получить во встроенном справочнике Mathcad в разделе Overview fnd Tutorials.

    Пример 1. Решение задачи Коши с помощью функции odesolve.

    Пример 2. Решение граничной задачи с помощью функции odesolve.

    В начало страницы

    Функции для решения систем, записанных в нормальной форме

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

    Рассмотрим задачу Коши:

    m3.gif (2272 bytes)        m4.gif (1667 bytes)

    Численное решение этой задачи состоит в построении таблицы приближенных значений
    yi,1 , yi,2 , ..., yi,N
    решения y1 (x), y2 (x), ..., yN (x)
    на отрезке [x0 , xN ] в точках
    x1 , x2 , ..., xN, которые называются узлами сетки.
    Обозначив

    , ,

    ,

    ,

    где — искомое решение, — вектор начальных условий, а — вектор правых частей, запишем систему дифференциальных уравнений в векторной форме:

    , .

    В Mathcad решить задачу Коши для такой системы можно с помощью следующих функций:

    • rkfixed(y, x1, x2, npoints, D) —решение задачи на отрезке методом Рунге—Кутты с постоянным шагом;
    • Rkadapt(y, x1, x2, npoints, D) —решение задачи на отрезке методом Рунге—Кутты с автоматическим выбором шага;
    • rkadapt(y, x1, x2, acc, npoints, D, kmax, save) —решения задачи в заданной точке методом Рунге-Кутты с автоматическим выбором шага;
    • Bulstoer(y, x1, x2, npoints, D) —решение задачи на отрезке методом Булирша-Штера;
    • bulstoer(y, x1, x2, acc, npoints, D, kmax, save) —решение задачи в заданной точке методом Булирша—Штера;
    • Stiffr(y, x1, x2, acc, D, J) — решение задачи для жестких систем на отрезке с использованием алгоритма Розенброка;
    • stiffr(y, x1, x2, acc, D, J, kmax, save) —решения задач для жестких систем на отрезке с использованием алгоритма Розенброка;
    • Stiffb(y, x1, x2, acc, D, J) —решение задачи для жестких систем на отрезке с использованием алгоритма Булирша—Штера;
    • stiffb(y, x1, x2, acc, D, J, kmax, save) —решение задач для жестких систем в заданной точке с использованием алгоритма Булирша—Штера.

    Смысл параметров для всех функций одинаков и определяется математической постановкой задачи:
    y — вектор начальных условий , ;
    x1, x2 — начальная и конечная точки отрезка интегрирования системы; для функций, вычисляющих решение в заданной точке, x1 — начальная точка, x2 — заданная точка;
    npoints — число узлов на отрезке [x1, x]; при решении задачи на отрезке результат содержит npoints+1 строку;
    D — имя вектор-функции D(x,y) правых частей , ; ( имя D – от Derivative — производная, имя вектора, содержащего выражения для производных (derivatives) искомого решения);
    J — имя матрицы-функции J(x,y) размерности n x (n+1), в первом столбце которой хранятся выражения частных производных по x правых частей системы, а в остальных n столбцах содержится матрица Якоби правых частей:
    .
    acc — параметр, контролирующий погрешность решения при автоматическом выборе шага интегрирования (если погрешность решения больше acc, то шаг сетки уменьшается; шаг уменьшается до тех пор, пока его значение не станет меньше save );
    kmax — максимальное число узлов сетки, в которых может быть вычислено решение задачи на отрезке, максимальное число строк в результате;
    save — наименьшее допустимое значение шага неравномерной сетки.

    Результат работы функции — матрица, содержащая n+1; ее первый столбец содержит координаты узлов сетки, второй столбец — вычисленные приближенные значения решения y1 (x) в узлах сетки, (k+1) -й — значения решенияyk (x) в узлах сетки.

    При решении задачи Коши для дифференциального уравнения первого порядка результат вычислений всех приведенных выше функций — матрица, в первом столбце которой содержатся координаты узлов сетки x0 , x1 , ..., xN, а во втором — значения приближенного решения в соответствующих узлах.

    Пример 3. Решение задачи Коши для ОДУ 1 порядка с помощью функции rkfixed.

    Пример 4. Решение задачи Коши для ОДУ 2 порядка с помощью функции rkfixed.

    Пример 5. Решение задачи Коши для системы ОДУ 1 порядка с помощью функции rkfixed.

    Пример 6. Решение жесткой задачи Коши для системы ОДУ 1 порядка с помощью функции Stiffr.

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

    Пример 7. Построение фазовой и интегральной кривых решения задачи Коши для системы ОДУ 1 порядка.

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

    Запишем автономную систему второго порядка

    .

    Эта система полностью определяется заданием векторного поля , поскольку векторное поле задает в каждой точке направление касательной к фазовой кривой системы, проходящей через эту точку.

    Пример 8. Построение векторного поля системы ОДУ.

    В начало страницы

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

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


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

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