v2.10.3
Highlights
- Fixed cuequivariance triangle multiplication kernel crashes by falling back to PyTorch when kernels are unavailable or unsupported.
- Fixed forced contact restraints losing all signal when union weighting underflowed for large distance violations.
- Fixed an incorrect contact-union gradient sign so soft-OR contact restraints apply gradient pressure with the correct magnitude across union members.
Details
- Triangle multiplication now treats known
triangle_multiplicative_updateimport/support failures as recoverable, warns once, and disables both incoming/outgoing kernel paths for the rest of the process. - Unexpected kernel errors still surface instead of being silently swallowed.
- Contact-union weighting now uses numerically stable normalization to avoid float32 underflow on large violations.
- Contact-union gradients now match finite-difference checks, and negative union indices are rejected clearly.
Acknowledgment
Thanks to upstream PR jwohlwend#682 for identifying the kernel fallback and contact restraint areas that motivated these community fixes.
Commits since v2.10.2
7032160Fix contact union gradients and kernel fallback94b0d86Bump version to 2.10.3