scipy.integrate — Sayısal integral alma¶
scipy.integrate alt modülü, gerçek değerli, tek değişkenli fonksiyonlar için sayısal integral alma rutinleri sağlar. Algoritmalar CPython’ın scipy.integrate modülünden taşınmamış, https://www.genivia.com/qthsh.html adresindeki referans uygulamadan türetilmiştir.
Sayısal integral alma en iyi sonucu float64 matematiği etkinken verir. float32 matematiğiyle rutinler yine de çalışır, ancak hassasiyet azalır. Gerekli hata toleransı eps anahtar kelime argümanıyla belirtilebilir; varsayılan, derleme zamanı etolerance değeridir (fp64 için 1e-14, fp32 için 1e-8). Karmaşık sayılar desteklenmez.
Fonksiyonlar¶
- scipy.integrate.quad(f: Callable[[float], float], a: float, b: float, *, order: int = 5, eps: float = etolerance) tuple[float, float]¶
Uyarlamalı Gauss-Kronrod (G10, K21) kuadratürü kullanarak f fonksiyonunun a ile b arasındaki integralini alır. Bu, önerilen genel amaçlı integral alıcıdır.
- Parametreler:
f – tek bir
floatalan ve birfloatdöndüren çağrılabilir nesne.a – alt integral sınırı.
b – üst integral sınırı.
order – integral alma derecesi (varsayılan
5).eps – hata toleransı (varsayılan
etolerance).
- Dönüşler:
integralin değerini ve bir hata tahminini veren, float türünde bir 2 öğeli
(result, error)demeti.
- scipy.integrate.romberg(f: Callable[[float], float], a: float, b: float, *, steps: int = 100, eps: float = etolerance) float¶
Romberg yöntemini kullanarak f fonksiyonunun a ile b arasındaki integralini alır; bu, integrand’ı eşit aralıklı noktalarda değerlendiren bir Newton-Cotes formülüdür. Sürekli türevleri olan integrand’lar için en uygunudur.
scipy.integrate.rombergfonksiyonunun CPython’da SciPy 1.12.0’dan beri kullanımdan kaldırıldığını unutmayın; yeni kod içinquad()tercih edin.- Parametreler:
f – tek bir
floatalan ve birfloatdöndüren çağrılabilir nesne.a – alt integral sınırı.
b – üst integral sınırı.
steps – adım sayısı (varsayılan
100).eps – hata toleransı (varsayılan
etolerance).
- Dönüşler:
integralin
floattüründeki değeri.
- scipy.integrate.simpson(f: Callable[[float], float], a: float, b: float, *, steps: int = 100, eps: float = etolerance) float¶
Uyarlamalı Simpson kuralını kullanarak f fonksiyonunun a ile b arasındaki integralini alır. CPython’ın
scipy.integrate.simpsonfonksiyonundan farklı olarak bu fonksiyon, önceden hesaplanmış fonksiyon değerlerinden oluşan bir dizi almak yerine bir çağrılabilir nesne alır ve örnek aralığını dahili olarak seçer.- Parametreler:
f – tek bir
floatalan ve birfloatdöndüren çağrılabilir nesne.a – alt integral sınırı.
b – üst integral sınırı.
steps – adım sayısı (varsayılan
100).eps – hata toleransı (varsayılan
etolerance).
- Dönüşler:
integralin
floattüründeki değeri.
- scipy.integrate.tanhsinh(f: Callable[[float], float], a: float, b: float, *, levels: int = 6, eps: float = etolerance) tuple[float, float]¶
Tanh-Sinh, Sinh-Sinh ve Exp-Sinh (çift üstel) kuadratür ailesini kullanarak f fonksiyonunun a ile b arasındaki integralini alır. Integrand’ın uç noktalarda tekillikleri veya sonsuz türevleri olduğunda kullanılacak rutin budur ve bu alt modülde sonsuz integral sınırlarını (örn.
-np.inf,np.inf) kabul eden tek rutindir.- Parametreler:
f – tek bir
floatalan ve birfloatdöndüren çağrılabilir nesne.a – alt integral sınırı;
-np.infolabilir.b – üst integral sınırı;
np.infolabilir.levels – iyileştirme seviyesi sayısı (varsayılan
6).eps – hata toleransı (varsayılan
etolerance).
- Dönüşler:
integralin değerini ve bir hata tahminini veren, float türünde bir 2 öğeli
(result, error)demeti.