entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Problema calculando determinante en Python

Hola, estoy intentando calcular el determinante de una matriz esta [[7,4,-1],[-3,12,5],[6,-8,-22]], debo calcular los eigen valores de
T = inversa(D)(L+U) y D = [[7,0,0],[0,12,0],[0,0,-22]], L = [[0,0,0],[3,0,0],[-6,8,0]] y U = [[0,-4,1],[0,0,-5],[0,0,0]],(L y U los cambie de signo). Haciendo inversa(D)(L+U) me da [[0,-4/7,1/7],[1/4,0,-5/12],[3/11,-4/11,0]] si le saco los valores me da -1 y 1

Estoy utilizando numpy y scipy para comprobar si lo estoy haciendo bien, pero haciendolo de esta manera no me funciona me da como resultado una matriz de ceros

import numpy as np
from scipy import linalg

D = np.array([[7,0,0],[0,12,0],[0,0,-22]])
L = np.array([[0,0,0],[3,0,0],[-6,8,0]])
U = np.array([[0,-4,1],[0,0,-5],[0,0,0]])
A = linalg.inv(D)*(L+U)
la, v = linalg.eig(A)
l1,l2,l3 = la
print(l1, l2, l3)

pero si lo hago de esta manera si me da como resultado -1 y 1

import numpy as np
from scipy import linalg

A = np.array([[0,-4/7,1/7],[1/4,0,-5/12],[3/11,-4/11,0]])
la, v = linalg.eig(A)
l1,l2,l3 = la
print(l1, l2, l3)

Alguien sabe por que la primera forma no me funciona.
Gracias

1 Respuesta

1voto

carlossevi Puntos59840

Tienes un error en la sintáxis del operador para multiplicar matrices. En esta lección he encontrado lo siguiente: Warning, array multiplication is not matrix multiplication.

c * c  # NOT matrix multiplication!

El operador correcto se utiliza mediante el método dot() (ejemplo: c.dot(c)).
En tu código:

# A = linalg.inv(D)*(L+U)
A = linalg.inv(D).dot(L+U)

Por favor, accede o regístrate para responder a esta pregunta.

¿Conoces alguien que puede responder?
¡Comparte esta pregunta!


Actividad Reciente

  • africanus1989 ganó una medalla hace 56 minutos

    Buena Pregunta - Recibido +1 votos en pregunta
  • Maikelpr82 ganó una medalla hace 2 horas

    Club de los 100 - Received total of 100 points
  • Leonardo-Tadei ganó una medalla hace 7 horas

    Buena Respuesta - Recibido +1 votos en respuesta
  • JorgeL ganó una medalla hace 7 horas

    Buena Pregunta - Recibido +1 votos en pregunta
  • AdanCervera ganó una medalla hace 7 horas

    Buena Pregunta - Recibido +1 votos en pregunta
  • Leonardo-Tadei ganó una medalla hace 7 horas

    Buena Respuesta - Recibido +1 votos en respuesta
  • steven ganó una medalla hace 7 horas

    Buena Pregunta - Recibido +1 votos en pregunta
  • Alex_Numpaque comentó hace 7 horas

    encuesta php mysql
  • carlossevi ganó una medalla hace 7 horas

    Buen Comentario - Recibió +2 votos

¿Eres Usuario Apple?

...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta