patonlab / GoodVibes

Calculate quasi-harmonic free energies from Gaussian output files with temperature and other corrections
http://www.patonlab.colostate.edu
MIT License
127 stars 50 forks source link

Could not parse Gaussian output file for constrained geometry optimisation correctly #72

Open xinglong-zhang opened 5 months ago

xinglong-zhang commented 5 months ago

While trying to use goodvibes to parse the thermochemistry data from Gaussian output file for constrained geometry optimisation, the following error arises:

Error output: [Gaussian TS_5coord_L2_subst_opt.log ERROR] Encountered error when parsing. [Gaussian TS_5coord_L2_subst_opt.log ERROR] Last line read: A A A

Traceback (most recent call last): File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/bin/goodvibes", line 8, in sys.exit(main()) File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/goodvibes/GoodVibes.py", line 1038, in main bbe = calc_bbe(file, options.QS, options.QH, options.S_freq_cutoff, options.H_freq_cutoff, options.temperature, File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/goodvibes/thermo.py", line 409, in init self.xyz = getoutData(file) File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/goodvibes/io.py", line 99, in init data = ccread(filename) File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/cclib/io/ccio.py", line 188, in ccread return log.parse() File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/cclib/parser/logfileparser.py", line 171, in parse self.extract(self.inputfile, line) File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/cclib/parser/gaussianparser.py", line 1476, in extract numbers = [float(s) for s in line[10:].split()] File "/Users/xinglongzhang/miniconda3/envs/pyatoms-dev/lib/python3.10/site-packages/cclib/parser/gaussianparser.py", line 1476, in numbers = [float(s) for s in line[10:].split()] ValueError: could not convert string to float: 'A'

The output file is attached. test.log

dosshubha commented 2 months ago

You can try to run the constrained optimization using the opt=modredundant in the route section and then freezing the atoms in the section following the geometry specifications. This might solve the parsing issue!