Content-type: text/html Manpage of NMatrixMult

NMatrixMult

Section: User Commands (1)
Updated: 10/23/02
Index Return to Main Contents
 

NAME

NMatrixMult  

SYNOPSIS

#include NMatrixMult.h

void NMatrixMult( char *todFileName, char *noiseCovFileName, int numPix, int filterLength, int bandWidth, int8 maxMemoryPerProc, int maxIts, flt8 maxRelError, flt8 *input, flt8 *);

 

DESCRIPTION

This function computes the noise correlation matrix doted with a pixel domain vector. The output is in the pixel domain. This operation is done in the time domain by way of preconditioned conjugate gradient inversion of the inverse time time noise correlation matrix. The pointing information is read in from a time ordered data file. The inverse time time noise correlation files are read in order to derive the inverse time time noise correlation matrix. For more information about the format of the time ordered data file or the inverse time time noise correlation files see NMatrixMult.h or MADmap(1).

This function takes the following input:

todFileName
A string which contains the name of the time ordered data file. See NMatrixMult.h or MADmap(1) for more information about the format of this file. The time ordered data is required for the pointing information.
noiseCovFileName
A string which contains the root of the names of the inverse time-time noise correlation files. See NMatrixMult.h or MADmap(1) for information about the format of these files. If noiseCovFileName were "inv_tt_noise" then the inverse time time noise correlation files would be "inv_tt_noise.0", "inv_tt_noise.1", etc.
numPix
The number of pixels in the map.
filterLength
The size chunk that the FFT's will be done in. This should be a power of two for best performance. Note that filterLength must be larger than 2*bandWidth, and can be much longer. For optimum performance filterLength should be the smallest power of two such that

filterLength / (ln(filterLength) + 1) >= bandWidth - 1.

But note that for best performance filterLength should not be longer than the stationary time scale of the the noise.

bandWidth
The width of the non-zero band along the diagonal of inv(N). note that this is 2*c + 1 where c is the maximum inverse time time noise correlation length.
maxMemoryPerProc
The maximum number of bytes which each processor will be allowed to allocate.
maxIts
Maximum number of iterations in PCG routine to compute the action of inv(inv(N)).
maxRelError
Maximum relative error allowed in PCG routine to compute the action of inv(inv(N)).
input
Input pixel vector to operate on. If we were computing N*x = b, input is "x".
output
Output pixel vector to compute. If we were computing N*x = b, output is b.
theComm
The MPI communicator on which the computation should be done.
 

COPYRIGHT

Copyright (C) 2002 Christopher M. Cantalupo

NMatrixMult 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 MERCHANTABILITY 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.  

SEE ALSO

MADmap, invNMatrixMult, filterVector, fftw, rfftw.


 

Index

NAME
SYNOPSIS
DESCRIPTION
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 20:11:45 GMT, October 23, 2002