def voronoi(ia,aSys): #======================================================================= if __name__ == '__main__': usage= '$ python %prog [options] POSCAR' parser= optparse.OptionParser(usage=usage) parser.add_option("-r",dest="rcut",type="float", \ default=5.0, \ help="Cutoff radius in Angstrom. Default is 5.0.") (options,args)= parser.parse_args() rcut= options.rcut infname= args[0] aSys= AtomSystem() if not os.path.exists(infname): print('[Error] File does not exist !!!') print(infname) exit() aSys.read_POSCAR(infname) #.....make neighbor list aSys.make_pair_list(rcut) #.....make Voronoi polygons from Delauney tetrahedra vrns= [] for ia in range(aSys.num_atoms): vrn.append(voronoi(ia,aSys))
(options,args)= parser.parse_args() out_format= options.format outfname= options.outfname sid1= options.sid1 sid2= options.sid2 sid3= options.sid3 #...check output format if not out_format[0] in ('a','p'): print ' ERROR: Output format must be akr or pmd.' exit() #...read POSCAR as 0th step if len(args)==0 and not os.path.exists('./POSCAR'): print ' ERROR: Any POSCAR file have not been specified.' exit() elif len(args)==0: infname= './POSCAR' else: infname= args[0] #aSys= AtomSystem() aSys.read_POSCAR(infname) change_species(sid1,sid2,sid3) if out_format[0] in ('a'): aSys.write_akr(outfname) elif out_format[0] in ('p'): aSys.write_pmd(outfname)
nblock=int(incar['NBLOCK']) else: nblock= 1 nstep= nstep/nblock dt= float(incar['POTIM'])*nblock # dt in ft print "out_format =",out_format print "nstep =",nstep print "dt =",dt #...read POSCAR as 0th step if not os.path.exists('./POSCAR'): print ' ERROR: POSCAR does not exist here.' exit() aSys= AtomSystem() aSys.read_POSCAR('./POSCAR') #...output 0th step output_AtomSystem(aSys,out_format,0) #...read XDATCAR after 0th step if not os.path.exists('./XDATCAR'): print ' ERROR: XDATCAR does not exist here.' exit() f= open('XDATCAR','r') line1= f.readline() alc= float(f.readline().split()[0]) a1= [ float(x) for x in f.readline().split()] a2= [ float(x) for x in f.readline().split()] a3= [ float(x) for x in f.readline().split()] line6= f.readline() # Species names