cari
Rumahpembangunan bahagian belakangTutorial PythonProgram Python untuk mengira gamma logaritma bagi nombor tertentu

Program Python untuk mengira gamma logaritma bagi nombor tertentu

Dalam matematik, fungsi gamma dianggap sebagai pengembangan faktorial bagi sebarang nombor tertentu. Walau bagaimanapun, oleh kerana faktorial ditakrifkan hanya untuk nombor nyata, fungsi gamma berada di luar skop menentukan faktorial untuk semua nombor kompleks kecuali integer negatif. Ia diwakili oleh -

Γ(x) = (x-1)!

Fungsi gamma logaritma timbul kerana fungsi gamma hanya berkembang dengan cepat pada bilangan yang lebih besar, jadi penggunaan logaritma kepada gamma akan melambatkannya dengan banyak. Ia juga dikenali sebagai gamma logaritma semula jadi bagi nombor tertentu.

log(Γ(x)) = log((x-1)!)

Dalam bahasa pengaturcaraan Python, seperti bahasa pengaturcaraan lain, fungsi log-gamma dikira menggunakan fungsi math.lgamma(). Walau bagaimanapun, kami juga akan melihat beberapa cara lain untuk mengira log gamma nombor dalam artikel ini.

Senario input dan output

Mari kita lihat beberapa senario input-output untuk mencari fungsi log-gamma menggunakan kaedah math.lgamma().

Anggap bahawa input kepada fungsi log gamma ialah integer positif -

Input: 12
Result: 17.502307845873887

Anggap bahawa input kepada fungsi log gamma ialah integer negatif -

Input: -12
Result: “ValueError: math domain error”

Anggap bahawa input kepada fungsi log gamma adalah sifar -

Input: 0
Result: “ValueError: math domain error”

Anggap bahawa input kepada fungsi log gamma ialah nilai perpuluhan negatif yang hampir dengan sifar -

Input: -0.2
Result: 1.761497590833938

Anda mendapat ralat domain apabila menggunakan kaedah lgamma() kerana fungsi ditakrifkan untuk semua nombor kompleks tolak negatif "integer". Mari lihat pelbagai cara untuk mencari gamma log bagi nombor yang diberikan.

Gunakan fungsi math.lgamma()

Kaedah

lgamma() ditakrifkan dalam pustaka matematik dan mengembalikan nilai gamma logaritma asli bagi nombor tertentu. Sintaks kaedah ini ialah -

math.lgamma(x)

di mana x ialah sebarang nombor kompleks kecuali integer negatif.

Contoh

Contoh Python menggunakan fungsi math.lgamma() untuk mencari log gamma adalah seperti berikut -

# import math library
import math

#log gamma of positive integer
x1 = 10
print(math.lgamma(x1))

#log gamma of negative complex number
x2 = -1.2
print(math.lgamma(x2))

#log gamma of a positive complex number
x3 = 3.4
print(math.lgamma(x3))

Output

Keluaran kod python di atas ialah -

12.801827480081467
1.5791760340399836
1.0923280598027416

Gunakan fungsi math.gamma() dan math.log()

Dalam pendekatan lain, gamma logaritma sesuatu nombor boleh didapati dengan mencari gamma nombor itu menggunakan fungsi math.gamma(), dan kemudian menggunakan untuk menggunakan logaritma pada nilai gamma. b>math.log() fungsi. Di sini, kita hanya memecahkan fungsi lgamma() kepada beberapa langkah.

Contoh

Pelaksanaan python bagi proses di atas adalah seperti berikut -

# import math library
import math

#log gamma of positive integer
x1 = math.gamma(10)
print(math.log(x1))

#log gamma of negative complex number
x2 = math.gamma(-1.2)
print(math.log(x2))

#log gamma of a positive complex number
x3 = math.gamma(3.4)
print(math.log(x3))

Output

Output yang diperolehi adalah seperti berikut -

12.801827480081469
1.5791760340399839
1.0923280598027414

Dengan menggunakan logaritma kepada faktorial nombor

Cara yang lebih mudah ialah mencari pemfaktoran bagi nombor tertentu, kerana fungsi gamma ditakrifkan sebagai pemfaktoran bagi nombor kompleks, dan mengira pemfaktoran dengan menggunakan logaritma padanya menggunakan kaedah math.log().

Contoh

Dalam contoh Python ini, kita dapati gamma logaritma nombor menggunakan kaedah faktorial dan math.log(). Satu-satunya kelemahan menggunakan kaedah ini ialah ia hanya berfungsi dengan integer positif.

# import math library
import math

def factorial(n):
   if n == 1:
      return 1
   else:
      return n*factorial(n-1)
	
#log gamma of positive integer
x1 = 10
y1 = factorial(x1-1)
print(math.log(y1))

x2 = 3
y2 = factorial(x2-1)
print(math.log(y2))

