Skip to content

Releases: pnkraemer/matfree

v0.6.0

09 Jun 11:07
39bc887

Choose a tag to compare

This release includes some changes to matfree's API, most notably the stochtrace module, thanks to @sethaxen's contributions.
These changes include renaming the Rademacher samplers to sampler_signs (because now this sampler can produce complex numbers), renaming the estimator to estimator_monte_carlo, and adding a leave-one-out family of estimators estimator_leave_one_out (think: xtrace). Another breaking change is that integrand_wrap_moments is replaced by estimator_monte_carlo_mean_and_sem, which should provide easier access to error estimates for the trace estimators.

The release also drops a JavaScript extension that caused some security issues, caught by @Ceyron.

Consult the release notes below for precise changes.

What's Changed

Breaking Changes

  • Replace sampler_rademacher with sampler_signs by @sethaxen in #270
  • Rename estimator API to estimator_monte_carlo to distinguish it from LOO by @pnkraemer in #272
  • Remove stochtrace.monte_carlo_wrap_moments and replace it with a dedicated error estimation API by @pnkraemer in #276

New Features

  • Make stochastic trace estimation work for complex numbers by @pnkraemer in #268
  • Make decomp, funm, and eigh pytree compatible and improve docs by @pnkraemer in #278
  • Add sampler for the unit sphere by @sethaxen in #264
  • Add exchangeable LOO-based estimators of the trace by @sethaxen in #263

Improvements to the Documentation

  • Include a docstring-example for matfree.eig by @pnkraemer in #262
  • Replace the normal sampler with the signs sampler in the tutorials by @pnkraemer in #271
  • Fix maths rendering issue in documentation by @pnkraemer in #274

Other Changes

  • Make flaky tests more robust and test them with multiple seeds by @pnkraemer in #265
  • Rename std to sem to clarify standard deviation vs standard error by @pnkraemer in #277
  • Remove polyfill.js from extra_javascript by @Ceyron in #279

New Contributors

Full Changelog: v0.5.5...v0.6.0

v0.5.5

02 Dec 09:01
3b458b1

Choose a tag to compare

What's Changed

New Features

  • Include LstSq correction factors for rank-deficient matrices by @pnkraemer in #260

Full Changelog: v0.5.4...v0.5.5

v0.5.4

04 Nov 07:49
94cc3f7

Choose a tag to compare

What's Changed

Improvements to the Documentation

  • Make readme batches consistent in color by @pnkraemer in #258
  • Refine citation references in README, lsmr, and tridiag_sym by @pnkraemer in #259

Full Changelog: v0.5.3...v0.5.4

v0.5.3

03 Nov 08:30
1e58597

Choose a tag to compare

What's Changed

New Features

Improvements to the Documentation

  • Add bibtex to Roy et al. (2025) for gradients of least-squares by @pnkraemer in #254
  • Update bibtex for Lanczos paper and mention LstSq paper in readme by @pnkraemer in #257

Full Changelog: v0.5.2...v0.5.3

v0.5.2

22 Sep 11:13
ef66e7d

Choose a tag to compare

What's Changed

New Features

Full Changelog: v0.5.1...v0.5.2

v0.5.1

22 Aug 14:47
6ed3d5e

Choose a tag to compare

What's Changed

New Features

  • Fix a custom-vjp error that's encountered when jitting LSMR by @pnkraemer in #252

Full Changelog: v0.5.0...v0.5.1

v0.5.0

22 Aug 14:32
f638e7f

Choose a tag to compare

What's Changed

Breaking Changes

Full Changelog: v0.4.1...v0.5.0

v0.4.1

14 Aug 14:21
1ace202

Choose a tag to compare

What's Changed

New Features

  • Raise a ValueError in the Hessenberg-adjoints if num_matvecs=0 to catch an existing error by @pnkraemer in #249
  • Introduce a reortho flag in bidiag() and parallelise GS by @pnkraemer in #250

Improvements to the Documentation

Other Changes

New Contributors

Full Changelog: v0.4.0...v0.4.1

v0.4.0

24 Jul 04:54
e7e5314

Choose a tag to compare

What's Changed

Breaking Changes

  • Rename 'use_custom_vjp' to 'custom_vjp' to ensure consistency with the rest of the code by @pnkraemer in #244
  • Drop Python 3.10 support because JAX did by @pnkraemer in #246

New Features

Improvements to the Documentation

  • Change variable names in hessenberg-adjoint to improve documentation by @pnkraemer in #243

Full Changelog: v0.3.1...v0.4.0

v0.3.1

21 Jul 13:52
e563d09

Choose a tag to compare

What's Changed

New Features

Full Changelog: v0.3.0...v0.3.1