Mathcad odesolve система дифференциальных уравнений

Видео:Mathcad-10. Пример: дифференциальные уравненияСкачать

Mathcad-10. Пример: дифференциальные уравнения

Mathcad odesolve система дифференциальных уравнений

Глава 5. Решение дифференциальных уравнений

5 .1 Вычислительный блок Given– Odesolve

Применение функции Odesolve требует записи вычислительного блока, состоящего из трех частей:

1) ключевого слова Given (Дано);

2) дифференциального уравнения и начальных или граничных условий к нему;

3) функции о desolve ( x , xk , n ) (решение ОДУ), где x – имя переменной, относительно которой решается уравнение; xk – конец интервала интегрирования (начало интервала интегрирования указано ранее, в начальных условиях); n – необязательный внутренний параметр, определяющий число шагов интегрирования, на которых решается дифференциальное уравнение.

Примеры использования функции Odesolve приведены на рис. 5.2–5.5.

Mathcad odesolve система дифференциальных уравнений

Given Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

граничные условия можно задавать лишь в двух точках:

в начале и в конце интервала интегрирования

Mathcad odesolve система дифференциальных уравнений

Рис. 5.2 Решение уравнения с граничными условиями

Если вид дифференциального уравнения изменяется с изменением аргумента, например, уравнение содержит ступенчатую разрывную функцию, то такое уравнение можно записать с использованием условия, то есть записать несколько уравнений в виде одного уравнения (рис. 5 . 3 ).

MathCAD позволяет записать условие несколькими способами:

– с использованием булевых операторов:

Mathcad odesolve система дифференциальных уравнений;

– с использованием функции if :

Mathcad odesolve система дифференциальных уравнений.

В данном случае невозможно записать условие с использование условного оператора программирования if , так как вертикальной черте (обязательному признаку программирования) должен предшествовать оператор присваивания :=, тогда как в нашем случае использован знак + или знак логического равенства =.

поменяйте местами закрашенные выражения

Mathcad odesolve система дифференциальных уравнений

Given Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Рис. 5.3 Объединение двух дифференциальных уравнений в одно

В MathCAD все встроенные функции для решения дифференциальных уравнений требуют записи производной высшего порядка в явном виде. Однако, как показано на рис. 5 . 2 , присутствие коэффициента (постоянного или переменного) перед производной высшего порядка – не помеха при решении ОДУ. Если уравнение есть сложная функция от высшей производной, предварительно надо решить это уравнение алгебраически относительно высшей производной. На рис. 5 .4. исходное уравнение решено символьно относительно у'(х). Для выполнения этой операции надо выделить переменную, затем в главном меню выбрать команду Symbolics → Variable → Solve (Символьные вычисления→Переменная→Решить). Найденный результат подставлен в дифференциальное уравнение, которое решено с помощью функции Odesolve.

В MathCAD 2001 i возможности функции Odesolve были расширены. Теперь она может решать и системы дифференциальных уравнений. При этом несколько изменяется обращение к ней.

Дано уравнение Mathcad odesolve система дифференциальных уравнений

решим его относительно у'(х)

Mathcad odesolve система дифференциальных уравненийhas solution(s) Mathcad odesolve система дифференциальных уравнений

уравнение в стандартном виде подставим в блок Given — Odesolve

два корня уравнения дают решение ОДУ

Given Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Рис. 5.4 Приведение дифференциального уравнения к стандртному виду и его решение

Обращение к функции для решения одного уравнения выглядит так:

о desolve ( x , xk , n ),

для решения системы дифференциальных уравнений–

о desolve ((вектор имен неизвестных), x , xk , n ).

Н а рис. 5 .5 приведено решение системы из трех дифференциальных уравнений первого порядка. соответственно, вектор имен неизвестных содержит имена трех неизвестных, х, у и z . Граничные условия заданы в точке t = –1. конечная точка интервала интегрирования t =3. Следовательно, интервал интегрирования от –1 до 3. Конечное значение всегда должно быть больше начального.

Если график строится для значений, выходящих за пределы интервала интегрирования, MathCAD экстраполирует значения функции за пределы интервала интегрирования, получая чаще всего неправдоподобные результаты.

Mathcad odesolve система дифференциальных уравненийЕсли в MathCAD 11 функция Odesolve решает системы уравнений только с начальными параметрами, то в MathCAD 12, 13, 14 – и с начальными, и с граничными условиями.

Mathcad odesolve система дифференциальных уравненийMathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравненийMathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравненийMathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравненийпоменяйте вид уравнений и граничные условия

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Рис. 5.5 Решение системы ОДУ функцией Odesolve

В MathCAD 2001 i у функции Odesolve появилась возможность принимать в качестве ограничений алгебраические уравнения (рис. 5.6 и 5.7), но только в задачах с начальными условиями.

Рассмотрим механизм работы блока Odesolve: блок Odesolve преобразует заданные дифференциальные уравнения к стандартному виду, используемому функциями rkfixed и Rkadapt . С помощью указанных функций он решает систему ОДУ (или одно ОДУ) с начальными условиями. В результате расчета получают массив значений функции и ее производные.

Далее используются функции интерполяции lspline и interp , преобразующие массив решений системы ОДУ в функцию, которую затем можно дифференцировать или интегрировать. Необязательный параметр steps в обращении к функции Odesolve как раз и задает число точек интерполяции. Чем больше steps , тем выше точность интерполяции, но тем больше время решения задачи.

При решении системы ОДУ есть возможность выбрать метод решения. Для этого надо установить курсор на слове Odesolve и нажать правую кнопку мыши. В открывшемся контекстном меню выбрать Fixed (Решение с фиксированным шагом функцией rkfixed ), Adaptive (Решение с переменным шагом функцией Rkadapt ) или Stiff (Решение жесткой системы ОДУ функцией Radau ) , как показано на рис. 5.7 .

Mathcad odesolve система дифференциальных уравненийдифференциальные

Mathcad odesolve система дифференциальных уравненийуравнения

Mathcad odesolve система дифференциальных уравненийалгебраическое уравнение

требуется 6 начальных условий:

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Рис. 5. 6 Решение системы ОДУ с алгебраическими ограничениями функцией Odesolve

Given Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений Mathcad odesolve система дифференциальных уравнений

Mathcad odesolve система дифференциальных уравнений

Рис. 5.7 В ыбор метода решения дифференциальных уравнений

Видео:Работа с MathCad Prime. Решение дифференциальных уравнений.Скачать

Работа с MathCad Prime. Решение дифференциальных уравнений.

Решение дифференциальных уравнений в MathCad 15

Mathcad odesolve система дифференциальных уравнений

В статье рассмотрена работа функции odesolve для графического решения дифференциального уравнения в программе mathcad версии 15 и старше

Видео:Пример решения уравнения в MathCAD 14 (33/34)Скачать

Пример решения уравнения в MathCAD 14 (33/34)

Функция odesolve

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

В свободном поле mathcad введите оператор Given. Этот оператор запускает процесс ввода исходных данных для корректной работы функции odesolve. После этого найдите панель под названием Calculus. В этой панели нам понадобятся кнопки Derivative и Nth Derivative. Эти кнопки вводят заготовки для дифференциального уравнения. С помощью клавиатуры введите уравнение, как показано на рисунке 1. Знак равенства необходимо использовать из панели Boolean

Mathcad odesolve система дифференциальных уравнений

Рис. 1. Ввод исходных данных для решения дифференциального уравнения

Далее введите начальные приближения. Количество начальных приближений зависит от порядка дифференциального уравнения. В нашем случае их будет 2. Введите приближения, как показано на рисунке 2. Обратите внимание, что для ввода значания первой производной вам нужно использовать символ «верхний апостроф«. Если вы его не можете ввести с клавиатуры вручную воспользуйтесь приложением windows Capter Map или используйте комбинацию клавиш Alt + 96 или Alt + 39

Mathcad odesolve система дифференциальных уравнений

Рис. 2. Ввод первого приближения для решения дифференциального уравнения

Теперь, после начального приближения введите любую переменную (например y) и присвойте ей функцию Odesolve, как показано на рисунке 3. В качестве параметров функции Odesolve используется переменная t и интервал интегрирования. В нашем случае интервал равен 15

Mathcad odesolve система дифференциальных уравнений

Рис. 3. Ввод функции odesolve для решения дифференциального уравнения

Можно отобразить функцию y на графике, где в качестве аргумента будет переменная t. Этот график и будет являться решением дифференциального уравнения. Обратите внимание, что график строится в пределах интервала интегрирования. Особенности оформления и отображения графиков в mathcad 15 смотрите в соответствующем разделе

Mathcad odesolve система дифференциальных уравнений

Рис. 4. Вывод результата решения дифференциального уравнения на график

После корректного решения дифференциального уравнения функцию y(t) можно использовать далее в расчетах

Mathcad odesolve система дифференциальных уравнений

Рис. 5. Результат решения дифференциального уравнения в mathcad 15 и старше

Mathcad odesolve система дифференциальных уравнений

Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis. Praesent rutrum sem diam, vitae egestas enim auctor sit amet. Pellentesque leo mauris, consectetur id ipsum sit amet, fergiat. Pellentesque in mi eu massa lacinia malesuada et a elit. Donec urna ex, lacinia in purus ac, pretium pulvinar mauris. Curabitur sapien risus, commodo eget turpis at, elementum convallis elit. Pellentesque enim turpis, hendrerit tristique.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis dapibus rutrum facilisis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam tristique libero eu nibh porttitor fermentum. Nullam venenatis erat id vehicula viverra. Nunc ultrices eros ut ultricies condimentum. Mauris risus lacus, blandit sit amet venenatis non, bibendum vitae dolor. Nunc lorem mauris, fringilla in aliquam at, euismod in lectus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In non lorem sit amet elit placerat maximus. Pellentesque aliquam maximus risus, vel venenatis mauris vehicula hendrerit.

Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis. Praesent rutrum sem diam, vitae egestas enim auctor sit amet. Pellentesque leo mauris, consectetur id ipsum sit amet, fersapien risus, commodo eget turpis at, elementum convallis elit. Pellentesque enim turpis, hendrerit tristique lorem ipsum dolor.

Видео:1 Одно уравнениеСкачать

1 Одно уравнение

Mathcad odesolve система дифференциальных уравнений

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

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

Видео:Mathcad Prime. Урок 5 - Способы решения уравненийСкачать

Mathcad Prime. Урок 5 - Способы решения уравнений

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 + ), а для записи производных можно использовать как оператор дифференцирования, так и знак производной, например, вторую производную можно вводить в виде Mathcad odesolve система дифференциальных уравненийили в виде y»(x). При этом необходимо обязательно записывать аргумент искомой функции.
  • Для того чтобы вывести в рабочий документ значения решения в любой точке промежутка интегрирования, достаточно ввести имя функции Y, указать в скобках значение аргумента и знак равенства.
  • Значения решения в любой точке промежутка интегрирования можно использовать в дальнейших вычислениях, достаточно ввести в нужном месте имя функции Y, указав в скобках значение аргумента.

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

Mathcad odesolve система дифференциальных уравнений

Видео:Решение дифференциальных уравнений в вычислительной среде Mathcad с помощью функционала Rkadapt .Скачать

Решение дифференциальных уравнений в вычислительной среде Mathcad с помощью функционала Rkadapt .

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

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

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

Mathcad odesolve система дифференциальных уравненийMathcad odesolve система дифференциальных уравнений

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

Mathcad odesolve система дифференциальных уравнений, Mathcad odesolve система дифференциальных уравненийMathcad odesolve система дифференциальных уравнений,

Mathcad odesolve система дифференциальных уравнений,

Mathcad odesolve система дифференциальных уравнений,

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

Mathcad odesolve система дифференциальных уравнений, Mathcad odesolve система дифференциальных уравнений.

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

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

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

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

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

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

Mathcad odesolve система дифференциальных уравнений.

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

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

🌟 Видео

Пример решения системы уравнений в MathCAD 14 (34/34)Скачать

Пример решения системы уравнений в MathCAD 14 (34/34)

Mathcad Линейные дифференциальные уравнения первого порядкаСкачать

Mathcad  Линейные дифференциальные уравнения первого порядка

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

Расчеты в вычислительной среде Mathcad.Решение системы дифференциальных уравнений .

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

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

6 Обыкновенные дифференциальные уравнения MathcadСкачать

6 Обыкновенные дифференциальные уравнения Mathcad

Решение дифференциальных уравнений. Решение задачи Коши. Урок 45Скачать

Решение дифференциальных уравнений. Решение задачи Коши. Урок 45

8 Дифференциальные уравнения в частных производных MathcadСкачать

8 Дифференциальные уравнения в частных производных Mathcad

Решение систем Д/У: 1. Знакомство с функциями odeXYСкачать

Решение систем Д/У: 1. Знакомство с функциями odeXY

Решение задачи Коши в MathCADСкачать

Решение задачи Коши в MathCAD

Mathcad-09. Пример: уравненияСкачать

Mathcad-09. Пример: уравнения

Решение уравнения Бернулли в системе MathcadСкачать

Решение уравнения Бернулли в системе Mathcad
Поделиться или сохранить к себе: