All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
o3.TensorProduct
: is jit scriptableo3.TensorProduct
: also broadcast theweight
argument
- Add argument
basis
intomath.soft_one_hot_linspace
that can take valuesgaussian
,cosine
andfourier
io.SphericalTensor.sum_of_diracs
- Optional arguments
function(..., device=None, dtype=None)
for many functions e3nn.nn.models.gate_points_2102
using node attributes along the length embedding to feed the radial networkIrreps.slices()
- Module
Extract
(andExtractIr
) to extract subsets of irreps tensors - Recursive TorchScript compiler
e3nn.util.jit
- TorchScript support for
TensorProduct
and subclasses,NormActivation
,Gate
,FullyConnectedNet
, andgate_points_2101.Network
- in
o3.TensorProduct.instructions
: renamedweight_shape
inpath_shape
and is now set even ifhas_weight
isFalse
o3.TensorProduct
weights are now flattened tensors- rename
io.SphericalTensor.from_geometry_adjusted
intoio.SphericalTensor.with_peaks_at
- in
ReducedTensorProducts
,ElementwiseTensorProduct
andFullTensorProduct
: renameirreps_out
argument intoset_ir_out
to not confuse it witho3.Irreps
io.SphericalTensor.from_geometry_global_rescale
e3nn.math.reduce.reduce_tensor
in favor ofe3nn.o3.ReducedTensorProducts
- swish, use
torch.nn.functional.silu
instead "cartesian_vectors"
for equivariance testing — since the 0.2.2 Euler angle convention change, L=1 irreps are equivalent
io.SphericalTensor.from_samples_on_s2
manage batch dimension- Modules that generate code now clean up their temporary files
NormActivation
now works on GPU
- Euler angle convention from ZYZ to YXY
TensorProduct.weight_shapes
content put intoTensorProduct.instructions
- Better TorchScript support