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

Add gradient of olp_sd_sd wrt orbital rotation parameters #72

Merged
merged 4 commits into from
Feb 23, 2019
Merged

Add gradient of olp_sd_sd wrt orbital rotation parameters #72

merged 4 commits into from
Feb 23, 2019

Conversation

kimt33
Copy link
Collaborator

@kimt33 kimt33 commented Aug 30, 2018

The gradient will allow orbital optimizations with gradient-based optimizations.

https://trello.com/b/2fdphydV/sprint-orbital-optimization

@kimt33
Copy link
Collaborator Author

kimt33 commented Aug 30, 2018

Finite difference of the integral wrt the orbital rotation parameters return zero when the gradient is nonzero. There may be a problem with the derivation.

Derivatize integrate_sd_sd with respect to elements of the antihermitian
matrix used in the orbital rotation.

Note that the integrals are allowed to be complex

What:
 1. Add param_ind_to_rwocol_ind to get the row and column indices from the
 parameter index
 1. Add method GeneralizedChemicalHamiltonian._integrate_sd_sd_deriv
 2. Add tests
Issues:
 1. Repeated code (code is as explicit as possible to be parallel
    the notes)
Derivatize integrate_sd_sd with respect to elements of the antihermitian
matrix used in the orbital rotation.

Note that the integrals are allowed to be complex

What:
 1. Add param_ind_to_rowcol_ind to get the row and column indices from the
 parameter index
 1. Add method UnrestrictedChemicalHamiltonian._integrate_sd_sd_deriv
 2. Add tests
Issues:
 1. Repeated code (code is as explicit as possible to be parallel
    the notes)
Derivatize integrate_sd_sd with respect to elements of the antihermitian
matrix used in the orbital rotation.

Note that the integrals are allowed to be complex

What:
 1. Add param_ind_to_rowcol_ind to get the row and column indices from the
 parameter index
 1. Add method RestrictedChemicalHamiltonian._integrate_sd_sd_deriv
 2. Add tests
Issues:
 1. Repeated code (code is as explicit as possible to be parallel
    the notes)
Orbital optimization was disabled for solvers that require a gradient. Now that
we have a gradient, these solvers can be used with orbital optimization.
@kimt33
Copy link
Collaborator Author

kimt33 commented Feb 23, 2019

Can be polished up a little bit (Issue #80), but it works and is tested.

@kimt33 kimt33 merged commit 3a3bf5f into theochem:master Feb 23, 2019
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 this pull request may close these issues.

1 participant