summaryrefslogtreecommitdiff
path: root/dynamics.hpp
diff options
context:
space:
mode:
authorJaron Kent-Dobias <jaron@kent-dobias.com>2021-02-17 16:14:33 +0100
committerJaron Kent-Dobias <jaron@kent-dobias.com>2021-02-17 16:14:33 +0100
commit12f15f49cd8cc4ab9c809700e8cb88a0efe198d8 (patch)
tree3b7e973ce93ce942563a55363c3edd8c883da48d /dynamics.hpp
parent95df02c90a455c2e539e795acb1921b688e8bc66 (diff)
downloadcode-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.hpp6
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);