Qiskit Nature PySCF:Qiskit Nature + PySCF的第三方集成插件。
项目描述
Qiskit Nature PySCF
Qiskit Nature PySCF是Qiskit Nature + PySCF的第三方集成插件。
安装
我们鼓励您通过pip工具(一个Python包管理器)安装Qiskit Nature PySCF。
pip install qiskit-nature-pyscf
pip将自动处理所有依赖项,并且您将始终安装最新(并且经过充分测试)的版本。如果需要,它还会安装Qiskit Nature。
如果您想使用最新的工作版本,无论是为了提前尝试即将发布的特性,还是如果您想为Qiskit Nature PySCF做出贡献,则可以从源代码安装。
使用方法
此插件将PySCF和Qiskit Nature的API相结合,使用户能够利用Qiskit中实现的基于量子算法,代替其经典对应物。
活跃空间计算
一个非常常见的方法是在主动空间计算中使用量子算法来找到基态。为此,此插件提供了QiskitSolver
类,您可以将其直接注入到PySCF的CASCI
或CASSCF
模拟对象中。
下面我们展示了如何进行此操作的简单示例。
from pyscf import gto, scf, mcscf
import numpy as np
from qiskit.primitives import Estimator
from qiskit_algorithms import VQE
from qiskit_algorithms.optimizers import SLSQP
from qiskit_nature.second_q.algorithms import GroundStateEigensolver
from qiskit_nature.second_q.circuit.library import HartreeFock, UCCSD
from qiskit_nature.second_q.mappers import ParityMapper
from qiskit_nature_pyscf import QiskitSolver
mol = gto.M(atom="Li 0 0 0; H 0 0 1.6", basis="sto-3g")
h_f = scf.RHF(mol).run()
norb = 2
nalpha, nbeta = 1, 1
nelec = nalpha + nbeta
cas = mcscf.CASCI(h_f, norb, nelec)
mapper = ParityMapper(num_particles=(nalpha, nbeta))
ansatz = UCCSD(
norb,
(nalpha, nbeta),
mapper,
initial_state=HartreeFock(
norb,
(nalpha, nbeta),
mapper,
),
)
vqe = VQE(Estimator(), ansatz, SLSQP())
vqe.initial_point = np.zeros(ansatz.num_parameters)
algorithm = GroundStateEigensolver(mapper, vqe)
cas.fcisolver = QiskitSolver(algorithm)
cas.run()
有关此插件的更详细信息,请参阅其文档。有关更多信息和建议,请查阅PySCF和Qiskit Nature的文档。
引用
如果您使用此插件,请引用以下参考文献
- PySCF,按照这些说明。
- Qiskit,按照提供的BibTeX文件。
- Qiskit Nature,按照https://doi.org/10.5281/zenodo.7828767
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
qiskit-nature-pyscf-0.4.0.tar.gz (17.7 kB 查看哈希值)