Add cuda ifft_symmetric and unittest.

This commit is contained in:
sunwen
2023-12-14 17:57:53 +08:00
parent 5f906f78b8
commit d070edfef7
3 changed files with 54 additions and 3 deletions

View File

@@ -894,4 +894,17 @@ TEST_F(Function2D_Cuda_Test, sub2ind) {
{
EXPECT_FLOAT_EQ(result1[i], result2[i]);
}
}
TEST_F(Function2D_Cuda_Test, ifft_symmetric) {
float *input = new float[18]{10,2,1,3,4,4,16,3,1,2,15,-2,1,-3,4,-4,1,-3};
auto matrixHost = Aurora::Matrix::fromRawData(input,9,1,1,Aurora::Complex);
auto matrixDevice = matrixHost.toDeviceMatrix();
auto result1 = Aurora::ifft_symmetric(matrixHost,18);
auto result2 = Aurora::ifft_symmetric(matrixDevice,18).toHostMatrix();
EXPECT_FLOAT_EQ(result1.getDataSize(),result2.getDataSize());
for(unsigned int i=0; i<result1.getDataSize(); ++i)
{
EXPECT_FLOAT_AE(result1[i], result2[i]);
}
}