En una entrada anterior hablé sobre la razón de ortogonalidad de Hadamard:
$$H(B) = \sqrt[n]{\frac{|det(B)|}{\prod_{i=1}^{n}\|\vec{b}_i\|}} $$
Podemos realizar un script en Python para calcular dicha razón, utilizando la librería NumPy:
import numpy as np
def razon_hadamard(B):
# Calculamos el valor absoluto del determinante de la matriz
det = np.abs(np.linalg.det(B))
# Si el determinante es 0 la matriz no es una base y la función devuelve 0
if not det:
return 0
n = len(B)
# Definimos una variable prod_norm que calcula el producto de la norma de cada vector (columna)
prod_norm = np.prod(np.linalg.norm(B, axis=0))
# Devolvemos la razón
return (det / prod_norm) ** (1/n)
By www.python.org - www.python.org, GPL, https://commons.wikimedia.org/w/index.php?curid=34991651
No hay comentarios:
Publicar un comentario