mirror of https://github.com/phonopy/phonopy.git
Bug fix of fc4 calculation of C implementation
This commit is contained in:
parent
082f465c48
commit
03095b91e3
|
@ -428,13 +428,13 @@ def _solve_fc4(fc4,
|
|||
i, j, k, delta_fc3s, rot_map_syms, site_sym_cart)
|
||||
).reshape(3, 3, 3, 3)
|
||||
|
||||
def _rotate_delta_fc3s(i, j, k, fc3s, rot_map_syms, site_sym_cart):
|
||||
rotated_fc3s = np.zeros((len(fc3s), len(site_sym_cart), 3, 3, 3),
|
||||
def _rotate_delta_fc3s(i, j, k, delta_fc3s, rot_map_syms, site_sym_cart):
|
||||
rotated_fc3s = np.zeros((len(delta_fc3s), len(site_sym_cart), 3, 3, 3),
|
||||
dtype='double')
|
||||
try:
|
||||
import anharmonic._phono3py as phono3c
|
||||
phono3c.rotate_delta_fc3s(rotated_fc3s,
|
||||
fc3s,
|
||||
delta_fc3s,
|
||||
rot_map_syms,
|
||||
site_sym_cart,
|
||||
i,
|
||||
|
@ -443,7 +443,7 @@ def _rotate_delta_fc3s(i, j, k, fc3s, rot_map_syms, site_sym_cart):
|
|||
return np.reshape(rotated_fc3s, (-1, 27))
|
||||
except ImportError:
|
||||
print "Copying delta fc3s at (%d, %d, %d)" % (i + 1, j + 1, k + 1)
|
||||
for l, fc3 in enumerate(fc3s):
|
||||
for l, fc3 in enumerate(delta_fc3s):
|
||||
for m, (sym, map_sym) in enumerate(zip(site_sym_cart,
|
||||
rot_map_syms)):
|
||||
fc3_rot = fc3[map_sym[i], map_sym[j], map_sym[k]]
|
||||
|
|
|
@ -693,13 +693,13 @@ static int rotate_delta_fc3s(double *rotated_delta_fc3s,
|
|||
rot_tensor = rotated_delta_fc3s + i * num_rot * 27 + j * 27;
|
||||
tensor3_roation(rot_tensor,
|
||||
delta_fc3s +
|
||||
i * num_rot * num_atom * num_atom * num_atom * 27,
|
||||
i * num_atom * num_atom * num_atom * 27,
|
||||
atom1,
|
||||
atom2,
|
||||
atom3,
|
||||
rot_map_syms[atom1],
|
||||
rot_map_syms[atom2],
|
||||
rot_map_syms[atom3],
|
||||
rot_map_syms[num_atom * j + atom1],
|
||||
rot_map_syms[num_atom * j + atom2],
|
||||
rot_map_syms[num_atom * j + atom3],
|
||||
num_atom,
|
||||
site_sym_cart + j * 9);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue