Source code for ivis.models.operators.nufft

import torch
import pytorch_finufft


[docs] def forward_nufft(x_pb, u_radpix, v_radpix, cell_size): points = torch.stack([-v_radpix, u_radpix], dim=0) c = x_pb.to(torch.complex64) return (cell_size**2) * pytorch_finufft.functional.finufft_type2( points, c, isign=1, modeord=0 )
[docs] def backward_nufft(y, pb_shape, u_radpix, v_radpix, cell_size): points = torch.stack([-v_radpix, u_radpix], dim=0) return (cell_size**2) * pytorch_finufft.functional.finufft_type1( points, y, pb_shape, isign=-1, modeord=0 )