Исследование методов приближенного решения уравнений



Городская научно – практическая конференция

«Старт в науку»

Исследование методов приближенного решения уравнений

Секция: современное программирование

Автор: Сергеева Мария Сергеевна,

11 «Б» класс, МБОУ «Средняя общеобразовательная школа 27»

Руководитель: Сергеева Светлана Александровна

Учитель информатики 1 категории,

МБОУ «Средняя общеобразовательная школа № 27»

г.Дзержинск

2012г.

Оглавление

Введение3

Теоретическая часть4

Метод половинного деления5

Метод хорд7

Метод касательных8

Комбинированный метод хорд и касательных9

Практическая часть 11

Компьютерная модель построения графика функции на языке программирования Free Pascal 11

Компьютерная модель метода половинного деления 13

Компьютерная модель метода хорд 14

Компьютерная модель метода касательных 15

Компьютерная модель комбинированного метода хорд и касательных 16

Сравнительный анализ методов 17

Заключение 19

Литература 20

Введение

С термином «уравнение» мы знакомимся еще в начальной школе, а задача «решить уравнение», вероятно, является наиболее часто встречающейся задачей не только на уроках математики.

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

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

Цель: нахождение оптимального метода приближенного решения уравнения.

Задачи:

Изучить методы приближенного решения уравнения:

метод половинного деления

метод хорд

метод касательных

комбинированный метод

Создать компьютерные модели приближенного решения уравнений с помощью всех методов на языке программирования Free Pascal.

Провести сравнительный анализ методов.

Теоретическая часть

Нелинейные уравнения можно разделить на 2 класса — алгебраические и трансцендентные. Алгебраическими уравнениями называют уравнения, содержащие только алгебраические функции (целые, рациональные, иррациональные). В частности, многочлен является целой алгебраической функцией. Уравнения, содержащие другие функции (тригонометрические, показательные, логарифмические и др.) называются трансцендентными.

Методы решения нелинейных уравнений делятся на две группы:

точные методы;

итерационные методы (за счет последовательных приближений получить решение уравнения с необходимой точностью).

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

Точные методы решения Приближенные методы решения

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

Решение уравнения проводят численно в два этапа. На первом этапе производится отделение корней — поиск интервалов, на которых содержится только по одному корню. Второй этап решения связан с уточнением корня на выбранном интервале (определением значения корня с заданной точностью). Далее будут рассмотрены несколько численных методов и приведены алгоритмы нахождения корней уравнений.

Отделение корней уравнения может проводиться графически, т.е. путем построения графика функции y=f(x). Для уравнения вида f (x) = 0, где f(x) – некоторая непрерывная функция, корень (или корни) этого уравнения являются точкой (или точками) пересечения графика функции с осью абсцисс.

Приближенные методы

Решение уравнений с заданной точностью

Отделение корней

Численные методы

Метод половинного деления

Метод хорд

Метод касательных

Комбинированный метод

Графический метод

f(x)=0, где f(x) — непрерывная функция

Y

y=f(x)

x3

x2

x1

X

Отделение корней уравнения можно осуществить путем построения компьютерных моделей:

построение графика функции с помощью одного из языков программирования (в данном случае Free Pascal);

построение графика функции в электронных таблицах Microsoft Excel путем построения диаграммы типа График.

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

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

1.1. Метод половинного деления

Самый простой из них – метод половинного деления, или иначе метод дихотомии. Метод дихотомии получил свое название от древнегреческого слова διχοτομία, что в переводе означает деление надвое. Его мы используем довольно часто. Допустим, играя в игру «Угадай число», где один игрок загадывает число от 1 до 100, а другой пытается его отгадать, руководствуясь подсказками «больше» или «меньше». Логично предположить, что первым числом будет названо 50, а вторым, в случае если оно меньше — 25, если больше — 75. Таким образом, на каждом этапе неопределенность неизвестного уменьшается в 2 раза. Т.е. даже самый невезучий в мире человек отгадает загаданное число в данном диапазоне за 7 предположений вместо 100 случайных утверждений.

