diff options
author | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2021-02-17 16:14:33 +0100 |
---|---|---|
committer | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2021-02-17 16:14:33 +0100 |
commit | 12f15f49cd8cc4ab9c809700e8cb88a0efe198d8 (patch) | |
tree | 3b7e973ce93ce942563a55363c3edd8c883da48d /dynamics.hpp | |
parent | 95df02c90a455c2e539e795acb1921b688e8bc66 (diff) | |
download | code-12f15f49cd8cc4ab9c809700e8cb88a0efe198d8.tar.gz code-12f15f49cd8cc4ab9c809700e8cb88a0efe198d8.tar.bz2 code-12f15f49cd8cc4ab9c809700e8cb88a0efe198d8.zip |
Rearranged some functions among files, and wrote the normalize function to take generic Eigen expressions.
Diffstat (limited to 'dynamics.hpp')
-rw-r--r-- | dynamics.hpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/dynamics.hpp b/dynamics.hpp index 22d590a..d421d13 100644 --- a/dynamics.hpp +++ b/dynamics.hpp @@ -21,8 +21,7 @@ std::tuple<double, Vector<Scalar>> gradientDescent(const Tensor<Scalar, p>& J, c auto [W, dW] = WdW(J, z); while (W > ε) { - Vector<Scalar> zNewTmp = z - γ * dW.conjugate(); - Vector<Scalar> zNew = normalize(zNewTmp); + Vector<Scalar> zNew = normalize(z - γ * dW.conjugate()); auto [WNew, dWNew] = WdW(J, zNew); @@ -102,8 +101,7 @@ std::tuple<double, Vector<Scalar>> metropolis(const Tensor<Scalar, p>& J, const std::uniform_real_distribution<double> D(0, 1); for (unsigned i = 0; i < N; i++) { - Vector<Scalar> zNewTmp = z + γ * randomVector<Scalar>(z.size(), d, r); - Vector<Scalar> zNew = normalize(zNewTmp); + Vector<Scalar> zNew = normalize(z + γ * randomVector<Scalar>(z.size(), d, r)); double ENew = energy(J, zNew); |