#log gamma of a positive complex number
x3 = 3.4
y3 = factorial(x3-1)
print(math.log(y3))

Output

Keluaran ialah -

12.801827480081469
0.6931471805599453
RecursionError: maximum recursion depth exceeded in comparison

Atas ialah kandungan terperinci Program Python untuk mengira gamma logaritma bagi nombor tertentu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:tutorialspoint. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Bagaimana tatasusunan digunakan dalam pengkomputeran saintifik dengan python?Bagaimana tatasusunan digunakan dalam pengkomputeran saintifik dengan python?Apr 25, 2025 am 12:28 AM

Arraysinpython, terutamanya yang, arecrucialinscientificificputingputingfortheirefficiencyandversatility.1) mereka yang digunakan untuk

Bagaimana anda mengendalikan versi python yang berbeza pada sistem yang sama?Bagaimana anda mengendalikan versi python yang berbeza pada sistem yang sama?Apr 25, 2025 am 12:24 AM

Anda boleh menguruskan versi python yang berbeza dengan menggunakan Pyenv, Venv dan Anaconda. 1) Gunakan pyenv untuk menguruskan pelbagai versi python: Pasang pyenv, tetapkan versi global dan tempatan. 2) Gunakan VENV untuk mewujudkan persekitaran maya untuk mengasingkan kebergantungan projek. 3) Gunakan Anaconda untuk menguruskan versi python dalam projek sains data anda. 4) Simpan sistem python untuk tugas peringkat sistem. Melalui alat dan strategi ini, anda dapat menguruskan versi Python yang berbeza untuk memastikan projek yang lancar.

Apakah beberapa kelebihan menggunakan array numpy melalui array python standard?Apakah beberapa kelebihan menggunakan array numpy melalui array python standard?Apr 25, 2025 am 12:21 AM

Numpyarrayshaveseveraladvantagesoverstanderardpythonarrays: 1) thearemuchfasterduetoc-assedimplementation, 2) thearemorememory-efficient, antyedlargedataSets, and3) theyofferoptimized, vectorizedfuncionsformathhematicalicalicalicialisation

Bagaimanakah sifat tatasusunan homogen mempengaruhi prestasi?Bagaimanakah sifat tatasusunan homogen mempengaruhi prestasi?Apr 25, 2025 am 12:13 AM

Kesan homogenitas tatasusunan pada prestasi adalah dwi: 1) homogenitas membolehkan pengkompil untuk mengoptimumkan akses memori dan meningkatkan prestasi; 2) tetapi mengehadkan kepelbagaian jenis, yang boleh menyebabkan ketidakcekapan. Singkatnya, memilih struktur data yang betul adalah penting.

Apakah beberapa amalan terbaik untuk menulis skrip python yang boleh dilaksanakan?Apakah beberapa amalan terbaik untuk menulis skrip python yang boleh dilaksanakan?Apr 25, 2025 am 12:11 AM

ToCraftExecutablePythonscripts, ikutiTheseBestPractics: 1) addAshebangline (#!/Usr/bin/envpython3) tomakethescriptexecutable.2) setpermissionswithchmod xyour_script.py.3)

Bagaimanakah array numpy berbeza dari tatasusunan yang dibuat menggunakan modul array?Bagaimanakah array numpy berbeza dari tatasusunan yang dibuat menggunakan modul array?Apr 24, 2025 pm 03:53 PM

Numpyarraysarebetterfornumericationsoperationsandmulti-dimensialdata, whiletheArrayModuleissuitiableforbasic, ingatan-efisienArrays.1) numpyexcelsinperformanceandfunctionalityforlargedatasetsandcomplexoperations.2) thearrayModeMoremoremory-efficientModeMoremoremoremory-efficientModeMoremoremoremory-efficenceismemoremoremoremoremoremoremoremory-efficenceismemoremoremoremoremorem

Bagaimanakah penggunaan array Numpy berbanding dengan menggunakan array modul array di Python?Bagaimanakah penggunaan array Numpy berbanding dengan menggunakan array modul array di Python?Apr 24, 2025 pm 03:49 PM

NumpyarraysareBetterforheavynumericalcomputing, whilethearraymoduleismoresuitifFormemory-constrainedprojectswithsimpledatypes.1) numpyarraysofferversativilityandperformanceForlargedATAsetSandcomplexoperations.2)

Bagaimanakah modul CTYPES berkaitan dengan tatasusunan di Python?Bagaimanakah modul CTYPES berkaitan dengan tatasusunan di Python?Apr 24, 2025 pm 03:45 PM

ctypesallowscreatingandmanipulatingc-stylearraysinpython.1) usectypestointerwithclibrariesforperformance.2) createec-stylearraysfornumericalcomputations.3) Passarraystocfuntionsforficientsoperations.however, becautiousofmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmemmem

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.