Merge pull request #13 from aselimov/ft--opt-dislloop

Square loop option
master
aselimov 5 years ago committed by GitHub
commit 071e8169b9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -291,6 +291,21 @@ module opt_disl
a3 = 3 a3 = 3
end select end select
if(loop_radius < 0.0_dp) then
xLoop(:,:) = 0.d0
xLoop(1,a1) = centroid(1) - loop_radius
xLoop(1,a2) = centroid(2) - loop_radius
xLoop(1,a3) = centroid(3)
xLoop(2,a1) = centroid(1) + loop_radius
xLoop(2,a2) = centroid(2) - loop_radius
xLoop(2,a3) = centroid(3)
xLoop(3,a1) = centroid(1) + loop_radius
xLoop(3,a2) = centroid(2) + loop_radius
xLoop(3,a3) = centroid(3)
xLoop(4,a1) = centroid(1) - loop_radius
xLoop(4,a2) = centroid(2) + loop_radius
xLoop(4,a3) = centroid(3)
else
!Calculate loop perimeter !Calculate loop perimeter
perimeter = 2.0_dp*pi*loop_radius perimeter = 2.0_dp*pi*loop_radius
@ -320,7 +335,7 @@ module opt_disl
! Increment angle for next point ! Increment angle for next point
angle = angle + theta angle = angle + theta
end do end do
end if
!Now actually calculate the displacement created by a loop for every atom !Now actually calculate the displacement created by a loop for every atom
do i = 1, atom_num do i = 1, atom_num
u = 0.0_dp u = 0.0_dp

Loading…
Cancel
Save