Алгоритм метода половинного деления основан на теореме Больцано — Коши о промежуточных значениях непрерывной функции и следствии из неё.

Теорема Больцано — Коши: если непрерывная функция принимает два значения, то она принимает любое значение между ними.

Следствие (теорема о нуле непрерывной функции): если непрерывная функция принимает на концах отрезка положительное и отрицательное значения, то существует точка, в которой она равна 0.

Алгоритм:

Задать отрезок [a,b] и погрешность .

Вычислить c=(a+b)/2

Определить интервал дальнейшего поиска: если f(a) и f(c) имеют разные знаки, т.е. f(a)*f(c)<0, то b:=c, в противном случае a:=c.

f(a)*f(c)<0 (да)

f(a)*f(c)<0 (нет)

Если длина нового отрезка , то вычислить значение корня c=(a+b)/2 и остановиться, в противном случае перейти к шагу 2.

Блок-схема метода половинного деления

конец

начало

нет

(B-A)/2<=E

X

X:=(А-В)/2

да

С:=(А+В)/2

А, В, Е

нет

да

F(A)*F(C)<0

A:=C

B:=C

1.2. Метод хорд

При решении уравнения методом хорд нелинейная функция f(x) на отделенном интервале [a, b] заменяется линейной, в качестве которой берется хорда – прямая, стягивающая концы нелинейной функции. Вычисляются значения функции на концах отрезка, и строится «хорда», соединяющая точки (a, f(a)) и (b, f(b)).

При решении нелинейного уравнения методом хорд задаются интервал [a,b] на котором существует только одно решение, и точность ε. Затем через две точки с координатами (a, f(a)) и (b, f(b)) проводим отрезок прямой линии (хорду) и определяем точку пересечения этой линии с осью абсцисс, точка c. Если при этом f(a)∙f(c)<0, то правую границу интервала переносим в точку с (b=c). Если указанное условие не выполняется, то в точку c переносится левая граница интервала (а=с). Поиск решения прекращается при достижении заданной точности |f(c)|< ε.

f(a)∙f(c)<0 (да)

f(a)∙f(c)<0 (нет)

Запишем уравнение прямой, проходящей через точки с координатами (a, f(a)) и (b, f(b)):

Прямая заданная полученным уравнением пересекает ось абсцисс при условии у=0. Найдем точку пересечения хорды с осью Х.

Итак,

Далее необходимо вычислить значение функции в точке с. Если | f(c) | < 0, то полученное число и есть корень уравнения с выбранной точностью, иначе необходимо построить следующую хорду и выполнить все рассмотренные ранее действия.

Блок-схема метода хорд

конец

C

начало

А, В, Е

нет

да

нет

да

F(A)*F(C)>0

В:=С

А:=С

| F(C) | < E

1.3. Метод касательных

Метод касательных, иначе метод Ньютона впервые был предложен английским физиком, математиком и астрономом Исааком Ньютоном, под именем которого и обрел свою известность.

Идея, на которой основан метод касательных, аналогична той, которая реализована в методе хорд, только в качестве прямой берется касательная, проводимая в текущей точке данной функции f(x).

В одной из точек промежутка [a;b], в котором находится корень уравнения, например с, проведем касательную.

y = f(x)

Уравнение этой прямой y=kx + m.

Так как данная прямая является касательной и проходит через точку , то .

Отсюда следует:

Найдем точку пересечения касательной с осью Х:

Если , то требуемая точность достигнута и x – корень уравнения; иначе, переменной с необходимо присвоить x, провести касательную через новую точку с и так продолжать до тех пор, пока .

Осталось решить, что выбрать в качестве начального приближения с.

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

Блок-схема метода касательных

конец

начало

C

А, В, Е

нет

да

F (A)*F ’’(A) > 0

C:=B

C:=A

нет

| F (C) | < E

да

1.4. Комбинированный метод хорд и касательных



Страницы: Первая | 1 | 2 | 3 | ... | Вперед → | Последняя | Весь текст




sitemap
sitemap