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

Generalize template for orthonormalize #555

Conversation

EricaCMitchell
Copy link
Collaborator

Description

Currently, all orthonormalize_* functions require the input vectors and overlap to have the same type. In the case of complex types, the input vectors would be complex but the overlap would be real.

Details

  • Change template to have different types for madness::Function and madness::Tensor

@robertjharrison
Copy link
Contributor

robertjharrison commented Oct 22, 2024 via email

@EricaCMitchell
Copy link
Collaborator Author

EricaCMitchell commented Oct 22, 2024

Since we are using the same input functions for Tensor<R> ovlp = matrix_inner(world, v, v);, the inner product of <v, v> would be real as a basic property of the inner product itself requires that with an arbitrary vector v, <v, v> is real and nonnegative.

@robertjharrison
Copy link
Contributor

robertjharrison commented Oct 22, 2024 via email

@EricaCMitchell
Copy link
Collaborator Author

This is starting to make sense to me. Thanks for the comments! I'm closing this.

@EricaCMitchell EricaCMitchell deleted the pr-orthonormalize_cd branch October 22, 2024 21:18
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.

2 participants