crlb#

blochsim.optim.crlb()[source]#

Cramer-Rao lower bound on the variance of each parameter.

Parameters:
  • jacobian (torch.Tensor) – (..., parameters, samples), derivative of the signal with respect to each parameter. Real and imaginary parts count as separate measurements.

  • noise_variance (float, default=1.0) – Variance of the noise per real measurement, in signal units squared.

  • singular ({"raise", "infinite"}, default="raise") – Behaviour where the parameters are not jointly identifiable: raise, or return an infinite variance at those entries.

Returns:

(..., parameters), diagonal of the inverse Fisher matrix.

Return type:

torch.Tensor

Raises:
  • ValueError – If the Jacobian has no parameter axis, or singular is invalid.

  • torch.linalg.LinAlgError – If the Fisher matrix is singular and singular="raise".

Examples using blochsim.optim.crlb#

PERK: kernel ridge regression

PERK: kernel ridge regression

Joint relaxometry protocol design

Joint relaxometry protocol design