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

Decontraction of basis sets #258

Open
tovrstra opened this issue Apr 3, 2021 · 0 comments
Open

Decontraction of basis sets #258

tovrstra opened this issue Apr 3, 2021 · 0 comments

Comments

@tovrstra
Copy link
Member

tovrstra commented Apr 3, 2021

(This was part of #146.)

Quoting @PaulWAyers: *It would be nice to have a tool to convert a contracted basis set (and its MOs) into a completely decontracted (100% primitives) format. This is especially useful for dumping *.wfx and .wfn. It's also useful (very occassionally) since decontracted basis sets are often preferable for small, highly-charged polycations (e.g., isoelectronic series).

See #175 for a preliminary implementation. To implement this in a more useful way, also a conversion of orbital coefficients and density matrices to the new basis should be constructed at the same time. One possibility is to let the decontraction code also return a (sparse) transformation matrix to convert arrays in the original basis to the decontracted one. Another option is to implement this feature as a utility function outside of iodata.basis, e.g. in some utility module, which takes care of all aspects: decontracting the basis and (efficiently) converting all arrays to the new basis, returning everything as an updated IOData instance. (This could be a good example of a prepare function in #191.) One approach does not exclude the other and I'm fine with having both because they serve different use cases.

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

1 participant