Метод половинного деления паскаль — Мир ПК

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

Сущность метода половинного деления и шагового метода для решения нелинейных уравнений. Примеры решения нелинейных уравнений и определение их корня в программах в Pascal, Microsoft Excel, MathCAD. Анализ результатов и построение соответствующих графиков.

Рубрика Математика
Вид курсовая работа
Язык русский
Дата добавления 08.06.2014
Размер файла 287,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

1. Теория нелинейных уравнений и метод половинного деления

2. Нахождения корней нелинейного уравнения с заданной точностью

2.2 Microsoft Excel

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

Цель — раскрыть содержание темы «Метод половинного деления». Закрепить ее путем выполнения курсовой работы. Создать программный продукт, который находит отрезок и искомый корень уравнения в этом отрезке при помощи шагового метода. Уточнить корень методом половинного деления.

1. Изучить метод половинного деления и шаговый метод для решения нелинейных уравнений.

2. Научиться решать нелинейные уравнения в Pascal, Microsoft Excel, MathCAD.

3. Решить данное уравнение и найти корни и построить графики.

4. Проанализировать результаты.

5. Сделать выводы.

1. Теория нелинейных уравнений и метод половинного деления

где функция f(x) определена и непрерывна на некотором конечном или бесконечном интервале x . В частности, в форме нелинейных уравнений представляются математические модели анализа статических свойств объектов проектирования или их элементов. Если функция f(x) представляет собой многочлен n-й степени видаa0 + a1 x + a2 x2 + . + anxn, то уравнение (1) называется алгебраическим. Когда x находится под знаком трансцендентной функции (показательной, логарифмической, тригонометрической и т.п.), уравнение называется трансцендентным. Значение аргумента x, при котором функция f(x) обращается в нуль, т.е. f(x*) = 0, называется корнем уравнения.

Читать еще:  1с sql ошибка формата потока

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

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

1) отделение корней, т.е. нахождение интервалов [a, b], внутри которых содержится один и только один корень уравнения;

2) уточнение приближенных значений отдельных корней до заданной степени точности.

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

нелинейный уравнение половинный деление

где приближенные значения действительных корней уравнения f(x) = 0 соответствуют абсциссам точек пересечения или касания графика с осью 0x (y = 0). Наиболее часто применяется метод отделения корней, основанный на следующем положении: если на концах некоторого интервала [a, b] значения непрерывной функции f(x) имеют разные знаки, т.е. f(a)f(b) , то на этом интервале уравнение (1) имеет хотя бы один корень. При этом корень является единственным, если производная функции f'(x) существует и сохраняет постоянный знак внутри интервала [a, b].Рассмотрим простейший алгоритм отделения корней нелинейных уравнений, ориентированный на использование ЭВМ. Исходный интервал [, ], на котором определена и непрерывна функция f(x), разбивается на n отрезков равной длины

(x0, x1), (x1, x2), . (xn -1, xn),где x0 x1 . xn и x0 = , xn =

Затем вычисляются значения функции f(xj) в точках xj (j =) и выбирается отрезок (xi, xi+1), на концах которого функция имеет разные знаки, т.е. f(xi)f(xi+1) 0. Если длина этого отрезка достаточно мала (можно предположить единственность корня), то считается, что корень отделен на интервале [a, b], где a = xi, b = xi+1. В противном случае границы исходного интервала сдвигаются, т.е. = xi, = xi + 1, и процедура повторяется.

Читать еще:  Ошибка формата потока

Необходимо отметить, что длина исходного интервала [], на котором определена функция f(x), может изменяться в широких пределах. Поэтому число отрезков n, а также длина искомого интервала [a, b] являются переменными величинами, которые должны задаваться в каждом конкретном случае с учетом физического смысла решаемой задачи.

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

Метод половинного деления. Для этого метода существенно, чтобы функция f(x) была непрерывна и ограничена в заданном интервале [a, b], внутри которого находится корень. Предполагается также, что значения функции на концах интервала f(a) и f(b) имеют разные знаки, т.е. выполняется условие f(a)f(b) .

Обозначим исходный интервал [a, b] как [a0, b0]. Для нахождения корня уравнения f(x) = 0 отрезок [a0, b0] делится пополам, т.е. вычисляется начальное приближение x0 = (a0 + b0)/2. Если f(x0) = 0, то значение x0 = x* является корнем уравнения. В противном случае выбирается один из отрезков [a0, x0] или [x0, b0], на концах которого функция f(x) имеет разные знаки, так как корень лежит в этой половине. Далее выбранный отрезок обозначается как [a1, b1], вновь делится пополам точкой x1 = (a1 + b1)/2 и т.д. В результате на некоторой итерации получается точный корень x* уравнения f(x) = 0, либо бесконечная последовательность вложенных отрезков [a0, b0], [a1, b1], . [ai, bi], . таких, что f(ai)f(bi) (i =1, 2, . ), сходящихся к корню x*.

Если требуется определить корень x* с погрешностью , то деление исходного интервала [a, b] продолжают до тех пор, пока длина отрезка [ai, bi] не станет меньше 2, что записывается в форме условия bi — ai 2.

В этом случае середина последнего интервала [ai, bi] с требуемой степенью точности дает приближенное значение корня

Читать еще:  Android в приложении произошла ошибка

Метод половинного деления легко реализуется на ЭВМ и является наиболее универсальным среди итерационных методов уточнения корней. Его применение гарантирует получение решения для любой непрерывной функции f(x), если найден интервал, на котором она изменяет знак. В том случае, когда корни не отделены, будет найден один из корней уравнения. Метод всегда сходится, но скорость сходимости является небольшой, так как за одну итерацию точность увеличивается примерно в два раза. Поэтому на практике метод половинного деления обычно применяется для грубого нахождения корней уравнения, поскольку при повышении требуемой точности значительно возрастает объем вычислений.

2. Нахождение корней нелинейного уравнения

2.1 MathCAD. Шаговый метод

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

1. Ввести в позиции ввода рабочего аргумента выражение, описывающее функцию

2. Вести граничные значения отрезка изоляции: a:=0 и b:=5

3. Ввести значение данной погрешности: e:=0,001.

4. Выбрать на панели инструментов кнопку «инструменты программирования».

5. Ввести в позиции поля ввода имя новой функции и знак присвоить значение: pol(f,a,b,e):=

6. На панели «Программирование» выбрать «AddLine» — добавить строку программы.

7. В первый темный прямоугольник добавить запись «while», находящуюся на панели«Программирование»:

8. Условие циклы в темном прямоугольнике, стоящем после while: |b-a|>e.

9. В следующем темном прямоугольнике, расположенным под while, задать тело цикла: добавить строку программы, в первом темном прямоугольнике ввести:

Для ввода использовать кнопку «Локальное присвоение» на панели «Программирование»:

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

(функцию if выбрать на панели «Программирование» перед тем как вводить выражение).

11. Затем строкой ниже ввести:

(данную функцию выбрать на панели «Программирование» перед тем как вводить выражение).

12. В самом нижнем темном прямоугольнике ввести переменную вывода: c.

13. В поле ввода, под программой, набрать pol(f,a,b,e), затем нажать знак равенства.

2.3 Microsoft Excel. Шаговый метод

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

1. Заполнить ячейки A1:H1 последовательно следующим образом: a, b, c=(a+b)/2, f(a), f(b), f(c), |b-a| d;

Запись опубликована в рубрике Ошибки и проблемы. Добавьте в закладки постоянную ссылку.