From 0a5e7e2bd0efd4c8cc6af8c14ec17ad97cf46c3e Mon Sep 17 00:00:00 2001 From: Nicolas Essing <n.essing@fz-juelich.de> Date: Fri, 5 Nov 2021 19:10:32 +0100 Subject: [PATCH] Corrected sign for negative magnetic moments in output of angle changes. --- source/KKRnano/source/ProcessKKRresults_mod.F90 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/KKRnano/source/ProcessKKRresults_mod.F90 b/source/KKRnano/source/ProcessKKRresults_mod.F90 index 62c197c39..2c63166ee 100644 --- a/source/KKRnano/source/ProcessKKRresults_mod.F90 +++ b/source/KKRnano/source/ProcessKKRresults_mod.F90 @@ -1814,12 +1814,14 @@ module ProcessKKRresults_mod end if ! Look for largest angle change of constraint atom - ! Normalize moment to get direction before fixing - newmoment = newmoment / sqrt(dot_product(newmoment, newmoment)) ! Calculate local frame of reference direction dir(1) = sin(theta_noco)*cos(phi_noco) dir(2) = sin(theta_noco)*sin(phi_noco) dir(3) = cos(theta_noco) + ! Normalize moment to get direction before fixing + newmoment = newmoment / sqrt(dot_product(newmoment, newmoment)) + ! For negative moments, correct sign + newmoment = newmoment * sign(1., dot_product(newmoment, dir)) ! Calculate change in angle constr_angle_change = acos(dot_product(newmoment, dir)) if (constr_angle_change > max_constr_angle_change) then -- GitLab