Added
- Simple irreps indexing of `IrrepsArray`: like `x[..., "10x0e"]` but not `x[..., "0e + 1e"]`
- `e3nn.concatenate, e3nn.mean, e3nn.sum`
- `e3nn.norm` for `IrrepsArray`
- `e3nn.tensor_product`
- `e3nn.normal`
- Better support of `+ - * /` operators for `IrrepsArray`
- Add **new operator** `e3nn.grad`: it takes an `IrrepsArray -> IrrepsArray` function and returns a `IrrepsArray -> IrrepsArray` function
- Add support of operator `IrrepsArray ** scalar`
- Add support of `x[..., 3:6]` for `IrrepsArray`
- Add `e3nn.reduced_tensor_product_basis`
- Add `e3nn.stack`
Removed
- `IrrepsArray.cat` is now deprecated and replaced by `e3nn.concatenate`
- `e3nn.full_tensor_product` is now deprecated and replaced by `e3nn.tensor_product`
- `e3nn.FullyConnectedTensorProduct` is now deprecated in favor of `e3nn.tensor_product` and `e3nn.Linear`
- **breaking change** remove `IrrepsArray.from_any`
- **breaking change** remove option `optimize_einsums`, (it is now always `True`)
Changed
- **breaking change** rewrite the `equivariance_error` and `assert_equivariant` functions