32 #ifndef HEALPIX_ALM_HEALPIX_TOOLS_H 33 #define HEALPIX_ALM_HEALPIX_TOOLS_H 38 template<
typename T>
class Alm;
53 Alm<xcomplex<T> > &alm,
const arr<double> &weight,
65 Alm<xcomplex<T> > &alm,
int num_iter,
const arr<double> &weight);
68 Alm<xcomplex<T> > &alm,
int num_iter)
70 arr<double> wgt(2*map.
Nside(),1.);
74 template<
typename T>
void map2alm_iter2 (
const Healpix_Map<T> &map,
75 Alm<xcomplex<T> > &alm,
double err_abs,
double err_rel);
77 template<
typename T>
void map2alm_spin
79 Alm<xcomplex<T> > &alm1,
Alm<xcomplex<T> > &alm2,
80 int spin,
const arr<double> &weight,
bool add_alm);
82 template<
typename T>
void map2alm_spin_iter2
84 Alm<xcomplex<T> > &alm1,
Alm<xcomplex<T> > &alm2,
85 int spin,
double err_abs,
double err_rel);
105 Alm<xcomplex<T> > &almT,
106 Alm<xcomplex<T> > &almG,
107 Alm<xcomplex<T> > &almC,
108 const arr<double> &weight,
128 Alm<xcomplex<T> > &almT,
129 Alm<xcomplex<T> > &almG,
130 Alm<xcomplex<T> > &almC,
132 const arr<double> &weight);
138 Alm<xcomplex<T> > &almT,
139 Alm<xcomplex<T> > &almG,
140 Alm<xcomplex<T> > &almC,
143 arr<double> wgt(2*mapT.
Nside(),1.);
147 template<
typename T>
void map2alm_pol_iter2
151 Alm<xcomplex<T> > &almT,
152 Alm<xcomplex<T> > &almG,
153 Alm<xcomplex<T> > &almC,
154 double err_abs,
double err_rel);
160 template<
typename T>
void alm2map (
const Alm<xcomplex<T> > &alm,
168 Alm<xcomplex<T> > &alm,
bool add_alm=
false);
170 template<
typename T>
void alm2map_spin
171 (
const Alm<xcomplex<T> > &alm1,
const Alm<xcomplex<T> > &alm2,
174 template<
typename T>
void alm2map_spin_adjoint
176 Alm<xcomplex<T> > &alm1,
Alm<xcomplex<T> > &alm2,
177 int spin,
bool add_alm=
false);
187 (
const Alm<xcomplex<T> > &almT,
188 const Alm<xcomplex<T> > &almG,
189 const Alm<xcomplex<T> > &almC,
195 template<
typename T>
void alm2map_pol_adjoint
199 Alm<xcomplex<T> > &almT,
200 Alm<xcomplex<T> > &almG,
201 Alm<xcomplex<T> > &almC,
214 (
const Alm<xcomplex<T> > &alm,
void alm2map_der1(const Alm< xcomplex< T > > &alm, Healpix_Map< T > &map, Healpix_Map< T > &mapdth, Healpix_Map< T > &mapdph)
void map2alm_pol(const Healpix_Map< T > &mapT, const Healpix_Map< T > &mapQ, const Healpix_Map< T > &mapU, Alm< xcomplex< T > > &almT, Alm< xcomplex< T > > &almG, Alm< xcomplex< T > > &almC, const arr< double > &weight, bool add_alm=false)
void map2alm(const Healpix_Map< T > &map, Alm< xcomplex< T > > &alm, const arr< double > &weight, bool add_alm=false)
void map2alm_pol_iter(const Healpix_Map< T > &mapT, const Healpix_Map< T > &mapQ, const Healpix_Map< T > &mapU, Alm< xcomplex< T > > &almT, Alm< xcomplex< T > > &almG, Alm< xcomplex< T > > &almC, int num_iter, const arr< double > &weight)
void alm2map_pol(const Alm< xcomplex< T > > &almT, const Alm< xcomplex< T > > &almG, const Alm< xcomplex< T > > &almC, Healpix_Map< T > &mapT, Healpix_Map< T > &mapQ, Healpix_Map< T > &mapU, bool add_map=false)
void alm2map_adjoint(const Healpix_Map< T > &map, Alm< xcomplex< T > > &alm, bool add_alm=false)
void map2alm_iter(const Healpix_Map< T > &map, Alm< xcomplex< T > > &alm, int num_iter, const arr< double > &weight)
void alm2map(const Alm< xcomplex< T > > &alm, Healpix_Map< T > &map, bool add_map=false)