Since its version 2.0 the S2HAT library provides some level of comparibilty with the HEALPix package allowing for example
to mix the calls to HEALPix and S2HAT routines.
First, the library allows for two different layouts of the major harmonic space objects,
alm and Plm arrays. One of the layouts agrees with that adopted by HEALpix. The layouts are described in
more details in Sections on Data Objects of this manual.
Second, the gather/scatter routines of S2HAT (with an exception of the two "do-it-all" drivers,
distribute_local_data_alm2map and distribute_local_data_map2alm)
allow for collecting or distributing the single, full-size
data objects with the same number of indices as required by Healpix serial routines. Consequently,
by choosing the HEALpix like layout for the arrays one can directly apply the HEALPix routines
to the single full-size objects either prior or after their assambling in the memory of a single processor.
We note that in Fortran 90 unlike HEALPix, S2HAT uses pointers to arrays rather than arrays themselves. A simple way of
by-passing that difference is by defining the required arrays with a target keyword and
subsequently associating with them respective pointers. The former can be then used in HEALPix calls
and the latter in S2HAT calls.
We also emphasize that the S2HAT routines can be run on a single processor (though still will recquire MPI software installed)
and being competitive with serial HEALPix routines. See the benchmark section here.
|