实验性

注意

这里的函数未经测试且文档不足。

连续变量

该模块包含一组用于从多模场状态的fock基表示计算连续变量量的函数。

correlation_matrix(basis, rho=None)[source]

给定一组基操作符 \(\{a\}_n\),计算相关矩阵:

\[C_{mn} = \langle a_m a_n \rangle\]
Parameters:
basislist

定义相关矩阵基础的运算符列表。

rhoQobj, optional

用于计算相关矩阵的密度矩阵。如果rhoNone,则返回相关矩阵算子的矩阵,而不是这些算子的期望值。

Returns:
corr_matndarray

一个二维的数组,包含相关值或操作符。

correlation_matrix_field(a1, a2, rho=None)[source]

计算给定场算符 \(a_1\)\(a_2\) 的相关矩阵。如果提供了密度矩阵,则计算期望值,否则返回包含算符的矩阵。

Parameters:
a1Qobj

模式1的字段操作符。

a2Qobj

模式2的字段操作符。

rhoQobj, optional

用于计算协方差矩阵的密度矩阵。

Returns:
cov_matndarray

复数或Qobj的数组 一个二维的数组,包含协方差值,或者如果rho=0,则是一个操作符矩阵。

correlation_matrix_quadrature(a1, a2, rho=None, g=1.4142135623730951)[source]

计算给定场算符\(a_1\)\(a_2\)的正交相关矩阵。如果提供了密度矩阵,则计算期望值,否则返回包含算符的矩阵。

Parameters:
a1Qobj

模式1的字段操作符。

a2Qobj

模式2的字段操作符。

rhoQobj, optional

用于计算协方差矩阵的密度矩阵。

gfloat, default: sqrt(2)

a = 0.5 * g * (x + iy) 的缩放因子,默认 g = sqrt(2)g 的值与对易关系 [x, y] = i * hbar 中的 hbar 值相关,通过 hbar=2/g ** 2 给出默认值 hbar=1

Returns:
corr_matndarray

复数或Qobj的数组 一个二维的数组,包含场正交的协方差值, 或者,如果rho=0,一个操作符矩阵。

covariance_matrix(basis, rho, symmetrized=True)[source]

给定一组基操作符 \(\{a\}_n\),计算协方差矩阵:

\[V_{mn} = \frac{1}{2}\langle a_m a_n + a_n a_m \rangle - \langle a_m \rangle \langle a_n\rangle\]

或者,如果可选参数 symmetrized=False

\[V_{mn} = \langle a_m a_n\rangle - \langle a_m \rangle \langle a_n\rangle\]
Parameters:
basislist

定义协方差矩阵基础的运算符列表。

rhoQobj

用于计算协方差矩阵的密度矩阵。

symmetrizedbool, default: True

标志指示是否计算对称化(默认)或非对称化的相关矩阵。

Returns:
corr_matndarray

一个二维的协方差值数组。

logarithmic_negativity(V, g=1.4142135623730951)[来源]

计算给定对称协方差矩阵的对数负性,参见 qutip.continuous_variables.covariance_matrix。请注意,由 V 描述的双模场态必须是高斯态,此函数才适用。

Parameters:
Vndarray

协方差矩阵。

gfloat, default: sqrt(2)

a = 0.5 * g * (x + iy) 的缩放因子,默认 g = sqrt(2)g 的值与对易关系 [x, y] = i * hbar 中的 hbar 值相关,通过 hbar=2/g ** 2 给出默认值 hbar=1

Returns:
Nfloat

由Wigner协方差矩阵V描述的双模高斯态的对数负性。

wigner_covariance_matrix(
a1=None,
a2=None,
R=None,
rho=None,
g=1.4142135623730951,
)[source]

计算Wigner协方差矩阵 \(V_{ij} = \frac{1}{2}(R_{ij} + R_{ji})\),给定 正交相关矩阵 \(R_{ij} = \langle R_{i} R_{j}\rangle - \langle R_{i}\rangle \langle R_{j}\rangle\),其中 \(R = (q_1, p_1, q_2, p_2)^T\) 是两个模式的正交算子的向量。

或者,如果 R = None,并且如果提供了两个模式的湮灭算符 a1a2,则从湮灭算符构建正交相关矩阵,然后再计算协方差矩阵。

Parameters:
a1Qobj, optional

模式1的字段操作符。

a2Qobj, optional

模式2的字段操作符。

Rndarray, optional

正交相关矩阵。

rhoQobj, optional

用于计算协方差矩阵的密度矩阵。

gfloat, default: sqrt(2)

a = 0.5 * g * (x + iy) 的缩放因子,默认 g = sqrt(2)g 的值与对易关系 [x, y] = i * hbar 中的 hbar 值相关,通过 hbar=2/g ** 2 给出默认值 hbar=1

Returns:
cov_matndarray

一个二维的协方差值数组。

分布函数

class Distribution(data=None, xvecs=[], xlabels=[])[source]

用于表示空间分布函数的类。

Distribution 类可用于表示任意维度的空间分布函数(尽管目前仅使用了一维和二维分布)。

它被设计为特定分布函数的基类,并提供所有分布函数共享的基本功能的实现,例如可视化、计算边缘分布等。

Parameters:
dataarray_like

分布的数据。维度必须与xvecs中坐标数组的长度匹配。

xvecslist

跨越每个坐标空间的数组列表。

xlabelslist

每个坐标的标签列表。

marginal(dim=0)[来源]

计算沿维度dim的边缘分布函数。返回一个新的描述这个降维分布的Distribution实例。

Parameters:
dimint

获取边缘分布的维度(坐标索引)。

Returns:
dDistributions

描述边缘分布的新实例。

project(dim=0)[source]

计算沿维度dim的投影(最大值)分布函数。返回一个新的Distribution实例,描述这个降维后的分布。

Parameters:
dimint

获取投影分布的维度(坐标索引)。

Returns:
dDistributions

描述投影的Distribution的新实例。

visualize(
fig=None,
ax=None,
figsize=(8, 6),
colorbar=True,
cmap=None,
style='colormap',
show_xlabel=True,
show_ylabel=True,
)[source]

根据基础分布的维度,可视化一维或二维的数据分布。

参数:

figmatplotlib Figure instance

如果给定,使用此图形实例进行可视化,

axmatplotlib Axes instance

如果给定,使用此轴实例渲染可视化。

figsizetuple

如果需要创建新的Figure实例,其大小。

colorbar: Bool

是否应使用颜色条(在2D可视化中)。

cmap: matplotlib colormap instance

如果给定,使用此颜色映射进行2D可视化。

stylestring

可视化类型:'colormap'(默认)或'surface'。

Returns:
fig, axtuple

一个包含matplotlib图形和轴实例的元组。