Bibliotecas de matrices Java

Me preguntaba si alguna de las bibliotecas de matrices conocidas para Java, como Colt o EJML, en realidad proporcionan una funcionalidad similar a MatLab. Por ejemplo, parece que no puedo encontrar ningún lugar en la definición de su método API simple para sumar o restar dos matrices / vectores entre sí, lo que parece ser la operación más común utilizada. ¿Me estoy perdiendo de algo?

Respuesta 1

Prueba la biblioteca Apache Commons Math. El paquete org.apache.commons.math3.linear contiene las funciones que desea. Página de inicio

Respuesta: 2

Algunas bibliotecas de Java para álgebra lineal son:

EDITAR tal vez podamos ampliar esta lista cada vez que uno se encuentre y usted sepa: el mundo sigue moviéndose:

Nota: Personalmente: uso Apache Commons Math y Colt en mi propio proyecto ( http://www.finmath.net ). Si bien las matemáticas comunes se desarrollan activamente, descubrí que Colt es aún más rápido en algunas tareas (como la descomposición de valores propios). Por esa razón, uso algún tipo de contenedor que me permite cambiar rápidamente la biblioteca subyacente (solo necesito algunas cosas como resolver sistemas de ecuaciones y descomposición de valores propios).

Respuesta: 3

La interfaz para COLT le ofrece un OP genérico: assign(matrix, function) que puede usar para sumar o restar matrices y vectores.

Como assign()dice el javadocs para :

Asigna el resultado de una función a cada celda; x[row,col] =function(x[row,col],y[row,col]).

Entonces, al usar una función de suma como function, puede agregar matrices.

Respuesta: 4

También hay una biblioteca la4j que admite funciones de programación funcional como functores. Puede usar el método transform () con la función manual de orden alto.

Respuesta: 5

Puedes usar este . Es muy simple y proporciona operaciones básicas de matriz.

Puede sumar / restar / multiplicar, etc. matrices 2D y vectores.

Respuesta: 6

¿Cómo reemplazar el siguiente código usando Java 8 Opcionales (programación funcional)? ClassA classA = dbService.findByA (a); if (classA == null) {classA = dbService.findByB (b); } if (classA == null) {...

Quiero crear un objeto que tenga dos tipos genéricos, pero en algunos lugares se crea con un solo tipo genérico dado. En esos casos, el segundo tipo no tiene importancia, por lo que quiero poder ...

He creado 2 complementos, implementando un complemento de controlador ODA y su complemento de interfaz de usuario para la extensión BIRT a Eclipse. Mis complementos funcionan como se esperaba cuando eclipse inicia otra aplicación de eclipse ...

Cada vez que intento ejecutar una aplicación pequeña que utiliza un DB Derby, aparece este mensaje de error: Mensaje: La base de datos en / path / to / db / TheDB tiene un formato incompatible con la versión actual del software ...