Численное решение задачи Коши
Вычисление приближенных решений обыкновенного дифференциального уравнения 1 порядка. Вектор решения по методам Эйлера и Рунге-Кутты. Расчет погрешности приближенных решений. Построение графиков, демонстрирующих методы решений ОДУ второго порядка.
Рубрика | Математика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 05.12.2013 |
Размер файла | 491,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Контрольная работа
по дисциплине: Вычислительная математика
на тему: Численное решение задачи Коши
Автор работы: Аминева Н.
Пенза, 2012 год
1. ОДУ 1 порядка
1.1 Постановка задачи
Найти приближенное решение задачи Коши для обыкновенного дифференциального уравнения (ОДУ) 1 порядка и оценить погрешность решения задачи.
Порядок решения задачи:
1. Задать исходные данные: функцию f правой части, начальное значение у0;
2. Используя функцию, найти приближенное решение задачи Коши с шагом h = 0.1 по явному методу Эйлера;
3. Используя встроенную функцию «rkfixed» пакета MATHCAD, найти приближенное решение задачи Коши с шагом h = 0.1 по методу Рунге-Кутты 4 порядка точности;
4. Найти решение задачи Коши аналитически;
5. Построить таблицы значений приближенных и точного решений. На одном чертеже построить графики приближенных и точного решений;
6. Оценить погрешность приближенных решений двумя способами:
a) по формуле:
Здесь y(ti) и yi - значения точного и приближенного решений в узлах сетки ti, i = 1,..N;
b) по правилу Рунге.
7. Выяснить, при каком значении шага h = h* решение, полученное по методу Эйлера, будет иметь такую же погрешность, как решение, полученное с помощью метода Рунге-Кутты с шагом h = 0.1.
УКАЗАНИЕ. В п. 7 рекомендуется провести серию вычислений решения по методу Эйлера, дробя шаг h пополам.
1.2 Исходные данные
1.3 Решение поставленной задачи
1) Задача Коши:
y'(t) = t0 = 0 T = 1 y0 = 1
Исходные данные:
Начальное значение: у0 = 1.
Концы отрезка:
Шаг сетки: h = 0.1. Число узлов сетки:
2) Функция, реализующая явный метод Эйлера, возвращает вектор решения:
Далее:
Входные параметры:
f - функция правой части;
y0 - начальное значение;
t0 - начальная точка отрезка;
h - шаг сетки;
N - число узлов сетки.
3) Приближенное решение задачи Коши с шагом h = 0.1 по методу Рунге-Кутты 4 порядка точности с помощью встроенной функции «rkfixed» пакета MATHCAD:
Функция «rkfixed» возвращает матрицу, первый столбец которой содержит узлы сетки, а второй - приближенное решение в этих узлах.
4) Аналитическое решение задачи:
По методу вариации произвольной постоянной заменим постоянную С на функцию C(t) и решим неоднородное уравнение:
Подставляем в исходное уравнение:
Решение в MathCad:
Далее:
5) Решения, полученные различными способами:
Графики приближенных и точного решений:
6) Рассчитаем погрешность полученных приближенных решений:
Погрешность метода Эйлера:
Вычисление погрешности по правилу Рунге:
Вычисление приближенных решений с шагом h/2:
Вычисление погрешностей:
7) Проведём серию вычислений решения по методу Эйлера, дробя шаг h пополам:
Значение погрешностей:
При значении шага:
- решение, полученное по методу Эйлера, будет иметь примерно такую же погрешность.
Такая погрешность, как и решение, полученное с помощью метода Рунге-Кутты с шагом h = 0.1.
Погрешность решения по методу Эйлера с шагом:
Погрешность решения по методу Рунге-Кутты с шагом:
Явный метод Эйлера - это численный метод 1-го порядка точности. Метод Рунге-Кутты - это метод 4-го порядка точности. Это означает, что при одном и том же значении шага, метод Рунге-Кутты даёт более точное значение.
Поэтому погрешности методов сильно (на несколько порядков) отличаются.
В рассмотренном выше примере с помощью метода Рунге-Кутты было получено решение, которое совпадает с решением, полученным аналитическим путём.
2. ОДУ 2 порядка
2.1 Постановка задачи
Задача Коши для ОДУ 2 порядка:
Описывает движение груза массы m, подвешенного к концу пружины. Здесь:
- x(t) - смещение груза от положения равновесия;
- H - константа, характеризующая силу сопротивления среды;
- k -коэффициент упругости пружины;
- f(t) - внешняя сила.
Начальные условия:
х0 - смещение груза в начальный момент времени t = 0;
v0 - скорость груза в начальный момент времени.
Промоделировать движение груза на временном отрезке [0,T] при заданных в индивидуальном варианте трех наборах (I, II, III) значений параметров задачи. Для каждого набора по найденной таблице (или графику) решения задачи определить максимальное и минимальное значения функции x(t) и моменты времени, в которые эти значения достигаются. Предложить свой вариант задания параметров, при которых характер колебаний груза существенно отличается от рассмотренного ранее.
Порядок решения задачи:
1. Заменить исходную задачу эквивалентной задачей Коши для системы ОДУ 1 порядка:
2. Для каждого варианта выбора параметров решить задачу (2) с помощью метода Рунге-Кутты 4 порядка точности с шагом h = 0.1;
3. Для каждого варианта выбора параметров построить график найденного решения. Сравнить характер движения груза и дать интерпретацию полученного движения;
4. Для каждого варианта выбора параметров определить требуемые в задаче характеристики.
Указание: В п. 2 использовать встроенную функцию «rkfixed» пакета MATHCAD.
2.2 Исходные данные
2.3 Решение поставленной задачи
1 набор.
Исходные данные:
Шаг сетки: h = 0.1. Число узлов сетки:
Формирование вектора правой части системы ОДУ и вектора начальных условий для применения встроенной функции «rkfixed»:
График решения:
Найдем максимальное и минимальное значения функции x(t):
Минимальное значение достигается в момент времени 18.4:
Максимальное значение достигается в момент времени 15.3.
Из графика видно, что при данном наборе значений груз совершает незатухающие колебания.
2 набор.
Исходные данные:
Шаг сетки: h = 0.1.
Число узлов сетки:
Далее:
Минимальное значение функции достигается в момент времени 0.8.
Максимальное значение функции достигается в момент времени 3.9.
Формирование вектора правой части системы ОДУ и вектора начальных условий для применения встроенной функции «rkfixed»:
График решения:
При данном наборе значений происходит затухание колебаний - груз останавливается.
3 набор.
Исходные данные:
Шаг сетки: h = 0.1. Число узлов сетки:
Формирование вектора правой части системы ОДУ и вектора начальных условий для применения встроенной функции «rkfixed»:
График решения:
Минимальное значение функции достигается в момент времени 0.8:
Максимальное значение функции достигается в момент времени 3.9.
При данном наборе значений, как и в первом случае, груз совершает незатухающие колебания.
Свой вариант задания параметров:
Исходные данные:
Шаг сетки: h = 0.1. Xисло узлов сетки:
Формирование вектора правой части системы ОДУ и вектора начальных условий для применения встроенной функции «rkfixed»:
График решения:
Минимальное значение функции x(t) достигается в момент времени 0.5.
Максимальное значение функции x(t) достигается в момент времени 0.1. Набор параметров подобран таким образом, что затухающие колебания происходят подобно математическому маятнику - сопротивление среды останавливает со временем движение груза, происходящее по гармоническому закону.
Дифференциальные уравнения второго порядка - часто используемый способ описания движения. Численное решение этих дифференциальных уравнений порой единственный способ нахождения закона движения.
3. ОДУ 1 порядка с постоянными коэффициентами на отрезке
3.1 Постановка задачи
Даны две задачи Коши для систем ОДУ 1 порядка с постоянными коэффициентами на отрезке:
Где:
A и B - заданные матрицы;
Y0, Z0 - заданные векторы. Выяснить, какая из задач является жесткой.
Порядок решения задачи:
1. Составить программу-функцию нахождения решения системы ОДУ 1 порядка с постоянными коэффициентами по явному методу Эйлера. Используя составленную программу, решить обе задачи с шагом h = 0.01. Определить, для какой из задач явный метод неустойчив при данном шаге h;
2. Используя встроенную функцию eigenvals(M) (M - матрица) пакета MATHCAD для нахождения собственных чисел матриц A и B, найти коэффициенты жесткости обеих систем;
3. Для жесткой задачи теоретически оценить шаг h*, при котором явный метод Эйлера будет устойчив;
4. Составить программу-функцию нахождения решения системы ОДУ 1 порядка с постоянными коэффициентами по неявному методу Эйлера. Используя составленную программу, найти решение жесткой задачи с шагом h = 0.01. Построить графики компонент полученного решения;
5. Для жесткой задачи экспериментально подобрать шаг h, при котором графики компонент решения, полученного по явному методу Эйлера, визуально совпадают с графиками компонент решения, полученного по неявному методу с шагом h = 0.01. Сравнить найденное значение шага с шагом h*. Объяснить различие поведения явного и неявного методов Эйлера при решении жесткой задачи.
Указание: В п. 4 для решения системы линейных уравнений удобно использовать встроенную функцию lsolve пакета MATHCAD.
3.2 Исходные данные
3.3 Решение поставленной задачи
Описанная программа-функция возвращает таблицу решений, первый столбец которой - это значения аргумента в узлах равномерной сетки, а остальные столбцы - соответствующие значения компонент приближенного решения.
Опишем функцию нахождения решения системы ОДУ 1 порядка c постоянными коэффициентами по явному методу Эйлера.
Шаг: h = 0.01.
Зададим векторы правых частей систем уравнений:
Далее:
Далее:
Графики решений для первой системы:
Графики решений для второй системы:
Определим, для какой из задач явный метод неустойчив при шаге h = 0.01. Найдем собственные числа матриц:
Максимальные и минимальные собственные числа матриц А и В:
Условие устойчивости выполняется для матрицы А (usА > h), но не выполняется для матрицы В (usВ < h). Следовательно, явный метод Эйлера неустойчив для решения системы, описанной матрицей В.
Определим, какая из систем является жесткой:
Число жесткости системы gA мало (т. е., собственные числа матрицы А незначительно отличаются друг от друга), поэтому система не жесткая.
Число жесткости системы gB велико (т. е., собственные числа матрицы В значительно отличаются друг от друга), поэтому система жесткая.
Определим, при каком шаге явный метод Эйлера будет устойчив при решении жесткой системы:
Далее:
Графики решений для первой и второй компоненты системы B:
Как видно из графиков решений, явный метод Эйлера устойчив с шагом hz = 0.0028. Условие устойчивости usB>hz (8.496*10-3 >0.0028) выполняется.
Найдем решение жесткой задачи по неявному методу Эйлера.
Опишем функцию нахождения решения системы ОДУ 1 порядка c постоянными коэффициентами по неявному методу Эйлера.
В качестве параметров она принимает матрицу М системы, вектор начальных условий Vo начало to, конец отрезка интегрирования T и число узлов равномерной сетки N:
Для оценки результатов решения будем использовать встроенную функцию для решения жёстких систем stiffr. Для её применения необходима матрица Якоби:
Графики решений для первой и второй компоненты системы:
Явный метод Эйлера 1-го порядка точности дает приближённое решение систем ОДУ с постоянными коэффициентами. При решении жестких систем ОДУ, метод может быть неустойчив при достаточно большом шаге вычислений.
Найдем такое значение шага H для решения жесткой системы по явному методу Эйлера, что результаты решения будут визуально совпадать с решением, полученным неявным методом Эйлера с шагом h = 0.01:
При уменьшении шага вычислений метод будет устойчив, но это требует дополнительных (на некотором промежутке лишних) вычислений. Устойчивое решение, получаемое при решении жёсткой системы уравнений неявным методом, требует в несколько десятков раз меньше итераций, чем решение, полученное по явному методу Эйлера.
Заключение
В результате выполнения данной курсовой работы было реализовано решение задачи Коши с использованием пакета MATHCAD.
При решении различных уравнений были изучены встроенные функции пакета MATHCAD, а так же запрограммированы пользовательские функции, позволяющие реализовать иные методы решения обыкновенных дифференциальных уравнений первого порядка, а также обыкновенных дифференциальных уравнений второго порядка.
В ходе работы были определены погрешности решений используемых методов, найдены способы увеличения точности получаемых результатов. Так же были построены графики, демонстрирующие последовательные приближения к искомым решениям. Таким образом, задание выполнено в полном объеме. вычисление уравнение вектор
Список литературы
1. Амосов А.А., Дубинский Ю.А., Копченова Н.В. Вычислительные методы для инженеров. М.: Высшая школа, 1994.
2. Ю.Ю. Тарасевич. Численные методы на Mathcad'е. Астрахань, 2000.
Размещено на Allbest.ru
Подобные документы
Решение задачи Коши для дифференциального уравнения. Погрешность приближенных решений. Функция, реализующая явный метод Эйлера. Вычисление погрешности по правилу Рунге. Решение дифференциальных уравнений второго порядка. Условие устойчивости для матрицы.
контрольная работа [177,1 K], добавлен 13.06.2012Теоретическое обоснование расчетных формул. Задача Коши для дифференциального уравнения первого порядка. Метод Рунге-Кутта. Ломаная Эйлера. Построение схем различного порядка точности. Выбор шага. Апостериорная оценка погрешности. Правило Рунге.
курсовая работа [111,1 K], добавлен 13.11.2011Численное решение уравнения методом Эйлера и Рунге-Кутта в Excel. Программа на языке Turbo Pascal. Блок-схема алгоритма. Метод Рунге-Кутта для дифференциального уравнения второго порядка. Модель типа "хищник-жертва" с учетом внутривидового взаимодействия.
курсовая работа [391,5 K], добавлен 01.03.2012Понятие о голоморфном решении задачи Коши. Теорема Коши о существовании и единственности голоморфного решения задачи Коши. Решение задачи Коши для линейного уравнения второго порядка при помощи степенных рядов. Интегрирование дифференциальных уравнений.
курсовая работа [810,5 K], добавлен 24.11.2013Основные методы Рунге-Кутта: построение класса расчетных формул. Расчетная формула метода Эйлера. Получение различных методов Рунге-Кутта с погрешностью второго порядка малости при произвольном задавании параметров. Особенности повышения порядка точности.
реферат [78,4 K], добавлен 18.04.2015Решение дифференциальных уравнений. Численный метод для заданной последовательности аргументов. Метод Эйлера относиться к численным методам, дающим решение в виде таблицы приближенных значений искомой функции. Применение шаговых методов решения Коши.
дипломная работа [1,2 M], добавлен 16.12.2008Изучение методов Рунге-Кутты четвертого порядка с автоматическим выбором длины шага интегрирования для решения дифференциальных уравнений. Оценка погрешности и сходимость методов, оптимальный выбор шага. Листинг программы для ЭВМ, результаты, иллюстрации.
курсовая работа [2,9 M], добавлен 14.09.2010Вычисление и исследование предела и производной функции, построение графиков. Вычисление неопределенных интегралов, площади фигуры, ограниченной графиками функций. Нахождение решения дифференциального уравнения и построение графиков частных решений.
контрольная работа [153,6 K], добавлен 19.01.2010Составление диагональной системы способом прогонки, нахождение решения задачи Коши для дифференциального уравнения на сетке методом Эйлера и классическим методом Рунге-Кутта. Построение кубического сплайна интерполирующей функции равномерного разбиения.
практическая работа [46,1 K], добавлен 06.06.2011Понятие, закономерности формирования и решения дифференциальных уравнений. Теорема о существовании и единственности решения задачи Коши. Существующие подходы и методы решения данной задачи, оценка погрешности полученных значений. Листинг программы.
курсовая работа [120,8 K], добавлен 27.01.2014