Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ



 

Цель: научиться решать дифференциальные уравнения в среде MathCAD.

 

При решении дифференциальных уравнений искомой величиной является функция. Для обыкновенных дифференциальных уравнений неизвестная функция — функция одной переменной. Чтобы решение было единственным, задают дополнительные условия — начальные или краевые, которые определяют тип задачи: задача Коши или кра­евая задача. Рассмотрим как в MathCAD решается задача. Коши.

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

 

y’1 = f1(x, y1, y2, … , yn), y1(0) = y0,1,

y’2 = f2(x, y1, y2, … , yn), y2(0) = y0,2,

……………………….

y’n = fn(x, y1, y2, … , yn), yn(0) = y0,n.

 

 

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

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

 у(n) = f( x,у, у', у''..., y(n-1)), полагая у' =: u 1 (х), у" = u2(х),....,  y(n-1) = yn-1, у(n) = fn( x, y , u 1 …, un-1), будем иметь эквивалентную нор­мальную систему из n дифференциальных уравнений первого поряд­ка относительно функций y, u 1, u2,..., un-1:

y’(x) = u1(x),

u’1(x) = u2(x),

…………..

u’n-2(x) = un-1(x),

u’n-1(x) = f(x, y(x), u1(x), …, un-1(x)).

 

В MathCAD задачу Коши для нормальной системы можно решить с помощью разных встроенных функций, среди которых наиболее про­стыми являются функции, реализующие широко распространенный метод Рунге-Кутта четвертого порядка:

Наиболее часто используются функции, которые ищут решение широко распространенным методом Рунге-Кутта четвертого поряд­ка.

rkfixed (y, xa, xb, Npoints, D) - решение задачи Коши на отрезке с постоянным шагом;

Rkadapt (y, xa, xb, Npoints, D) - решение задачи Коши на отрезке с автоматическим выбором шага.

Параметрами обеих функций являются:

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

xa, xb - граничные точки интервала, на котором ищется решение дифференциальных уравнений. Начальные условия, задаваемые в векторе начальных условий - это значения решения в точке xa.

Npoints - число точек, не считая начальной, в которой ищет­ся приближенное решение. Этот параметр определяет число строк (1 + Npoints) в матрице результатов.

D( x, y) - функция, которая возвращает в виде вектора из п эле­ментов значения первых производных неизвестных функций (правые части дифференциальных уравнений системы).

В результате решения получается матрица, число столбцов кото­рой на, единицу больше порядка дифференциального уравнения или числа уравнений в системе. Первый столбец матрицы содержит зна­чения узлов, т.е. точек, в которых ищется решение. Второй столбец содержит значения искомой функции в узлах, а оставшиеся столб­цы значения производных, начиная с первой и до (n-1)-й включи­тельно. Для дифференциального уравнения первого порядка матрица решения состоит всего из двух столбцов: значений узлов и значений найденного решения в. этих узлах. Вывод таблицы на экран, как обычно, осуществляется, набором символа обычного равенства «i»; при этом если щелкнуть по полю появившейся таблицы - то можно просмотреть ее всю, используя стрелки прокрутки.

В качестве примера рассмотрено решение задачи Коши для уравнения первого порядка:

у'(х) = у(х) - 2х/у( x), на промежутке от 0 до 6 с начальным условием y(0) = 1. Для этого уравнения известно точное решение задачи: . Варьируя число разбиений проме­жутка интегрирования, можно проследить, как сходится приближен­ное решение к точному. Обращение к функции rkfixed и полученные результаты приведены в примере.

Для решения уравнений порядка выше первого, помимо разрешения уравнения относительно старшей производной, необходимо свести за­дачу к задаче для нормальной системы дифференциальных уравне­ний. Например, задачу Коши для уравнения второго порядка у"(х) +у'(х) - 2у(х) = 0 с начальными условиями у(0) = 1- у'(0) = 3 преобразуем в нормальную систему, вводя обозначения у' = и 1(х), y" = и 2 ( x ). Поскольку y"(x) = - у'( x)+ 2 у(х), то получим систему:

у'(х) = u1(х),           у(0) = 1,

у'1 (х) = - u1(х) + 2у,   u1(0) = 3.

В примере показано, как задать исходные векторы началь­ных значений и первых производных (векторы U и D). С помощью функции rkfixed на отрезке от 0 до 6 получено два решения: с задава­емым числом разбиений (N) и учетверенным числом разбиений (4N). Сравнение двух решений приведено на графике.

Задание 1.

Решить на отрезке [ x 0, xend] задачу Коши для уравнения первого порядка с постоянным шагом. Получить и изобразить графики ре­шений, вычисленных с шагами h, и 4h. Сравнить с точным решением.

Порядок выполнение задания

 

1. Задать начальное значение функции как элемент вектора (т.е. в виде переменной с нулевым значением индекса).

2. Создать функцию D( x, y), которая вычисляет значение пере­менной при заданных значениях зависимой переменной и неизвестной функции.

3. Определить начальное и конечное значения отрезка интегриро­вания.

4. Указать число шагов интегрирования.

5. Вычислить численное решение при помощи функции rkfixed:

z := rkfixed ( у , a, b, N, D). Просмотреть результат вычислений — ма­трицу z с двумя столбцами, первый из которых содержит значе­ния независимой переменной, а второй - соответствующие значения функции.

6. Вычислить численное решение при учетверенном числе разби­ений.

7. Создать функцию для вычисления точного решения.

8.  Построить графики приближенных (двух) и точного решения.

9. Изменить число шагов N и проследить за решениями.


Варианты:

Уравнение X0 Xend y(x0) Точное решение
1 0 1.5 1 y = sin x + cos x
2 1 3 1 xy = 1 - ln
3 0 4 1 y = (2x + 1) ln +1
4 1 3 e y = ex(ln +1)
5 x
6 1 2 e
7 1 3 0
8 1 5 1/e y = x2e-x
9 -1 1 e y = e-x
10 1 5 (2 ln 2)-1
11 1 3 0
12 1 2 0
13 1 2 (2e)-1/2 2y2x4ex = 1
14 1.1 4 y2 = x2 - 1
15 0 2 0 y = x(1 + x2)

 

 


Задание 2.

Решить задачу Коши у'1 = f1(x, y1, y2), у' 2 = f2(x, y1, y2), у1(a) = y0,1, y2(a) = y0,2  на отрезке [а, b] с постоянным шагом h =0.1 Изобразить графики решений, вычисленных с шагами h  и 2 h.



Варианты

 

f1(x, y1, y2) f2(x, y1, y2) y0,1 y0,2 a b
1 -1 1 0 4
2 1 0 0 5
3 0.2 0 -1 1
4 0 0 0 4
5 0.5 -0.5 -1 3
6 -0.6 2 2 5
7 0 0 -1 3
8 0.5 1.2 0 2
9 1 1 1 3
10 0.8 3.5 2 4
11 1 -1 2 4
12 0 0 0 2
13 -2 -1 1 4
14 0 1 -1 1
15 -1 1 0 4

 

 

Пример:


Поделиться:



Последнее изменение этой страницы: 2019-06-09; Просмотров: 146; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь