mindquantum.core.gates.Rn
- class mindquantum.core.gates.Rn(alpha: ParameterResolver, beta: ParameterResolver, gamma: ParameterResolver)[源代码]
Rn 门表示绕布洛赫球中给定轴旋转的量子门。Rn 门的矩阵形式为:
\[\begin{split}\begin{aligned} {\rm Rn}(\alpha, \beta, \gamma) &= e^{-i(\alpha \sigma_x + \beta \sigma_y + \gamma \sigma_z)/2}\\ &= \cos(f/2)I-i\sin(f/2)(\alpha \sigma_x + \beta \sigma_y + \gamma \sigma_z)/f\\ &\text{where } f=\sqrt{\alpha^2 + \beta^2 + \gamma^2} \end{aligned}\end{split}\]- 参数:
alpha (Union[numbers.Number, dict, ParameterResolver]) - Rn 门的第一个参数。
beta (Union[numbers.Number, dict, ParameterResolver]) - Rn 门的第二个参数。
gamma (Union[numbers.Number, dict, ParameterResolver]) - Rn 门的第三个参数。
样例:
>>> import numpy as np >>> from mindquantum.core.parameterresolver import ParameterResolver >>> from mindquantum.core.gates import Rn >>> theta = ParameterResolver('theta')/np.sqrt(3) >>> Rn(theta, theta, theta).on(0, 1) Rn(α=0.5774*theta, β=0.5774*theta, γ=0.5774*theta|0 <-: 1)
- property alpha
获取 Rn 门的参数 alpha。
- 返回:
ParameterResolver,参数 alpha。
- property beta
获取 Rn 门的参数 beta。
- 返回:
ParameterResolver,参数 beta。
- property gamma
获取 Rn 门的参数 gamma。
- 返回:
ParameterResolver,参数 gamma。
- hermitian()[源代码]
获取 Rn 门的厄米共轭形式。
样例:
>>> from mindquantum.core.gates import Rn >>> rn = Rn('a', 'b', 0.5).on(0) >>> rn.hermitian() Rn(α=-a, β=-b, γ=-1/2|0)
- matrix(pr: ParameterResolver = None, full=False)[源代码]
获取 Rn 门的矩阵形式。
- 参数:
pr (Union[ParameterResolver, dict]) - Rn 门的参数。默认值:
None
。full (bool) - 是否获取完整的矩阵(受控制比特和作用比特影响)。默认值:
False
。