numpy.linalg — Rutiner för linjär algebra¶
Undermodulen numpy.linalg tillhandahåller ett litet urval av rutiner för linjär algebra som arbetar på numpy.ndarray-objekt. Funktioner som arbetar på matriser kräver tvådimensionella matriser; att skicka matriser av en annan dimensionalitet utlöser ett ValueError. Komplexa dtyper stöds inte av denna undermodul.
Funktioner¶
- numpy.linalg.cholesky(A: ndarray) ndarray¶
Beräkna Cholesky-faktoriseringen av en positivt definit, symmetrisk kvadratisk matris.
- Parametrar:
A – en positivt definit, symmetrisk, tvådimensionell kvadratisk matris.
- Returer:
en undertriangulär
numpy.ndarrayLsådan attA = L @ L.T.- Höjer:
ValueError – om A inte är kvadratisk, inte symmetrisk eller inte positivt definit.
- numpy.linalg.det(m: ndarray) float¶
Beräkna determinanten för en kvadratisk matris.
- Parametrar:
m – en tvådimensionell kvadratisk matris.
- Returer:
determinanten för m som ett Python-
float. Returvärdet är alltid ett flyttal, även när indata är en heltalsmatris.- Höjer:
ValueError – om m inte är kvadratisk.
Beräkningen utförs med gausselimination med partiell pivotering.
- numpy.linalg.eig(m: ndarray) tuple[ndarray, ndarray]¶
Beräkna egenvärdena och egenvektorerna för en reell symmetrisk kvadratisk matris.
- Parametrar:
m – en tvådimensionell, reell, symmetrisk kvadratisk matris.
- Returer:
en 2-tupel
(eigenvalues, eigenvectors).eigenvaluesär en endimensionell matris av längdN;eigenvectorsär enN-gånger-N-matris vars kolumner är motsvarande egenvektorer.- Höjer:
ValueError – om m inte är kvadratisk, inte symmetrisk, eller om Jacobi-rotationsiterationen inte konvergerar.
- numpy.linalg.inv(m: ndarray) ndarray¶
Beräkna inversen av en kvadratisk matris.
- Parametrar:
m – en tvådimensionell kvadratisk matris.
- Returer:
inversen av m som en
numpy.ndarrayav flyttal.- Höjer:
ValueError – om m inte är kvadratisk eller är singulär.
Inverteringen utförs med Gauss-Jordan-elimination.
- numpy.linalg.norm(x: ndarray, axis: int | None = None) float | ndarray¶
Beräkna 2-normen för en vektor eller matris.
- Parametrar:
x – en
numpy.ndarray,tuple,listellerrange.axis – valfri axel längs vilken normen beräknas. Om
None(standardvärdet) tas normen över de utplattade indata och ett endafloatreturneras. Annars reduceras normen längs den axeln och ennumpy.ndarrayreturneras.
- Returer:
antingen ett Python-
float(när axis ärNoneeller när x är en annan iterabel än en ndarray) eller ennumpy.ndarraymed den axeln borttagen.
2-normen beräknas som
sqrt(sum(x*x))med hjälp av ett numeriskt stabilt löpande medelvärde, så att operationen inte kräver ytterligare lagring proportionell mot indatas storlek.
- numpy.linalg.qr(m: ndarray, mode: str = 'reduced') tuple[ndarray, ndarray]¶
Faktorisera en matris som produkten av en ortonormal matris och en övertriangulär matris.
- Parametrar:
m – en tvådimensionell matris av formen
(M, N).mode – antingen
'reduced'(standard) eller'complete'. I läget'complete'harQformen(M, M)ochRformen(M, N). I läget'reduced'trunkerasQochRtill de ledandemin(M, N)kolumnerna respektive raderna.
- Returer:
en 2-tupel
(Q, R)avnumpy.ndarray-objekt sådana attm == Q @ R, medQortonormal ochRövertriangulär.- Höjer:
TypeError – om m inte är en
numpy.ndarray.ValueError – om m inte är tvådimensionell eller mode inte är ett av de godtagna värdena.
Faktoriseringen är implementerad via successiva Givens-rotationer.