stringtranslate.com

Метод секущей

Первые две итерации метода секущих. Красная кривая показывает функцию f , а синие линии — секущие. Для этого конкретного случая метод секущих не будет сходиться к видимому корню.

В численном анализе метод секущих представляет собой алгоритм нахождения корня , который использует последовательность корней секущих линий для лучшего приближения корня функции f . Метод секущих можно рассматривать как конечно-разностную аппроксимацию метода Ньютона , поэтому его считают квазиньютоновским методом . Исторически он является развитием метода ложного положения , который предшествовал методу Ньютона более чем на 3000 лет. [1]

Метод

Метод секущих — это итерационный численный метод нахождения нуля функции f . При двух начальных значениях x 0 и x 1 метод действует согласно рекуррентному соотношению

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

Вывод метода

Начиная с начальных значений x 0 и x 1 , мы строим линию через точки ( x 0 , f ( x 0 )) и ( x 1 , f ( x 1 )) , как показано на рисунке выше. В форме наклона-пересечения уравнение этой линии имеет вид

Корень этой линейной функции, то есть значение x, при котором y = 0, равен

Затем мы используем это новое значение x как x 2 и повторяем процесс, используя x 1 и x 2 вместо x 0 и x 1 . Мы продолжаем этот процесс, решая для x 3 , x 4 и т. д., пока не достигнем достаточно высокого уровня точности (достаточно малой разницы между x n и x n −1 ):

Конвергенция

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

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

Сравнение с другими методами поиска корней

Метод секущей не требует и не гарантирует, что корень останется заключенным в скобки последовательными итерациями, как это делает метод бисекции , и, следовательно, он не всегда сходится. Метод ложного положения (или regula falsi ) использует ту же формулу, что и метод секущей. Однако он не применяет формулу к и , как метод секущей, а к и к последней итерации, такой что и имеют другой знак. Это означает, что метод ложного положения всегда сходится; однако, только с линейным порядком сходимости. Заключение в скобки с суперлинейным порядком сходимости, как у метода секущей, может быть достигнуто с помощью улучшений метода ложного положения (см. Regula falsi § Улучшения в regula falsi ), таких как метод ITP или метод Иллинойса .

Рекуррентная формула метода секущих может быть выведена из формулы метода Ньютона

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

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

Если мы сравним метод Ньютона с методом секущей, то увидим, что метод Ньютона сходится быстрее (порядок 2 против порядка золотого сечения φ  ≈ 1,6). [2] Однако метод Ньютона требует оценки как , так и ее производной на каждом шаге, в то время как метод секущей требует оценки только . Поэтому метод секущей иногда может быть быстрее на практике. Например, если мы предположим, что оценка занимает столько же времени, сколько и оценка ее производной, и пренебрегаем всеми другими затратами, мы можем выполнить два шага метода секущей (уменьшив логарифм ошибки в φ 2  ≈ 2,6 раза) за ту же стоимость, что и один шаг метода Ньютона (уменьшив логарифм ошибки в 2 раза), поэтому метод секущей быстрее. В более высоких измерениях полный набор частных производных, требуемых для метода Ньютона, то есть матрица Якоби , может стать намного более дорогим для вычисления, чем сама функция. Однако, если мы рассмотрим параллельную обработку для оценки производной или производных, метод Ньютона может быть быстрее по времени, хотя все еще требует больше вычислительных операций в целом.

Обобщение

Метод Бройдена представляет собой обобщение метода секущих на случай более чем одного измерения.

Следующий график показывает функцию f красным цветом, а последнюю секущую — жирным синим. На графике отрезок x секущей, по-видимому, является хорошим приближением корня f .

Пример расчета

Ниже метод секущей реализован на языке программирования Python .

Затем он применяется для нахождения корня функции f ( x ) = x 2 − 612 с начальными точками и

def  secant_method ( f ,  x0 ,  x1 ,  iterations ): """Возвращает корень, вычисленный с помощью метода секущих.""" for i in range ( iterations ): x2 = x1 - f ( x1 ) * ( x1 - x0 ) / float ( f ( x1 ) - f ( x0 )) x0 , x1 = x1 , x2 # Применить здесь критерий останова (см. ниже) return x2                          def  f_example ( x ):  возврат  x  **  2  -  612корень  =  секущий_метод ( f_example ,  10 ,  30 ,  5 )print ( f "Корень: { root } " )  # Корень: 24.738633748750722

Очень важно иметь хороший критерий остановки выше, в противном случае, из-за ограниченной числовой точности чисел с плавающей точкой, алгоритм может возвращать неточные результаты, если выполняется слишком много итераций. Например, цикл выше может остановиться, когда сначала будет достигнуто одно из них: abs(x0 - x1) < tol, или abs(x0/x1-1) < tol, или abs(f(x1)) < tol. [3]

Примечания

  1. ^ Папаконстантину, Джоанна; Тапиа, Ричард (2013). «Происхождение и эволюция метода секущих в одном измерении». American Mathematical Monthly . 120 (6): 500–518. doi :10.4169/amer.math.monthly.120.06.500. JSTOR  10.4169/amer.math.monthly.120.06.500. S2CID  17645996 – через JSTOR.
  2. ^ ab Chanson, Jeffrey R. (3 октября 2024 г.). «Порядок сходимости». LibreTexts Mathematics . Получено 3 октября 2024 г. .
  3. ^ "УЧЕБНОЕ РУКОВОДСТВО ПО MATLAB для первого курса. Часть 1.3: Методы секущих".

Смотрите также

Ссылки

Внешние ссылки