BrahMap quick start guide
Proceed with following steps:
-
Process the pointings, provided as pixel indices
processed_pointings = ProcessTimeSamples(pixs=pointings,
npix=npix,
pol=3,
phi=pol_angles
)
npix_new, __ = processed_pointings.get_new_pixel
-
Create pointing matrix operator as sparse linear operator
P = SparseLO(n=npix_new,
m=nsamp,
pix_samples=processed_pointings.pixs,
pol=3,
angle_processed=processed_pointings
)
-
Make a noise covariance matrix
inv_N = BlockLO(blocksize=blocksize, t=inv_sigma2, offdiag=False)
-
Make a block-diagonal preconditioner operator
Mbd = BlockDiagonalPreconditionerLO(CES=processed_pointings,
n=npix_new,
pol=3
)
-
Solve for sky maps
A = P.T * inv_N * P
b = P.T * inv_N * tod_array
map_out = scipy.sparse.linalg.cg(A, b, M=Mbd)