Студенческий сайт КФУ - ex ТНУ » Учебный раздел » Учебные файлы »ПРОГРАММИРОВАНИЕ

Разработка алгоритма программы нахождения производной методом неопределённых коэффициентов

Тип: курсовая работа
Категория: ПРОГРАММИРОВАНИЕ
Скачать
Купить
Сущность метода неопределённых коэффициентов, использование интерполяционных многочленов и разностных соотношений для аппроксимации производных. Алгоритм программы и обоснование языка программирования. Экспериментальное исследование и решение задачи.
Краткое сожержание материала:

1

ТУЛЬСКИЙ АРТИЛЛЕРИЙСКИЙ ИНЖЕНЕРНЫЙ ИНСТИТУТ

Кафедра №10 «Математического, программного и

информационного обеспечения АСУ»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому проекту по дисциплине

«1001 - Дискретная математика»

Тема: «Разработка алгоритма программы нахождения производной

методом неопределённых коэффициентов»

Руководитель:

Исполнитель:

СОДЕРЖАНИЕ

Введение

1.Постановка и уяснение задачи:

1.1Анализ предметной области

1.1.1 Метод неопределённых коэффициентов

1.1.2 Использование интерполяционных многочленов

1.1.3 Использование конечно разностных соотношений для аппроксимации производных

2. Разработка алгоритма и программы:

2.1 Разработка алгоритма

2.2 Обоснование выбора языка программирования

2.3 Разработка программы

3.Экспериментальное исследование алгоритма и программы:

3.1Решение задачи методом неопределённых коэффициентов

3.2 Тестирование программы

3.3. Руководство программисту

Заключение

Список литературы

Приложение А

Приложение Б

Введение

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

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

Уже в период, предшествовавший появлению ЭВМ, понятия “элементарной” операции претерпели изменения. Решение некоторых частных задач настолько часто встречаются в приложениях, что пришлось составить таблицы их значений, в частности таблицы интегралов Френеля, функций Бесселя и ряда других так называемых специальных функций. При наличии таких таблиц исчезает принципиальная разница между вычислением функций sin x, ln x,… и специальных функций. В том и другом случаях можно вычислять значения этих функций при помощи таблицы, и те и другие функции можно приближая их многочленами, рациональными дробями и т.д.

Таким образом, в класс задач, интегрируемых в явном виде, включились задачи, решение которых выражаются через специальные функции. Однако и этот, более широкий, класс составляет относительно малую долю задач, предъявляемых к решению. Существенное расширение класса реально решаемых дифференциальных уравнений, а следовательно и расширение сферы применения математики произошло с разработкой численных методов и активным повсеместным использованием ЭВМ.

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

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

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

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

1.Постановка и уяснение задачи

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

1.1 Анализ предметной области

1.1.1 Метод неопределённых коэффициентов

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

Искомое выражение для производной k-го порядка для некоторой точке x=xi представляется в виде линейной комбинации заданных значений функции в узлах x0, x1, …, xn:

yi(k)=C0y0+C1y1+…+Cnyn. (2.1)

Предполагается, что эта формула имеет место для многочленов:

y=1; y=x-xi;…; y=(x-xi)n.

Подставляя последовательно эти многочлены в выражение (2.1) можно получить систему линейных алгебраических уравнений для определения коэффициентов С0, С1, …, Сn.

Рассмотрим порядок использования данного метода для нахождения производной на следующем примере.

Пример. Найти выражение для определения производной у1' в случае задания функции в четырёх равноотстоящих узлах.

Решение. Равенство (2.1) запишется в следующем виде

yi(k)=C0y0+C1y12у2+C3у3 . (2.2)

Для нахождения производной у1' используем, например, следующие многочлены:

y=1; y=x-x0; у=(х-х0)2; y=(x-x0)3. . (2.3)

Производные этих многочленов будут иметь следующий вид соответственно:

y'=0; y'=1; у'=2(х-х0); y'=3(x-x0)2. . (2.4)

Подставляя последовательно соотношения (2.3) и (2.4) соответственно в правую и левую части равенства (2.2), получим в общем виде при х=х1, следующую систему линейных алгебраических уравнений для определения коэффициентов С0, С1, …, Сn:

После упрощения данная система линейных алгебраических уравнений примет следующий вид:

Решив данную систему уравнений, получим следующие значения коэффициентов и выражение для нахождения производной у1':

1.1.2 Использование интерполяционных многочленов

Пусть функция f(x) задана в виде таблицы yi=f(xi), i=0,1,…n с постоянным шагом h. Предположим, что эта функция может быть аппроксимирована интерполяционным многочленом Ньютона:

Этот многочлен можно продифференцировать по х с учётом правила дифференцирования сложной функции:

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

Пусть та же функция может быть аппроксимирована интерполяционным многочленом Лагранжа. Рассмотрим интерполяционный многочлен Лагранжа для случая трёх узлов интерполяции (n=2):

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

В частности,

1.1.3 Использование конечно разностных соотношений для аппроксимации производных

Производной функции y=f(x) в точке x0 называется предел при x0 отношения приращения функции в этой точке к приращению аргумента (при условии, что этот предел существует). Для обозначения производной функции y=f(x) в точке x0 используют символы y'(x0) или f'(x0). То есть, по определению,

Другие файлы:

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

Разработка программы численного интегрирования дробно-рациональной функции
Разработка алгоритма решения задачи численного интегрирования методом трапеции. Словесное описание и блок-схема разработанного алгоритма программы. Оп...

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

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

Разработка модели, алгоритма и программы для определения технического состояния объекта по его признакам
Этапы процедуры принятия решений. Разработка математического алгоритма. Блок-схема алгоритма работы программы. Разработка программы на языке программи...