numpy.linalg — Routines voor lineaire algebra¶
De submodule numpy.linalg biedt een kleine selectie van routines voor lineaire algebra die werken op numpy.ndarray-objecten. Functies die op matrices werken, vereisen tweedimensionale arrays; het doorgeven van arrays met een andere dimensionaliteit werpt een ValueError op. Complexe dtypes worden door deze submodule niet ondersteund.
Functies¶
- numpy.linalg.cholesky(A: ndarray) ndarray¶
Bereken de Cholesky-decompositie van een positief-definiete, symmetrische vierkante matrix.
- Parameters:
A – een positief-definiete, symmetrische, tweedimensionale vierkante matrix.
- Retourneert:
een onderdriehoekige
numpy.ndarrayLzodatA = L @ L.T.- Veroorzaakt:
ValueError – als A niet vierkant, niet symmetrisch of niet positief definiet is.
- numpy.linalg.det(m: ndarray) float¶
Bereken de determinant van een vierkante matrix.
- Parameters:
m – een tweedimensionale vierkante matrix.
- Retourneert:
de determinant van m als een Python
float. De geretourneerde waarde is altijd een float, zelfs wanneer de invoer een integer-array is.- Veroorzaakt:
ValueError – als m niet vierkant is.
De berekening wordt uitgevoerd met Gauss-eliminatie met gedeeltelijke pivotering.
- numpy.linalg.eig(m: ndarray) tuple[ndarray, ndarray]¶
Bereken de eigenwaarden en eigenvectoren van een reële symmetrische vierkante matrix.
- Parameters:
m – een tweedimensionale, reële, symmetrische vierkante matrix.
- Retourneert:
een 2-tuple
(eigenvalues, eigenvectors).eigenvaluesis een eendimensionale array met lengteN;eigenvectorsis eenN-bij-N-array waarvan de kolommen de bijbehorende eigenvectoren zijn.- Veroorzaakt:
ValueError – als m niet vierkant of niet symmetrisch is, of als de Jacobi-rotatie-iteratie niet convergeert.
- numpy.linalg.inv(m: ndarray) ndarray¶
Bereken de inverse van een vierkante matrix.
- Parameters:
m – een tweedimensionale vierkante matrix.
- Retourneert:
de inverse van m als een float
numpy.ndarray.- Veroorzaakt:
ValueError – als m niet vierkant of singulier is.
De inversie wordt uitgevoerd met Gauss-Jordan-eliminatie.
- numpy.linalg.norm(x: ndarray, axis: int | None = None) float | ndarray¶
Bereken de 2-norm van een vector of matrix.
- Parameters:
x – een
numpy.ndarray,tuple,listofrange.axis – optionele as waarlangs de norm wordt berekend. Als
None(de standaardwaarde), wordt de norm over de afgevlakte invoer genomen en wordt een enkelefloatgeretourneerd. Anders wordt de norm langs die as gereduceerd en wordt eennumpy.ndarraygeretourneerd.
- Retourneert:
ofwel een Python
float(wanneer axis gelijk is aanNoneof wanneer x een andere iterable dan een ndarray is) ofwel eennumpy.ndarraywaaruit die as is verwijderd.
De 2-norm wordt berekend als
sqrt(sum(x*x))met behulp van een numeriek stabiel lopend gemiddelde, zodat de bewerking geen extra opslag vereist die evenredig is aan de grootte van de invoer.
- numpy.linalg.qr(m: ndarray, mode: str = 'reduced') tuple[ndarray, ndarray]¶
Ontbind een matrix als het product van een orthonormale matrix en een bovendriehoekige matrix.
- Parameters:
m – een tweedimensionale matrix met vorm
(M, N).mode – ofwel
'reduced'(standaard) ofwel'complete'. In de modus'complete'heeftQde vorm(M, M)en heeftRde vorm(M, N). In de modus'reduced'wordenQenRafgekapt tot respectievelijk de eerstemin(M, N)kolommen en rijen.
- Retourneert:
een 2-tuple
(Q, R)vannumpy.ndarray-objecten zodatm == Q @ R, metQorthonormaal enRbovendriehoekig.- Veroorzaakt:
TypeError – als m geen
numpy.ndarrayis.ValueError – als m niet tweedimensionaal is of mode niet een van de geaccepteerde waarden is.
De decompositie is geïmplementeerd via opeenvolgende Givens-rotaties.