Add block function to Matrix.

This commit is contained in:
kradchen
2023-05-17 10:39:19 +08:00
parent f9e7df3f1c
commit 7babd216de
3 changed files with 86 additions and 1 deletions

View File

@@ -158,6 +158,22 @@ TEST_F(Matrix_Test, matrixSlice) {
auto D = C(0, 0, 0).toMatrix();
EXPECT_EQ(1, D.getDataSize());
EXPECT_EQ(9, D.getData()[0]);
double *dataD = Aurora::malloc(27);
for (int i = 0; i < 27; ++i) {
dataD[i] = (double) (i);
}
Aurora::Matrix D1 = Aurora::Matrix::New(dataD, 3, 3, 3);
auto r1 = D1.block(0, 0, 1);
EXPECT_EQ(2,r1.getDimSize(0));
EXPECT_EQ(3,r1.getData()[2]);
auto r2 = D1.block(1, 0, 0);
EXPECT_EQ(1,r2.getDimSize(1));
EXPECT_EQ(10,r2.getData()[4]);
auto r3 = D1.block(2, 1, 2);
EXPECT_EQ(2,r3.getDimSize(2));
EXPECT_EQ(9,r3.getData()[0]);
}
TEST_F(Matrix_Test, matrixOpertaor) {