qiskit-nature icon indicating copy to clipboard operation
qiskit-nature copied to clipboard

`GaussianForcesDriver.from_molecule` improvements

Open mrossinek opened this issue 4 years ago • 4 comments

What is the expected enhancement?

The GaussianForcesDriver.from_molecule method currently has two limitations:

  1. It hard-codes the B3LYP functional which should really be a configurable option.
  2. It ignores driver_kwargs (which needs to be changed if the above functional should be made configurable in an easy fashion)

On another note: technically it would be possible to use the VibrationalStructureMoleculeDriver wrapper to construct a GaussianForcesDriver from a molecule while also providing a logfile via the kwarg dict (once this gets no longer ignored). While it may seem like there is no point in doing that, it would allow for a more streamlined approach when running Gaussian calculations on another machine but using the same interface. I.e.:

Machine A:

driver = VibrationalStructureMoleculeDriver(molecule, basis, driver_type)
driver.run()  # produces log written to some file

Machine B:

driver = VibrationalStructureMoleculeDriver(molecule, basis, driver_type, {"logflle": "path/to/copied/logfile.txt"})
driver.run()  # reads produced log file

Instead one currently needs to use the GaussianlogDriver directly on machine B.

If this were to be changed, the GaussianForcesDriver would need to relax it's check_installed method when reading from a logfile (in which case Gaussian does not need to be installed)

Summary

There are three tasks:

  • [ ] make XC functional in GaussianForcesDriver configurable
  • [ ] do not ignore driver_kwargs in GaussianForcesDriver.from_molecule method
  • [x] relax GaussianForcesDriver.check_installed method in case of using logfile

mrossinek avatar Oct 22 '21 10:10 mrossinek

Hi, I am new to the contribution, I think this is a good place to start. Can I try to solve this?

bharath1996-hub avatar Jan 10 '22 12:01 bharath1996-hub

Hi @bharath1996-hub! Sure thing, please go ahead :slightly_smiling_face:

Please make sure to apply your changes to the class in the qiskit_nature.drivers.second_quantization module (and not in qiskit_nature.drivers).

mrossinek avatar Jan 10 '22 13:01 mrossinek

@bharath1996-hub Are you still interested in working on this?

Just a heads-up: #701 outlines the new direction which we are taking with Qiskit Nature which likely means that the drivers as they exist today will not be relevant in some future. It is hard to predict now in what form they will remain but if you still want to add this contribution to Qiskit Nature you are more than welcome to do so! Just let me know :+1:

mrossinek avatar Jun 20 '22 19:06 mrossinek

created pr at https://github.com/Qiskit/qiskit-nature/pull/877

cometta avatar Oct 13 '22 14:10 cometta

can close this ticket

cometta avatar Oct 21 '22 00:10 cometta