Tengo un problema en el que necesito encontrar todos los pares propios positivos (ya que el valor propio es positivo) de una matriz no simétrica pequeña (generalmente más pequeña que 60x60). Puedo dejar de calcular cuando el valor propio es menor que un cierto umbral. Sé que los valores propios son reales. ¿Alguna sugerencia sobre algoritmos que podría usar para tratar de obtener el mejor rendimiento? Tengo que hacer varios miles de estas descomposiciones, por lo que la velocidad es importante.
Gracias de antemano.
EDITAR: Necesito hacer esto en la GPU en la memoria compartida. Las matrices tampoco son necesariamente del mismo tamaño. No conozco ninguna biblioteca que haga esto en este momento. Se agradecerán sugerencias de algoritmos que se adapten bien al problema.
fuente
Respuestas:
Sin hacer muchas búsquedas, te recomiendo que mires la biblioteca MAGMA . Código de libre acceso con soporte continuo. NVIDIA reconoció a MAGMA como "Un gran avance en soluciones para problemas de valor propio".
También hay una biblioteca CULA , que generalmente es un producto comercial, aunque recientemente se ha hecho gratis para uso académico (ver detalles aquí ).
fuente
Use las funciones en LAPACK, es poco probable que pueda vencerlas en su propia implementación.
fuente