gatr_geometric_product#

cuequivariance.descriptors.gatr_geometric_product() SegmentedTensorProduct#

subsrcipts: input1[i],input2[j],output[k]+ijk

References

Examples

>>> d = gatr_geometric_product(); d
i,j,k+ijk sizes=16,16,16 num_segments=8,8,8 num_paths=60 i={1, 3} j={1, 3} k={1, 3}
>>> d = d.append_modes_to_all_operands("u", dict(u=32)); d
iu,ju,ku+ijk sizes=512,512,512 num_segments=8,8,8 num_paths=60 i={1, 3} j={1, 3} k={1, 3} u=32
>>> d = d.normalize_paths_for_operand(2); d.paths[-1]
op0[7]*op1[6]*op2[1]*[[[-0.25]]]
>>> d = d.flatten_coefficient_modes(); d
u,u,u sizes=512,512,512 num_segments=16,16,16 num_paths=192 u=32