Skip to content

Commit 4ccba6f

Browse files
committed
Address the Rabbit's new comment
1 parent 9ff4a80 commit 4ccba6f

1 file changed

Lines changed: 12 additions & 16 deletions

File tree

test/algorithms/test_qft.cpp

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -99,22 +99,20 @@ TEST_P(QFT, Functionality) {
9999
ASSERT_EQ(dd->cn.realCount(),
100100
1ULL << (std::max<std::size_t>(2UL, nqubits) - 2));
101101

102+
const auto expectedAmplitude =
103+
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits));
104+
102105
// top edge weight should equal (1/sqrt(2))^n
103-
EXPECT_NEAR(dd::RealNumber::val(func.w.r),
104-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
106+
EXPECT_NEAR(dd::RealNumber::val(func.w.r), expectedAmplitude,
105107
dd::RealNumber::eps);
106108

107109
// first row and first column should consist only of (1/sqrt(2))^n entries
108110
for (std::uint64_t i = 0; i < 1ULL << nqubits; ++i) {
109111
auto c = func.getValueByIndex(dd->qubits(), 0, i);
110-
EXPECT_NEAR(c.real(),
111-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
112-
dd::RealNumber::eps);
112+
EXPECT_NEAR(c.real(), expectedAmplitude, dd::RealNumber::eps);
113113
EXPECT_NEAR(c.imag(), 0, dd::RealNumber::eps);
114114
c = func.getValueByIndex(dd->qubits(), i, 0);
115-
EXPECT_NEAR(c.real(),
116-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
117-
dd::RealNumber::eps);
115+
EXPECT_NEAR(c.real(), expectedAmplitude, dd::RealNumber::eps);
118116
EXPECT_NEAR(c.imag(), 0, dd::RealNumber::eps);
119117
}
120118
dd->decRef(func);
@@ -144,22 +142,20 @@ TEST_P(QFT, FunctionalityRecursive) {
144142
ASSERT_EQ(dd->cn.realCount(),
145143
1ULL << (std::max<std::size_t>(2UL, nqubits) - 2));
146144

145+
const auto expectedAmplitude =
146+
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits));
147+
147148
// top edge weight should equal (1/sqrt(2))^n
148-
EXPECT_NEAR(dd::RealNumber::val(func.w.r),
149-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
149+
EXPECT_NEAR(dd::RealNumber::val(func.w.r), expectedAmplitude,
150150
dd::RealNumber::eps);
151151

152152
// first row and first column should consist only of (1/sqrt(2))^n entries
153153
for (std::uint64_t i = 0; i < 1ULL << nqubits; ++i) {
154154
auto c = func.getValueByIndex(dd->qubits(), 0, i);
155-
EXPECT_NEAR(c.real(),
156-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
157-
dd::RealNumber::eps);
155+
EXPECT_NEAR(c.real(), expectedAmplitude, dd::RealNumber::eps);
158156
EXPECT_NEAR(c.imag(), 0, dd::RealNumber::eps);
159157
c = func.getValueByIndex(dd->qubits(), i, 0);
160-
EXPECT_NEAR(c.real(),
161-
static_cast<dd::fp>(std::pow(1.0 / std::sqrt(2.0), nqubits)),
162-
dd::RealNumber::eps);
158+
EXPECT_NEAR(c.real(), expectedAmplitude, dd::RealNumber::eps);
163159
EXPECT_NEAR(c.imag(), 0, dd::RealNumber::eps);
164160
}
165161
dd->decRef(func);

0 commit comments

Comments
 (0)