from qiskit_nature.units import DistanceUnit
from qiskit_nature.second_q.drivers import PySCFDriver

driver = PySCFDriver(
    atom="H 0 0 0; H 0 0 0.735",
    basis="sto3g",
    charge=0,
    spin=0,
    unit=DistanceUnit.ANGSTROM,
)

problem = driver.run()
print(problem)

hamiltonian = problem.hamiltonian

coefficients = hamiltonian.electronic_integrals
print(coefficients.alpha)

second_q_op = hamiltonian.second_q_op()
print(second_q_op)

hamiltonian.nuclear_repulsion_energy  # NOT included in the second_q_op above

problem.molecule

problem.reference_energy

problem.num_particles

problem.num_spatial_orbitals

problem.basis

problem.properties

problem.properties.particle_number

problem.properties.angular_momentum

problem.properties.magnetization

problem.properties.electronic_dipole_moment

from qiskit.algorithms.minimum_eigensolvers import NumPyMinimumEigensolver
from qiskit_nature.second_q.algorithms import GroundStateEigensolver
from qiskit_nature.second_q.mappers import JordanWignerMapper

solver = GroundStateEigensolver(
    JordanWignerMapper(),
    NumPyMinimumEigensolver(),
)

result = solver.solve(problem)
print(result)

import qiskit.tools.jupyter

%qiskit_version_table
%qiskit_copyright