scipy.optimize.

fixed_point#

scipy.optimize.fixed_point(функция, x0, args=(), xtol=1e-08, maxiter=500, метод='del2')[источник]#

Найти неподвижную точку функции.

Для функции одной или нескольких переменных и начальной точки найдите неподвижную точку функции: т.е., где func(x0) == x0.

Параметры:
функцияфункция

Функция для вычисления.

x0array_like

Неподвижная точка функции.

argsкортеж, необязательный

Дополнительные аргументы для функция.

xtolfloat, опционально

Допуск сходимости, по умолчанию 1e-08.

maxiterint, необязательный

Максимальное количество итераций, по умолчанию 500.

метод{“del2”, “iteration”}, опционально

Метод нахождения неподвижной точки, по умолчанию "del2", который использует метод Стеффенсена с ускорением Эйткена Del^2 ускорение сходимости [1]Метод "итерации" просто повторяет функцию до обнаружения сходимости, без попыток ускорить сходимость.

Ссылки

[1]

Берден, Фейрс, «Численный анализ», 5-е издание, стр. 80

Примеры

>>> import numpy as np
>>> from scipy import optimize
>>> def func(x, c1, c2):
...    return np.sqrt(c1/(x+c2))
>>> c1 = np.array([10,12.])
>>> c2 = np.array([3, 5.])
>>> optimize.fixed_point(func, [1.2, 1.3], args=(c1,c2))
array([ 1.4920333 ,  1.37228132])