Skip to content

Releases: jcmgray/symmray

v0.2.1

28 Apr 22:45

Choose a tag to compare

Breaking changes

  • Decomposition routines (svd / qr / lq / eigh) now honor a corrected charge-carrying side convention; results may differ when the non-default side was previously selected.
  • lazyabstractmethod pattern removed; abstract hooks are now concrete methods on the appropriate *Common mixin. Affects external subclassers of internal mixins.
  • Absorb-mode handling standardized via a new Absorb class across linalg modules — accepted values/normalization are unified across sparse and flat backends.

Enhancements

  • einsum: multi-term einsum via cotengra contraction paths.
  • Cholesky: new cholesky (and cholesky_regularized) for all array types (sparse/flat, abelian/fermionic), with flat-backend support contributed in (#25).
  • Decompositions:
  • Performance: lexsort and phase computations reworked for faster jax.jit tracing (#31); int packing dtype tightened.
  • Reshape: refactored calc_reshape_args with broader test coverage.
  • Architecture: many methods unified into BosonicCommon; new tests/test_no_method_overrides.py enforces the single-definition MRO rule.
  • Docs: initial API reference, ReadTheDocs build infrastructure, RTD badge, and reference updates (#30).
  • Tooling: pixi run pytest task with SYMMRAY_DEBUG=1; renamed test envs (testpyold/testpymid/testpynew); CI simplified to use the pixi task.

Bug fixes

  • Fixed einsum for single-term expressions.
  • Fixed reshape with an ambiguous -1 in newshape.
  • Fixed charge-carrying side behavior in decompositions.
  • Fixed dtype handling in charge shift.
  • Fixed cholesky correctness bugs uncovered during multi-backend rollout.

New Contributors

Full Changelog: v0.2.0...v0.2.1

v0.2.0

13 Jan 21:36

Choose a tag to compare

What's Changed

Breaking changes:

  • rename oddpos -> dummy_modes and tweak behavior
  • spinful local basis, change order, see vmc energy compatibility tests

Enhancements:

  • add to_pytree and from_pytree methods
  • possibly preserve label when contracting arrays
  • add flat kwarg to operator constructors
  • Add kwargs to utils.from_dense function by @Quantumgunhee in #19
  • fermi_hubbard_spinless: add pairing term

Bug fixes:

  • various fixes for using symmray with torch and jax
  • replace tensor index with autoray 'take' for torch compatibility by @sjdu10 in #23

Full Changelog: v0.1.1...v0.2.0

v0.1.1

03 Dec 22:51

Choose a tag to compare

What's Changed

  • support flat fermionic with torch vmap
  • add symmray.take

New Contributors

Full Changelog: https://github.com/jcmgray/symmray/commits/v0.1.1