numpy.linalg — Rotinas de álgebra linear¶
The numpy.linalg submodule provides a small selection of linear-algebra
routines that operate on numpy.ndarray objects. Functions that operate
on matrices require two-dimensional arrays; passing arrays of a different
dimensionality raises a ValueError.
Funções¶
- numpy.linalg.cholesky(A: ndarray) ndarray¶
Calcula a decomposição de Cholesky de uma matriz quadrada simétrica definida positiva.
- Parâmetros:
A – uma matriz quadrada simétrica bidimensional definida positiva.
- Retorno:
um
numpy.ndarraytriangular inferiorLtal queA = L @ L.T.- Levanta:
ValueError – se A não for quadrada, não for simétrica ou não for definida positiva.
- numpy.linalg.det(m: ndarray) float¶
Calcula o determinante de uma matriz quadrada.
- Parâmetros:
m – uma matriz quadrada bidimensional.
- Retorno:
o determinante de m como um
floatde Python. O valor de retorno é sempre um float, mesmo quando a entrada é um array de inteiros.- Levanta:
ValueError – se m não for quadrada.
O cálculo é efectuado por eliminação gaussiana com pivotagem parcial.
- numpy.linalg.eig(m: ndarray) tuple[ndarray, ndarray]¶
Calcula os valores próprios e vetores próprios de uma matriz quadrada simétrica real.
- Parâmetros:
m – uma matriz quadrada simétrica real bidimensional.
- Retorno:
um 2-tuplo
(eigenvalues, eigenvectors).eigenvaluesé um array unidimensional de comprimentoN;eigenvectorsé um arrayN-por-Ncujas colunas são os vetores próprios correspondentes.- Levanta:
ValueError – se m não for quadrada, não for simétrica, ou se a iteração de rotação de Jacobi não convergir.
- numpy.linalg.inv(m: ndarray) ndarray¶
Calcula a inversa de uma matriz quadrada.
- Parâmetros:
m – uma matriz quadrada bidimensional.
- Retorno:
a inversa de m como um
numpy.ndarrayde floats.- Levanta:
ValueError – se m não for quadrada ou for singular.
A inversão é efectuada por eliminação de Gauss-Jordan.
- numpy.linalg.norm(x: ndarray, axis: int | None = None) float | ndarray¶
Calcula a norma-2 de um vetor ou matriz.
- Parâmetros:
x – um
numpy.ndarray,tuple,listourange.axis – eixo opcional ao longo do qual a norma é calculada. Se
None(predefinição), a norma é calculada sobre a entrada aplanada e é devolvido um únicofloat. Caso contrário, a norma é reduzida ao longo desse eixo e é devolvido umnumpy.ndarray.
- Retorno:
um
floatde Python (quando axis éNoneou quando x é um iterável diferente de ndarray) ou umnumpy.ndarraycom esse eixo removido.
A norma-2 é calculada como
sqrt(sum(x*x))utilizando uma média em execução numericamente estável, pelo que a operação não requer armazenamento adicional proporcional ao tamanho da entrada.
- numpy.linalg.qr(m: ndarray, mode: str = 'reduced') tuple[ndarray, ndarray]¶
Factoriza uma matriz como produto de uma matriz ortonormal e uma matriz triangular superior.
- Parâmetros:
m – uma matriz bidimensional de forma
(M, N).mode –
'reduced'(predefinição) ou'complete'. No modo'complete',Qtem forma(M, M)eRtem forma(M, N). No modo'reduced',QeRsão truncados às primeirasmin(M, N)colunas e linhas, respectivamente.
- Retorno:
um 2-tuplo
(Q, R)de objetosnumpy.ndarraytais quem == Q @ R, comQortonormal eRtriangular superior.- Levanta:
TypeError – se m não for um
numpy.ndarray.ValueError – se m não for bidimensional ou se mode não for um dos valores aceites.
A decomposição é implementada através de rotações de Givens sucessivas.