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

General Driver Updates #166

Closed
10 tasks done
mrossinek opened this issue May 4, 2021 · 4 comments
Closed
10 tasks done

General Driver Updates #166

mrossinek opened this issue May 4, 2021 · 4 comments

Comments

@mrossinek
Copy link
Member

mrossinek commented May 4, 2021

What is the expected enhancement?

#147 also suggest some general improvements to the drivers. The implementation of these is tracked by this issue:

  • relocate qiskit_nature.drivers.* into qiskit_nature.drivers.second_quantization.*
  • relocate qiskit_nature.transformers.* into qiskit_nature.transformers.second_quantization.*
  • check the "file"-based drivers for general improvements:
    • fcidumpd
    • hdf5d
  • check the "program"-based drivers for general improvements:
    • pyscfd
    • pyquanted
    • psi4d
    • gaussiand

While performing the checks for general improvments we should also check for the ability of the driver to perform more input validation and update the documentation of all methods.

@mrossinek mrossinek self-assigned this May 4, 2021
This was referenced May 6, 2021
@mrossinek
Copy link
Member Author

With #173 nearing its merging and #180 following suite shortly after, two major (and the most important) steps of this issue will be addressed soon. None of the other drivers are technically high priority right now because none of them immediately block other implementations planned in the near future.
Nonetheless, all driver codes should be checked in order to determine what kind of updates are possible and to estimate the time such updates would take on a case by case basis. Most drivers are likely to undergo very little changes because besides PySCF all but one other driver are not interfacing another Python-based code, limiting the code complexity which could be updated in a similar style to #180.

@mrossinek
Copy link
Member Author

As part of migrating the new drivers to the property framework (#264) I have checked each open driver for an estimated amount of time required to refactor it. I will summarize below:

Driver Estimated Time required
pyscf Done and fully migrated after #264
pyquante very similar to PySCF, portable in 0.5-1 days
psi4 relies on hdf5 framework (see below)
gaussian (electronic) relies on gauopen module, mostly Property integration required, (maybe some function reorganization), portable in 0.5-1 days
gaussian (vibrational + log) relies on GaussianLogResult, portable in 0.5-1 days
fcidump basically done after #264
hdf5 requires more discussion (#302)

The migration of the remaining drivers will likely not be part of the 0.2.0 release.

@mrossinek
Copy link
Member Author

mrossinek commented Jan 31, 2022

A quick update on this epic:

The goal will be to refactor all drivers thereby decoupling the need for the legacy driver results from all but the HDF5Driver (which should still support loading legacy .hdf5 files) and the properties which allow conversion from legacy driver results.
However, decoupling everything else should allow to move the deprecated legacy types away from the public API location into the backend, effectively hiding them from the user.

@mrossinek mrossinek self-assigned this Jan 31, 2022
@pbark
Copy link
Contributor

pbark commented Feb 14, 2022

I am moving this epic back to product backlog until we have completed the hdf5 and the rest of the drivers updates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants