linearmixing#
- scipy.optimize.linearmixing(F, xin, iter=None, alpha=None, verbose=False, maxiter=None, f_tol=None, f_rtol=None, x_tol=None, x_rtol=None, tol_norm=None, линейный поиск='armijo', callback=None, **kw)#
Найти корень функции, используя скалярную аппроксимацию Якобиана.
Предупреждение
Этот алгоритм может быть полезен для определённых задач, но его работоспособность может сильно зависеть от конкретной задачи.
- Параметры:
- Ffunction(x) -> f
Функция, корень которой нужно найти; должна принимать и возвращать объект, подобный массиву.
- xinarray_like
Начальное приближение для решения
- alphafloat, опционально
Аппроксимация Якобиана равна (-1/alpha).
- iterint, необязательный
Количество итераций для выполнения. Если опущено (по умолчанию), выполняется столько, сколько требуется для достижения допусков.
- verbosebool, необязательно
Выводить статус в stdout на каждой итерации.
- maxiterint, необязательный
Максимальное количество итераций для выполнения. Если требуется больше для достижения сходимости,
NoConvergenceвызывается исключение.- f_tolfloat, опционально
Абсолютная погрешность (в max-норме) для невязки. Если опущена, по умолчанию равна 6e-6.
- f_rtolfloat, опционально
Относительная погрешность для невязки. Если опущено, не используется.
- x_tolfloat, опционально
Абсолютный минимальный размер шага, определяемый из приближения Якобиана. Если размер шага меньше этого, оптимизация завершается как успешная. Если опущено, не используется.
- x_rtolfloat, опционально
Относительный минимальный размер шага. Если опущено, не используется.
- tol_normfunction(vector) -> scalar, опционально
Норма для проверки сходимости. По умолчанию используется максимальная норма.
- линейный поиск{None, ‘armijo’ (по умолчанию), ‘wolfe’}, опционально
Какой тип линейного поиска использовать для определения размера шага в направлении, заданном приближением Якоби. По умолчанию ‘armijo’.
- callbackфункция, необязательный
Необязательная функция обратного вызова. Она вызывается на каждой итерации как
callback(x, f)где x является текущим решением и f соответствующий остаток.
- Возвращает:
- solndarray
Массив (аналогичного типа массива как x0) содержащий итоговое решение.
- Вызывает:
- NoConvergence
Когда решение не было найдено.
Смотрите также
rootИнтерфейс к алгоритмам нахождения корней для многомерных функций. См.
method='linearmixing'в частности.