MADmap(2) MADmap(2)
NAME
MADmap version 2- CMB maximum likelihood map solver
SYNOPSIS
MADmap -r runConfig.xml | -R runConfig.xml.bin [options]
DESCRIPTION
MADmap is a maximum likelihood map making routine for converting time
ordered data sets into pixelized sky maps.
MADmap evaluates the following equation:
m = inv(A'*inv(N)*A)*A'*inv(N)*d
where A is the pointing matrix (and A' is A transpose), N is the time
time noise covariance matrix (and inv(N) is the inverse of N), d is the
time ordered data vector, and m is the maximum likelihood pixel map
vector given N and d.
This calculation is done by assuming that inv(N) is band diagonal and
Toeplitz (note that because N is a covariance matrix, N and inv(N) are
symmetric and positive definite). That is to say that we assume that
the operation of inv(N) is equivalent to a convolution with a band lim-
ited kernel (i.e. a kernel which is zero beyond some band width which
is shorter than the length of the observation). This convolution is
done in the Fourier domain by way of the convolution theorem, so the
operation of inv(N) can be done in O(n_t ln( n_b )) calculations where
n_b is the band width of inv(N)'s diagonal (i.e. the width of the ker-
nel).
Given that we can calculate the operation of inv(N) on a vector, we
still need to evaluate the following linear operator:
inv(A'*inv(N)*A)
This is done by preconditioned conjugate gradient method, where each
iteration of the conjugate gradient routine involves the inv(N) opera-
tor which we calculate as described above. The preconditioner is the
pixel domain diagonal matrix with the one over the number of observa-
tions in each pixel along the diagonal. For most CMB data sets this
converges with a relative residual of 1e-5 in approximately 30 itera-
tions.
MADmap includes the capability to solve for a column of the pixel pixel
noise covariance matrix. This operation is optional, and is done in
the place of map makeing.
OPTIONS
-r runConfig.xml
The run configuration file.
-R runConfig.xml.bin
The run configuration file in binary form as output by testRun-
Config.
-e maxRelErrorPCG
Maximum relative error allowed in PCG routine to compute the
action of inv(inv(N)). The default value for this is 1e-6. For
a guess at the final map m, the time stream d, the noise corre-
lation matrix N and the pointing matrix A, the relative residual
is defined as follows:
| (A'*inv(N)) * (A*m - d) |
e = ---------------------------
| (A'*inv(N)) * d |
Not e that * is the dot product, x' means x transpose, and | x |
is the Euclidean norm of the vector x ( i.e. sqrt(x'*x) ).
-i maxItsPCG
Specifies the Maximum number of iterations in PCG routine to
compute the action of inv(inv(N)). The default value for this
is 50.
-m mapSuffix
The run configuration file specifies the base names for each
class of pixels. The mapSuffix will be appended to the base
names for this particular run. The default value is ".out".
-n noiseSuffix
If this option is given, then MADmap will compute a column of
the noise correlation matrix, and will not make a map. The
parameter given with this option specifies the suffix that will
be appended to the class base names for the output correlation
maps. If this option is given then -c and -p options must also
be specified.
-c className
This option specifies the name of the class of the pixel for
which the correlations will be computed.
-p pixelNumber
This option specifies the pixel number of the pixel for which
the correlations will be computed.
-s Restart from checkpoint files created by a previous call to
MADmap.
-l Run in low memory mode, by default high memory mode is used.
-l+ Run in extremely low memory mode, by default high memory mode is
used.
-ds Run in the stacked data distribution the default is the concati-
nated distribution.
-dc Run in the concatinated data distribution this is the default.
-dm stride
Run in the multi-stacked data distribution with the stride
given.
-q Run in quiet mode (does not output set intervals to standard
output).
ENVIRONMENT VARIABLES
Environment variables that impact how MADmap runs.
MM_FFT_LENGTH
Fixes the length of all FFT's performed overriding the option to
optimize the length.
MM_CHECKPOINT_FREQ
Determines the number of PCG iterations between the write of
each checkpoint to disk. The default value is 20.
M3_DISK_BUFFER_SIZE
The M3 environment variable that controls the size of the buffer
used in buffered reads from disk.
M3_MPI_BUFFER_SIZE
The M3 environment variable that controls the size of the buffer
used in buffered MPI calls.
SEE ALSO
fftw(1)
More extensive html documentation should have been distributed with
this software. This html documentation can also be found on the web at
http://www.nersc.gov/~cmc/MADmap/doc
COPYRIGHT
Copyright (C) 2004 Christopher M. Cantalupo
MADmap is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MER-
CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.
Christopher Cantalupo <cmc@nersc.gov>
Send bug reports or comments to the above address.
June 5, 2009 MADmap(2)
Man(1) output converted with
man2html