48 |
|
|
49 |
|
|
50 |
|
subroutine do_gb_pair(atom1, atom2, d, r, r2, sw, vpair, fpair, & |
51 |
< |
pot, u_l, f, t, do_pot) |
51 |
> |
pot, A, f, t, do_pot) |
52 |
|
|
53 |
|
integer, intent(in) :: atom1, atom2 |
54 |
|
integer :: id1, id2 |
56 |
|
real (kind=dp), dimension(3), intent(in) :: d |
57 |
|
real (kind=dp), dimension(3), intent(inout) :: fpair |
58 |
|
real (kind=dp) :: pot, sw, vpair |
59 |
< |
real (kind=dp), dimension(3,nLocal) :: u_l |
59 |
> |
real (kind=dp), dimension(9,nLocal) :: A |
60 |
|
real (kind=dp), dimension(3,nLocal) :: f |
61 |
|
real (kind=dp), dimension(3,nLocal) :: t |
62 |
|
logical, intent(in) :: do_pot |
100 |
|
r4 = r2*r2 |
101 |
|
|
102 |
|
#ifdef IS_MPI |
103 |
< |
ul1(1) = u_l_Row(1,atom1) |
104 |
< |
ul1(2) = u_l_Row(2,atom1) |
105 |
< |
ul1(3) = u_l_Row(3,atom1) |
103 |
> |
ul1(1) = A_Row(3,atom1) |
104 |
> |
ul1(2) = A_Row(6,atom1) |
105 |
> |
ul1(3) = A_Row(9,atom1) |
106 |
|
|
107 |
< |
ul2(1) = u_l_Col(1,atom2) |
108 |
< |
ul2(2) = u_l_Col(2,atom2) |
109 |
< |
ul2(3) = u_l_Col(3,atom2) |
107 |
> |
ul2(1) = A_Col(3,atom2) |
108 |
> |
ul2(2) = A_Col(6,atom2) |
109 |
> |
ul2(3) = A_Col(9,atom2) |
110 |
|
#else |
111 |
< |
ul1(1) = u_l(1,atom1) |
112 |
< |
ul1(2) = u_l(2,atom1) |
113 |
< |
ul1(3) = u_l(3,atom1) |
111 |
> |
ul1(1) = A(3,atom1) |
112 |
> |
ul1(2) = A(6,atom1) |
113 |
> |
ul1(3) = A(9,atom1) |
114 |
|
|
115 |
< |
ul2(1) = u_l(1,atom2) |
116 |
< |
ul2(2) = u_l(2,atom2) |
117 |
< |
ul2(3) = u_l(3,atom2) |
115 |
> |
ul2(1) = A(3,atom2) |
116 |
> |
ul2(2) = A(6,atom2) |
117 |
> |
ul2(3) = A(9,atom2) |
118 |
|
#endif |
119 |
|
|
120 |
|
dru1dx = ul1(1) |
391 |
|
real( kind = dp ), intent(inout) :: sigma, l2b_ratio, eps, eps_ratio |
392 |
|
real( kind = dp ), intent(inout) :: mu, nu |
393 |
|
call module_set_gb_pair_params(sigma, l2b_ratio, eps, eps_ratio, mu, nu) |
394 |
< |
end subroutine set_gb_pair_params |
394 |
> |
end subroutine set_gb_pair_params |