The following preprint offers a detailed development and description of the algorithms implemented in SpharmonicKit. In this paper we present a reformulation and variation of the original algorithm which results in a greatly improved inverse transform, and consequent improved convolution algorithm for such functions. We also address implementation considerations and give heuristics for allowing reliable and computationally efficient floating point implementations of slightly modified algorithms. These claims are supported by extensive numerical experiments from our implementation in C on DEC, HP and SGI platforms. These results indicate that variations of the algorithm are both reliable and efficient for a large range of useful problem sizes.
Performance appears to be architecture-dependent.
The paper concludes with a brief discussion of a few potential applications. In this paper we describe algorithms for the numerical computation of Fourier transforms of tensor fields on the two-sphere. These algorithms reduce the computation of an expansion on tensor spherical harmonics to expansions in scalar spherical harmonics, and hence can take advantage of recent improvements in the efficiency of computation of scalar spherical harmonic transforms. The Source Code SpharmonicKit is free software and is distributed under the terms of the GNU General Public License. Their use increases the overall efficiency of the Legendre and spherical transforms and is therefore encouraged.