From 6ae3cc6b8105c37c6fea840af2395e1972812387 Mon Sep 17 00:00:00 2001 From: Jaron Kent-Dobias Date: Thu, 14 Jan 2021 15:48:14 +0100 Subject: Catch errors in the J-perturbing loop and save entire vectors, not just their norm difference. --- langevin.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/langevin.cpp b/langevin.cpp index acac6c7..a4c9cf3 100644 --- a/langevin.cpp +++ b/langevin.cpp @@ -1,3 +1,4 @@ +#include #include #include @@ -131,7 +132,7 @@ int main(int argc, char* argv[]) { // simulation parameters double ε = 1e-4; - double εJ = 5e-2; + double εJ = 1e-2; double δ = 1e-2; // threshold for determining saddle double Δ = 1e-3; double γ = 1e-2; // step size @@ -219,10 +220,14 @@ int main(int argc, char* argv[]) { iterateOver(Jp, perturbJ); - Vector zSaddleNew = findSaddle(Jp, zSaddle, ε); - Vector zSaddlePrevNew = findSaddle(Jp, zSaddlePrev, ε); + try { + Vector zSaddleNew = findSaddle(Jp, zSaddle, ε); + Vector zSaddlePrevNew = findSaddle(Jp, zSaddlePrev, ε); - std::cout << (zSaddleNew - zSaddlePrevNew).norm() << std::endl; + std::cout << zSaddleNew.transpose() << " " << zSaddlePrevNew.transpose() << std::endl; + } catch (std::exception& e) { + std::cerr << "Couldn't find a saddle with new couplings, skipping." << std::endl; + } } return 0; -- cgit v1.2.3-70-g09d2