-
Notifications
You must be signed in to change notification settings - Fork 46
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
Comments
This was referenced Apr 3, 2021
22 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
(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 updatedIOData
instance. (This could be a good example of aprepare
function in #191.) One approach does not exclude the other and I'm fine with having both because they serve different use cases.The text was updated successfully, but these errors were encountered: