def test_vqe_mes(self): """ Test VQEUCCSDFactory with QEOM """ solver = VQEUCCSDFactory(self.quantum_instance) gsc = GroundStateEigensolver(self.transformation, solver) esc = QEOM(gsc, 'sd') results = esc.solve(self.driver) for idx, _ in enumerate(self.reference_energies): self.assertAlmostEqual(results.computed_energies[idx], self.reference_energies[idx], places=4)
def test_numpy_mes(self): """ Test NumPyMinimumEigenSolver with QEOM """ solver = NumPyMinimumEigensolver() gsc = GroundStateEigensolver(self.transformation, solver) esc = QEOM(gsc, 'sd') results = esc.solve(self.driver) for idx, _ in enumerate(self.reference_energies): self.assertAlmostEqual(results.computed_energies[idx], self.reference_energies[idx], places=4)
def test_numpy_mes(self): """ Test with NumPyMinimumEigensolver """ solver = NumPyMinimumEigensolverFactory( use_default_filter_criterion=True) gsc = GroundStateEigensolver(self.transformation, solver) esc = QEOM(gsc, 'sd') results = esc.solve(self.driver) for idx, _ in enumerate(self.reference_energies): self.assertAlmostEqual(results.computed_vibronic_energies[idx], self.reference_energies[idx], places=4)
def test_vqe_uvccsd_factory(self): """ Test with VQE plus UVCCSD """ optimizer = COBYLA(maxiter=5000) solver = VQEUVCCSDFactory(QuantumInstance( BasicAer.get_backend('statevector_simulator')), optimizer=optimizer) gsc = GroundStateEigensolver(self.transformation, solver) esc = QEOM(gsc, 'sd') results = esc.solve(self.driver) for idx, _ in enumerate(self.reference_energies): self.assertAlmostEqual(results.computed_vibronic_energies[idx], self.reference_energies[idx], places=0)