QCArchive procedures, which uses torsiondrive/geomeTRIC internally, sometimes try to drive torsions on linear geometries, perhaps from the result of incorrect filtering of molecules. The errors that result from such calculations seem to occur deeper in the codebase than might be necessary. A way to detect these problem cases earlier, with a descriptive error message, would be of great value.
These are some of the errors that appear on various molecules. I will give an example QCArchive TorsionDrive ID for each case:
TorsionDrive 18045969
Error type: unknown
Error:
geomeTRIC run_json error:
Traceback (most recent call last):
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/run_json.py", line 225, in geometric_run_json
geometric.optimize.Optimize(coords, M, IC, engine, None, params)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1331, in Optimize
return optimizer.optimizeGeometry()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1298, in optimizeGeometry
self.calcEnergyForce()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1002, in calcEnergyForce
spcalc = self.engine.calc(self.X, self.dirname)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/engine.py", line 873, in calc
return self.calc_new(coords, dirname)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/engine.py", line 865, in calc_new
raise QCEngineAPIEngineError("QCEngineAPI computation did not execute correctly. Message: " + ret["error"]["error_message"])
geometric.errors.QCEngineAPIEngineError: QCEngineAPI computation did not execute correctly. Message: QCEngine Unknown Error: Traceback (most recent call last):
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/qcdb/intf_dftd3/runner.py", line 131, in run_dftd3_from_arrays
dftd3_driver(jobrec)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/qcdb/intf_dftd3/runner.py", line 183, in dftd3_driver
dftd3_harvest(jobrec, dftd3rec) # updates jobrec
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/qcdb/intf_dftd3/runner.py", line 301, in dftd3_harvest
raise Dftd3Error('Unsuccessful run. Possibly -D variant not available in dftd3 version.')
psi4.driver.qcdb.exceptions.Dftd3Error: Unsuccessful run. Possibly -D variant not available in dftd3 version.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/json_wrapper.py", line 217, in run_json
json_data = run_json_qcschema(copy.deepcopy(json_data), clean)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/json_wrapper.py", line 312, in run_json_qcschema
val, wfn = methods_dict_[json_data["driver"]](method, **kwargs)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/driver.py", line 691, in gradient
wfn = procedures['gradient'][lowername](lowername, molecule=molecule, **kwargs)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/procrouting/proc.py", line 2070, in run_scf_gradient
disp_grad = ref_wfn._disp_functor.compute_gradient(ref_wfn.molecule())
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/procrouting/empirical_dispersion.py", line 236, in compute_gradient
verbose=1)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib//python3.7/site-packages/psi4/driver/qcdb/intf_dftd3/runner.py", line 135, in run_dftd3_from_arrays
raise RuntimeError(err) from err
RuntimeError: Unsuccessful run. Possibly -D variant not available in dftd3 version.
TorsionDrive 18886561
Error type: unknown
Error:
geomeTRIC run_json error:
Traceback (most recent call last):
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/run_json.py", line 225, in geometric_run_json
geometric.optimize.Optimize(coords, M, IC, engine, None, params)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1331, in Optimize
return optimizer.optimizeGeometry()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1296, in optimizeGeometry
self.step()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1100, in step
self.checkCoordinateSystem(recover=True, cartesian=LastForce)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 959, in checkCoordinateSystem
raise ValueError("Cannot continue a constrained optimization; please implement constrained optimization in Cartesian coordinates")
ValueError: Cannot continue a constrained optimization; please implement constrained optimization in Cartesian coordinates
TorsionDrive 18886558
Error type: unknown
Error:
geomeTRIC run_json error:
Traceback (most recent call last):
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/run_json.py", line 225, in geometric_run_json
geometric.optimize.Optimize(coords, M, IC, engine, None, params)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1331, in Optimize
return optimizer.optimizeGeometry()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1296, in optimizeGeometry
self.step()
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 1085, in step
iopt = brent_wiki(froot.evaluate, 0.0, iopt, froot.target, cvg=0.1, verbose=params.verbose)
File "/data/homezvol0/tgokey/.local/miniconda3/envs/qcf/lib/python3.7/site-packages/geometric/optimize.py", line 187, in brent_wiki
raise RuntimeError('Not bracketed')
RuntimeError: Not bracketed
QCArchive procedures, which uses torsiondrive/geomeTRIC internally, sometimes try to drive torsions on linear geometries, perhaps from the result of incorrect filtering of molecules. The errors that result from such calculations seem to occur deeper in the codebase than might be necessary. A way to detect these problem cases earlier, with a descriptive error message, would be of great value.
These are some of the errors that appear on various molecules. I will give an example QCArchive TorsionDrive ID for each case:
TorsionDrive
18045969
TorsionDrive
18886561
TorsionDrive
18886558
Versons:
Please let me know if there is any additional information that would be helpful.