O(3) operations

Representations

Irrep(l[, p])

MulIrrep(mul, ir)

Irreps([spec])

Linear(irreps_in, irreps_out, *[, f_in, ...])

Norm([irreps_in, per_irrep, squared])

Tensor products

TensorProduct(irreps_in1, irreps_in2, ...[, ...])

Raw-array compatible TensorProduct.

FullyConnectedTensorProduct(irreps_in1, ...)

Raw-array compatible FullyConnectedTensorProduct.

FullTensorProduct(irreps_in1, irreps_in2[, ...])

Raw-array compatible FullTensorProduct.

ElementwiseTensorProduct(irreps_in1, irreps_in2)

Raw-array compatible ElementwiseTensorProduct.

TensorSquare(irreps_in[, irreps_out, ...])

ReducedTensorProducts(formula[, ...])

Spherical harmonics and grids

spherical_harmonics(degrees, vectors, *[, ...])

Evaluate real spherical harmonics in the canonical e3nn basis.

spherical_harmonics_alpha_beta(degrees, ...)

Evaluate spherical harmonics from polar angles in the e3nn YXY convention.

SphericalHarmonics(irreps_out[, normalize, ...])

SphericalHarmonicsAlphaBeta(degrees, *[, ...])

s2_grid(res_beta, res_alpha, *[, dtype])

ToS2Grid([lmax, res, normalization])

FromS2Grid([res, lmax, normalization, lmax_in])

SO3Grid(lmax, resolution, *[, ...])

Transform regular-representation coefficients to and from an SO(3) grid.

Rotations

rand_angles(*shape[, dtype])

Sample Haar-uniform YXY Euler angles.

rand_matrix(*shape[, dtype])

Sample Haar-uniform proper rotation matrices.

rand_quaternion(*shape[, dtype])

Sample unit quaternions representing Haar-uniform rotations.

rand_axis_angle(*shape[, dtype])

Sample axis-angle pairs representing Haar-uniform rotations.

angles_to_matrix(alpha, beta, gamma)

Return e3nn's active YXY Euler rotation matrix.

matrix_to_angles(matrix)

axis_angle_to_matrix(axis, angle)

Convert normalized or non-normalized axes and angles to matrices.

matrix_to_axis_angle(matrix)

quaternion_to_matrix(quaternion)

matrix_to_quaternion(matrix)

Convert rotation matrices to unit quaternions, including near pi.

compose_angles(alpha1, beta1, gamma1, ...)

compose_quaternion(quaternion1, quaternion2)

Compose quaternions in the same order as matrix multiplication.

compose_axis_angle(axis1, angle1, axis2, angle2)

wigner_d(l, alpha, beta, gamma)

Return the real Wigner D matrix for any non-negative integer l.

irreps_wigner_d(irreps, alpha, beta, gamma, *)

irreps_wigner_d_from_matrix(irreps, matrix)

wigner_3j(l1, l2, l3)

Return e3nn-normalized real Wigner 3j coefficients.