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

DIC->Cart iterative back-transform did not converge #312

Closed
eneas77 opened this issue Dec 12, 2023 · 6 comments
Closed

DIC->Cart iterative back-transform did not converge #312

eneas77 opened this issue Dec 12, 2023 · 6 comments

Comments

@eneas77
Copy link

eneas77 commented Dec 12, 2023

Hi,

I´ve installed autodE via conda. Trying to run the DA example, it comes up with the following bug:

CoordinateTransformFailed: DIC->Cart iterative back-transform did not converge

This happense with v.1.4.1 and 1.4.0.

Any ideas of the issue here?

Thank you

E77

@shoubhikraj
Copy link
Collaborator

Hi, I suspect this is the same issue as #261 , however, now autodE detects the problem much before it happens and then throws the appropriate error. I am currently working on it, but it will be some time before the coordinate problems get completely fixed.

@eneas77
Copy link
Author

eneas77 commented Dec 12, 2023

Hi,

Did you try to run the DA example when you released v1.4.0 & v1.4.1?

I suppose the answer is you didn't.

Perhaps you should include that basic QC: every case ending in bug/enhancement should be tested previously to the deployment, as well as the basic QC examples, like the DA. This is the second time it happens...

Two more shilings on this matter.

Thanks a lot.

E77

@shoubhikraj
Copy link
Collaborator

@eneas77 Hi, could you try the v1.4.2 development branch, and see if the problem still persists?

@eneas77
Copy link
Author

eneas77 commented Jan 21, 2024

Hi @shoubhikraj,

I´ve tried but unfrotunately some issue is triggered...
--------------------
Traceback (most recent call last):
File "/home/data/amiduros/142/test_thf
-78C/test_thf_-78C.py", line 11, in
rxn.calculate_reaction_profile(free_energy=True)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/utils.py", line 433, in wrapped_function
return func(*args, **kwargs)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/reactions/reaction.py", line 168, in calculate_reaction_profile
calculate(self)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/utils.py", line 239, in wrapped_function
result = func(*args, **kwargs)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/reactions/reaction.py", line 156, in calculate
reaction.find_lowest_energy_conformers()
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/utils.py", line 668, in wrapped_function
result = func(reaction)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/reactions/reaction.py", line 622, in find_lowest_energy_conformers
mol.find_lowest_energy_conformer(hmethod=h_method)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/utils.py", line 239, in wrapped_function
result = func(*args, **kwargs)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/species/species.py", line 1443, in find_lowest_energy_conformer
self.conformers.optimise(hmethod)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/conformers/conformers.py", line 306, in optimise
return self._parallel_calc("optimise", method, keywords)
File "/apps/anaconda3/envs/autode_142/lib/python3.10/site-packages/autode/conformers/conformers.py", line 288, in _parallel_calc
self[idx] = res.result()
File "/apps/anaconda3/envs/autode_142/lib/python3.10/concurrent/futures/_base.py", line 458, in result
return self.__get_result()
File "/apps/anaconda3/envs/autode_142/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
raise self.exception
autode.exceptions.CoordinateTransformFailed: DIC->Cart iterative back-transform did not converge
--------------------

This is my input file in case you want to try:

import autode as ade
ade.Config.n_cores = 4
ade.Config.max_core = 4000
ade.Config.hcode = 'NWChem'
ade.Config.lcode = 'XTB'
r1 = ade.Reactant(smiles='CC(C)=O')
r2 = ade.Reactant(smiles='CN(C)[Li-][O+]1CCCC1')
p1 = ade.Product(smiles='CC(=C)O[Li-][O+]1CCCC1')
p2 = ade.Product(smiles='[H]N(C)C')
rxn = ade.Reaction(r1, r2, p1, p2, name='test_thf_-78C', solvent_name='thf', temp=195.15)
rxn.calculate_reaction_profile(free_energy=True)
quit()

Thanks

@shoubhikraj
Copy link
Collaborator

shoubhikraj commented Jan 24, 2024

@eneas77 Hi, does the DA example work? The optimiser and the coordinate systems need some more improvements before it can work on every possible system. I suspect in your case above, one or more angles are becoming linear(180) during optimisation, or becoming <90 when starting from linear. Both of these cases will fail currently.

@eneas77
Copy link
Author

eneas77 commented Jan 25, 2024

@shoubhikraj Yes, the DA example now works.

@eneas77 eneas77 closed this as completed Jan 25, 2024
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

No branches or pull requests

2 participants