scipy.optimize --- Pencarian akar dan minimisasi¶
Submodul scipy.optimize menyediakan rutin sederhana untuk mencari akar dan minimum dari fungsi skalar yang didefinisikan pengguna. Karena setiap iterasi harus memanggil balik callable Python yang disediakan pengguna, peningkatan kecepatan dibandingkan implementasi Python murni cukup sederhana (biasanya sekitar 2x).
Fungsi¶
- scipy.optimize.bisect(f: Callable[[float], float], a: float, b: float, *, xtol: float = xtolerance, maxiter: int = 100) float¶
Mencari akar f dalam kurung
[a, b]menggunakan metode biseksi. f harus berganti tanda pada interval tersebut.- Parameter:
f -- callable yang menerima satu
floatdan mengembalikanfloat.a -- titik ujung kiri kurung.
b -- titik ujung kanan kurung.
xtol -- toleransi absolut pada lokasi akar (default
xtolerance).maxiter -- jumlah maksimum biseksi (default
100).
- Kembali:
lokasi akar sebagai
float.- Pengecualian:
ValueError -- jika
f(a) * f(b) > 0.
- scipy.optimize.curve_fit(f: Callable[..., float], xdata: ndarray | list | tuple, ydata: ndarray | list | tuple, p0: ndarray | list | tuple, *, xatol: float = xtolerance, fatol: float = xtolerance, maxiter: int | None = None) None¶
Stub untuk fitting kurva kuadrat-terkecil non-linear (Levenberg-Marquardt). Ada dalam tabel modul untuk kompatibilitas API tetapi saat ini merupakan placeholder: menerima dan memvalidasi argumennya tetapi selalu mengembalikan
None. Gunakanfmin()atau library eksternal sampai rutin ini diimplementasikan.- Parameter:
f -- callable model
f(x, *params) -> float.xdata -- array-like 1-D dari nilai independen.
ydata -- array-like 1-D dari nilai dependen, panjang sama dengan xdata.
p0 -- array-like 1-D dari estimasi parameter awal.
- scipy.optimize.fmin(f: Callable[[float], float], x0: float, *, xatol: float = xtolerance, fatol: float = xtolerance, maxiter: int = 200) float¶
Mencari posisi minimum lokal dari fungsi skalar f menggunakan metode simpleks menurun (Nelder-Mead).
- Parameter:
f -- callable yang menerima satu
floatdan mengembalikanfloat.x0 -- tebakan awal.
xatol -- toleransi absolut pada posisi (default
xtolerance).fatol -- toleransi absolut pada nilai fungsi (default
xtolerance).maxiter -- jumlah maksimum iterasi (default
200).
- Kembali:
lokasi minimum sebagai
float.
- scipy.optimize.newton(f: Callable[[float], float], x0: float, *, tol: float = xtolerance, rtol: float = rtolerance, maxiter: int = 50) float¶
Mencari nol dari fungsi skalar bernilai-real f menggunakan metode Newton-Raphson (secant).
- Parameter:
f -- callable yang menerima satu
floatdan mengembalikanfloat.x0 -- tebakan awal.
tol -- toleransi absolut pada akar (default
xtolerance).rtol -- toleransi relatif pada akar (default
rtolerance).maxiter -- jumlah maksimum iterasi (default
50).
- Kembali:
lokasi akar sebagai
float.