Beispiel #1
0
parser.add_option("--pmdexec",
                  dest="pmdexec",
                  type="string",
                  default='../pmd/pmd',
                  help="path to the pmd executable.")
(options, args) = parser.parse_args()

displace = options.displace
print ' displacement = ', displace, ' Ang.'
rcut = options.rcut
print ' rcut         = ', rcut, ' Ang.'
pmdexec = options.pmdexec
infname = args[0]

sys0 = NAPSystem()
sys0.read_pmd(infname)
sys0.write_POSCAR()
print ' POSCAR was written.'

natm0 = sys0.num_atoms()

h0 = np.zeros((3, 3))
h0[0] = sys0.a1 * sys0.alc
h0[1] = sys0.a2 * sys0.alc
h0[2] = sys0.a3 * sys0.alc
n1, n2, n3 = calc_extention_ratio(h0, rcut)

r1 = 2 * n1 + 1
r2 = 2 * n2 + 1
r3 = 2 * n3 + 1
print ' num of cells in each axis=', r1, r2, r3
Beispiel #2
0
    return n1,n2,n3


################################################ Main routine ##########
if __name__ == "__main__":

    args= docopt(__doc__)
    rcut= float(args['--cutoff'])
    pmddir= args['--pmddir']
    execname= args['--exec']
    infname= args['PMDFILE']
    plot= args['--plot']
    #print(args)
    
    sys0= NAPSystem()
    sys0.read_pmd(infname)
    sys0.write_POSCAR()
    print(' POSCAR was written.')
    
    natm0= sys0.num_atoms()
    
    h0=np.zeros((3,3))
    h0[0]= sys0.a1 *sys0.alc
    h0[1]= sys0.a2 *sys0.alc
    h0[2]= sys0.a3 *sys0.alc
    n1,n2,n3= calc_extention_ratio(h0,rcut)
    print("n1,n2,n3 = {0:d} {1:d} {2:d}".format(n1,n2,n3))

    # Make displaced POSCARS via phonopy
    os.system("phonopy -d --dim=\"{0:d} {1:d} {2:d}\"".format(n1,n2,n3))
    with open('disp.yaml','r') as f: