Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Решение дифференциальных уравнений второго порядка




Метод Эйлера для дифференциальных уравнений первого порядка

Решим задачу Коши для ДУ первого порядка методом Эйлера.

Пусть правая часть уравнения равна

Зададим границы изменения x:

Зададим число точек и величину шага:

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

Вычислим x и y по формулам Эйлера

 

Представим результат графически и сравним его с аналитическим решением

 

Точное аналитическое решение и решение, полученное численно, отличаются в точке x=1 на. То есть относительная ошибка составляет

Для решения ДУ Mathcad имеет ряд встроенных функций, в частности, функцию rkfixed, реализующую метод Рунге–Кутты четвертого порядка с фиксированным шагом. Фактически эта функция предназначена для решения систем дифференциальных уравнений первого порядка.

 

Функция rkfixed(y, x1, x2, npoints, D) возвращает матрицу. Первый столбец этой матрицы содержит точки, в которых получено решение, а остальные столбцы – решения и его первые производные.

Аргументы функции:

 

· y – вектор начальных значений (n элементов).

· x1 и x2 – границы интервала, на котором ищется решение дифференциального уравнения.

· npoints – число точек внутри интервала (x1,x2), в которых ищется решение. Функция rkfixed возвращает матрицу, состоящую из 1+npoints строк.

· D – вектор, состоящий из n элементов, который содержит первые производные искомой функции.

Решение дифференциальных уравнений методом Рунге–Кутты

Решим задачу Коши для дифференциального уравнения первого порядка методом Рунге–Кутты.

Зададим границы изменения x:

Зададим число точек внутри интервала Зададим начальные условия

Обратите внимание на обозначения! Поскольку мы решаем только одно дифференциальное уравнение первого порядка, а не систему дифференциальных уравнений, матрица y содержит только один элемент, однако запись y=1 была бы неправильной. Необходимо явно указывать на то, что величина y – матрица, то есть писать индекс.

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

Решаем дифференциальное уравнение

 

 

Точное аналитическое решение и решение, полученное численно отличаются в точке на

Относительная ошибка составляет

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

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

 

Пусть декремент затухания

Пусть циклическая частота

Зададим начальные условия

y0 соответствует начальной координате, а y1 – начальной скорости. Зададим теперь матрицу D. С учетом того, что искомая величина соответствует нулевому элементу массива y, ее первая производная – первому, а вторая – второму, имеем

 

Представим результаты расчета на графике и сравним их с аналитическим решением

 

 

Mathcad предлагает новый способ для решения обыкновенных дифференциальных уравнений, разрешенных относительно старшей производной. Для этих целей служит уже известный нам блок given совместно с функцией odesolve.

Функция odesolve решает задачу Коши с начальными условиями

y(x0)=y0, y’(x0)=y0,1, …, y(n-1)(x0)=y0,n-1

или простейшую краевую задачу, в которой заданы n граничных условий, определяющих значения искомой функции y(x) и её производных в концах отрезка [a,b], т.е. заданы n граничных условий вида

y(k)(a)=ya,k, y(m)(b)=yb,m, 0≤k≤n-1, 0≤m≤n-1.

Дифференциальное уравнение совместно с начальными или граничными условиями записывается в блоке given. Производные можно обозначать как штрихами (Ctrl+F7), так и с помощью знака производной.

Функция odesolve имеет три аргумента: odesolve(x,b,step). Первый аргумент х – независимая переменная интегрирования, второй b – правая граница интервала интегрирования, на котором ищется решение, последний аргумент step – шаг, с которым ищется решение. Последний аргумент может быть опущен odesolve(x,b).




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 549; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.