¿Dónde puedo obtener un solucionador de sistema lineal rápido escrito en D? Debe ser capaz de tomar una matriz cuadrada A y un vector b y resolver la ecuación Ax = b para b e, idealmente, también realizar la inversión explícita sobre A. Tengo uno que escribí yo mismo, pero es bastante lento, probablemente porque es completamente ingenuo. Sin embargo, para mi caso de uso, necesito algo con los siguientes absolutos y no negociables requisitos, es decir, si no cumple con estos, entonces no importa lo contrario de lo bueno que es lo contrario:Solucionador de sistema lineal rápido para D?
Debe tener licencia de dominio público, licencia de Boost o alguna licencia permisiva similar. Idealmente, no debería requerir atribución en binarios (es decir, no BSD), aunque este punto es algo negociable.
Debe estar escrito en D puro o traducirse fácilmente a puro D. El código Fortran inescrutable (es decir, LAPACK) no es una buena respuesta, sin importar qué tan rápido sea.
Debe estar optimizado para sistemas grandes (es decir, n> 1000). No quiero que algo diseñado para programadores de juegos resuelva matrices 4x4 realmente, muy rápido.
No debe estar inextricablemente vinculado a una enorme biblioteca de cosas que no necesito.
Editar: La razón de estos requisitos aparentemente locos es que necesito el código para una biblioteca de código abierto con licencia permisiva que no quiere tener ninguna dependencia de terceros.
¿Qué propiedades tiene A? ¿Simétrico? ¿Positivo? ¿Positivo definitivo? ¿Bandas? ¿Escaso? ¡Solicitas algo rápido, dominio público y excluyes LAPACK! ¡No parece que realmente quieras una solución! ¿Sabe que todos los solucionadores lineales de rendimiento se derivan de The Handbook? –
¿Qué es "El manual"? – Baxissimo
@Baxissimo "The Handbook for Automatic Computation: Linear Algebra" publicado originalmente en 1972, escrito por JH Wilkinson y C. Reinsch –