コード例 #1
0
ファイル: hessian.py プロジェクト: Joder5/summer-program
		for line in reversed(open(fyle).readlines()):
			if re.search(keyword,line) != None:
				val = re.split(keyword,line)
		return float(val[-1])
	
	def make_hessFile(self,mat):   # Makes file hessian.dat
		f = open('hessian.dat','w')
		string = "" 
		for i in range(3 * self.mol.natom):
			for j in range(3 * self.mol.natom):
				string += "{: 13.7f}".format(mat[i,j])
			string += '\n'
		f.write(string)	
		f.close()

if __name__ == "__main__":
	template = open('../../extra-files/template.dat','r').read()
	hess = Hessian('../../extra-files/molecule.xyz')
	directory = 'DISPS'
	command = 'psi4'
	disp_size = 0.005
	energy_prefix = '@DF-RHF Final Energy:'
	sleep_time = 0
	hess.generate_inputs(template,disp_size,directory)
	hess.run_jobs(command,directory,sleep_time)
	newHess = hess.build_hessian(energy_prefix,disp_size,directory)
	hess.make_hessFile(newHess)
        # Call back to Project 1
	freq = Frequency('../../extra-files/hessian.dat','../../extra-files/molecule.xyz')
	freq.frequencies(freq.mol,freq.hess)