1. 한줄 요약
- 구조 optimization, frequency 계산만으로도 결과를 얻을 수 있다
# B3LYP/6-311+G(d,p) Opt Freq #hybrid function과 basis set은 변경 가능
참고
대규모 계산을 돌릴 때 gaussian output file에서 HOMO와 LUMO 값 읽는 python code
def read_homo_lumo(filename):
with open(filename, 'r') as f:
lines = f.readlines()
last_occ_line = None
last_virt_line = None
for i, line in enumerate(lines):
# last "Alpha occ. eigenvalues" line
if "Alpha occ. eigenvalues" in line:
last_occ_line = line
# "Alpha virt. eigenvalues" will be next line
if i + 1 < len(lines) and "Alpha virt. eigenvalues" in lines[i + 1]:
last_virt_line = lines[i + 1]
# get HOMO, LUMO
if last_occ_line and last_virt_line:
homo = float(last_occ_line.split()[-1])
lumo = float(last_virt_line.split()[4])
return homo, lumo
else:
raise ValueError("Could not find both 'Alpha occ. eigenvalues' and 'Alpha virt. eigenvalues'.")
homo, lumo = read_homo_lumo('/your/gaussian/output/path')