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.ndarray L zodat A = 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). eigenvalues is een eendimensionale array met lengte N; eigenvectors is een N-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, list of range.

  • axis – optionele as waarlangs de norm wordt berekend. Als None (de standaardwaarde), wordt de norm over de afgevlakte invoer genomen en wordt een enkele float geretourneerd. Anders wordt de norm langs die as gereduceerd en wordt een numpy.ndarray geretourneerd.

Retourneert:

ofwel een Python float (wanneer axis gelijk is aan None of wanneer x een andere iterable dan een ndarray is) ofwel een numpy.ndarray waaruit 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' heeft Q de vorm (M, M) en heeft R de vorm (M, N). In de modus 'reduced' worden Q en R afgekapt tot respectievelijk de eerste min(M, N) kolommen en rijen.

Retourneert:

een 2-tuple (Q, R) van numpy.ndarray-objecten zodat m == Q @ R, met Q orthonormaal en R bovendriehoekig.

Veroorzaakt:

De decompositie is geïmplementeerd via opeenvolgende Givens-rotaties.