Add norm and norm's unittest.
This commit is contained in:
@@ -288,3 +288,23 @@ TEST_F(Function1D_Test, conj) {
|
||||
EXPECT_DOUBLE_AE(result.getData()[5],2);
|
||||
EXPECT_DOUBLE_AE((double)result.getValueType(), (double)Aurora::Normal);
|
||||
}
|
||||
|
||||
TEST_F(Function1D_Test, norm) {
|
||||
double *data = new double[3]{1,2,-3};
|
||||
auto matrix = Aurora::Matrix::fromRawData(data, 3);
|
||||
auto result = Aurora::norm(matrix,Aurora::NormMethod::Norm1);
|
||||
EXPECT_DOUBLE_AE(result,6);
|
||||
result = Aurora::norm(matrix,Aurora::NormMethod::Norm2);
|
||||
EXPECT_DOUBLE_AE(result,3.74166);
|
||||
result = Aurora::norm(matrix,Aurora::NormMethod::NormF);
|
||||
EXPECT_DOUBLE_AE(result,3.74166);
|
||||
|
||||
data = new double[8]{1,2,-3,6,7,9,22.3,-8.6};
|
||||
matrix = Aurora::Matrix::fromRawData(data, 4,2);
|
||||
result = Aurora::norm(matrix,Aurora::NormMethod::Norm1);
|
||||
EXPECT_DOUBLE_AE(result,46.9);
|
||||
result = Aurora::norm(matrix,Aurora::NormMethod::Norm2);
|
||||
EXPECT_DOUBLE_AE(result,26.7284);
|
||||
result = Aurora::norm(matrix,Aurora::NormMethod::NormF);
|
||||
EXPECT_DOUBLE_AE(result,27.4089);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user