Mátrix determinánsa

Innen: testwiki
A lap korábbi változatát látod, amilyen imported>LinguisticMystic 2024. december 18., 22:16-kor történt szerkesztése után volt.
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)
Ugrás a navigációhoz Ugrás a kereséshez

Sablon:Hunfn

  1. Sablon:Label A determináns a valós, négyzetes mátrixokhoz rendelt valós szám, ahol a hozzárendelés egy n×n függvényként van definiálva. Tulajdonságai levezethetőek a valós számok, mint test, tulajdonságaiból, így általánosabban is bevezethető a fogalom. A vegyes szorzat általánosításának tekinthető. Legyen T test, d:Tn×nT függvény és ATn×n négyzetes mátrix. Jelölje aijT a mátrix i-edik sorának j-edik elemét. A mátrix determinánsának nevezzük az alábbi formula által hozzárendelt, d(A)-val jelölt elemet:
    d(A):=(i1,i2,,in)(1)I(i1,i2,,in)j=1najij, ahol:

A determináns néhány szokásos jelölése:

  • a mátrix megadásával: det(A), |A| ill. det|A|;
  • vektorrendszerrel: det(a1,a2,,an);
  • mátrix oszlopvektoraival: det(a1a2an);
  • a mátrixelemek megadásával: det(a11a12a1nan1an2ann), illetve |a11a12a1nan1an2ann|.

A mátrix determinánsának kiszámításához a Pythonban a numpy vagy a scipy könyvtárakat használhatjuk. Az alábbiakban bemutatok példákat a numpy könyvtár segítségével, amely a legelterjedtebb eszköz a mátrixok kezelésére.



Determináns számítása numpy segítségével

1. Egyszerű példa egy 2x2-es mátrixra

import numpy as np

# Mátrix definiálása
matrix = np.array([[1, 2], [3, 4]])

# Determináns kiszámítása
det = np.linalg.det(matrix)

print(f"A mátrix:\n{matrix}")
print(f"A determináns értéke: {det}")

2. Nagyobb mátrix (pl. 3x3 vagy annál nagyobb)

import numpy as np

# Mátrix definiálása
matrix = np.array([[2, 1, 3],
                   [1, 2, 1],
                   [3, 1, 2]])

# Determináns kiszámítása
det = np.linalg.det(matrix)

print(f"A mátrix:\n{matrix}")
print(f"A determináns értéke: {det}")

Determináns kerekítése

A numpy.linalg.det által visszaadott érték lebegőpontos szám, amely apró pontatlanságokat tartalmazhat. A kerekítéshez használhatjuk a round függvényt.

det = round(np.linalg.det(matrix), 2)
print(f"A determináns kerekített értéke: {det}")

Interaktív program determináns számítására

Az alábbi program lehetőséget biztosít egyedi mátrix megadására a felhasználótól:

import numpy as np

# Mátrix bekérése a felhasználótól
n = int(input("Add meg a mátrix méretét (n x n): "))
matrix = []

print("Add meg a mátrix elemeit soronként (szóközzel elválasztva):")
for i in range(n):
    row = list(map(float, input(f"{i+1}. sor: ").split()))
    matrix.append(row)

matrix = np.array(matrix)

# Determináns kiszámítása
det = np.linalg.det(matrix)

print(f"A megadott mátrix:\n{matrix}")
print(f"A determináns értéke: {det:.2f}")

Példa futásra:

Add meg a mátrix méretét (n x n): 3
Add meg a mátrix elemeit soronként (szóközzel elválasztva):
1. sor: 2 1 3
2. sor: 1 2 1
3. sor: 3 1 2
A megadott mátrix:
[[2. 1. 3.]
 [1. 2. 1.]
 [3. 1. 2.]]
A determináns értéke: -12.00

Hasznos megjegyzések

  1. Ellenőrzések:
    • A mátrixnak négyzetesnek (n x n) kell lennie, különben a determináns nem értelmezhető.
  2. Kerekítés:
    • A determináns lebegőpontos eredménye miatt érdemes a kimenetet kerekíteni.
  3. Nulla determináns:
    • Ha a determináns értéke 0, a mátrix szinguláris, azaz nem invertálható.

Sablon:Hunl