O3#

class cuequivariance.O3(l: int, p: int)#

继承自 Irrep,3D 旋转群 \(O(3)\) 的实不可约表示。

每个表示都由一个非负整数 \(l\) 和一个奇偶性 \(p = \pm 1\) 标记。

示例

>>> O3(0, 1)
0e
>>> O3(1, -1)
1o
>>> O3(1, -1).dim
3
>>> O3.from_string("2o")
2o
classmethod regexp_pattern() Pattern#

用于解析字符串表示的正则表达式模式。

classmethod from_string(s: str) O3#

从字符串表示创建实例。

classmethod clebsch_gordan(
rep1: O3,
rep2: O3,
rep3: O3,
) ndarray#

Clebsch-Gordan 系数张量。

形状为 (number_of_paths, rep1.dim, rep2.dim, rep3.dim),其中 rep3 是输出 irrep。

另请参阅

clebsch_gordan().

property dim: int#

表示的维度

返回值:

表示的维度。

返回类型:

int

is_scalar() bool#

检查表示是否为标量(作为单位元)

classmethod iterator() Iterator[O3]#

遍历李群的所有 irrep 的迭代器。

  • 第一个元素是平凡 irrep

  • 元素遵守由 __lt__ 定义的偏序关系

classmethod continuous_generators() ndarray#

表示的生成器

表示的生成器由以下公式定义

\[\rho(\alpha) = \exp\left(\alpha_i X_i\right)\]

其中 \(\rho(\alpha)\) 是对应于参数 \(\alpha\) 的群元素的表示,\(X_i\) 是表示的(连续)生成器,每个生成器的形状为 (dim, dim)

返回值:

形状为 (lie_dim, dim, dim) 的数组。

返回类型:

np.ndarray

discrete_generators() ndarray#

表示的离散生成器

\[\rho(n) = H^n\]
返回值:

形状为 (len(H), dim, dim) 的数组。

返回类型:

np.ndarray

algebra() ndarray#

李群的代数

李群的代数由以下公式定义

\[[X_i, X_j] = A_{ijk} X_k\]

其中 \(X_i\) 是连续生成器,\(A_{ijk}\) 是代数。

返回值:

形状为 (lie_dim, lie_dim, lie_dim) 的数组。

返回类型:

np.ndarray