Численные методы решения нелинейных уравнений. Метод Риддера.

Метод Риддера (Ridder’s method) является итерационным численным методом решения нелинейного уравнения  непрерывной функции. Данный метод относится к методам интервалов локализации корня.

В соответствии с методом задача поиска корня в уравнении сводится к задаче:

- создание уникальной экспоненциальной функции   вида ;

- поиска корня уравнения экспоненциальной функции , который будет являться приближением корня функции .

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

Рис.1. Метод Риддера.

Значение функции  в трех точках определяется в следующем виде:

› В точке  значение функции определяется ;

› В точке  значение функции определяется ;

› В точке  значение функции определяется .

В представленных формулах используется параметр h, который определяется по формуле .

 

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

Задача поиска корня уравнения f(x) сводится к поиску корней квадратного уравнения относительно переменной . Корень квадратного уравнения определяется по формуле:

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

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

В результате подстановки переменной  в данное уравнение получим формулу  для определения точки пересечения функции  с осью абсцисс.

 

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

,

где функция  определена следующим образом:

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

 или .

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

.

Данный метод решения нелинейного уравнения характеризуется определёнными свойствами:

- приближенное значение корня на любой итерации всегда оказывается внутри интервала локализации корня [a,b];

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

Алгоритм нахождения корня нелинейного уравнения по методу Риддера

1. Найти начальный интервал неопределенности  одним из методов отделения корней. Задать погрешность расчета (малое положительное число и начальный шаг итерации (k=0).

2. Определить среднюю точку в рассматриваемом интервале и найти значения функции в трех точках: по краям рассматриваемого интервала  и в середине интервала.

3. Выполнить расчет приближенного значения корня функции в соответствии с формулой:

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

1 интервал: если , то новый интервал 

2 интервал: если , то новый интервал 

5. Проверяем значение корня на предмет заданной точности, в случае: 

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

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

Пример решения уравнений методом Риддера

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

Вариант решения нелинейного уравнения в программном комплексе MathCAD.

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

Рис.2. Результаты расчета по методу Риддера 

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

 

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

Комментарии  

#1 Admin 19.04.2015 20:51
В статье рассмотрен численный метод решения нелинейного уравнения, который используется в функции root () программного комплекса MathCad. По умолчанию функция root () использует несколько методов для расчета корней уравнений: метод Риддера (Ridder) и метод Брента (Brent).

root(f(x),x,a,b)
где f(x) — функция, определяющая уравнение;
х—переменная;
а и b—границы интервала локализации.
Обязательным условием является то, что значения функции на концах интервала должны быть противоположных знаков.