diff --git a/source/KKRnano/source/ProcessKKRresults_mod.F90 b/source/KKRnano/source/ProcessKKRresults_mod.F90 index bd9c3084a90ffe8f5f4e38d2953590b68e20d2e9..c3ed1dd5f76008c634de9039ce6dfa065af0aead 100644 --- a/source/KKRnano/source/ProcessKKRresults_mod.F90 +++ b/source/KKRnano/source/ProcessKKRresults_mod.F90 @@ -1172,11 +1172,11 @@ module ProcessKKRresults_mod calc%noco_data%moment_z(atom_id) irec = irec + 1 endif + if (params%noncobfield) then + write(unit=r1fu, rec=irec) calc%bfields(ila)%bfield_constr + irec = irec + 1 + end if end do - if (params%noncobfield) then - write(unit=r1fu, rec=irec) calc%bfields(ila)%bfield_constr - irec = irec + 1 - end if close(r1fu) diff --git a/source/KKRnano/source/bfield/torque.f90 b/source/KKRnano/source/bfield/torque.f90 index 0e8ea2183cd73be8808a304d44fca9ab9eb02978..7a3a704f3ea44d9ddf998d881cea034c08d7a296 100644 --- a/source/KKRnano/source/bfield/torque.f90 +++ b/source/KKRnano/source/bfield/torque.f90 @@ -161,7 +161,7 @@ contains ! Scf-cycle for constraint fields, based either on torque or on fields alone if (lbfield_constr .and. itscf0 <= iteration .and. iteration <= itscf1) then if (constr_mode == 3) then - bfield%bfield_constr(:) = bfield%bfield_constr(:) - torque(:) / mag_mom_len + bfield%bfield_constr(:) = bfield%bfield_constr(:) - bfield%mag_torque(:) / mag_mom_len else if (constr_mode == 2) then old_b_constr = bfield%bfield_constr(:) bfield%bfield_constr(:) = old_b_constr - dot_product(old_b_constr,dir)*dir - &