[BAEL-2996] Apache Commons Math3 example

This commit is contained in:
dupirefr 2019-06-08 14:58:07 +02:00
parent d2ae74a037
commit ddc85d20b9
2 changed files with 47 additions and 0 deletions

View File

@ -0,0 +1,6 @@
package com.baeldung.commons.math3;
public class MatrixMultiplication {
}

View File

@ -0,0 +1,41 @@
package com.baeldung.commons.math;
import org.apache.commons.math3.linear.Array2DRowRealMatrix;
import org.apache.commons.math3.linear.RealMatrix;
import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
class RealMatrixUnitTest {
@Test
void givenTwoMatrices_whenMultiply_thenMultiplicatedMatrix() {
RealMatrix firstMatrix = new Array2DRowRealMatrix(
new double[][] {
new double[] {1d, 5d},
new double[] {2d, 3d},
new double[] {1d ,7d}
}
);
RealMatrix secondMatrix = new Array2DRowRealMatrix(
new double[][] {
new double[] {1d, 2d, 3d, 7d},
new double[] {5d, 2d, 8d, 1d}
}
);
RealMatrix expected = new Array2DRowRealMatrix(
new double[][] {
new double[] {26d, 12d, 43d, 12d},
new double[] {17d, 10d, 30d, 17d},
new double[] {36d, 16d, 59d, 14d}
}
);
RealMatrix actual = firstMatrix.multiply(secondMatrix);
assertThat(actual).isEqualTo(expected);
}
}