linop.Sobolev#
- class bartorch.linop.Sobolev#
Bases:
LinearOperatorA smooth image from weighted k-space coefficients, BART’s
linop_noir_weights.The coefficients are multiplied by
c (1 + a |k|^2)^(-b/2)and taken onto the grid by the centred unitary inverse FFT alongaxes, wherek_iis the frequency index along axisi, from-n_i // 2, divided byn_i. Solving for the coefficients rather than the image weights the penalty on each frequency by the inverse square of its weight: the Sobolev norm NLINV puts on coil sensitivities andmobaon B1 and B0 maps.- Parameters:
shape (tuple of int) – The grid, C order. The coefficients have the same shape.
axes (int or tuple of int) – The axes weighted and transformed.
a (float) – Width and order of the weighting.
b (float) – Width and order of the weighting.
c (float, default=1.0) – The weight at the centre of k-space.
Examples
A map on a 64x64 grid under
moba’s B1 weighting, started from a constant:>>> W = Real((64, 64)) @ Sobolev((64, 64), (0, 1), 440.0, 20.0) >>> coefficients = W.H(torch.ones(64, 64, dtype=torch.complex64))
Also has the methods and properties of LinearOperator.