остроим таблицу:|
i | 1 | 2 | 3 | | xi | 0 | 1 | 2 | | yi | 0.42279 | -0.4955 | -1.93404 | | |
Для построения сплайна используем формулы: h= Таким образом, нам необходимо, чтобы вторая производная была непрерывна, т.е. получить сплайн с дефектом 1. Для построения глобального сплайна необходимо, начиная со второго узла поставить условие непрерывности 2-ой производной, т.е.2-ая производная при подходе к точке 2 и дальше слева (x1-0) должна равняться 2-ой производной при подходе справа (x1+0): Приравнивая эти значения, получаем: Для нашей функции получаем: 0.42435 - 2.10346 После того, как мы нашли m1, можем построить графики (рисунок 3.2). Рисунок 3.2 - Глобальная интерполяция сплайнами Также можно сравнить с графиком самой функции (рисунок 3.3). Рисунок 3.3 - Сравнение графика функции и глобальной интерполяции 3.5 Программа для использования интерполяцииНа рисунках 3.4 представлена программа для использования интерполяции сплайнами. Пользователь вводит необходимые данные и при нажатии кнопки "График" строится кубический сплайн.Листинг программы представлен в приложении В.Рисунок 3.4 - Программа для использования интерполяции сплайнами4. Итерационные методы решения систем линейных алгебраических уравнений4.1 Общие сведенияК численным методам линейной алгебры относятся численные методы решения систем линейных алгебраических уравнений. Методы решения СЛАУ разбиваются на две группы. К первой группе принадлежат так называемые точные или прямые методы - алгоритм, позволяющий получить решение системы за конечное число арифметических действий. Вторую группу составляют приближенные методы, в частности итерационные методы решения СЛАУ.4.2 Метод простой итерации4.2.1 Описание методаРассмотрим СЛАУ видаAx = B, где А - матрица. (1)A = {aij}i, j = 1…nB = {bi}x = {xi}Если эту систему удалось привести к виду x = Cx + D, то можно построить итерационную процедуруxk = Cxk-1 + Dxk > x*, где х* - решение заданной системы.В конечном варианте система будет имееть вид:x1=c11x1+c12x2+c13x3+…c1nxn+d1x2=c21x1+c22x2+c23x3+…c2nxn+d1x3=c31x1+c32x2+c33x3+…c1nxn+d3…………………………………………. .xn=cn1x1+cn2x2+cn3x3+…cnnxn+dnУсловием сходимости для матрицы С выполняется, если сумма модулей коэффициентов меньше единицы по строкам или по столбцам, т.е., или .Необходимо, чтобы диагональные элементы матрицы А были ненулевыми.Для преобразования системы можно выполнить следующие операции:x1=a11-1 (c1-a12x2 - a13x3-… - a1nxn)x2=a22-1 (c2-a21x2 - a23x3-… - a2nxn)………………………. .xn=ann-1 (cn-an1x2 - an3x3-… - an-1nxn-1)В результате получим систему:x1=0+ c12x2+ c13x3-…+ c1n-1xn-1+ c1nxn+d1x2= c21x2+0 +c23x3+…+ c2n-1xn-1+ c2nxn+d2………………………………………………………. .xn= cn1x1+ cn2x2 +cn3x3+…+ cnn-1xn-1+ 0+dnВ ней на главной диагонали матрицы С находятся нулевые элементы, остальные элементы выражаются по формулам:сij=-aij/aii, di=ci/aii (i,j=1,2,3…n, i<>j)Итерационный процесс продолжается до тех пор, пока значения х1 (k), х2 (k), х3 (k) не станут близкими с заданной погрешностью к значениям х1 (k-1), х2 (k-1), х3 (k-1).4.2.2 Решение СЛАУ методом простых итерацийРешить СЛАУ методом простых итераций с точностью .Для удобства преобразуем систему к виду:Условие сходимости:,Принимаем приближение на 0-ом шаге:, , На 1-м шаге выполняем следующее:Подставляем принятые приближения в первоначальную систему уравненийСмотрим не выполняется ли условие остановки итерационного процесса: :На 2-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса : На 3-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса : На 4-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса : На 5-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса: : На 6-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса: : Необходимая точность достигнута на 6-й итерации. Таким образом, итерационный процесс можно прекратить.4.2.3 Программа для решения СЛАУ методом простых итерацийНа рисунке 4.1 представлена программа для решения систем алгебраических линейных уравнений методом простых итераций.Листинг программы приведен в приложении Г.Рисунок 4.1 - Программа "Метод простых итераций"4.3 Метод Зейделя4.3.1 Описание методаВ этом методе результаты, полученные на k-том шаге, используются на этом же шаге. На (k+1) - й итерации компоненты приближения вычисляются по формулам:………………………………………….Этот метод применим к система уравнений в виде Ax=B при условии, что диагональный элемент матрицы коэффициентов A по модулю должен быть больше, чем сумма модулей остальных элементов соответствующей строки (столбца).Если данное условие выполнено, необходимо проследить, чтобы система была приведена к виду, удовлетворяющему решению методом простой итерации и выполнялось необходимое условие сходимости метода итераций:, либо 4.3.2 Решение СЛАУ методом ЗейделяРешить СЛАУ методом Зейделя с точностью .Эту систему можно записать в виде:В этой системе сразу видно, что выполняется условие, где диагональные элементы матрицы коэффициентов по модулю больше, чем сумма модулей остальных элементов соответствующей строки.Для удобства преобразуем систему к виду:Условие сходимости:,Принимаем приближение на 0-ом шаге:На 1-м шаге выполняем следующее:Подставляем принятые приближения в первоначальную систему уравненийСмотрим не выполняется ли условие остановки итерационного процесса : На 2-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса: На 3-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса: :На 4-м шаге выполняем следующее:Смотрим не выполняется ли условие остановки итерационного процесса :Необходимая точность достигнута на 4-й итерации. Таким образом, итерационный процесс можно прекратить.4.3.3 Программа дл решения СЛАУ методом ЗейделяНа рисунке 4.2 представлена программа для решения систем алгебраических линейных уравнений методом простых итераций.Листинг программы приведен в приложении Г.Рисунок 4.2 - Программа "Метод Зейделя"4.4 Сравнительный анализМожно заметить, что в методе Зейделя быстрее мы достигаемой нужной точности, в нашем случае в точность была достигнута на 4-й итерации, когда в методе простых итераций она была достигнута на 6-й итерации. Но в то же время в методе Зейделя ставится больше условий. Поэтому вначале нужно произвести иногда довольно трудоемкие преобразования. В таблице 4.1 приведены результаты решения СЛАУ методом простой итерации и методом Зейделя на различных шагах итерации:Таблица 4.1 - Результаты решения СЛАУ|
№ шага | Метод постой итерации | Метод Зейделя | | 0 | x1=1.34 x2=-1.75 x3=0.5 x4=0.65 | x1=1.34 x2=-1.75 x3=0.5 x4=0.65 | | 1 | x1=1.277 x2=-1.56227 x3=0.3147 x4=0.5335 | x1=1.277 x2=-1.57047 x3=0.3324 x4=0.5837 | | 2 | x1=1.31335 x2=-1.6127 x3=0.3647 x4=0.5884 | x1=1.32469 x2=-1.5974 x3=0.355808 x4=0.58638 | | 3 | x1=1.315391 x2=-1.5935 x3=0.34936 x4=0.57867 | x1=1.318014 x2=-1.5945 x3=0.354137 x4=0.58556 | | 4 | x1=1.3173416 x2=-1.5968 x3=0.35577 x4=0.58589 | x1=1.318367 x2=-1.59481 x3=0.35437 x4=0.58554 | | 5 | x1=1.3179137 x2=-1.59467 x3=0.35371 x4=0.58462 | | | 6 | x1=1.3181515 x2=-1.59506 x3=0.35455 x4=0.58557 | | | | 5. Сравнительный анализ различных методов численного дифференцирования и интегрирования5.1 Методы численного дифференцирования5.1.1 Описание методаПредположим, что в окрестности точки xi функция F (x) дифференцируема достаточное число раз. Исходя из определения производной:Для оценки погрешностей формул численного дифференцирования используется формула Тейлора: (1)Отбрасывая последнее слагаемое, мы можем вычислить производную.Тогда отброшенное слагаемое будет являться погрешностью в формуле (1). В зависимости от того, какая точка выбирается за x отличают правостороннюю и левостороннюю производную. Если для вычисления вместо x возьмем xi-1, то получится левосторонняя производная (2), а если xi+1, правосторонняя производная (1). (1) (2)Отсюда видно, что порядок погрешности x - xi, т.е. при использованииxi-1 или xi+1, порядка O (h).При достаточно очевидном результате выражения (1) и (2) имеют низкую точность, т.е. высокую погрешность. Поэтому на практике больше используются так называемая центрально-симметричная формула, имеющая большой порядок точности.Очевидно, что эта формула используется только для внутренних точек отрезка.5.1.2 Нахождение производнойВычислим производную функции f (x) =sin (x) в какой-либо точке на отрезке [0,р] двумя способами.Разобьем отрезок на части:h=Найдем производную в точке x=.По центрально-симметричной формуле:По формуле правосторонней производной:=cos () =0.9659, значит вычисление производной по центрально-симметричной формуле более точнее.5.2 Методы численного интегрирования5.2.1 Общие сведенияДля вычисления определённого интеграла используется формула:Вычисление интеграла в таком виде не всегда удается, поэтому возникает задача приближенного значения этого интеграла.В теории численного интегрирования используются следующие формулы для вычисления:Формула левых прямоугольников:Формула правых прямоугольников:У этих формул погрешность порядка О (h).Улучшения результатов можно добиться путем интерполирования (интерполирование можно вести на отрезке [a,b]). Интерполяция первого и второго порядка носитФормула трапеции:Формула Симпсона, где n=2m h=b-a/n5.2.2 Нахождение определенного интегралаВычислим интеграл для функции разными способами.Разобьем отрезок [0, ] на части:h=По формуле левых прямоугольников:По формуле трапеции:По формуле Симпсона:При m=3:При m=2:Сравним полученные результаты с табличным:=1Можно сделать вывод, при вычислении определенного интеграла наибольшую степень точности дает формула Симпсона.5.3 Решение ОДУ5.3.1 Решение ОДУ методом Эйлера, Далее приведены результаты вычислений.Далее приведены результаты вычислений.5.3.2 Решение ОДУ методом Рунге-Кутты, Далее приведены результаты вычислений.Поправка Ричардсона Ri для метода Эйлера: Поправка Ричардсона Ri для метода Рунге-Кутта: 6.Численные методы решения обыкновенных дифференциальных уравнений6.1 Общие сведенияОбыкновенные дифференциальные уравнения являются моделью динамических систем. То есть систем меняющих свои свойства при изменении независимой переменной в качестве таковой очень часто выступает время.Обыкновенными дифференциальными уравнениями называются такие уравнения, которые содержат одну или несколько производных от искомой функции y=y (x). Их можно записать в виде, где х - независимая переменная.Наивысший порядок n входящей в уравнение производной называется порядком дифференциального уравнения.Методы решения обыкновенных дифференциальных уравнений можно разбить на следующие группы: графические, аналитические, приближенные и численные.Графические методы используют геометрические построения.Аналитические методы встречаются в курсе дифференциальных уравнений. Для уравнений первого порядка (с разделяющимися переменными, однородных, линейных и др.), а также для некоторых типов уравнений высших порядков (например, линейных с постоянными коэффициентами) удается получить решения в виде формул путем аналитических преобразований.Приближенные методы используют различные упрощения самих уравнений путем обоснованного отбрасывания некоторых содержащихся в них членов, а также специальным выбором классов искомых функций.Численные методы решения дифференциальных уравнений в настоящее время являются основным инструментом при исследовании научно-технических задач, описываемых дифференциальными уравнениями. При этом необходимо подчеркнуть, что данные методы особенно эффективны в сочетании с использованием современных компьютеров.Существуют различные задачи для ОДУ, мы будем рассматривать задачу Коши. Из курса математики известны условия существования единственности решения задачи Коши и также известно, что аналитически эта задача решается в достаточно редких случаях. То есть для того чтобы ОДУ являлась моделью некоторого динамического процесса, имела аналитическое решение приходится принимать слишком много предположений упрощающих исходную постановку. Что далеко не всегда является продуктивным.6.2 Метод ЭйлераНачальные условия: х=х0, у=у0, =f (x,y). Задача заключается в том, что необходимо построить функцию y=F (x) или Ф (х, у) =0, производная которой удовлетворяет заданному дифференциальному уравнению. Причем кривая соответствующей этой функции проходит через точку (х0, у0). Мы будем искать на заданном отрезке [a, b] х0=а значения некоторой функции, которые близки к соответствующим значениям искомого решения. Иногда говорят, что мы строим сеточную функцию, если разобьем отрезок [a, b] на n частей (h= (b-a) /n, где h - шаг сетки), тогда хi=x0+ih. Заменим в левой части производную правой разностью. При этом значения функции узлах заменим значениями сеточной функции :Полученная аппроксимация ДУ имеет первый порядок, поскольку при замене на допускается погрешность .Будем считать для простоты узлы равноотстоящими, т.е. Тогда из равенства ПолучаемЗаметим, что из уравнения следует.Поэтому представляет собой приближенное нахождение значение функции в точке при помощи разложения в ряд Тейлора с отбрасыванием членов второго и более высоких порядков. Другими словами, приращение функции полагается равным её дифференциалу. Полагая i=0, с помощью соотношения находим значение сеточной функции при : .Требуемое здесь значение задано начальным условием , т.е. . Аналогично могут быть найдены значения сеточной функции в других узлах:Построенный алгоритм называется методом Эйлера, графически он представлен на рисунке 6.1.Рисунок 6.1 -Метод Эйлера5.3 Метод Рунге-КуттыОдним из способов улучшения метода Эйлера является метод Рунге-Кутты. Формула Рунге - Кутты 4-го порядка:, , , ЗаключениеВ ходе выполнения курсовой работы был проведен сравнительный анализ численных методов, таких как итерация, интерполяция, численное дифференцирование и интегрирование, а также метод Эйлера.В результаты все поставленные задачи были выполнены, цели достигнуты. Мы приобрели навыки в применении различных численных методов на практике. А также были исследованы различные методы.Теперь перед нами стоит задача в применении приобретенных знаний в своей будущей профессиональной деятельности.Список использованной литературы1. Р.Ф. Хемминг "Численные методы (для научных работников и инженеров)". - Москва, 1972. 2. А.А. Амосов, А.Ю. Дубинский, Н.В. Копченова "Вычислительные методы для инженеров". - Москва, "Высшая школа", 1994. 3. Ф.В. Формалев, Д.Л. Ревизников "Численные методы". - М.: ФИЗМАТЛИТ, 2004. 4. Е.А. Волков. Численные методы: Учеб. Пособие для вузов - М.: Наука. Гл. ред. физ-мат. лит., 1987. - 248 с.
Страницы: 1, 2, 3
|