Última atividade 1736964636

Revisão 985b4110d7780b09fd0907b0a1480547841e1e38

uniform_move_snippet.f90 Bruto
1! For the polar angle part, since projection is involved and therefore
2! we need to guarantee that the projection is uniform. We don't need
3! to do this for the phi angle since only rotation is involved in
4! that case.
5polar_ang = dacos(2.0d0*(rmca_ran(1)-0.5d0))
6azim_ang = rmca_ran(1) * 2.0d0 * pi
7rand_x = delta(move_type) * dsin(polar_ang) * dcos(azim_ang)
8rand_y = delta(move_type) * dsin(polar_ang) * dsin(azim_ang)
9rand_z = delta(move_type) * dcos(polar_ang)
10! We go from the Cartesian coordinates to fractional with respect
11! to the lattice.
12move(4) = rand_x * inv_vectors_init(1,1) + &
13 rand_y * inv_vectors_init(1,2) + &
14 rand_z * inv_vectors_init(1,3)
15move(5) = rand_x * inv_vectors_init(2,1) + &
16 rand_y * inv_vectors_init(2,2) + &
17 rand_z * inv_vectors_init(2,3)
18move(6) = rand_x * inv_vectors_init(3,1) + &
19 rand_y * inv_vectors_init(3,2) + &
20 rand_z * inv_vectors_init(3,3)
21