linop.Sobolev#
- class bartorch.linop.Sobolev#
Bases:
LinearOperatorImage from Sobolev-weighted k-space coefficients, BART’s
linop_noir_weights.The coefficients are multiplied by
c (1 + a |k|^2)^(-b/2)and transformed by the centred unitary inverse FFT alongaxes.k_iis the frequency index along axisi, from-(n_i // 2), divided byn_i. Penalising the coefficients rather than the image is the Sobolev-norm regularization NLINV applies to coil sensitivities andmobato B1 and B0 maps.- Parameters:
shape (tuple of int) – Domain and codomain, C order.
axes (int or tuple of int) – Axes weighted and transformed.
a (float) – Width and order of the weighting (NLINV’s
aandb).b (float) – Width and order of the weighting (NLINV’s
aandb).c (float, default=1.0) – 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.