Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

orca.py stucks in a loop if no NBO analysis was done #52

Closed
vbochenkov opened this issue Apr 15, 2022 · 15 comments
Closed

orca.py stucks in a loop if no NBO analysis was done #52

vbochenkov opened this issue Apr 15, 2022 · 15 comments

Comments

@vbochenkov
Copy link

Hi @xiki-tempula,
qforce seems to be stuck trying to find the string "Now starting NBO analysis" (in line 468, in _read_orca_nbo_analysis) in orca output file. Here is the file: propane_hessian.log

@selimsami
Copy link
Owner

selimsami commented Apr 15, 2022

This shouldn't cause Q-Force to be stuck and it should be handled more gracefully, but note that you do not seem to have set NBO environment variable for ORCA, Q-Force needs this for the bond order analysis:

Environment variable NBOEXE for nbo6.exe or nbo5.exe not set! Skipping NBO-Analysis

@xiki-tempula
Copy link
Contributor

@vbochenkov Thanks for reporting. Do you mind uploading a new ORCA log file with the NBO set up correctly? It seems that ORCA has now removed the string Now starting NBO, which is used to locate the NBO file. So I could fix this issue if I could know what are the new string to indicate the start of the NBO analysis.

@vbochenkov
Copy link
Author

Unfortunately, I don't have NBO, so I cannot set it up. I didn't realize that it is mandatory to have it to run qforce. :(

@selimsami
Copy link
Owner

@vbochenkov, if you have access to Gaussian, Q-Chem, or xTB, all these methods have either NBO or a bond order analysis tool included in them.

@vbochenkov
Copy link
Author

@selimsami, I have access to Firefly, it has NBO tool. So, perhaps, I'll have to work to add a module for Qforce to support Firefly :)

@selimsami
Copy link
Owner

Appreciated! Note that xTB is free and open source, so you could use it to to test Q-Force before you decide to help the development.

@vbochenkov
Copy link
Author

Cool! Thanks for the idea! I'll check it.

@xiki-tempula
Copy link
Contributor

@selimsami Do you have a plan of deprecating the lone pair? If the requirement for lone pair is deprecated, I could make it that ORCA will not need NBO and we won't have these issues.

@selimsami
Copy link
Owner

Oh nice! Then I will work on this

@selimsami
Copy link
Owner

@xiki-tempula, this will take me a bit longer. There is some dependency on lone pairs for atom type detection. But I should be able get around that, probably next week.

@selimsami
Copy link
Owner

@xiki-tempula, depreciation done, see #55

@xiki-tempula
Copy link
Contributor

xiki-tempula commented May 2, 2022

@vbochenkov Do you mind trying the latest version? The ORCA requirement for NBO has been removed now.

@vbochenkov
Copy link
Author

vbochenkov commented May 3, 2022

Hi @xiki-tempula, I've got the following error message while testing the new version:
....
Selected QM Software: "orca"
Necessary Hessian output files and the corresponding extensions are:

  • out_file: ['.out', '.log']
  • hess_file: ['_opt.hess']
  • pc_file: ['_charge.pc_chelpg']
  • coord_file: ['_opt.xyz']

NOTE: QM atomic charges are scaled by 1.2 to account for the condensed phase polarization.
Set this value to 1 for gas phase simulations.

Traceback (most recent call last):
File "/usr/local/bin/qforce", line 11, in
load_entry_point('qforce==0.6.4', 'console_scripts', 'qforce')()
File "/usr/local/lib/python3.8/dist-packages/pycolt-0.5.3-py3.8.egg/colt/colt.py", line 363, in call
return self._func(**answers)
File "/usr/local/lib/python3.8/dist-packages/qforce-0.6.4-py3.8.egg/qforce/main.py", line 37, in run
File "/usr/local/lib/python3.8/dist-packages/qforce-0.6.4-py3.8.egg/qforce/main.py", line 49, in run_qforce
File "/usr/local/lib/python3.8/dist-packages/qforce-0.6.4-py3.8.egg/qforce/molecule/molecule.py", line 15, in init
File "/usr/local/lib/python3.8/dist-packages/qforce-0.6.4-py3.8.egg/qforce/molecule/non_bonded.py", line 65, in from_topology
File "/usr/local/lib/python3.8/dist-packages/qforce-0.6.4-py3.8.egg/qforce/molecule/non_bonded.py", line 633, in sum_charges_to_qtotal
File "/usr/local/lib/python3.8/dist-packages/PuLP-2.1-py3.8.egg/pulp/pulp.py", line 1686, in solve
status = solver.actualSolve(self, **kwargs)
archive.zip

AttributeError: 'NoneType' object has no attribute 'actualSolve'

The Orca produced files are attached.

@selimsami
Copy link
Owner

selimsami commented May 4, 2022

@vbochenkov , I did not manage to reproduce your issue with the files you have provided, it worked fine for me.

Were you using the latest GitHub version or the pypi version? I have now pushed the update to pypi as well (0.6.5), so could you please try again with:

pip install --upgrade qforce

If that doesn't work, can you try upgrading PuLP:

pip install --upgrade pulp

And let me know which step solved your problem.

@vbochenkov
Copy link
Author

@selimsami, thank you for the suggestion. I had to upgrade PuLP, and now it works fine! I'm closing the issue. Thanks for your help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants