a&a manuscript no. astronomy and astrophysicsarxiv:astro-ph/0101112 v1 8 jan 2001 a&a manuscript no....

14
arXiv:astro-ph/0101112 v1 8 Jan 2001 A&A manuscript no. (will be inserted by hand later) Your thesaurus codes are: 02(12.03.1;03.13.2) ASTRONOMY AND ASTROPHYSICS MAPCUMBA : a fast iterative multi-grid map-making algorithm for CMB experiments O. Dor´ e 1 , R. Teyssier 1,2 , F.R. Bouchet 1 , D. Vibert 1 , and S. Prunet 3 1 Institut d’Astrophysique de Paris, 98bis, Boulevard Arago, 75014 Paris, FRANCE 2 Service d’Astrophysique, DAPNIA, Centre d’ ´ Etudes de Saclay, 91191 Gif-sur-Yvette, FRANCE 3 CITA, McLennan Labs, 60 St George Street, Toronto, ON M5S 3H8, CANADA the date of receipt and acceptance should be inserted later Abstract. The data analysis of current Cosmic Microwave Background (CMB) experiments like BOOMERanG or MAXIMA poses severe challenges which already stretch the limits of current (super-) computer capabilities, if brute force methods are used. In this paper we present a practical solution to the optimal map making problem which can be used directly for next generation CMB experiments like ARCHEOPS and TopHat, and can probably be extended relatively easily to the full PLANCK case. This solution is based on an iterative multi-grid Jacobi algorithm which is both fast and memory sparing. Indeed, if there are N tod data points along the one dimensional timeline to analyse, the number of operations is of O(N tod ln N tod ) and the memory requirement is O(N tod ). Timing and accuracy issues have been analysed on simulated ARCHEOPS and TopHat data, and we discuss as well the issue of the joint evaluation of the signal and noise statistical properties. Key words: methods: data analysis – cosmic microwave background 1. Introduction As cosmology enters the era of “precision”, it enters si- multaneously the era of massive data sets. This has in turn showed the need for new data processing algorithm. Present and future CMB experiments in particular face some new and interesting challenges (Bond et al. 1999). If we accept the now classical point of view of a four steps data analysis pipeline : i/ from time-ordered data (TOD) to maps of the sky at a given frequency, ii/ from frequency maps to (among others) a temperature map, iii) from a temperature map to its power spectrum C , iv/ from the power spectrum to cosmological parameters and charac- teristics of the primordial spectrum of fluctuation, the ul- timate quantities to be measured in a given model. The Send offprint requests to : O. Dor´ e Correspondence to : [email protected] work we are presenting focus on the first of these issues, namely the map-making step. Up to the most recent experiments, maps could be made by a brute force approach amounting to solve di- rectly a large linear problem by direct matrix inversion. Nevertheless the size of the problem, and the required computing power, grows as a power law of the data set size, and the limits of this kind of method have now been reached (Borrill 2000). Whereas the most efficient develop- ment in this massive computing approach, i.e. the MAD- CAP package (Borrill 1999) has been applied to the recent BOOMERanG and MAXIMA experiments (de Bernardis et al. 2000; Hanany et al. 2000) some faster and less con- suming solutions based on iterative inversion algorithms have now been developed and applied too (Prunet et al. 2000). This is in the same spirit as (Wright et al. 1996), and we definitely follow this latter approach. Design goals are to use memory sparingly by handling only columns or rows instead of full matrixes and to in- crease speed by minimising the number of iterations re- quired to reach the sought convergence of the iterative scheme. We fulfill these goals by an iterative multi-grid Jacobi algorithm. As recalled below, an optimal method involves using the noise power spectrum. We have thus investigated the possibility of a joint noise (and signal) evaluation using this algorithm. Section 2 presents in detail the method and its imple- mentation, while section 3 demonstrates its capabilities by using simulations of two on-going balloon CMB exper- iments, ARCHEOPS 1 (Benoit et al. 2000) and TopHat 2 . The results are discussed in section 4, together with the problem of the evaluation of the noise properties, as well as possible extensions. 2. The method 1 http://www-crtbt.polycnrs-gre.fr/archeops/ 2 http://topweb.gsfc.nasa.gov/

Upload: others

Post on 07-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • arX

    iv:a

    stro

    -ph/

    0101

    112

    v1

    8 Ja

    n 20

    01A&A manuscript no.(will be inserted by hand later)

    Your thesaurus codes are:02(12.03.1;03.13.2)

    ASTRONOMYAND

    ASTROPHYSICS

    MAPCUMBA : a fast iterative multi-grid map-makingalgorithm for CMB experiments

    O. Doré1, R. Teyssier1,2, F.R. Bouchet1, D. Vibert1, and S. Prunet3

    1 Institut d’Astrophysique de Paris, 98bis, Boulevard Arago, 75014 Paris, FRANCE2 Service d’Astrophysique, DAPNIA, Centre d’Études de Saclay, 91191 Gif-sur-Yvette, FRANCE3 CITA, McLennan Labs, 60 St George Street, Toronto, ON M5S 3H8, CANADA

    the date of receipt and acceptance should be inserted later

    Abstract. The data analysis of current CosmicMicrowave Background (CMB) experiments likeBOOMERanG or MAXIMA poses severe challengeswhich already stretch the limits of current (super-)computer capabilities, if brute force methods are used. Inthis paper we present a practical solution to the optimalmap making problem which can be used directly fornext generation CMB experiments like ARCHEOPS andTopHat, and can probably be extended relatively easilyto the full PLANCK case. This solution is based onan iterative multi-grid Jacobi algorithm which is bothfast and memory sparing. Indeed, if there are Ntod datapoints along the one dimensional timeline to analyse,the number of operations is of O(Ntod lnNtod) and thememory requirement is O(Ntod). Timing and accuracyissues have been analysed on simulated ARCHEOPS andTopHat data, and we discuss as well the issue of the jointevaluation of the signal and noise statistical properties.

    Key words: methods: data analysis – cosmic microwavebackground

    1. Introduction

    As cosmology enters the era of “precision”, it enters si-multaneously the era of massive data sets. This has inturn showed the need for new data processing algorithm.Present and future CMB experiments in particular facesome new and interesting challenges (Bond et al. 1999). Ifwe accept the now classical point of view of a four stepsdata analysis pipeline : i/ from time-ordered data (TOD)to maps of the sky at a given frequency, ii/ from frequencymaps to (among others) a temperature map, iii) from atemperature map to its power spectrum C`, iv/ from thepower spectrum to cosmological parameters and charac-teristics of the primordial spectrum of fluctuation, the ul-timate quantities to be measured in a given model. The

    Send offprint requests to: O. Doré

    Correspondence to: [email protected]

    work we are presenting focus on the first of these issues,namely the map-making step.

    Up to the most recent experiments, maps could bemade by a brute force approach amounting to solve di-rectly a large linear problem by direct matrix inversion.Nevertheless the size of the problem, and the requiredcomputing power, grows as a power law of the data setsize, and the limits of this kind of method have now beenreached (Borrill 2000). Whereas the most efficient develop-ment in this massive computing approach, i.e. the MAD-CAP package (Borrill 1999) has been applied to the recentBOOMERanG and MAXIMA experiments (de Bernardiset al. 2000; Hanany et al. 2000) some faster and less con-suming solutions based on iterative inversion algorithmshave now been developed and applied too (Prunet et al.2000). This is in the same spirit as (Wright et al. 1996),and we definitely follow this latter approach.

    Design goals are to use memory sparingly by handlingonly columns or rows instead of full matrixes and to in-crease speed by minimising the number of iterations re-quired to reach the sought convergence of the iterativescheme. We fulfill these goals by an iterative multi-gridJacobi algorithm. As recalled below, an optimal methodinvolves using the noise power spectrum. We have thusinvestigated the possibility of a joint noise (and signal)evaluation using this algorithm.

    Section 2 presents in detail the method and its imple-mentation, while section 3 demonstrates its capabilitiesby using simulations of two on-going balloon CMB exper-iments, ARCHEOPS1(Benoit et al. 2000) and TopHat2.The results are discussed in section 4, together with theproblem of the evaluation of the noise properties, as wellas possible extensions.

    2. The method

    1 http://www-crtbt.polycnrs-gre.fr/archeops/2 http://topweb.gsfc.nasa.gov/

  • 2 Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code

    2.1. Optimal map making

    The relation between the sky map we seek and the ob-served data stream may be cast as a linear algebra system(Wright et al. 1996; Tegmark 1997). Let t and p indices de-note quantities in the temporal and spatial domains, andgroup as a data vector, dt, and a noise vector the tempo-ral stream of collected data and the detector noise stream,both of dimension Ntod. We then have

    dt = Atpxp + nt, (1)

    where Atpxp is the signal vector given by the observationof the unknown pixelised sky map, xp, which has been ar-ranged as a vector of dimension Npix. The Ntod × Npix“observation” matrix A therefore encompasses the scan-ning strategy and the beam pattern of the detector.

    In the following, we restrict to the case when the beampattern is symmetrical. We can therefore take xp to be amap of the sky which has already been convolved withthe beam pattern, and A only describes how this sky isbeing scanned. For the total power measurement (i.e. non-differential measurement) we are interested in here, theobservation matrix A then has a single non-zero elementper row, which can be set to one if d and x are expressedin the same units. The model of the measurement is thenquite transparent: each temporal datum is the sum of thepixel value to which the detector is pointing plus the de-tector noise.

    The map-making step then amounts to best solve for xgiven d (and some properties of the noise). We shall seeka linear estimator of xp,

    x̂p = Wptdt . (2)

    To motivate a particular choice of the Npix ×Ntod matrixW , a Bayesian approach is convenient. Indeed we are seek-ing the optimal solution to this inversion problem whichmaximises the probability of a deduced set of theory pa-rameters (here the map xp) given our data (dt) by max-imising P(x|d). Bayes’ theorem simply states that

    P(x|d) =P(d|x)P(x)

    P(d). (3)

    If we do not assume any theoretical prior, then x followsa uniform distribution as well as d. Therefore,

    P(x|d) ∝ P(d|x). (4)

    If we further assume that the noise is Gaussian, we canwrite

    P(x|d) ∝ exp(−nTt N−1

    tt′ nt′/2) (5)

    ∝ exp(−(d − Ax)Tt N−1

    tt′ (d − Ax)t′/2) (6)

    ∝ exp(−χ2/2) (7)

    where Ntt′ =< nnT >tt′ is the noise covariance matrix. In

    this particular case, maximising P(x|y) amounts to find

    the least square solution which was used to analyse the“COBE” data (Jansen and Gulkis 1992),

    W =[

    AT N−1A]−1

    AT N−1 . (8)

    In this paper we will actually deal only with this estima-tor. Nevertheless as a next iteration in the analysis pro-cess, we could incorporate various theoretical priors byexpliciting P(x). For example, it is often assumed a Gaus-sian prior for the theory, i.e. P(x) ∝ exp(−xTp C

    −1

    pp′xp′/2)

    where Cpp′ = 〈xpxTp′〉 is the signal covariance matrix.

    In that case the particular solution turns out to be theWiener filtering solution (Zaroubi et al. 1995; Bouchet andGispert 1996; Tegmark and Efstathiou 1996; Bouchet andGispert 1998):

    W =[

    C−1 + AT N−1A]−1

    AT N−1 . (9)

    But this solution may always be obtained by a further(Wiener) filtering of the COBE solution, and we do notconsider it further.

    The prior-less solution demonstrates that as long asthe (Gaussian) instrumental noise is not white, a sim-ple averaging (co-addition) of all the data points corre-sponding to a given sky pixel is not optimal. If the noiseexhibits some temporal correlations, as induced for in-stance by a low-frequency 1/f behavior of the noise spec-trum which prevails in most CMB experiments, one hasto take into account the full time correlation structure ofthe noise. Additionally this expression demonstrates thateven if the noise has a simple time structure, the scan-ning strategy generically induces a non-trivial correlation

    matrix[

    AT N−1A]

    −1of the noise map.

    Even if the problem is well posed formally, a quick lookat the orders of magnitude shows that the actual finding ofa solution is non trivial task. Indeed a brute force methodaiming at inverting the full matrix

    [

    AT N−1A]

    −1, an op-

    eration scaling as O(N 3pix), is already hardly tractablefor present long duration balloon flights as MAXIMA,BOOMERanG, ARCHEOPS or TopHat where Ntod ∼106 and Npix ∼ 105. It appears totally impractical forPLANCK since for a single detector (amid 10s) Ntod ∼ 10

    9

    and Npix ∼ 107!One possibility may be to take advantage of specific

    scanning strategies, and actually solve the inverse of theconvolution problem as detailed in (Wandelt and Gorski2000). This amounts to deduce the map coefficients almin the spherical harmonic basis through a rotation of aFourier decomposition of the observed data. The map willthen be a simple visualisation device, while the alm wouldbe ready to use directly for a component separation (asin (Bouchet and Gispert 1996; Tegmark and Efstathiou1996; Bouchet and Gispert 1998)) and the CMB powerspectrum estimate. While potentially very interesting, thisapproach will not be generally applicable (at least effi-ciently), and we now turn to a practical (general) solutionof equation (8) by iterative means.

  • Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code 3

    2.2. Practical implementation for large data sets

    We solve the map-making problem by adapting to ourparticular case the general “multi-grid method” (Press etal. 1992). Multi-grid methods are commonly used to speedup the convergence of a traditional relaxation method (inour case the Jacobi method, as in (Prunet et al. 2000))defined at resolution `max (see below). A set of recursivelydefined coarser grids (` < `max) are used as temporarycomputational space, in order to increase the convergencerate of the relaxation process. To be fully profitable, thisalgorithm implies for each resolution both a rebinning inspace (resolution change) and in time (resampling).

    In this paper, we use the HEALPix pixelisation of thesphere (Górski et al. 1998). In this scheme, the sphereis covered by 12 basic quadrilaterals, further divided re-cursively into pixels of equal area. The map resolutionis labeled by Nside: the number of pixels along the sideof one basic quadrilateral. Hence, Nside = 1 means thatthe sphere is covered by 12 large pixels only. The numberof pixels is given by Npix = 12N

    2side. Nside = 256 corre-

    sponds to a pixel size of 13.7 arcmin. For practical reasons,we need to define the resolution k of a HEALPix map as

    Nside = 2k (10)

    The “nested”pixel numbering scheme of HEALPix (Górskiet al. 1998) allows an easy implementation of the coarsen-ing (k → k − 1) and refining (k → k + 1) operators thatwe use intensively in our multigrid scheme.

    Let us now get into the details of our implementationand discuss successively the exact system we solve, theway we solve it and the actual steps of the multi-grid al-gorithm.

    2.2.1. Determining the working resolution kmax

    We aim at solving for the optimal map x̂k at a given spatialresolution k using

    ATk N−1Ak x̂k = A

    Tk N

    −1 d , (11)

    where Ak is the “observation” operator (from spatial totemporal domain) and ATk is the “projection” operator(from temporal to spatial domain). In a noise-free exper-iment, the optimal map would be straightforwardly givenby the co-added map (introducing the “co-addition” op-erator Pk)

    x̂k = Pk d ≡ (ATk Ak)

    −1ATk d (12)

    The time line is given by d = A∞x∞ + n where x∞ is thesky map at “infinite” resolution (k = +∞ in our nota-tions). In order to check the accuracy of this trivial noise-free map making, it is natural to compute the residual inthe time domain with n = 0

    pk = Akx̂k − d = Akx̂k − A∞x∞ (13)

    which will be non-zero in practice, as soon as one workswith finite spatial resolution. We call this residual the pix-elisation noise. Since we assume here that the instrumen-tal beam is symmetric, the sky map is considered as thetrue sky convolved by, say, a Gaussian beam of angulardiameter ∆θB. This introduces a low-pass spatial filter inthe problem. In other words, as the resolution increase, thepixelisation noise should decrease towards zero. We haveestimated that the order of magnitude of the pixelisationnoise can be approximated by

    ‖pk‖ ' ‖x∞‖∆θk∆θB

    (14)

    The norms used in the above formula can be either themaximum over the time line (a very strong constraint) orthe variance over the time line (a weaker constraint). Sincethe pixelisation noise is strongly correlated with the skysignal, point sources or Galaxy crossings are potential can-didates for large and localised bursts of pixelisation noise.The correct working resolution kmax is set by requiringthat the pixelisation noise remains low compared to theactual instrumental noise, or equivalently

    ∆θkmax ≤∆θBS/N

    (15)

    Most of the CMB experiments are noise dominated alongthe time line, constraining the effective map resolution tobe of the order of the instrumental beam or even larger.Note however that the pixelisation noise is strongly nonGaussian (point sources or Galaxy crossings) and can bealways considered as a potential source of residual stripesin the final maps.

    2.2.2. The basic relaxation method: an approximateJacobi solver

    Instead of solving for x̂ we perform the change of variable

    ŷ = x̂ − P d (16)

    and solve instead for ŷ which obeys

    PN−1A ŷ = PN−1(d − APd) or Mŷ = b (17)

    where we have multiplied each side of equation (11) by(AT A)−1, the pixel hit counter. From now on, we alsoassume that the noise in the timestream is stationaryand that its covariance matrix is normalised so thatdiag N−1tt′ = I. The previous change of variable allowsus to subtract the sky signal from the data: since we havechosen a resolution high enough to neglect the pixelisationnoise, we have indeed APd ' A∞x∞ + APn and, conse-quently, d−APd ' n−APn. The map making consists intwo step: first compute a simple co-added map from thetime line, and second, solve equation (17) for the stripesmap ŷ. The final optimal map is obtained by adding thesetwo maps.

  • 4 Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code

    It is worth mentioning that the stripes map is com-pletely independent of the sky signal, as soon as the pix-elisation noise can be ignored. It depends only on the scan-ning strategy through the matrix A and on the noise char-acteristics through the matrix N . Even if in principle thischange of variable is irrelevant since it does not change thematrix to be inverted, it does in practice since d − APdis free from the fast variations of d (up to the pixelisationnoise), as e.g. the Galaxy crossings, which are numericallydamaging to the quality of the inversion.

    To solve for equation 17, we follow the ideas of (Prunetet al. 2000) and apply an approximate Jacobi relaxationscheme. The Jacobi method consists in the following re-laxation step to solve for our problem

    ŷn+1 = Rŷn + D−1b and ŷ0 = 0 (18)

    where D is the diagonal part of the matrix M and R isthe residual matrix R = I −D−1M . Computing the diag-onal elements of M = PN−1A is rather prohibitive. Theidea of Prunet et al. (2000) is to approximate D ' I byneglecting the off-diagonal elements of N−1. The residualmatrix then simplifies greatly and writes

    R = P (I − N−1)A (19)

    The approximate Jacobi relaxation step is therefore de-fined as

    ŷn+1 = Rŷn + b and ŷ0 = 0 (20)

    One clearly sees that if this iterative scheme converges,it is towards the full solution of equation 17. To performthese successive steps, it is extremely fruitful to rememberthe assumed stationarity of the noise. Indeed whereas thisassumption implies a circulant noise covariance matrix inreal space, it translates in Fourier space in the diagonalityof the noise covariance matrix. This is naturally anotherformulation of the convolution theorem, since a stationarymatrix acts on a vector as a convolution, and a diagonalmatrix acts as a simple vector product, thus a convolutionin real space is translated as a product in Fourier space.The point is that the manipulation of the matrix N−1 isconsiderably lighter and will be henceforth performed inFourier space. Applying the matrix R to a map reducesthen to the following operations in order

    1. “observe” the previous stripes map ŷn

    2. Fourier transform the resulting data stream3. apply the low-pass filter W = I − N−1

    4. inverse Fourier transform back to real space5. co-add the resulting data stream into the map ŷn+1.

    Assuming that the normalised noise power spectrumcan be approximated by P (f) = 1+(f0/f)

    α, the low-pass

    filter associated to each relaxation step is given by

    W (f) =fα0

    fα0 + fα

    (21)

    Since both A and P are norm-preserving operators, thenorm of the increment ∆ŷn = ŷn − ŷn−1 between stepn and n + 1 decreases as ‖∆ŷn+1‖ ≤ W (fmin)‖∆ŷn‖,where fmin is a minimal frequency in the problem. SinceW (fmin) < 1, we see that the approximate Jacobi relax-ation scheme will converge in every case, which is goodnews. On the other hand, since W (fmin) ' 1, the ac-tual convergence rate of the scheme is likely to be very,very slow, which is bad news (cf. figure 6 for a graphi-cal illustration) . The fact that this algorithm is robust,but dramatically slow is a well-known property of the Ja-cobi method. The multi-grid method is also well knownto solve this convergence speed problem. Note that if theconvergence is reached, the solution we get is the optimalsolution, i.e. similar to the one that would be obtained bya full matrix inversion.

    2.2.3. Multigrid relaxation

    The multi-grid method for solving linear problems is de-scribed in great details in (Press et al. 1992). At eachrelaxation step at level k = kmax, our target resolution,we can define the error enk = ŷ

    nk − ŷk and the residual

    rnk = Mkŷnk − bk. Both are related through

    Mkenk = r

    nk (22)

    If we are able to solve exactly for equation (22), the overallproblem is solved. The idea of the multi-grid algorithm isto solve approximately for equation (22) using a coarser“grid” at resolution k − 1, where the relaxation schemeshould converge faster. We thus need to define a fine-to-coarse operator, in order to define the new problem onthe coarse grid and solve for it. We also need a coarse-to-fine operator in order to inject the solution onto the finegrid. The approximation to the error enk is finally addedto the solution. The coarse grid solver is usually appliedafter a few iterations on the fine level have been performed(in practice we perform 3 to 5 iterations). Naturally, sincethe solution to the problem on the coarse level relies alsoon the same relaxation scheme, it can be itself acceler-ated using an even coarser grid. This naturally leads to arecursive approach of the problem.

    We defined our fine-to-coarse operator to be an aver-aging of the values of the 4 fine pixels contained in eachcoarse pixel. The coarse-to-fine operator is just a straightinjection of the value of the coarse pixel into the 4 finepixels. The most important issue is the temporal rebin-ning of the data stream since the speed of the iterativescheme at a given level is actually set by the two Fouriertransforms. We performed that resampling by simply tak-ing each time we go up one level one point out of two. Atthe lower resolutions, this reduction is such that the itera-tion cost is negligible when compared to that at higher k;it allows fast enough iterations that full convergence maybe reached. In practice we choose a minimal level k = 3

  • Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code 5

    defined by Nside = 8 and iterate a few hundred times toreach exact convergence.

    Finally the navigation through levels allows several op-tions to be taken. Either we go up and down through allthe levels successively (the so-called “V-cycle”) or we fol-low more intricate paths (e.g. the “W-cycle” where at agiven level we go down and up all the lower levels beforegoing up and vice-versa). Since it turns out that levels arerelatively disconnected in the sense that the scales wellsolved at a given resolution are only slightly affected bythe solution at a higher level, the “V-cycle” is appropriateand is the solution we adopt in the two following configu-rations.

    3. Practical application to ARCHEOPS andTopHat experiments

    We now aim at demonstrating the capabilities of this al-gorithm with simulated data whose characteristics are in-spired by those of the ARCHEOPS and TopHat experi-ments.

    3.1. Simulation

    The ARCHEOPS and TopHat experiments are very sim-ilar with respect to their scanning strategy. Indeed bothuse a telescope that simply spins at a constant rate (re-spectively 3 and 4 RPM) about its vertical axis. Thus dueto Earth rotation the sky coverage of both is performedthrough scan circles whose axis slowly drifts on the sky.Nevertheless, because of the different launch points (re-spectively on the Arctic circle (Kiruna, Sweden) and inAntarctica (McMurdo)) and their different telescope axiselevation (respectively ∼ 41o or 12o) they do not have thesame sky coverage.

    Otherwise the two experiments do not use the samebolometers technology, neither the same bands nor havethe same number of bolometers. But even if we try to befairly realistic, our goal though is not to compare their re-spective performances but rather to demonstrate two ap-plications of our technique in different settings. We thensimulate for each a data stream of ∼ 24 hrs durationwith respectively a sampling frequency of 171 and 64 Hz.The TODs contain realistic CMB and Galactic signal fora band at 143 GHz. Note that this is a one day datastream for TopHat (out of 10 expected) and that this fre-quency choice is more appropriate for ARCHEOPS thanfor TopHat (whose equivalent band is around 156 GHz),but this is realistic enough for our purpose. We generateda Gaussian noise time stream with the following powerspectrum P (f) ∝ (1 + (fknee/f)α)−1 with fknee = 0.24and 1 Hz, and α = 1.68 and 1. The noise amplitude perchannel is choosen so that it corresponds for ARCHEOPS(24 hours) and TopHat3 (10 days of flight) to 30/8 µK onaverage per 20′ pixel, with a beam FWHM of 10′ / 20′.

    3 Lloyd Knox private communication

    We introduced 5 distinct levels of resolution defined bytheir Nside parameter in the HEALPix package (Górskiet al. 1998). The higher resolution level is imposed bythe pixelisation noise level requirement (section 2.2.3) toNside = 256 (pixel size ∼ 13.7′) whereas the lower one isNside = 8 (pixel size ∼ 7.3o). Therefore these two config-urations each offer an interesting test since they differ bythe sky coverage and the noise power spectrum. We iter-ate 3 times at each level except at the lowest one wherewe iterate 100 times.

    3.2. Results

    The algorithm is as efficient in both situations. Whereasfor ARCHEOPS whose timeline is longer due to the highersampling frequency it took 2.25 hours on a SGI ORIGIN2000 single processor, it took around 1.5 hours for theTopHat daily data stream.

    In figures 1 and 2 we depict from top to bottom andfrom left to right the initial co-added data, the recon-structed noise map, the hit map, i.e. the number of hitper pixels at the highest worked out resolution, the initialsignal map as well as the reconstructed signal map and theerror map. We see that the destriping is excellent in bothsituations and the signal maps recovered only contain anapparently isotropic noise. We note the natural correla-tion between the error map and the hit map. Finally, westress that no previous filtering at all has been applied.

    Figure 3 shows how the noise map is reconstructed atvarious scales. This is a mere illustration of our multi-gridwork.

    3.3. Tests

    At this point, some tests are required to cautiously vali-date our method. First, as was stated below, as soon asthe iterative algorithm has converged, the solution is byconstruction the optimal solution, similar to the one thatwould be obtained by the full matrix inversion. As a cri-terium for convergence we required the 2-norm of residualsto be of the order of the machine accuracy.

    We initially have a Gaussian random noise stream fullycharacterised by its power spectrum. Therefore an impor-tant test is to check wether the deduced noise stream (by“observing” the stripe map, see § 4.3 for further detailsdefinition) is Gaussian and has the same power spectrum.On figure 4 we ensure that the evaluated noise time streamis indeed gaussian. As depicted on figure 5, where we plotin the ARCHEOPS case both the analytical expression ofthe spectrum according to which we generate the timelineand its recovered form, the agreement is excellent. We re-call that we assumed at the beginning a perfect knowledgeof the noise in order to define the filters. This is naturallyunrealistic but the issue of noise evaluation is discussed insection 4.3 below. We plotted as well the probability dis-tribution function (PDF) of the final error map, i.e. the

  • 6 Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code

    Fig. 1. Simulated ARCHEOPS Kiruna flight : From top to bottom and from left to right, the co-added map and theinput Galactic + CMB signal map, the reconstructed noise (stripes) and signal maps, the hit count and the error map(Arbitrary unit). The fact that the coverage is not fully symmetrical is due to the fact that we considered slightly lessthan 24hr. Mollweide projection with pixels of 13.7′ (HEALPix Nside = 256). Arbitrary units.

    Fig. 2. Simulated TopHat one day flight : From top to bottom and from left to right, the co-added map and theinput CMB + Galaxy signal map, the reconstructed noise (or stripes) and signal map, the hit count and error map.The fact that the coverage is not fully symmetrical is due to the fact that we consider only 18.2hr of flight. Gnomonicprojection with pixel of 13.7′ (HEALPix Nside = 256). Note that the slight visible stripping is correlated to theincomplete rotation pattern. Arbitrary units.

    Fig. 3. Multi-grid noise map recovery : In this plot we show in the ARCHEOPS Kiruna case how the noise map isreconstructed at various levels, corresponding respectively to Nside = 8, 16, 32, 64.

    recovered noisy signal map minus the input signal map(figure 4). This PDF is well fitted by a gaussian whoseparameters are given in figure 4. The PDF of the errormap displays some non-gaussian wings. Let us recall herethat this is no surprise here because of the non-uniformsky coverage as well as the slight residual stripping, bothdue to the non-ideal scanning strategy, i.e. that producesa non-uniform white noise in pixel space.

    Another particularly important test consists in check-ing the absence of correlation between the recovered noisemap and the initial signal map. We could not find anywhich is no surprise since we are iterating on a noise map(see § 2.2.2) which does not contain any signal up to thepixelisation noise, that is ensured to be negligible with re-gards to the instrumental noise by choice of the resolutionkmax (see § 2.2.1).

    4. Discussion

    4.1. Why is such an algorithm so efficient ?

    The efficiency of such a method can be intuitively un-derstood. Indeed, although the Jacobi method is knownto converge very safely it suffers intrinsically from a veryslow convergence for large-scale correlations (which origi-nate mainly in the off diagonal terms of the matrix to beinverted) (Press et al. 1992). This is illustrated on figure6: there we show the maps of residuals after solving thissystem using a standard Jacobi method on simulated datawith 50, 100, 150, and 200 iterations. We used the samesimulation and therefore the same sky coverage. Obviouslythe largest structures are the slowest to converge (imply-ing observed large scale residual patterns). As a conse-quence it seems very natural to help the convergence bysolving the problem at larger scales. Whereas large-scalestructures will not be affected by a scale change, smallerstructures will converge faster.

    4.2. Scalings

    We have found that this multi-grid algorithm translatesnaturally in a speed up greater than 10 as compared to astandard Jacobi method. This is illustrated in figure (7)where we plotted the evolution of the 2-norm of residu-als for the two methods in terms of the number of iter-ations in ’cycle units’. One cycle corresponds to 8 itera-tions at level kmax for a standard Jacobi method whereasit incorporates addionally going up and down all the low-est levels in the multi-grid case. Thus the cycle timingis not exactly the same but the difference is negligiblesince the limiting stages are definitely the iterations per-formed at maximum resolution. Note the fact that the effi-ciency of the multi-grid method allows us to solve exactlythe system up to the machine accuracy (small reboundsat the bottom of the curve) in approximately 135mn for(Ntod ∼ 8 106,Npix ∼ 8 105) on a SGI ORIGIN 2000 sin-gle processor. Since the limiting stages are the FFT’s atthe higher levels, this algorithm scales as O(Ntod lnNtod).In terms of memory storage it scales naturally as O(Ntod)since one crucial feature of this iterative method is to han-dle only vectors and never an explicit matrix. The scalingof this problem is formally independent of the number ofpixels Npix.

    4.3. The noise estimation issue and noise covariance

    matrix estimation

    The estimation of the statistical properties of the noise inthe timestream is an important issue for this kind of algo-rithm. Indeed, whereas till now we have assumed a perfectprior knowledge of the noise power spectrum in order todefine the filters, it might not be that easy in practice sincewe can not separate the signal from the noise. We willtherefore aim at making a joint estimation of the signaland the noise. This has been pioneered recently by (Fer-

  • Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code 7

    Fig. 6. Residual map after 50, 100, 150 and 200 iterations of a standard Jacobi method. This has been performed onsimulated data for one bolometer with a nominal noise level. The sky coverage is that of ARCHEOPS coming Kirunaflight. The residual large scale patterns illustrate the difficulties the standard Jacobi method faces to converge. Thestripes free area are the ones of scan crossing (see the hit map in figure 1).

    Fig. 4. In the TopHat case we plot from top to bottomthe recovered probability distribution function of the noisestream evaluated along the timeline as well as the errormap PDF. In this two cases a fit to a gaussian has beenperformed whose parameters are written inside the figures.No significant departure from gaussianity are detected.The arbitrary units are the same as the ones used for thepreviously shown maps.

    reira and Jaffe 2000) and implemented independently by(Prunet et al. 2000). The latter implementation is ratherstraightforward in our particular case since it just impliesreevaluating the filters after a number of iterations, giventhe (current) estimation of the signal map and thus ofthe signal data stream. Nevertheless its non-obvious con-vergence properties have to be studied carefully through

    Fig. 5. Recovery of the noise power spectrum in theArcheops case (top: linear x-axis, bottom: log x-axis): Thered thin dashed line shows the initial analytic noise powerspectrum used to generate the input noise stream and theblue thick line denotes the recovered one after 6 iterations.The recovered one has been binned as described in section4.3 and both have been normalised so that the white highfrequency noise spectrum is equal to one. The agreementis obviously very good. No apparent bias is visible. Notethat a perfect noise power spectrum prior knowledge hasbeen used in this application.

    simulations. Making use of (16) our evaluation of the noisetimeline n̂n at the nth iteration and at level max is

    n̂n = d − A(ŷ nkmax + Pd) . (23)

  • 8 Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code

    Fig. 7. The evolution of the 2-norm of residuals withthe number of iterations at level max. Whereas the bluedashed line is standard iterative Jacobi, the solid red lineis the iterative multi-grid Jacobi method. A full multi-grid cycle incorporates 3 iterations at level max beforegoing down and up all the levels. The sharp jumps corre-sponds to the moment when the scheme reach again levelmax and thus take the full benefits from the resolution atlower levels. Note that the very sharp features after ∼ 100iterations are due to the fact we reached the machine accu-racy which is almost out of reach for a standard iterativemethod.

    Then we compute its spectrum and (re-) define the re-quired filters. We then go through several multi-gridcycles (5 in the above demonstrated case) before re-evaluating the noise stream. Very few evaluations of thenoise are needed before getting a converged power spec-trum (around 2). In such an implementation, no noisepriors at all are assumed. This is illustrated on one par-ticular worked out example in the case of a 4 hoursARCHEOPS like flight (more detailed considerations willbe discussed somewhere else). To reduce the number ofdegrees of freedom we bin the evaluated noise power spec-trum using a constant logarithmic binning (∆ ln f = 0.15in our case) for f ≤ 2 fknee and a constant linear bin-ning (∆ f = 0.08 Hz in our case) for higher frequency.The figure 8 shows the genuine and evaluated noise powerspectrum. The initial noise power spectrum was a real-istic one P (f) ∝ (1 + (fknee/f)α) to which we addedsome small perturbations (the two visible bumps) to testthe method. Note the small bias around the telescope spinfrequency at fspin = 0.05Hz: this is illustrative of the diffi-culties we fundamentally face to separate signal and noiseat this particular frequency through equation (16) . Natu-rally, this bias was not present in the case demonstrated onfigure 5 where we assumed a prior knowledge of the spec-trum. This possible bias forced us to work with a coarserbinning (∆ ln f = 1.) in the 1/f part of the spectrum

    till the convergence is reached, i.e. we evaluate the noisepower spectrum with the previously mentioned binningonly at the last step. Proceeding this way, the conver-gence towards the correct spectrum is both fast (3 noiseevaluations) and stable.

    Second, the output of any map-making should containas well an evaluation of the map noise covariance matrix(AT N−1A)−1. Given such a fast algorithm and given anevaluation of the power spectrum, it is natural to obtainit through a Monte-Carlo algorithm fueled with variousrealizations of the noise timeline generated using the eval-uated power spectrum. This part will be presented in afuture work. However we illustrate it very briefly by avery rough C` determination (which is in no way an ap-propriate C` estimate). To this purpose we perform a oneday TopHat like simulation including only the CMB sig-nal plus the noise. From this data stream we obtain an“optimal” signal map as well as an evaluation of the noisepower spectrum using the previously described algorithm.With the help of the anafast routine of the HEALPixpackage we calculate this way a rough Csignal` . Using theestimated noise power spectrum we generate 10 realisa-tions of the noise and get consequently 10 “optimal” noisemaps. For each of them we measure as before C` and aver-age them to obtain Cnoise` . In order to debiase the signalpower spectrum recovered in this way, we substract Cnoise`to Csignal` . The power spectrum obtained in this mannerincludes as well some spatial correlations due to some lightresidual stripping and thus does not correspond to whitenoise (at least in the low ` part). For the aim of compar-ison we compute the power spectrum of the input signalmeasured the same way, Cinput` , and plotted both C

    input`

    as well as Csignal` − Cnoise` averaged in linear bands of

    constant width ∆` = 80. The agreement is obviously verygood as illustrated on figure 9. The error bars take intoaccount both the sampling induced variance as well as thebeam spreading (Knox 1995). A few comments need to bemade at this point. This is in no way an appropriate C`measurement since we are not dealing properly here withthe sky coverage induced window function which triggerssome spurious correlations within the C`s. We thus donot take into account the full-structure of the map noisecovariance matrix. Nevertheless, the efficiency of such arough method is encouraging for more detailed implemen-tation and a full handling of the noise covariance matrix.

    Note finally that this is a naturally parallelised taskwhich should therefore be feasible very quickly.

    4.4. Application to genuine data and hypothesis

    The application to genuine data could be problematic ifour key hypothesis were not to be fulfilled thus we haveto discuss them. Concerning the noise, we assumed thatit is Gaussian in order to derive our map estimator andstationary in order to exploit the diagonality of its noise

  • Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code 9

    Fig. 8. Evaluation of the noise power spectrum (top: lin-ear x-axis, bottom: log x-axis): the red thin dashed lineshows the initial noise power spectrum obtained from theinput noise stream and the blue thick line denotes the re-covered one after 5 iterations. Both have been smoothedand normalised so that the white high frequency noisespectrum is equal to one. The agreement is obviously verygood. Note that no noise priors at all have been used inthis evaluation.

    covariance matrix in Fourier space. Both hypothesis arereasonable for a nominal instrumental noise, at least par-tially on (sufficiently long) pieces of timeline. If not, wewould have to cut the bad parts and replace them by aconstrained realization of the noise in these parts. Con-cerning the signal, no particular assumptions are neededin the method we are presenting. At this level, we ne-glected as well the effect of the non perfect symmetry ofthe instrumental beam. This effect should be quantifiedfor a real experiment (Wu et al. 2000; Doré et al. 2000).Another technical hypothesis is the negligibility of the pix-elisation noise with respect to the instrumental noise butsince this is fully under control of the user it should notbe a problem.

    Fig. 9. In the case of a one day flight of the TopHat ex-periment we perform a very approximate evaluation ofthe recovered signal band powers (black) which has to becompared to the input signal power spectrum (red line).Both have been measured the same way using the anafastroutine of the HEALPix package. These band powers(∆` = 80) have been performed using a fast Monte-Carloevaluation of Cnoise` (dashed blue line) which does not cor-respond exactly to white noise since there remains somespatial correlations. This constitutes in no way an appro-priate C` measurement but is an encouraging step towardsa full Monte-Carlo treatment.

    In this paper, we have presented an original fast map-making method based on a multi-grid Jacobi algorithm.It naturally entails the possibility of a joint noise/signalestimation. We propose a way to generate the noise co-variance matrix and illustrate its ability on a simple C`estimation. The efficiency of this method has been demon-strated in the case of two coming balloon experiments,namely ARCHEOPS and TopHat but it naturally has amore general range of application. This tool should be ofnatural interest for Planck and this will be demonstratedsomewhere else. Furthermore, due to the analogy of theformalisms, this should have some applications as well inthe component separation problem.

    We hope to apply it very soon onARCHEOPS data. The FORTRAN 90 code whoseresults have been presented is available athttp://ulysse.iap.fr/download/mapcumba/.

    Acknowledgements. We would like to acknowledge Eric Hivonfor fruitful remarks, Lloyd Knox for stimulating discussionsand information on the TopHat experiment and the develop-ers of the HEALPix (Górski et al. 1998) package which hasconsiderably eased this work.

    References

    Benoit A. et al., submitted to A&A 2000

  • 10 Doré, Teyssier, Bouchet, Vibert & Prunet: MAPCUMBA: a fast multi-grid CMB map-making code

    Bond J.R., Crittenden R.G., R.G., Andrew H., Jaffe A.H.,Knox L., Computing in Science and Engineering (1999),astro-ph/9903166

    Borrill J.,‘MADCAP: The Microwave Anisotropy DatasetComputational Analysis Package’ Julian Borrillin ”Proceeedings of the 5th European SGI/CrayMPP Workshop” (1999), astro-ph/9911389, see alsohttp://cfpa.berkeley.edu∼borrill/cmb/madcap.html

    Borrill J., oral contribution to the MPA/ESO/MPE Joint As-tronomy Conference “ Mining the sky”, Garching 2000

    Bunn E.F., Hoffman Y., Silk J., ApJ, 464, 1 (1996)Bouchet F. R., Gispert, AIP Conference Proceedings 348, ‘The

    mm/sub-mm Foregrounds and Future CMB Space Mis-sions”, Ed. E. Dwek (1996)

    Bouchet F. R., Gispert, R., 1999, New Astron., 4, 443Bde Bernardis P. et al., Nature (London) 404, 995 (2000)Doré O., Bouchet F.R., Teyssier R., Vibert D. in proceedings to

    the MPA/ESO/MPE Joint Astronomy Conference “ Min-ing the sky”, Garching 2000

    Ferreira P.G. and Jaffe A.H., MNRAS, 312, 89 (2000)Górski E.K., Hivon E., Wandelt B.D. in proceed-

    ings of the MPA/ESO Garching Conference 1998,eds Banday A.J., Sheth K. and L. Da Costa andhttp://www.eso.org∼kgorski/healpix/

    Hanany S. et al., Astrophys. J. Lett. submitted (2000), astro-ph/0005123

    Jansen D.J. and Gulkis S., “Mapping the Sky with the COBE-DMR”, in “The Infrared and Submillimeter Sky afterCOBE”, eds M. Signore and C. Dupraz (Dodrecht:Kluwer)

    Knox L., Phys. Rev. D, 52, 4307, 1995Press W.H., Teukolsky S.A., Vetterling W.T., Flannery B.P.,

    1992, Numerical Recipes, 2nd ed., Cambridge UniversityPress, Cambridge.

    Prunet, S. and Netterfield, C. B. and Hivon, E. and Crill, B.P.,”Iterative map-making for scanning experiments”, to bepublished in the Proceedings of the XXXVth Rencontres deMoriond, Energy Densities in the Universe, Editions Fron-tieres (2000), astro-ph/0006052

    Tegmark M., ApJ Lett., 480, L87-L90 (1997)Tegmark, M. and Efstathiou, G., MNRAS, 281, 1297 (1996)Wandelt, B. D. and Gorski, K. M., preprint astro-ph/0008227Wu J.H.P. et al., APJs in press, astro-ph/0007212Wright E.L., Hinshaw G., Bennett C.L., ApJ Lett., 458,53

    (1996)Wright E.L., proceeding of the IAS CMB Workshop, astro-

    ph/9612006Zaroubi S., Hoffman Y., Fisher K.B., Lahav O., ApJ, 449, 446

    (1995)

    http://arXiv.org/abs/astro-ph/9903166http://arXiv.org/abs/astro-ph/9911389http://cfpa.berkeley.edu~borrill/cmb/madcap.htmlhttp://www.eso.org~kgorski/healpix/http://arXiv.org/abs/astro-ph/0005123http://arXiv.org/abs/astro-ph/0005123http://arXiv.org/abs/astro-ph/0006052http://arXiv.org/abs/astro-ph/0008227http://arXiv.org/abs/astro-ph/0007212http://arXiv.org/abs/astro-ph/9612006http://arXiv.org/abs/astro-ph/9612006

  • This figure "figure1.jpeg" is available in "jpeg" format from:

    http://lanl.arXiv.org/ps/astro-ph/0101112

    http://lanl.arXiv.org/ps/astro-ph/0101112

  • This figure "figure2.jpeg" is available in "jpeg" format from:

    http://lanl.arXiv.org/ps/astro-ph/0101112

    http://lanl.arXiv.org/ps/astro-ph/0101112

  • This figure "figure3.jpeg" is available in "jpeg" format from:

    http://lanl.arXiv.org/ps/astro-ph/0101112

    http://lanl.arXiv.org/ps/astro-ph/0101112

  • This figure "figure6.jpeg" is available in "jpeg" format from:

    http://lanl.arXiv.org/ps/astro-ph/0101112

    http://lanl.arXiv.org/ps/astro-ph/0101112