mindscience.e3nn.o3.rand_angles
- mindscience.e3nn.o3.rand_angles(*shape)[源代码]
返回一组均匀随机的欧拉角 \((\alpha, \beta, \gamma)\),对应三维空间中的随机旋转。 \(\alpha\) 与 \(\gamma\) 在区间 ([0, 2pi)) 上均匀采样,\(\beta\) 在 ([0, pi]) 上按概率密度与 (sin(beta)) 成正比采样,以保证在旋转群 SO(3) 上的均匀分布。
- 参数:
shape (tuple[int]) - 附加尺寸的形状。
- 返回:
tuple[Tensor],由 \(\alpha\) 、\(\beta\) 、\(\gamma\) 组成的三元组,每个张量形状为 shape。
- 异常:
TypeError - 如果 shape 的类型不是 tuple。
TypeError - 如果 shape 元素的类型不是 int。
样例:
>>> from mindscience.e3nn.o3 import rand_angles >>> m = rand_angles((1)) >>> print(m) (Tensor(shape=[1], dtype=Float32, value= [ 4.00494671e+00]), Tensor(shape=[1], dtype=Float32, value= [ 1.29240000e+00]), Tensor(shape=[1], dtype=Float32, value= [ 5.71690750e+00]))