scipy.optimize.
fixed_point#
- scipy.optimize.fixed_point(func, x0, args=(), xtol=1e-08, maxiter=500, method='del2')[Quelle]#
Finden Sie einen Fixpunkt der Funktion.
Gegeben eine Funktion von einer oder mehreren Variablen und ein Startpunkt, finden Sie einen Fixpunkt der Funktion: d.h. wo
func(x0) == x0.- Parameter:
- funcFunktion
Zu evaluierende Funktion.
- x0array_like
Fixpunkt der Funktion.
- argstuple, optional
Zusätzliche Argumente für func.
- xtolfloat, optional
Konvergenztoleranz, Standard ist 1e-08.
- maxiterint, optional
Maximale Anzahl von Iterationen, Standard ist 500.
- method{“del2”, “iteration”}, optional
Methode zum Finden des Fixpunkts, Standard ist "del2", welche Steffensens Methode mit Aitkens
Del^2Konvergenzbeschleunigung verwendet [1]. Die Methode "iteration" iteriert einfach die Funktion, bis Konvergenz erkannt wird, ohne zu versuchen, die Konvergenz zu beschleunigen.
Referenzen
[1]Burden, Faires, „Numerical Analysis“, 5. Auflage, S. 80
Beispiele
>>> 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])