跳转到主要内容

Qiskit Nature PySCF:Qiskit Nature + PySCF的第三方集成插件。

项目描述

Qiskit Nature PySCF

License

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的CASCICASSCF模拟对象中。

下面我们展示了如何进行此操作的简单示例。

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()

有关此插件的更详细信息,请参阅其文档。有关更多信息和建议,请查阅PySCFQiskit Nature的文档。

引用

如果您使用此插件,请引用以下参考文献

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

qiskit-nature-pyscf-0.4.0.tar.gz (17.7 kB 查看哈希值)

上传时间

构建分布

qiskit_nature_pyscf-0.4.0-py3-none-any.whl (15.8 kB 查看哈希值)

上传时间 Python 3

支持者