Материал: 1692

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Корни находятся в два этапа: первый – отделение корней, т.е. нахождение отрезка [a, b], содержащего один корень уравнения; второй

– уточнение значения корней на найденных отрезках с заданной точ-

ностью .

 

Если функция F(x)

непрерывна и принимает на концах отрезка

[a, b] разные знаки, т.е.

F(a)* F(b) 0 и сохраняет на этом отрезке

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

1.Составляют таблицу значений функции y F(x) на выбранном отрезке изменения аргумента. Для отделения корня необходимо, чтобы на концах выделенного отрезка функция имела разные знаки и была монотонна. В качестве признака монотонности функции можно воспользоваться условием знакопостоянства первой производной. От заданной функции F(x) найдем F (x) и вычислим ее

значения на концах отрезка [a, b], если F (a)*F (b) 0, функция F(x) монотонна.

2.Строят график функции y F(x) на отрезке изменения x; точка пересечения графика с осью ox даст нам корень уравнения. Для последующего уточнения корня возьмем окрестности корня и обозначим их [a, b].

3.Уравнение F(x) 0 заменяют равносильным ему F1(x) F2(x), строят два графика y1 F1(x) и y2 F2 (x). Абсцисса точки пересечения этих графиков, спроецированная на ось x, даст нам отрезок [a, b], внутри которого находится корень уравнения F(x) 0.

2.Методы решения нелинейных уравнений

2.1.Метод деления пополам (метод бисекций)

Задача. Найти решение нелинейного уравнения F(x) 0 с точностью .

Метод состоит в следующем: в результате отделения корня найден отрезок [a, b], в котором расположено искомое значение корня. В качестве начального приближения корня возьмем значение co=(b+a)/2. Далее исследуем значения F(x) на концах отрезков [a, co] и [co, b]. Тот из них, на концах которого F(x) примет значения разных знаков, содержит искомый корень. Поэтому его принимают в качестве нового

21

отрезка (см. полученный знаков. F(a)

рис. 1, здесь корень находится на отрезке [co, b]). Затем отрезок делим пополам и вновь производим проверку

0, F(b) 0, F(c0 ) 0.

Рис. 1

Теперь корень находим на отрезке [c0, c1]. Затем находим

с2 с0 с1 и т.д. Итерационный процесс продолжается до тех пор,

2

пока F(x) не станет меньше заданного числа : F(сn) . Рабочая формула для нахождения корня имеет вид

сi 1 сi сi 1 .

2

Число итераций в этом методе зависит от предварительно задаваемой точности и длины отрезка [a, b] и не зависит от вида функции

F(x).

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

Блок-схема алгоритма метода половинного деления представлена на рис. 2, где [a, b] – отрезок, в котором находится корень уравнения; с – корень уравнения; n – число итераций; F(x) - значение функции в соответствующей точке.

2.2. Метод хорд

Задача. Отыскать корень уравнения F(x) 0 с точностью . Пусть имеем отрезок [a0, b0], на концах которого F(x) меняет свой знак, где F(x) - монотонная функция. Пусть F(a0 ) 0, F(b0 ) 0.

На рис. 3 задача отыскания корня методом хорд представлена графически. Любая точка отрезка [a0, b0] может быть первым приближе-

22

нием корня. Соединим точки А и В прямой, т.е. проведем хорду. Таким образом, получим b1, которое является приближением корня.

Воспользуемся уравнением пучка прямых, проходящих через точ-

ку B(b0, F(b0)).

y–y0=k(x–x0), y–F(b0)=k(x–b0).

Хорда должна проходить через точку A(a0, F(a0)), т.е.

k F(a0) F(b0) . a0 b0

Запишем уравнение прямой

y F(b0 ) F(a0 ) F(b0 )(x b0 ). a0 b0

Начало

Ввод a, b, i = 0, ε

Вычисле-

ниеF(a)

i = i +1

с a b

2

 

F(c)

 

 

 

 

 

 

 

 

 

 

 

 

 

b = c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нет

 

 

 

 

 

 

 

 

 

 

F(c)

 

 

 

 

F(c)*F(a) 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Да

 

 

 

 

 

 

Да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вывод c, i

 

 

 

а = c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

Рис. 2

23

Рис. 3

Проведенная прямая пересекает ось ох

y F(b0)

 

x b0

 

 

 

 

 

 

.

F(a

0

) F(b )

a

0

b

 

0

 

 

0

 

Найдем х при у=0

x b

F(b0)(a0 b0)

,

x b b

F(b0)(a0 b0)

.

 

 

0

F(a

0

) F(b )

1 0

F(a

0

) F(b )

 

 

0

 

 

 

0

 

Далее, сравнивая знаки F(b1) и F(b0), найдем новый отрезок [b1, a0]. Соединим новой хордой точки А и В1, таким образом найдем новое приближение корня. Итерационный процесс продолжается до тех пор, пока F(bi) не станет по модулю меньше числа : F(bi ) . При решении этим методом потерять корень невозможно.

Рабочая формула метода хорд:

b

b

 

F(bi)(a0 bi)

или b

b

b

,

 

i 1

i

 

F(a

0

) F(b )

i 1

i

i

 

 

 

 

 

i

 

 

 

 

где b – начало отрезка, а – конец ( точка а неподвижна). Неподвижен тот конец, для которого знак функции F(x) совпадает

со знаком ее второй производной F (x).

Блок–схема алгоритма метода хорд представлена на рис. 4, где [a, b] – отрезок, в котором находится корень уравнения; b – корень уравнения; n – число итераций; F(bi) – значения функции в соответствующей точке.

2.3. Метод Ньютона (метод касательных)

Как и ранее, находим

корень F(x) 0. Имеем точность

и

отрезок [a, b], в котором

находится изолированный корень. В

 

24

 

качестве начального приближения принимается тот конец отрезка [a, b], для которого выполняется условие F(x)F (x) 0. Обратимся к рис. 5, на котором представлено графическое решение задачи. Из точки А0 проведена касательная к функции. Точка пересечения касательной с осью ох является первым приближением корня, на рис. 5 она обозначена как а1. Затем из точки а1 проводим прямую, перпендикулярно оси ох. Точку пересечения этой прямой с функцией обозначим через А1 и т.д.

Начало

Ввод b,

i = 0

 

 

 

 

bi 1 bi bi

 

i = i+1

 

 

Да

 

 

F(bi)

Нет

Вывод b, i

Конец

Рис. 4

Запишем уравнение прямой, касательной к F(x):

y-y0=k(x-x0),

y=0

,

F(a0)

 

где k F (a0),

x a0

 

,

 

 

 

 

F (a0)

 

25