Closed tawe141 closed 2 years ago
If you know which atom to displace, you can do that by making a file containing entries like
Basis : C
1: 1
1 1 0 0
The first row should be Basis : C
.
The second row is i: n
where i
is the index of displacement pattern and n
is the number of atoms to be displaced simultaneously. If you only have one displacement pattern, where only one atom moves, you can simply write 1: 1
.
The third row specifies iat vec_x vec_y vec_z
where iat
is the index of the atom to displace, and vec_{x,y,z}
is the direction of displacement in Cartesian coordinate.
After making the above file and save as, for example, tmp.pattern
, please issue
displace.py --VASP SPOSCAR -pf tmp.pattern --mag 0.03 --prefix disp0.03
In the above example, disp0.03.POSCAR
contains the supercell structure where atom 1 is displaced along +x direction by 0.03 Angstrom.
I assume your question has been answered and close this issue. If you have follow-up questions, please reopen this issue.
For my use-case, it's sufficient to only displace specific atoms when finding vibrational frequencies. Is there a clean way to do this with this library?