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

Şu 4 fonksiyon ne işe yarıyor:

  • erf
  • erfc
  • gamma
  • lgamma

erf: Gauss hata fonksiyonu

erfc: Tamamlayıcı hata fonksiyonu

gamma:: Faktöriyel’e benzer. factorial(4) == gamma(5)

lgamma: gamma’nın logaritması. lgamma(3) ~= log(gamma(3))

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 Like

Matematiğim şunları yapacak kadar iyi olsun başka bir şey istemiyorum.

33 yaşındayım, 30 yaşından sonra merakım doğrultusunda programlama öğrenmeye başladım ve daha öğrenecek çok şey var. Dilerim öğrenme motivasyonunuzu hiç kaybetmezsiniz.

Yolunuz açık olsun.

Teşekkür ederim. Galiba her şey zamanında güzel.

1 Like