Esempio n. 1
0
 def read_pmd(self, fname='pmd0000'):
     f = open(fname, 'r')
     # 1st: lattice constant
     self.alc = float(f.readline().split()[0])
     # 2nd-4th: cell vectors
     for i in range(3):
         data = f.readline().split()
         self.a1[i] = float(data[0])
         self.a2[i] = float(data[1])
         self.a3[i] = float(data[2])
     # self.a1= np.array([float(x) for x in f.readline().split()])
     # self.a2= np.array([float(x) for x in f.readline().split()])
     # self.a3= np.array([float(x) for x in f.readline().split()])
     # 5th-7th: velocity of cell vectors
     tmp = f.readline().split()
     tmp = f.readline().split()
     tmp = f.readline().split()
     # 8st: num of atoms
     natm = int(f.readline().split()[0])
     # 9th-: atom positions
     self.atoms = []
     for i in range(natm):
         data = [float(x) for x in f.readline().split()]
         ai = Atom()
         ai.decode_tag(data[0])
         ai.set_pos(data[1], data[2], data[3])
         ai.set_vel(data[4], data[5], data[6])
         self.atoms.append(ai)
     f.close()
Esempio n. 2
0
 def read_akr(self,fname='akr0000'):
     f=open(fname,'r')
     # 1st: lattice constant
     self.alc= float(f.readline().split()[0])
     # 2nd-4th: cell vectors
     self.a1= np.array([float(x) for x in f.readline().split()])
     self.a2= np.array([float(x) for x in f.readline().split()])
     self.a3= np.array([float(x) for x in f.readline().split()])
     # 5th: num of atoms
     buff= f.readline().split()[0]
     natm= int(buff[0])
     nauxd= int(buff[1])
     if nauxd < 3:
         print '[Error] read_akr(): nauxd < 3 !!!'
         sys.exit()
     # 9th-: atom positions
     self.atoms= []
     for i in range(natm):
         data= [float(x) for x in f.readline().split()]
         ai= Atom()
         ai.set_sid(data[0])
         ai.set_pos(data[1],data[2],data[3])
         # if there are less than 3 auxiliary data, there is not velocity
         ai.set_vel(data[4],data[5],data[6])
         self.atoms.append(ai)
     f.close()
Esempio n. 3
0
 def read_akr(self, fname='akr0000'):
     f = open(fname, 'r')
     # 1st: lattice constant
     self.alc = float(f.readline().split()[0])
     # 2nd-4th: cell vectors
     for i in range(3):
         data = f.readline().split()
         self.a1[i] = float(data[0])
         self.a2[i] = float(data[1])
         self.a3[i] = float(data[2])
     # 5th: num of atoms
     natm = int(f.readline().split()[0])
     # 9th-: atom positions
     self.atoms = []
     for i in range(natm):
         data = [float(x) for x in f.readline().split()]
         ai = Atom()
         ai.set_sid(data[0])
         ai.set_pos(data[1], data[2], data[3])
         ai.set_vel(data[4], data[5], data[6])
         self.atoms.append(ai)
     f.close()