Math modülünde erf, erfc, gamma ve lgamma fonksiyonları ne işe yarıyor?

Ek bilgi olarak bu mesajın bu başlıkta bulunmasının bir sakıncası yoktur umarım.

Gamma fonksiyonunun formülü normalde şu şekildedir:
1
Ancak Daniel Bernoulli tarafından türetilen, pozitif kısmı gerçek olan karmaşık sayılar için, gama fonksiyonu yakınsak bir uyumsuz integral ile tanımlanır:
2
Kaynak: https://en.wikipedia.org/wiki/Gamma_function

Normalde Python’ın standart math modülü içinde integral almak için bir fonksiyon yok. Ama scipy modülü sayesinde integral hesaplamaları yapmak mümkün.

Örneğin:

from math import inf, e, gamma
from scipy.integrate import quad

f = lambda z: int(quad(lambda x: (x ** (z - 1)) * (e ** (-x)), 0, inf)[0])

print(f(6) == gamma(6))

İntegral işlemi ile ilgili başka bir örnek yapalım. Fonksiyonumuz f(x) = ax² + bx + c yapısında olsun.

f(x) = 3x² + 8x + 2 fonksiyonunun 0 ve 4 aralığındaki integralini bulmaya çalışalım.
3
Yukarıdaki integral problemi kodlara şu şekilde dönüştürülür:

from scipy.integrate import quad

integrand = lambda a, b, c, x: a * (x ** 2) + b * x + c

f = lambda a, b, c: quad(func=integrand, a=0, b=4, args=(a, b, c))[0]

print(f(3, 8, 2))
# Sonuç = 88

Daha fazla bilgi için scipy modülünün dökümantasyonunu inceleyebilirsiniz.

1 Beğeni