实验性
注意
这里的函数未经测试且文档不足。
连续变量
该模块包含一组用于从多模场状态的fock基表示计算连续变量量的函数。
- correlation_matrix(basis, rho=None)[source]
给定一组基操作符 \(\{a\}_n\),计算相关矩阵:
\[C_{mn} = \langle a_m a_n \rangle\]- Parameters:
- basislist
定义相关矩阵基础的运算符列表。
- rhoQobj, optional
用于计算相关矩阵的密度矩阵。如果rho是None,则返回相关矩阵算子的矩阵,而不是这些算子的期望值。
- 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,
计算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,并且如果提供了两个模式的湮灭算符a1和a2,则从湮灭算符构建正交相关矩阵,然后再计算协方差矩阵。- 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,
根据基础分布的维度,可视化一维或二维的数据分布。
参数:
- figmatplotlib Figure instance
如果给定,使用此图形实例进行可视化,
- axmatplotlib Axes instance
如果给定,使用此轴实例渲染可视化。
- figsizetuple
如果需要创建新的Figure实例,其大小。
- colorbar: Bool
是否应使用颜色条(在2D可视化中)。
- cmap: matplotlib colormap instance
如果给定,使用此颜色映射进行2D可视化。
- stylestring
可视化类型:'colormap'(默认)或'surface'。
- Returns:
- fig, axtuple
一个包含matplotlib图形和轴实例的元组。