From 024e3e46493fc8cf4f52a7b41c2207f8e7384232 Mon Sep 17 00:00:00 2001 From: Pauli Virtanen <pauli.t.virtanen@jyu.fi> Date: Tue, 16 Aug 2022 17:47:05 +0300 Subject: [PATCH] Same code for complex/AD pinning --- src/action.hpp | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/action.hpp b/src/action.hpp index 88b3b1c..1aa61b6 100644 --- a/src/action.hpp +++ b/src/action.hpp @@ -260,18 +260,14 @@ inline Scalar S(const array::ArrayView<const Mask, Shape0>& mask, if (mask(i,j) == Mask::VACUUM) { continue; } else if (mask(i,j) == Mask::TERMINAL) { - if constexpr (std::is_same_v<Scalar, Complex>) { - Qmat.part(i,j).matrix() = get_Q_matrix(Q.part(i,j)); - } else { - auto Qv = get_Q_matrix(Q.part(i,j)); - for (size_t p = 0; p < 4; ++p) { - for (size_t q = 0; q < 4; ++q) { - auto w = flat_value(Qv(p,q)); - Qmat(i,j,p,q) = w; - - /* Pin value to the flat value */ - S = S + (Qv(p,q) - w) * (Qv(p,q) - w); - } + auto Qv = get_Q_matrix(Q.part(i,j)); + for (size_t p = 0; p < 4; ++p) { + for (size_t q = 0; q < 4; ++q) { + auto w = flat_value(Qv(p,q)); + Qmat(i,j,p,q) = w; + + /* Pin value to the flat value */ + S = S + (Qv(p,q) - w) * (Qv(p,q) - w); } } } else { -- GitLab