Free Access
Issue
A&A
Volume 540, April 2012
Article Number A92
Number of page(s) 11
Section Astronomical instrumentation
DOI https://doi.org/10.1051/0004-6361/201118568
Published online 03 April 2012

© ESO, 2012

1. Introduction

Challenges in modern cosmology

The wealth of cosmological data in the last few decades (Larson et al. 2011; Schrabback et al. 2010; Percival et al. 2007b) has led to the establishment of a standard model of cosmology, which describes the Universe as composed today of approximately 4% baryons, 22% dark matter and 74% dark energy. The main challenges in modern cosmology are to understand the nature of both dark energy and dark matter, as well as the initial conditions of the Universe (Albrecht et al. 2006; Peacock et al. 2006). A thorough understanding of these three topics may lead to a revision of Einstein’s theory of General Relativity and our view of the early Universe.

New surveys are planned who aim to answer these important questions e.g. Planck for the CMB (Planck Collaboration 2011), DES (Dark Energy Survey, Annis et al. 2005), BOSS (Baryon Oscillation Spectroscopic Survey, Schlegel et al. 2007), LSST (Large Synoptic Survey Telescope, Tyson & LSST 2004) and Euclid (Laureijs et al. 2011) for weak lensing and the study of large scale structure with galaxy surveys.

The challenge with these upcoming large data-sets is to extract the cosmological information in the most suitable manner in order to test the cosmological paradigm. Depending on the signal one wishes to extract, and/or survey geometry, different bases may be more or less suitable (e.g., Fourier, spherical harmonic, configuration or wavelet space). Moreover, future surveys may be in 2D (e.g. Planck) or in 3D (e.g. galaxy or weak lensing surveys). Where 3D data is available, a tomographic analysis is possible (also known as 2D 1/2), or a full 3D analysis can be done. For data in spherical coordinates, this corresponds to a spherical Fourier-Bessel (SFB) decomposition (Heavens & Taylor 1995; Fisher et al. 1995; Castro et al. 2005; Erdoğdu et al. 2006a,b; Leistedt et al. 2012; Rassat & Refregier 2012).

Wavelet transform on the sphere

Wavelets are particularly well suited to the analysis of cosmological data (Martinez et al. 1993; Starck et al. 2006), since cosmological data can often be sparsely represented in wavelet space. 2D Wavelets have been used in many astrophysical studies (Starck & Murtagh 2006) for a broad range of applications such as denoising, deconvolution, detection, etc. CMB studies have motivated the development of 2D spherical wavelet decompositions. Continuous wavelet transforms on the sphere (Antoine 1999; Tenorio et al. 1999; Cayón et al. 2001; Holschneider 1996) have been proposed, mainly for non Gaussianity studies. In Starck et al. (2006), an invertible isotropic undecimated wavelet transform (UWT) on the sphere based on spherical harmonics was described, that can be also used for other applications such as deconvolution, component separation (Moudden et al. 2005; Bobin et al. 2008; Delabrouille et al. 2009), inpainting (Abrial et al. 2007, 2008), or Poisson denoising (Schmitt et al. 2010). A similar wavelet construction has been published in (Marinucci et al. 2008; Faÿ & Guilloux 2008; Faÿ et al. 2008) using so-called “needlet filters”, and in Wiaux et al. (2008), an algorithm was proposed which allows us to reconstruct an image from its steerable wavelet transform. Other multiscale transforms on the sphere such as ridgelets and curvelets have been developed (Starck et al. 2006), and are well adapted to detect anisotropic features. Other multiscale transforms on the sphere, such as ridgelets and curvelets, have been developed (Starck et al. 2006) and are well adapted to detect anisotropic features. An extension of this UWT has also been developed for polarised CMB data in Starck et al. (2009).

In this paper, we describe a new 3D isotropic spherical wavelet decomposition, which is reversible, and could therefore be useful for many different applications. It is based on the UWT proposed by Starck et al. (2006) and extended into 3D. The 3D-UWT proposed here can be used to analyse 3D data in spherical coordinates, such as a 3D galaxy or weak lensing survey with large (but not necessarily full) sky coverage.

2. Spherical 3D filtering using the spherical Fourier-Bessel transform

2.1. Spherical Fourier-Bessel transform

The SFB transform of a square integrable scalar field f(r,θ,φ) can be defined as: lm(k)=2π$f(r,θ,φ)jl(kr)Ylm(θ,φ)r2sin(θ)drdθdφ,\begin{equation} \hat{f}_{l m}(k) = \sqrt{\frac{2}{\pi}} \iiint f(r,\theta, \phi) j_{l}(k r) \overline{Y_l^m(\theta,\phi)} r^2 \sin(\theta) {\rm d}r {\rm d}\theta {\rm d}\phi, \label{SFBT} \end{equation}(1)where Ylm\hbox{$Y_l^m$} are spherical harmonics and jl are spherical Bessel functions and Y\hbox{$\overline{Y}$} represents the complex conjugate of Y. Note Eq. (1) uses the same convention as Heavens & Taylor (1995) which differs slightly from that of Castro et al. (2005), Leistedt et al. (2012) and Rassat & Refregier (2012), as explained below. This expression allows the expansion of a 3D field provided in spherical coordinates onto a set of orthogonal functions: Ψlmk(r,θ,φ)=2πjl(kr)Ylm(θ,φ).\begin{equation} \Psi_{l m k} (r, \theta, \phi) = \sqrt{\frac{2}{\pi}}j_{l}(k r) Y_l^m(\theta,\phi). \end{equation}(2)From the orthogonality of the Ψlmk’s, the original field f(r,θ,φ) can be reconstructed from its SFB transform \hbox{$\hat{f}_{l m}(k)$} using the following inversion formula: f(r,θ,φ)=2πl=0m=lllm(k)k2jl(kr)dkYlm(θ,φ).\begin{equation} f(r, \theta, \phi) = \sqrt{\frac{2}{\pi}} \sum\limits_{l=0}^{\infty} \sum\limits_{m=-l}^{l}\int \hat{f}_{l m}(k) k^2 j_l(k r) {\rm d}k Y_{l m}(\theta,\phi). \label{Inv_FBD} \end{equation}(3)From this definition, the SFB transform can also be regarded as the commutative composition of two different transforms: a spherical harmonics transform (SHT) for the angular dimension and a spherical Bessel transform (SBT) for the radial dimension. In this work, the following convention is adopted to define the SHT of a function f(θ,φ) defined on the sphere: flm=f(θ,φ)=% subequation 748 0 \begin{eqnarray} f_{l m} & = & \int_0^{2\pi} \int_0^{\pi} \overline{Y_l^m(\theta,\phi)} f(\theta, \phi) \sin(\theta) {\rm d}\theta {\rm d}\phi \label{SHT},\\ f(\theta,\phi) & =& \sum\limits_{l=0}^{\infty} \sum\limits_{m = -l}^l f_{l m} Y_l^m(\theta,\phi) \label{Inv_SHT}. \end{eqnarray}Our choice for Ψlmk allows us to give a symmetrical expression for the SBT and its inverse: l(k)=2πf(r)jl(kr)r2dr,f(r)=2πl(k)jl(kr)k2dk.% subequation 760 0 \begin{eqnarray} \hat{f}_l(k) & = \sqrt{\frac{2}{\pi}} \int f(r) j_l(k r) r^2 {\rm d}r \label{SBT},\\ f(r) & = \sqrt{\frac{2}{\pi}} \int \hat{f}_l(k) j_l(k r) k^2 {\rm d}k \label{Inv_SBT}. \end{eqnarray}Although this symmetrical formulation for the SBT may differ from other works (e.g., Castro et al. 2005; Leistedt et al. 2012; Rassat & Refregier 2012), it will prove very convenient, especially to obtain a discretised transform (see Sect. 4).

2.2. Frequency filtering using the SFB transform

Spherical 3D filtering can be defined as the 3D convolution product of a 3D field in spherical coordinates with a 3D filter also provided in spherical coordinates. Using the relations presented in Sects. A.1 and A.2, it is possible to express such a product in terms of SFB coefficients and to relate those coefficients to regular Fourier coefficients.

To illustrate spherical 3D filtering on a simple case, let us consider a simple isotropic low-pass filter u whose 3D Fourier transform is U(k,θk,φk). The 3D Fourier transform of such a filter has a spherical symmetry and takes a simple form in spherical coordinates. Indeed, U(k,θk,φk) is a function only of k because of its symmetry, therefore U(k,θk,φk) = U(k). Furthermore, since U(k,θk,φk) is constant on every sphere centred on the origin in Fourier space, its SHT for a given k verifies ∀(l,m) ≠ (0,0), Ulm(k) = 0. As a result, the SFB transform of u has the following simple expression: lm(k)={ifl=m=0,otherwise.\begin{equation} \hat{u}_{l m}(k) = \begin{cases} \frac{U(k)}{Y_0^0} & \mbox{if l = m = 0,} \\ 0 & \mbox{otherwise.} \end{cases} \end{equation}(6)Let us now consider a 3D field f defined in spherical coordinates. The filtered field v resulting from applying u to f is obtained using Eq. (A.8) simplified by the properties of g: lm(k)=[(fu)lm(k),=(i)l(2π)3l=0m=ll(i)llm(k)×l′′=|ll|l+lcl′′(l,m,l,m)(i)l′′l′′mm(k)δl′′0δm′′0,=(i2)l(2π)3lm(k)c0(l,m,l,m)(i)000(k).\begin{eqnarray} \hat{v}_{l m}(k) & = & \widehat{(f \ast u)}_{l m}(k) ,\nonumber \\ & = & (i)^l \sqrt{(2 \pi)^3} \sum\limits_{l'=0}^{\infty} \sum\limits_{m' = -l'}^{l'} (-i)^{l'} \hat{f}_{l' m'}(k)\nonumber \\ & & \times \quad \sum\limits_{l''= | l - l' |}^{ l + l'} c^{l''}(l,m,l',m') (-i)^{l''} \hat{u}_{l'' m-m'}(k) \delta_{l'' 0} \delta_{m'' 0}, \nonumber \\ & = & (-i^2)^l \sqrt{(2 \pi)^3} \hat{f}_{l m}(k) c^{0}(l,m,l,m) (-i)^{0} \hat{u}_{0 0}(k). \end{eqnarray}(7)Knowing that c0(l,m,l,m)=1/4π\hbox{$c^{0}(l,m,l,m) = 1/\!\sqrt{4 \pi}$}, the following expression is finally obtained: lm(k)=2π00(k)lm(k).\begin{equation} \hat{v}_{l m}(k) = \sqrt{2} \pi \hat{u}_{0 0}(k) \hat{f}_{l m}(k) . \label{Filtering_Spherical_Symmetry} \end{equation}(8)In the special case of a 3D isotropic filter, frequency filtering is therefore easily obtained using the SFB transform and the filtered coefficients are simply the original coefficients multiplied by a function of k.

Although this filter seems overly simplistic, it will be shown in the following sections that such a low-pass filter is at the heart of the isotropic undecimated spherical 3D wavelet transform which makes direct use of Eq. (8).

3. Isotropic undecimated spherical 3D wavelet transform

An isotropic undecimated spherical wavelet transform defined on the sphere and based on the SHT was proposed in Starck et al. (2006). Now the aim is to transpose the ideas behind this transform to the case of data in 3D spherical coordinates. Indeed, the isotropic wavelet transform can be defined using only an isotropic low-pass filter. In the last section the necessary relations to apply such a filter have been obtained and the Isotropic Undecimated Spherical 3D Wavelet transform can now be defined.

3.1. Wavelet decomposition

Using the formalism introduced in the previous section, a Wavelet transform can be defined with the SFB transform. This isotropic transform is based on a scaling function φkc(r,θr,φr) with cut-off frequency kc and spherical symmetry. The symmetry of this function is preserved in the Fourier space and therefore, its SFB transform verifies φ̂kclm(k)=0\hbox{$\hat{\phi}^{k_{\rm c}}_{l m}(k) = 0$} whenever (l,m) ≠ (0,0). Furthermore, due to its cut-off frequency, the scaling function verifies φ̂kc00(k)=0\hbox{$\hat{\phi}^{k_{\rm c}}_{0 0}(k) = 0$} for all k ≥ kc. In other terms, the scaling function verifies: Φkc(r,θr,φr)=Φkc(r)=2π0kcΦ̂kc00(k)k2j0(kr)dkY00(θr,φr).\begin{equation} \Phi^{k_{\rm c}} (r,\theta_r,\phi_r) = \Phi^{k_{\rm c}} (r) = \sqrt{\frac{2}{\pi}} \int_0^{k_{\rm c}} \hat{\Phi}^{k_{\rm c}}_{0 0}(k) k^2 j_{0}(k r){\rm d}k Y_0^0 (\theta_r,\phi_r). \end{equation}(9)Using relation (8) the convolution of the original data f(r,θ,φ) with Φkc becomes very simple: 0lm(k)=[[Φkcf]lm(k)=2πΦ̂kc00(k)lm(k).\begin{equation} \hat{c}^0_{l m}(k) = \widehat{\left[\Phi_{k_{\rm c}} \ast f\right]}_{l m}(k) = \sqrt{2} \pi \hat{\Phi}^{k_{\rm c}}_{0 0}(k) \hat{f}_{l m}(k). \end{equation}(10)Using this scaling function, it is possible to define a sequence of smoother approximations cj(r,θr,φr) of a function f(r,θr,φr) on a dyadic resolution scale. Let Φ2 − jkc be a rescaled version of Φkc with cut-off frequency 2 − jkc. Then cj(r,θr,φr) is obtained by convolving f(r,θr,φr) with Φ2 − jkc: c0=Φkcf,c1=Φ2-1kcf,···cj=Φ2jkcf.\begin{eqnarray} c^0 & = & \Phi^{k_{\rm c}} \ast f ,\nonumber \\ c^1 & = & \Phi^{2^{-1} k_{\rm c}} \ast f, \nonumber \\ &\cdots & \nonumber \\ c^j & = & \Phi^{2^{-j}k_{\rm c}} \ast f. \end{eqnarray}(11)Applying the SFB transform to the last relation yields: jlm(k)=2πΦ̂2jkc00(k)lm(k).\begin{equation} \hat{c}^j_{l m}(k) = \sqrt{2} \pi \hat{\Phi}^{2^{-j} k_{\rm c}}_{0 0}(k) \hat{f}_{l m}(k). \end{equation}(12)This leads to the following recurrence formula: k<kc2j,j+1lm(k)=Φ̂2(j+1)kc00(k)Φ̂2jkc00(k)jlm(k).\begin{equation} \forall k < \frac{k_{\rm c}}{2^{j}}, \quad \hat{c}^{j+1}_{l m}(k) = \frac{ \hat{\Phi}^{2^{-(j+1)} k_{\rm c}}_{0 0}(k)}{\hat{\Phi}^{2^{-j}k_{\rm c}}_{0 0}(k) }\hat{c}^j_{l m}(k) . \label{RecSmooth} \end{equation}(13)Just like with the à trous algorithm by Starck et al. (2010), the wavelet coefficients  { wj }  can now be defined as the difference between two consecutive resolutions: wj+1(r,θr,φr)=cj(r,θ,φ)cj+1(r,θ,φ).\begin{equation} w^{j+1}(r,\theta_r,\phi_r) = c^j(r,\theta,\phi) - c^{j+1}(r,\theta,\phi). \end{equation}(14)This choice for the wavelet coefficients is equivalent to the following definition for the wavelet function Ψkc: Ψ̂2jkclm(k)=Φ̂2(j1)kclm(k)Φ̂2jkclm(k),\begin{equation} \hat{\Psi}^{2^{-j} k_{\rm c} }_{l m} (k) = \hat{\Phi}^{2^{-(j-1)} k_{\rm c}}_{l m}(k) - \hat{\Phi}^{2^{-j} k_{\rm c}}_{l m}(k), \end{equation}(15)so that: w0=Ψkcf,w1=Ψ2-1kcf,···wj=Ψ2jkcf.\begin{eqnarray} w^0 & = & \Psi^{k_{\rm c}} \ast f ,\nonumber \\ w^1 & = & \Psi^{2^{-1} k_{\rm c}} \ast f, \nonumber \\ &\cdots & \nonumber \\ w^j & = & \Psi^{2^{-j}k_{\rm c}} \ast f. \end{eqnarray}(16)By applying the SFB transform to the definition of the wavelet coefficients and using the recurrence formula verified by the cjs yields: k<kc2j,j+1lm(k)=(1Φ̂2(j+1)kc00(k)Φ̂2jkc00(k))jlm(k).\begin{equation} \forall k < \frac{k_{\rm c}}{2^{j}}, \quad \hat{w}^{j+1}_{l m}(k) = \left( 1 - \frac{ \hat{\Phi}^{2^{-(j+1)} k_{\rm c}}_{0 0}(k)}{\hat{\Phi}^{2^{-j}k_{\rm c}}_{0 0}(k) } \right) \hat{c}^j_{l m}(k). \label{RecWavelet} \end{equation}(17)Equations (17) et (13) which define the wavelet decomposition are in fact equivalent to convolving the resolution at a given scale j with a low-pass and a high-pass filter in order to obtain respectively the resolution and the wavelet coefficients at scale j + 1.

The low-pass filter, denoted here by hj, can be defined for each scale j by: jlm(k)={Φ̂2(j+1)kc00(k)Φ̂2jkc00(k)ifk<kc2j+1 and l=m=0,0otherwise.\begin{equation} \hat{h}^j_{l m} (k) = \left\lbrace \begin{array}{ll} \frac{\hat{\Phi}^{2^{-(j+1)} k_{\rm c}}_{0 0}(k)}{\hat{\Phi}^{2^{-j}k_{\rm c}}_{0 0}(k) } & \mbox{ if }k < \frac{k_{\rm c}}{2^{j+1}}~ {\rm and}~ l=m=0, \\ 0 & \mbox{ otherwise.} \end{array} \right. \end{equation}(18)Then the approximation at scale j + 1 is given by the convolution of scale j with hj: cj+1=cj12πhj.\begin{equation} c^{j+1} = c^{j} \ast \frac{1}{\sqrt{2} \pi} h^j. \end{equation}(19)In the same way, a high pass filter gj can be defined on each scale j by: jlm(k)={\begin{eqnarray} \hat{g}^j_{l m} (k) = \left\lbrace \begin{array}{ll} \frac{\hat{\Psi}^{2^{-(j+1)} k_{\rm c}}_{0 0}(k)}{\hat{\Phi}^{2^{-j}k_{\rm c}}_{0 0}(k) } & \mbox{ if } k < \frac{k_{\rm c}}{2^{j+1}}~ {\rm and}~ l=m=0, \\ 1 & \mbox{ if }k \geq \frac{k_{\rm c}}{2^{j+1}}~ {\rm and}~ l=m=0, \\ 0 & \mbox{ otherwise.} \end{array} \right. \end{eqnarray}(20)Given the definition of Ψ, gj can also be expressed in the simple form: jlm(k)=1jlm(k).\begin{equation} \hat{g}^j_{l m} (k) = 1 - \hat{h}^j_{l m} (k). \end{equation}(21)The wavelet coefficients at scale j are obtained by convolving the resolution at scale j − 1 with gj − 1: wj=cj112πgj1.\begin{equation} w^j = c^{j-1} \ast \frac{1}{\sqrt{2} \pi} g^{j - 1}. \end{equation}(22)In summary, the two relations necessary to recursively define the wavelet transform are: j+1lm(k)=j00(k)jlm(k),j+1lm(k)=j00(k)jlm(k).\begin{eqnarray} \hat{c}^{j+1}_{l m}(k) & = & \hat{h}^j_{0 0}(k) \hat{c}^{j}_{l m}(k) ,\\ \hat{w}^{j+1}_{l m}(k) & = & \hat{g}^j_{0 0}(k) \hat{c}^{j}_{l m}(k). \end{eqnarray}

3.2. Reconstruction

Since the wavelet coefficients are defined as the difference between two resolutions, the reconstruction from the wavelet decomposition \hbox{$\mathcal{W} = \{w^1, \ldots, w^J, c^J\}$} is straightforward and corresponds to the reconstruction formula of the à trous algorithm: c0(r,θr,φr)=cJ(r,θr,φr)+j=1Jwj(r,θr,φr).\begin{equation} c^0(r,\theta_r,\phi_r) = c^J(r,\theta_r,\phi_r) + \sum_{j=1}^{J} w^j(r,\theta_r,\phi_r). \end{equation}(25)However, given the redundancy of the transform, the reconstruction is not unique. It is possible to take advantage of this redundancy to reconstruct cj from cj + 1 and wj + 1 by using a least squares estimate.

thumbnail Fig. 1

Scaling function and wavelet function for kc = 1. The y-axis represents the amplitude and the x-axis the frequency associated with the scaling function. The units of the amplitude must be those of the SFB transform.

From the previous paragraph, the wavelet decomposition can be then recursively defined by: j+1lm(k)=j00(k)jlm(k),j+1lm(k)=j00(k)jlm(k).\begin{eqnarray} \hat{c}^{j+1}_{l m}(k) & = & \hat{h}^j_{0 0}(k) \hat{c}^{j}_{l m}(k) {\rm ,}\\ \hat{w}^{j+1}_{l m}(k) & = & \hat{g}^j_{0 0}(k) \hat{c}^{j}_{l m}(k){\rm .} \end{eqnarray}If these relations are respectively multiplied by jlm(k)\hbox{$\overline{\hat{h}^j_{l m}}(k)$} and jlm(k)\hbox{$\overline{\hat{g}^j_{l m}}(k)$} and then added together, the following expression is obtained for the least squares estimate of cj from cj + 1 and wj + 1: jlm(k)=j+1lm(k)˜hˆjlm(k)+j+1lm˜gˆjlm(k),\begin{equation} \hat{c}^j_{l m} (k) = \hat{c}^{j+1}_{l m}(k) \hat{\tilde{h}}^j_{l m}(k) + \hat{w}^{j+1}_{l m} \hat{\tilde{g}}^j_{l m}(k), \end{equation}(28)where ˜hˆj\hbox{$\hat{\tilde{h}}^j$} and ˜gˆj\hbox{$\hat{\tilde{g}}^j$} are defined as follows: ˜hˆjlm(k)=jlm(k)|jlm(k)|2+|jlm(k)|2,˜gˆjlm(k)=jlm(k)|jlm(k)|2+|jlm(k)|2·\begin{eqnarray} \hat{\tilde{h}}^j_{l m}(k) & = & \frac{\overline{\hat{h}^j}_{l m}(k)}{ |\hat{h}^j_{l m}(k)|^2 + |\hat{g}^j_{l m}(k)|^2 } ,\\ \hat{\tilde{g}}^j_{l m}(k) & = & \frac{\overline{\hat{g}^j}_{l m}(k)}{ |\hat{h}^j_{l m}(k)|^2 + |\hat{g}^j_{l m}(k)|^2 }\cdot \end{eqnarray}Among the advantages of using this reconstruction formula instead of the raw sum over the wavelet coefficients is that there is no need to perform an inverse and then direct SFB transform to reconstruct the coefficients of the original data. Indeed, both the wavelet decomposition and reconstruction procedures only require access to SFB coefficients and there is no need to revert back to the direct space (although this will be required if one wishes to observe the power of each coefficient in real space as we do in Sect. 5 for denoising purposes).

3.3. Choice of a scaling function

Any function with spherical symmetry and a cut-off frequency kc would do as a scaling function but in this work we choose to use a B-spline function of order 3 to define our scaling function: Φ̂kclm(k)=32B3(2kkc)δl0δm0,\begin{equation} \hat{\Phi}^{k_{\rm c}}_{l m}(k) = \frac{3}{2} B_3\left( \frac{2 k }{k_{\rm c}} \right) \delta_{l 0} \delta_{m 0}, \end{equation}(31)where B3(x)=112(|x2|34|x1|3+6|x|34|x+1|3+|x+2|3).\begin{equation} B_3(x) \!=\! \frac{1}{12}\left( | x -2 |^3 \!-\! 4 | x - 1 |^3\! +\! 6 |x|^3 - 4 |x +1|^3\! +\! |x +2|^3 \right). \end{equation}(32)The scaling function and its corresponding wavelet function are plotted in SFB space for different values of j in Fig. 1.

thumbnail Fig. 2

Comparaison between spline and needlet wavelet functions on the sphere. The y-axis corresponds to amplitude and the x-axis to position.

Other functions such as Meyer wavelets or the needlet function (Marinucci et al. 2008) can be used as well. Needlet wavelet functions have a much better frequency localisation than the wavelet function derived from the B3-spline but present more oscillations in the direct space. To illustrate this, we show in Fig. 2 two different wavelet functions. Figure 2 left shows 1D profile of the spline (continuous line) and the needlet wavelet function (dotted line) at a given scale. Figure 2 right shows the same function, but we have plotted the absolute value in order to better visualise their respective ringing. As it can be seen, for wavelet functions with the same main lob, the needlet wavelet oscillates much more than the spline wavelet. Hence, the best wavelet choice certainly depends on the desired applications. For statistical analysis, detection or restoration applications, we may prefer to use a wavelet which does not oscillate too much and with a smaller support, in this case the spline wavelet is clearly the correct choice. For spectral or bispectral analysis, where the frequency localisation is fundamental, then needlets should be preferred to the spline wavelet.

4. The discrete spherical Fourier-Bessel transform (DSFBT)

The spherical 3D wavelet formalism derived in the previous section is based on a continuous SFB transform. However, a continuous transform is not practical numerically and a discrete equivalent is required. In the case of galaxy surveys, where the underlying density field is sampled at discrete points, this problem can be addressed by combining a boundary condition with the discrete nature of the survey (see for e.g. Eqs. (5) and (7) in Leistedt et al. 2012, even though they use a slightly different SFB expansion as in this paper) which yields in this specific case a practical way to estimate discrete SFB coefficients. However this method cannot be used for the purpose of performing wavelet treatments since this requires a continuous field.

Indeed, to perform operations on the wavelet scales (e.g. for denoising purposes), one first needs to recover the wavelet coefficients in physical space, apply a treatment to those coefficients (e.g. thresholding) and then convert them back into SFB space (as required by the wavelet transform algorithm which operates in SFB space). This last operation requires a SFB transform which takes as input fields and not discrete galaxy surveys.

In this section, we show how a discretisation of the k spectrum in combination with a Healpix type angular pixelisation, can be used to build a fast Discrete SFB Transform (DSFBT) which allows for a novel and practical two-way conversion between the discrete SFB coefficients and discrete values of the field in physical space sampled on a spherical 3D grid.

4.1. The discrete spherical Bessel transform

The discretisation of the SFB transform along the radial component uses the well known orthogonality property of the spherical Bessel functions on the interval  [0,R] . If f is a continuous function defined on  [0,R]  which verifies the boundary condition f(R) = 0 then the SBT defined by Eq. (5) can be expressed using SFB series: l(kln)=f(r)=\begin{eqnarray} \hat{f}_l(k_{l n}) & = & \sqrt{\frac{2}{\pi}} \int_0^R f(r) j_{l} ( k_{l n} r) r^2 {\rm d}r \label{Discrete_transform_r},\\ f(r) & = & \sum\limits_{n = 1}^{\infty} \hat{f}_l(k_{l n}) \rho_{l n} j_{l} (k_{l n} r) \label{Discrete_inverse_r}. \end{eqnarray}In this expression, kln=qlnR\hbox{$k_{l n} = \frac{q_{l n}}{R}$} where qln is the nth zero of the Bessel function of order l and the weights ρln are defined as: ρln=2πR-3jl+12(qln)·\begin{equation} \rho_{l n} = \frac{\sqrt{2 \pi} R^{-3}}{ j_{l+1}^2(q_{l n})}\cdot \end{equation}(35)Although this formulation provides a discretisation of the inverse SBT and of the k spectrum, the direct transform is still continuous and another discretisation step is required.

If a boundary condition of the same kind is applied to \hbox{$\hat{f}_l(k)$} so that \hbox{$\hat{f}_l(K_l) =0$}, then by using the same result, the SFB expansion of \hbox{$\hat{f}_l(k)$} is obtained by: l(rln)=2π0Kl(k)jl(rlnk)k2dk,l(k)=n=1l(rln)κlnjl(rlnk),% subequation 1539 0 \begin{eqnarray} \label{Discrete_transform_k} \hat{\hat{f}}_l(r_{l n}) & =& \sqrt{\frac{2}{\pi}} \int_0^K \hat{f}_l(k) j_{l} ( r_{l n} k) k^2 {\rm d}k,\\ \label{Discrete_inverse_k} \hat{f}_l(k) & = & \sum\limits_{n = 1}^{\infty} \hat{\hat{f}}_l(r_{l n}) \kappa_{l n} j_{l} (r_{l n} k), \end{eqnarray}where rln=qlnKl\hbox{$r_{l n} = \frac{q_{l n}}{K_l}$} and where the weights κln are defined as: κln=2πKl-3jl+12(qln)·\begin{equation} \kappa_{l n} = \frac{\sqrt{2 \pi} K_l^{-3}}{ j_{l+1}^2(q_{l n})}\cdot \end{equation}(37)The SBT being an involution, \hbox{$\hat{\hat{f}} = f$} so that \hbox{$\hat{\hat{f}}_l(r_{l n}) = f(r_{l n})$}. Much like the previous set of equations had introduced a discrete kln grid, a discrete rln grid is obtained for the radial component. Since Eqs. (34) and (36b) can be used to compute f and \hbox{$\hat{f}_l$} for any value of r and k, they can in particular be used to compute f(rln) and \hbox{$\hat{f}_l(r_{l' n})$} where l′ does not have to match l. The SBT and its inverse can then be expressed only in terms of series: l(kln)=p=1f(rlp)κlpjl(rlpkln),f(rln)=p=1l(klp)ρlpjl(rlnklp).% subequation 1607 0 \begin{eqnarray} \label{Direct_series} \hat{f}_l(k_{l' n}) &= & \sum\limits_{p = 1}^{\infty} f(r_{l p}) \kappa_{l p} j_{l} (r_{l p} k_{l' n}),\\ \label{Inverse_series} f(r_{l' n}) &= & \sum\limits_{p = 1}^{\infty} \hat{f}_l(k_{l p}) \rho_{l p} j_{l} (r_{l' n} k_{l p}). \end{eqnarray}With these equations one can easily compute the SBT and its inverse without the need of evaluating any integral. Furthermore only discrete values of f and \hbox{$\hat{f}$} respectively sampled on rln and kln are required.

In practical applications, for a given value of l only a limited number Nmax of \hbox{$\hat{f}_l(k_{l n})$} and f(rln) coefficients can be stored so that rlNmax = R and klNmax = Kl. Since rln is defined by rln=qlnKl\hbox{$r_{l n} = \frac{q_{l n}}{K_l}$}, for n = NmaxR and Kl are bound by the following relationship: qlN=KlR.\begin{equation} q_{l N} = K_l R. \end{equation}(39)Therefore, from the value of R one can easily determine the appropriate value for Kl. Furthermore, because of the boundary conditions on \hbox{$\hat{f}_l$} and f, the series (38a) and (38b) can now be truncated to Nmax terms.

This truncation allows the use of a very convenient matrix formalism to represent the transform. In their explicit form, the two truncated sums can be rewritten as: l(kln)=Kl-3p=1Nmaxf(rlp)2πjl+12(qlp)jl(qlpqlnqlNmax),f(rln)=R-3p=1Nmaxl(klp)2πjl+12(qlp)jl(qlpqlnqlNmax)·\begin{eqnarray} \hat{f}_l(k_{l' n}) & = & K_l^{-3} \sum\limits_{p = 1}^{N_{\rm max}} f(r_{l p}) \frac{\sqrt{2 \pi}}{ j_{l+1}^2(q_{l p})} j_{l} \left(\frac{q_{l p} q_{l' n}}{q_{l N_{\rm max}}} \right) ,\\ f(r_{l' n}) & = & R^{-3} \sum\limits_{p = 1}^{N_{\rm max}} \hat{f}_l(k_{l p}) \frac{\sqrt{2 \pi}}{ j_{l+1}^2(q_{l p})} j_{l} \left(\frac{q_{l p} q_{l' n}}{q_{l N_{\rm max}}}\right) \cdot \end{eqnarray}From these equations, a transform matrix Tll can be defined as: Tpqll=(2πjl+12(qlq)jl(qlpqlqqlNmax))pq·\begin{equation} T_{p q}^{l l'} = \left( \frac{\sqrt{2 \pi}}{ j_{l+1}^2(q_{l q})} j_{l} \left(\frac{q_{l' p} q_{l q}}{q_{l N_{\rm max}}}\right) \right)_{p q}\cdot \end{equation}(42)This matrix allows the computation of \hbox{$\hat{f}_l$} on any grid kln from the values of f sampled on rln: [l(kl1)l(kl2)...l(klNmax)]=1Kl3Tll[f(rl1)f(rl2)...f(rlNmax)].\begin{equation} \left[\begin{matrix} \hat{f}_l(k_{l' 1}) \\ \hat{f}_l(k_{l' 2}) \\ \vdots \\ \hat{f}_l(k_{l' N_{\rm max}}) \end{matrix}\right] = \frac{1}{K_l^3} T^{l l'} \left[\begin{matrix} f(r_{l 1}) \\ f(r_{l 2}) \\ \vdots \\ f(r_{l N_{\rm max}}) \end{matrix}\right].\label{Direct_DSBT} \end{equation}(43)Reciprocally, the inverse the values of f can be computed on any rln grid from \hbox{$\hat{f}_l$} sampled on kln using the exact same matrix: [f(rl1)f(rl2)...f(rlN)]=1R3Tll[l(kl1)l(kl2)...l(klN)].\begin{equation} \left[\begin{matrix} f(r_{l' 1}) \\ f(r_{l' 2}) \\ \vdots \\ f(r_{l' N}) \end{matrix}\right] = \frac{1}{R^3} T^{l l'} \left[\begin{matrix} \hat{f}_l(k_{l 1}) \\ \hat{f}_l(k_{l 2}) \\ \vdots \\ \hat{f}_l(k_{l N}) \end{matrix}\right] .\label{Inverse_DSBT} \end{equation}(44)The discrete SBT is defined by the set of Eqs. (43) and (44).

A simplified form of the transform could have been defined only for l = l′ so that Tll = Tl. However, keeping the distinction between the order of the transform l and the order of the grid on which the results are provided l′ will be crucial to the implementation of the DSFBT. Indeed, the order of the grid on which the function is sampled has to match the order of the transform but the resulting transform coefficients do not. Therefore, it will be possible to compute the result of the inverse SBT of any order l on a grid of order l0 so that only one radial grid of order l0 will be required. Nevertheless, for the direct transform, if the field is sampled on the radial grid of order l0, only the transform of order l0 can be computed. An additional result is required to be able to relate the SBT of different orders between them. This is achieved by combining relations (33) and (34):

l(kln)=2π0R[m=1l0(kl0m)ρl0mjl0(kl0mr)]jl(klnr)r2dr,=2πm=1l0(kl0m)ρl0m0Rjl0(kl0mr)jl(klnr)r2dr,=m=1l0(kl0m)2jl0+12(ql0m)01jl0(ql0mx)jl(qlnx)x2dx,=\begin{eqnarray} \hat{f}_l(k_{l n}) & = & \sqrt{\frac{2}{\pi}} \int_0^R \left[ \sum\limits_{m = 1}^{\infty} \hat{f}_{l_0}(k_{l_0 m}) \rho_{l_0 m} j_{l_0} (k_{l_0 m} r) \right] j_{l} ( k_{l n} r) r^2 {\rm d}r \nonumber ,\\ & = & \sqrt{\frac{2}{\pi}} \sum\limits_{m = 1}^{\infty} \hat{f}_{l_0}(k_{l_0 m}) \rho_{l_0 m} \int_0^R j_{l_0} (k_{l_0 m} r) j_{l} ( k_{l n} r) r^2 {\rm d}r \nonumber ,\\ & = & \sum\limits_{m = 1}^{\infty} \hat{f}_{l_0}(k_{l_0 m}) \frac{2}{ j_{l_0+1}^2(q_{l_0 m})} \int_0^1 j_{l_0} (q_{l_0 m} x) j_{l} ( q_{l n} x) x^2 {\rm d}x \nonumber ,\\ & = & \sum\limits_{m = 1}^{\infty} \hat{f}_{l_0}(k_{l_0 m}) \frac{2}{ j_{l_0+1}^2(q_{l_0 m})} W_{n m}^{l_0 l} ,\label{TransformConversion} \end{eqnarray}(45)where the weights Wnmll\hbox{$W_{n m}^{l l'}$} are defined as: Wnml0l=01jl0(ql0mx)jl(qlnx)x2dx.\begin{equation} W_{n m}^{l_0 l} = \int_0^1 j_{l_0} (q_{l_0 m} x) j_{l} ( q_{l n} x) x^2 {\rm d}x. \label{Transform_weigths} \end{equation}(46)The final expression in Eq. (45) is an important result which shows that the SBT of a given order can be expressed as the sum of the coefficients obtained for a different order of the transform, with the appropriate weighting. This means we can convert the Spherical Bessel coefficients of order l0 into coefficients of any other order l, which considerably speeds up calculations for the SBT. It is also worth noticing that the weights Wnmll\hbox{$W_{n m}^{l l'}$} are simply geometric terms, i.e. independent of the field and can thus be tabulated.

We note that this approach is an extension of the discrete SBT presented in Lemoine (1994) using spherical Bessel functions and where the transform in Lemoine (1994) can be considered as a special case where l = l′.

4.2. A spherical 3D grid compatible with a discrete spherical Fourier-Bessel spectrum

As presented in Sect. 2.1, the SFB transform is the composition of a SHT for the angular component and a SBT for the radial component. Since these two transforms can commute, they can be treated independently and by combining discrete algorithms for both transforms, one can build a DSFBT. In this work, the angular part of the transform is implemented using the HEALPix pixelisation scheme while the radial component uses the discrete SBT algorithm presented in Sect. 4.1. The choice of these two algorithms introduces a discretisation of the SFB coefficients as well as a 3D gridding of the density in physical space.

The SFB coefficients \hbox{$\hat{f}_{l m}(k)$} are defined by Eq. (1) for continuous values of k. Assuming a boundary condition on the density field f, the discrete SBT can be used to discretise the values of k. The Discrete SFB coefficients are therefore defined as: flmnlm(kln),\begin{equation} f_{l m n} \equiv \hat{f}_{l m}(k_{l n}), \end{equation}(47)for 0 ≤ l ≤ Lmax,  − l ≤ m ≤ l and 1 ≤ n ≤ Nmax. These discrete coefficients are simply obtained by sampling the continuous coefficients on the kln grid introduced in the previous section.

To this discretised SFB spectrum corresponds a dual grid of the 3D space defined by combining the HEALPix pixelisation scheme and the discrete SBT.

Used for the computation of the SHT, the HEALPix scheme maps the sphere using curvilinear quadrilaterals of different shapes but equal area. Although other pixelisation schemes for the sphere such as IGLOO or GLESP could have been used, the choice of HEALPix is essentially motivated by the homogeneity of the pixelisation and by its comprehensive software package. For a given value of r, the field f(r,θ,φ) can therefore be sampled on a finite number of points using HEALPix.

The radial component of the transform is conveniently performed using the discrete SBT. Indeed, this algorithm introduces a radial grid compatible with the discretised kln spectrum. Although this radial grid rln depends on the order l of the SBT, it will be justified in the next section that only one grid rl0n is required to sample the field along the radial dimension. The value of l0 is set to 0 because in this case the properties of the zeros of the Bessel function ensure that r0n will be regularly spaced between 0 and R: r0n=nNmaxR.\begin{equation} r_{0 n} = \frac{n}{N_{\rm max}} R. \end{equation}(48)For given values of θ and φ, the field f(r,θ,φ) can now be sampled on discrete values of r = r0n.

Combining angular and radial grids, the 3D spherical grid is defined as a set of Nmax HEALPix maps equally spaced between 0 and R. An illustration of this grid is provided in Fig. 3 where only one quarter of the space is represented for clarity.

thumbnail Fig. 3

Representation of the spherical 3D grid for the DSFBT (R = 1 and Nmax = 4) as described in Sect. 4 where the axes represent x,y,z and the grid points correspond to the centre of Healpix pixels and the radial grid is defined in Sect. 4.1.

With this 3D grid, it will be possible to compute back and forth the SFB transform between a density field and its SFB coefficients. The details of the actual algorithm are provided in the next section.

4.3. Algorithm for the discrete spherical Fourier-Bessel transform (DSFBT)

Although the SHT and the SBT formally commute, some practical considerations on the order between the two operations are to be taken into account for their actual implementation. Here, a detailed algorithm of both the direct and inverse DSFBT is provided.

4.3.1. Direct transform

Given a density field f sampled on the spherical 3D grid, the SFB coefficients flmn are computed in three steps:

  • 1)

    For each n between 1 and Nmax the SHT of the HEALPix map of radius rl0n is computed. This yields flm(rl0n) coefficients.

  • 2)

    The next step is to compute the SBT of order l0 from the flm(rl0n) coefficients for every (l,m). This operation is a simple matrix product: {0lLmaxlml,[l0lm(kl01)l0lm(kl02)...l0lm(kl0Nmax)]=Tl0l0K3[flm(rl01)flm(rl02)...flm(rl0Nmax)].\begin{equation} \left\lbrace\begin{matrix}\forall & 0 &\leq & l & \leq & L_{\rm max} \\ \forall & -l & \leq & m & \leq & l,\end{matrix} \right. \left[\begin{matrix} \hat{f}^{l_0}_{l m}(k_{l_0 1}) \\ \hat{f}^{l_0}_{l m}(k_{l_0 2}) \\ \vdots \\ \hat{f}^{l_0}_{l m}(k_{l_0 N_{\rm max}}) \end{matrix}\right] = \frac{T^{l_0 l_0}}{K^3} \left[\begin{matrix} f_{l m}(r_{l_0 1}) \\ f_{l m}(r_{l_0 2}) \\ \vdots \\ f_{l m}(r_{l_0 N_{\rm max}}) \end{matrix}\right]. \end{equation}(49)This operation yields l0lm(kl0n)\hbox{$\hat{f}^{l_0}_{l m}(k_{l_0 n})$} coefficients which are not yet SFB coefficients because the order of the SBT l0 does not match the order of the spherical harmonics coefficients l. An additional step is required.

  • 3)

    The last step required to gain access to the SFB coefficients flmn is to convert the Spherical Bessel coefficients for order l0 to the correct order l that matches the spherical harmonics order. This is done by using relation (45): {lm(kln)=p=1Nmaxl0lm(kl0p)2Wnpl0ljl0+12(qlp),\begin{eqnarray} \left\lbrace\begin{matrix}\forall & 0 &\leq & l & \leq & L_{\rm max} \\ \forall & -l & \leq & m & \leq & l \\ \forall & 1 & \leq & n & \leq & N_{\rm max},\end{matrix} \right. \hat{f}_{l m}(k_{l n}) = \sum\limits_{p = 1}^{N_{\rm max}} \hat{f}^{l_0}_{l m}(k_{l_0 p}) \frac{2 W_{n p}^{l_0 l} }{ j_{l_0+1}^2(q_{l p})} , \end{eqnarray}(50)where Wnpl0l\hbox{$W_{n p}^{l_0 l}$} are defined by Eq. (46). This operation finally yields the \hbox{$f_{l m n} = \hat{f}_{l m}(k_{l n})$} coefficients.

4.3.2. Inverse transform

Let flmn be the coefficients of the SFB transform of the density field f, where the flmn coefficients can be calculated for a continuous density field using the direct transform described above or for a galaxy or halo catalogue using the public code 3DEX (Leistedt et al. 2012). Note that the 3DEX code can account for masked regions of missing data. The reconstruction of f on the spherical 3D grid requires two steps:

  • 1)

    First, from theflmn, the inverse discrete SBT is computed for all l and m. Again, this transform can be easily evaluated using a matrix product: {0lLmaxlml,[flm(rl01)flm(rl02)...flm(rl0Nmax)]=Tll0R3[flm1flm2...flmNmax].\begin{equation} \left\lbrace\begin{matrix}\forall & 0 &\leq & l & \leq & L_{\rm max} \\ \forall & -l & \leq & m & \leq & l,\end{matrix} \right. \quad \left[\begin{matrix} f_{l m}(r_{l_0 1}) \\ f_{l m}(r_{l_0 2}) \\ \vdots \\ f_{l m}(r_{l_0 N_{\rm max}}) \end{matrix}\right] = \frac{T^{l l_0}}{R^3} \left[\begin{matrix} f_{l m 1} \\ f_{l m 2} \\ \vdots \\ f_{l m N_{\rm max}} \end{matrix}\right]. \end{equation}(51)Here, it is worth noticing that the matrix Tll0 allows the evaluation of the SBT of order l and provides the results on the grid of order l0.

  • 2)

    From the spherical harmonics coefficients flm(rl0n) given at specific radial distances rl0n it is possible to compute the inverse SHT. For each n between 1 and Nmax the HEALPix inverse SHT is performed on the set of coefficients  { flm(rl0n) } l,m. This yields Nmax HEALPix maps which constitute the sampling of the reconstructed density field on the 3D spherical grid.

5. Wavelet decomposition of a test density field

To illustrate the wavelet transform described in Sect. 3, a set of SFB Coefficients was extracted from a 3D density field using the DSFBT described in in Sect. 4. The test density field was provided by a cosmological N-body simulation which was carried out by the Virgo Supercomputing Consortium using computers based at Computing Centre of the Max-Planck Society in Garching and at the Edinburgh Parallel Computing Centre. We use their large box simulations1.

We first compute the SFB coefficients of the test density field by sampling the Virgo density field on the 3D grid illustrated in Fig. 3, for nside = 2048, lmax = 1023 and nmax = 512. In order to perform the SFB decomposition, we place ourselves in the middle of the box, and calculate the SFB coefficients out to r = 479/2   h-1   Mpc, setting the over-density field to zero outside of this spherical volume. In order to better visualise the data, we present in Fig. 4a the data in a cube spanning half the size of the original box (i.e. 239.5   h-1   Mpc), where the field has been reconstructed from the SFB coefficients, using the discrete inverse transform we discuss in Sect. 4.

From the SFB coefficients we calculate the wavelet decomposition, which yields the SFB coefficients of the various wavelet scales and the smoothed density field. Using the inverse DSFBT, the actual wavelet coefficients can be retrieved in the form of 3D density fields. These density fields corresponding to different wavelet scales are shown in Figs. 4b to e. The smoothed density field which arises from the wavelet decomposition is also shown in Fig. 4f, which is simply given by: (f)=(a)(b)(c)(d)(e).\begin{equation} (f) = (a) - (b) - (c) - (d) - (e) . \end{equation}(52)

thumbnail Fig. 4

Spherical 3D wavelet decomposition of a density field for a box with side 239.5   h-1   Mpc. Panel a) shows the reconstructed density field directly using the initial SFB coefficients. Panels be) show the first four wavelet scales, while panel f) shows the smoothed density field.

6. Application to wavelet hard thresholding (denoising)

In this section, a noise removal application based on wavelet thresholding is presented as an example of a potential use for the Isotropic Undecimated Spherical 3D Wavelet transform.

thumbnail Fig. 5

Wavelet Hard thresholding applied to a test density field.

6.1. Thresholding

Many wavelet filtering methods have been proposed in the last twenty years. Hard thresholding consists of setting to 0 all wavelet coefficients which have an absolute value lower than a threshold Tj (non-significant wavelet coefficient): ˜wj,k={\begin{eqnarray} \tilde w_{j,k} = \left\{ \begin{array}{ll} w_{j,k} & \mbox{ if } \mid w_{j,k} \mid \geq T_j \nonumber ,\\ 0 & \mbox{ otherwise,} \end{array} \right. \end{eqnarray}where wj,k is a wavelet coefficient at scale j and at spatial position k.

Soft thresholding consists of replacing each wavelet coefficient by the value ˜w\hbox{$\tilde w$} where ˜wj,k={\begin{eqnarray} \tilde w_{j,k} = \left\{ \begin{array}{ll} sgn(w_{j,k}) ( \mid w_{j,k} \mid - T_j) & \mbox{ if } \mid w_{j,k} \mid \geq T_j \nonumber, \\ 0 & \mbox{ otherwise} .\end{array} \right. \end{eqnarray}This operation is generally written as: ˜wj,k=soft(wj,k)=sgn(wj,k)(|wj,k|Tj)+,\begin{eqnarray} \tilde w_{j,k} = \mathrm{soft}( w_{j,k}) = sgn(w_{j,k}) ( \mid w_{j,k} \mid - T_j)_{+}, \end{eqnarray}(53)where (x) +  = max(0,x).

In the case of Gaussian noise with a given standard deviation σ, a reasonable choice for the threshold Tj is Tj = Kσj, where j is the scale of the wavelet coefficient, σj is the noise standard deviation at the scale j, and K is a constant generally chosen between to 3 and 5. The standard deviation σj depends only on the chosen wavelet function and the noise level σ. More details can be found in Starck et al. (2010).

Other threshold methods have been proposed, like the universal threshold (Donoho & Johnstone 1994; Donoho 1993), or the SURE (Stein unbiased risk estimate) method (Coifman & Donoho 1995), but they generally do not yield as good results as the hard thresholding method based on the significant coefficients. Concerning the threshold level, the universal threshold corresponds to a minimum risk. The larger the number of pixels, the larger the risk is, and it is normal that the threshold T depends on the number of pixels (T=σj2logn\hbox{$T = \sigma_j \sqrt{2\log n}$}, n being the number of pixels). The threshold corresponds to a false detection probability, the probability to detect a coefficient as significant when it is due to the noise. The 3σ value corresponds to 0.27% false detection.

6.2. Denoising experiment

We test the hard thresholding algorithm by using it to remove artificially added Gaussian noise on the Virgo density field (the simulation is described in Sect. 5). To conduct this experiment, the original density field taken from the n-body simulation has been used to compute an initial set of SFB coefficients (with lmax = 1023 and Nmax = 512) and out to r = 479   h-1   Mpc. Figure 5a shows a slice of the 3D density field reconstructed from these coefficients. A Gaussian noise was then added to the SFB coefficients, the reconstruction of this noisy density field is shown in Fig. 5b. The hard thresholding algorithm was subsequently applied to the noisy SFB coefficients using 5 wavelet scales. The resulting density field is reconstructed in Fig. 5c. The residuals are shown in Fig. 5d. The wavelet analysis means we can successfully remove the noise we artificially added on entry, without much loss to the large scale structure, though some of the smaller structures are removed.

7. Conclusion

Modern cosmology requires the analysis of 3D fields on large areas of the sky, i.e. where the field is best viewed in spherical coordinates. In this configuration, a spherical Fourier Bessel (SFB) transform is the most natural way to statistically analyse the field. Wavelet transforms have been shown to be ideally suited for cosmological fields, which tend to be sparse in wavelet space. The wavelet transform can be used e.g. for denoising, but there is yet no 3D wavelet transform in spherical coordinates.

We present in this paper a new 3D spherical wavelet transform, based on the undecimated wavelet transform (UWT) described in (Starck et al. 2006). In order to perform operations on the wavelet transforms (such as denoising), we require a discrete version of the SFB transform for both the direct and inverse transforms. We show a novel way to perform such a fast discrete spherical Fourier-Bessel transform (DSFBT) based on both a discrete Bessel transform and the HEALPIX angular pixelisation scheme.

Using the 3D wavelet transform and the DSFBT, both introduced in this paper, we denoise a test large scale structure data set, taken from the Virgo large box simulations2. We find we can satisfactorily remove artificially added Gaussian noise without much loss to the large scale structure. All the algorithms presented in this paper are available for download as a public code called MRS3D at http://jstarck.free.fr/mrs3d.html.


1

http://www.mpa-garching.mpg.de/Virgo/VLS.html, a ΛCDM simulation at z = 0, which was calculated using 5123 particles for the following cosmology: Ωm = 0.3,ΩΛ = 0.7,H0 = 70   km   s-1   Mpc-1,σ8 = 0.9. The data cube provided is 479   h-1   Mpc in length.

Acknowledgments

The authors are grateful to Boris Leistedt, Pirin Erdoğdu, Ofer Lahav and Alexandre Réfrégier for useful discussions regarding the Spherical Fourier-Bessel decomposition and discretisation scheme. The 3D wavelet library uses Healpix software (Górski et al. 2002, 2005). This research is in part supported by the Swiss National Science Foundation (SNSF).

References

  1. Abrial, P., Moudden, Y., Starck, J., et al. 2007, J. Fourier Anal. Appl., 13, 729 [Google Scholar]
  2. Abrial, P., Moudden, Y., Starck, J., et al. 2008, Stat. Meth., 5, 289 [NASA ADS] [CrossRef] [Google Scholar]
  3. Albrecht, A., Bernstein, G., Cahn, R., et al. 2006 [arXiv:astro-ph/0609591] [Google Scholar]
  4. Annis, J., Bridle, S., Castander, F. J., et al. 2005 [arXiv:astro-ph/0510195] [Google Scholar]
  5. Antoine, J.-P. 1999, in Wavelets in Physics, ed. J. van den Berg (Cambridge University Press), 23 [Google Scholar]
  6. Baddour, N. 2010, J. Opt. Soc. Am. A, 27, 2144 [NASA ADS] [CrossRef] [Google Scholar]
  7. Bobin, J., Moudden, Y., Starck, J. L., Fadili, M., & Aghanim, N. 2008, Stat. Meth., 5, 307 [NASA ADS] [CrossRef] [Google Scholar]
  8. Castro, P. G., Heavens, A. F., & Kitching, T. D. 2005, Phys. Rev. D, 72, 023516 [NASA ADS] [CrossRef] [Google Scholar]
  9. Cayón, L., Sanz, J. L., Martínez-González, E., et al. 2001, MNRAS, 326, 1243 [NASA ADS] [CrossRef] [Google Scholar]
  10. Coifman, R., & Donoho, D. 1995, in Wavelets and Statistics, ed. A. Antoniadis, & G. Oppenheim (Springer-Verlag), 125 [Google Scholar]
  11. Delabrouille, J., Cardoso, J.-F., Le Jeune, M., et al. 2009, A&A, 493, 835 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  12. Donoho, D. 1993, in Proc. Symposia in Applied Mathematics, ed. A. M. Society, 47, 173 [Google Scholar]
  13. Donoho, D., & Johnstone, I. 1994, Biometrika, 81, 425 [CrossRef] [MathSciNet] [Google Scholar]
  14. Erdoğdu, P., Huchra, J. P., Lahav, O., et al. 2006a, MNRAS, 368, 1515 [Google Scholar]
  15. Erdoğdu, P., Lahav, O., Huchra, J. P., et al. 2006b, MNRAS, 373, 45 [NASA ADS] [CrossRef] [Google Scholar]
  16. Faÿ, G., & Guilloux, F. 2008 [arXiv:0807.2162] [Google Scholar]
  17. Faÿ, G., Guilloux, F., Betoule, M., et al. 2008, Phys. Rev. D, 78, 083013 [NASA ADS] [CrossRef] [Google Scholar]
  18. Fisher, K. B., Lahav, O., Hoffman, Y., Lynden-Bell, D., & Zaroubi, S. 1995, MNRAS, 272, 885 [NASA ADS] [Google Scholar]
  19. Górski, K. M., Banday, A. J., Hivon, E., & Wandelt, B. D. 2002, in Astronomical Data Analysis Software and Systems XI, ed. D. A. Bohlender, D. Durand, & T. H. Handley, ASP Conf. Ser., 281, 107 [Google Scholar]
  20. Górski, K. M., Hivon, E., Banday, A. J., et al. 2005, ApJ, 622, 759 [NASA ADS] [CrossRef] [Google Scholar]
  21. Heavens, A. F., & Taylor, A. N. 1995, MNRAS, 275, 483 [NASA ADS] [Google Scholar]
  22. Holschneider, M. 1996, J. Math. Phys., 37, 4156 [NASA ADS] [CrossRef] [Google Scholar]
  23. Larson, D., Dunkley, J., Hinshaw, G., et al. 2011, ApJS, 192, 16 [NASA ADS] [CrossRef] [Google Scholar]
  24. Laureijs, R., Amiaux, J., Arduini, S., et al. 2011 [arXiv:1110.3193] [Google Scholar]
  25. Leistedt, B., Rassat, A., Refregier, A., & Starck, J.-L. 2012, A&A, 540, A60 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  26. Lemoine, D. 1994, J. Chem. Phys., 101, 3936 [NASA ADS] [CrossRef] [Google Scholar]
  27. Marinucci, D., Pietrobon, D., Balbi, A., et al. 2008, MNRAS, 383, 539 [NASA ADS] [CrossRef] [Google Scholar]
  28. Martinez, V., Paredes, S., & Saar, E. 1993, MNRAS, 260, 365 [NASA ADS] [Google Scholar]
  29. Moudden, Y., Cardoso, J.-F., Starck, J.-L., & Delabrouille, J. 2005, EURASIP J. Appl. Signal Process., 15, 2437 [Google Scholar]
  30. Peacock, J. A., Schneider, P., Efstathiou, G., et al. 2006, ESA-ESO Working Group on Fundamental Cosmology, Tech. Rep. [Google Scholar]
  31. Percival, W. J., Cole, S., Eisenstein, D. J., et al. 2007b, MNRAS, 381, 1053 [NASA ADS] [CrossRef] [MathSciNet] [Google Scholar]
  32. Planck Collaboration 2011, A&A, 536, A1 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  33. Rassat, A., & Refregier, A. 2012, A&A, in press, DOI: 10.1051/0004-6361/201118638 [Google Scholar]
  34. Schlegel, D. J., Blanton, M., Eisenstein, D., & et al. 2007, in AAS Meeting Abstracts, 211, 132.29 [Google Scholar]
  35. Schmitt, J., Starck, J. L., Casandjian, J. M., Fadili, J., & Grenier, I. 2010, A&A, 517, A26 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  36. Schrabback, T., Hartlap, J., Joachimi, B., et al. 2010, A&A, 516, A63 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  37. Starck, J.-L., & Murtagh, F. 2006, Astronomical Image and Data Analysis (Springer), 2nd edn. [Google Scholar]
  38. Starck, J.-L., Moudden, Y., Abrial, P., & Nguyen, M. 2006, A&A, 446, 1191 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  39. Starck, J., Moudden, Y., & Bobin, J. 2009, A&A, 497, 931 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  40. Starck, J.-L., Murtagh, F., & Fadili, M. 2010, Sparse Image and Signal Processing (Cambridge University Press) [Google Scholar]
  41. Tenorio, L., Jaffe, A. H., Hanany, S., & Lineweaver, C. H. 1999, MNRAS, 310, 823 [NASA ADS] [CrossRef] [Google Scholar]
  42. Tyson, J. A., & LSST. 2004, in BAAS, 36, AAS Meeting Abstracts, 108.01 [Google Scholar]
  43. Wiaux, Y., McEwen, J. D., Vandergheynst, P., & Blanc, O. 2008, MNRAS 388, 770 [Google Scholar]

Appendix A: Spherical Fourier-Bessel transform and 3D convolution products

A.1. Spherical Fourier-Bessel transform and relation to the 3D Fourier transform

In order to have a better understanding of the SFB coefficients and of how to use them to perform filtering, the SFB transform can be related to the 3D Fourier transform. We follow a similar definition as the one presented in Baddour (2010), but using our conventions for the different transforms.The following convention will be used for the Fourier transform: F(k)=1(2π)3f(r)eik·rdr,\appendix \setcounter{section}{1} \begin{equation} F(\vec{k}) =\frac{1}{\sqrt{(2 \pi)^3}} \int f(\vec{r}) {\rm e}^{-{\rm i} \vec{k}\cdot\vec{r}} {\rm d}\vec{r} , \end{equation}(A.1)where F denotes the Fourier transform of f. This formulation does not assume any coordinate system. However, to relate this transform to the SFB transform, it is possible to express this equation in spherical coordinates using the following expansion for the Fourier kernel: eik·r=4πl=0m=ll(i)ljl(kr)Ylm(θr,φr)Ylm(θk,φk),\appendix \setcounter{section}{1} \begin{equation} {\rm e}^{-{\rm i}\vec{k}\cdot\vec{r}} = 4\pi \sum_{l = 0}^{\infty} \sum_{m = -l}^{l} (-i)^l j_l (k r) \overline{ Y_l^m(\theta_r,\phi_r)} Y_l^m(\theta_k,\phi_k), \end{equation}(A.2)where (k,θk,φk) and (r,θr,φr) are respectively the spherical coordinates of vectors k and r.

Substituting this expression for the kernel in the definition of the 3D Fourier transform yields: F(k,θk,φk)=4π(2π)30Ωl=0m=ll(i)lf(r,θr,φr)×jl(kr)Ylm(θr,φr)Ylm(θk,φk)r2dr,=l=0m=ll(i)l[2π0Ωf(r,θr,φr)×jl(kr)Ylm(θr,φr)r2dr]Ylm(θk,φk),=\appendix \setcounter{section}{1} \begin{eqnarray} F(k,\theta_k,\phi_k) & = & \frac{4\pi}{\sqrt{(2 \pi)^3}} \int_0^\infty \int_\Omega \sum_{l = 0}^{\infty} \sum_{m = -l}^{l} (-i)^l f(r, \theta_r, \phi_r) \nonumber \\ & & \times \quad j_l (k r) \overline{Y_l^m(\theta_r,\phi_r)} Y_l^m(\theta_k,\phi_k) {\rm d}\Omega r^2 {\rm d}r \nonumber ,\\ & = & \sum_{l = 0}^{\infty} \sum_{m = -l}^{l} (-i)^l \left[ \sqrt{\frac{2}{\pi}} \int_0^\infty \int_\Omega f(r, \theta_r, \phi_r) \right. \nonumber \\ & & \times \quad \left. j_l (k r) \overline{Y_l^m(\theta_r,\phi_r)} {\rm d}\Omega r^2 {\rm d}r \right] Y_l^m(\theta_k,\phi_k) \nonumber ,\\ & = & \sum_{l = 0}^{\infty} \sum_{m = -l}^{l} \left[ (-i)^l \hat{f}_{l m} (k) \right] Y_l^m(\theta_k,\phi_k) .\label{Relationship_Fourier_Bessel} \end{eqnarray}(A.3)In the last equation, the expression of the Spherical Harmonics Expansion of F(k,θk,φk) for a given value of k can be recognised from Eq. (4b). In the Fourier space, the \hbox{$(-i)^l \hat{f}_{l m}(k)$} are the spherical harmonics coefficients of F on a sphere of given radius k. In other words, the spherical harmonics coefficients Flm(k) of the 3D Fourier transform F(k,θk,φk) on a sphere of given radius k in Fourier space are the SFB coefficients \hbox{$\hat{f}_{l m}(k)$} for the same value k but multiplied by factor ( − i)l.

The relationship between 3D Fourier transform and SFB transform is therefore very simple. The SFB transform can be sought of as a mere Fourier transform in spherical coordinates. In the next sections, this relationship will be used to derive convolution and filtering relations for the SFB transform using the well known relations verified by the Fourier transform.

A.2. Expression of a 3D convolution product using the SFB transform

A prerequisite to the establishment of filtering relations is the expression of a 3D convolution product in terms of SFB coefficients. Let v(r,θr,φr) be the 3D convolution of f(r,θr,φr) and u(r,θr,φr). Then the 3D Fourier transform of v verifies: V(k,θk,φk)={fu}(k,θk,φk),=(2π)3F(k,θk,φk)U(k,θk,φk),\appendix \setcounter{section}{1} \begin{eqnarray} V(k,\theta_k,\phi_k) & = & \mathcal{F} \{ f \ast u \}(k,\theta_k,\phi_k) \nonumber, \\ & = & \sqrt{(2 \pi)^3 } F(k,\theta_k,\phi_k) U(k,\theta_k,\phi_k), \end{eqnarray}(A.4)where ℱ denotes the 3D Fourier transform. From Eq. (A.3) the expression of the 3D Fourier transform in spherical coordinates is known in terms of SFB coefficients. Applying this relationship to V(k,θk,φk) in the last equation yields: (i)llm(k)=2π00π(2π)3F(k,θk,φk)U(k,θk,φk)×Ylm(θk,φk)sin(φk)dφkdθk.\appendix \setcounter{section}{1} \begin{eqnarray} (-i)^l \hat{v}_{l m}(k) & = & \int_0^{2\pi} \int_0^{\pi} \sqrt{(2 \pi)^3 } F(k,\theta_k,\phi_k) U(k,\theta_k,\phi_k) \nonumber \\ & & \times \quad \overline{Y_l^m (\theta_k, \phi_k)} \sin(\phi_k) {\rm d}\phi_k {\rm d}\theta_k . \end{eqnarray}(A.5)Then, by applying Eq. (A.3) to F and U one gets: lm(k)=(i)l(2π)3l=0m=ll(i)llm(k)Ylm(θk,φk)×l′′=0m′′=l′′l′′(i)l′′l′′m′′(k)Yl′′m′′(θk,φk)×Ylm(θk,φk)sin(φk)dφkdθk,=(i)l(2π)3l=0m=ll(i)llm(k)×l′′=0m′′=l′′l′′(i)l′′l′′m′′(k)×Ylm(θk,φk)Yl′′m′′(θk,φk)Ylm(θk,φk)dΩk.\appendix \setcounter{section}{1} \begin{eqnarray} \hat{v}_{l m}(k) & = & (i)^l\sqrt{(2 \pi)^3 }\iint \sum\limits_{l'=0}^{\infty} \sum\limits_{m' = -l'}^{l'} (-i)^{l'} \hat{f}_{l' m'}(k) Y_{l'}^{m'}(\theta_k,\phi_k)\nonumber \\ & & \times \quad \sum\limits_{l''=0}^{\infty} \sum\limits_{m'' = -l''}^{l''} (-i)^{l''} \hat{u}_{l'' m''}(k) Y_{l''}^{m''}(\theta_k,\phi_k) \nonumber \\ & & \times \quad \overline{Y_l^m (\theta_k, \phi_k)} \sin(\phi_k) {\rm d}\phi_k {\rm d}\theta_k \nonumber ,\\ & = & (i)^l\sqrt{(2 \pi)^3 } \sum\limits_{l'=0}^{\infty} \sum\limits_{m' = -l'}^{l'} (-i)^{l'} \hat{f}_{l' m'}(k) \nonumber \\ & & \times \quad \sum\limits_{l''=0}^{\infty} \sum\limits_{m'' = -l''}^{l''} (-i)^{l''} \hat{u}_{l'' m''}(k) \nonumber \\ & &\times \quad \iint Y_{l'}^{m'} (\theta_k,\phi_k) Y_{l''}^{m''}(\theta_k,\phi_k) \overline{Y_l^m (\theta_k, \phi_k)} {\rm d}\Omega_k. \end{eqnarray}(A.6)The last integral over the two angular variables can be expressed as a Slater integral (which is a special case of the Gaunt integral) defined as: cl′′(l,m,l,m)=Ylm(θ,φ)Ylm(θ,φ)Yl′′mm(θ,φ).\appendix \setcounter{section}{1} \begin{equation} c^{l''}(l,m,l',m') = \iint \overline{Y_l^m(\theta,\phi)} Y_{l'}^{m'}(\theta,\phi) Y_{l''}^{m - m'}(\theta,\phi) {\rm d}\Omega. \end{equation}(A.7)The Slater integrals are only nonzero for  | l − l′ |  ≤ l′′ ≤ l + l′ which simplifies the expression of \hbox{$\hat{v}_{l m}(k)$}.

The SFB transform of the 3D convolution product is therefore: [(fu)lm(k)=(i)l(2π)3l=0m=ll(i)llm(k)\appendix \setcounter{section}{1} \begin{eqnarray} \widehat{(f \ast u)}_{l m}(k) & = & (i)^l \sqrt{(2 \pi)^3} \sum\limits_{l'=0}^{\infty} \sum\limits_{m' = -l'}^{l'} (-i)^{l'} \hat{f}_{l' m'}(k) \nonumber \\ & & \times \quad \sum\limits_{l''= | l - l' |}^{ l + l'} c^{l''}(l,m,l',m') (-i)^{l''} \hat{u}_{l'' m-m'}(k). \label{Spherical_Convolution} \end{eqnarray}(A.8)

All Figures

thumbnail Fig. 1

Scaling function and wavelet function for kc = 1. The y-axis represents the amplitude and the x-axis the frequency associated with the scaling function. The units of the amplitude must be those of the SFB transform.

In the text
thumbnail Fig. 2

Comparaison between spline and needlet wavelet functions on the sphere. The y-axis corresponds to amplitude and the x-axis to position.

In the text
thumbnail Fig. 3

Representation of the spherical 3D grid for the DSFBT (R = 1 and Nmax = 4) as described in Sect. 4 where the axes represent x,y,z and the grid points correspond to the centre of Healpix pixels and the radial grid is defined in Sect. 4.1.

In the text
thumbnail Fig. 4

Spherical 3D wavelet decomposition of a density field for a box with side 239.5   h-1   Mpc. Panel a) shows the reconstructed density field directly using the initial SFB coefficients. Panels be) show the first four wavelet scales, while panel f) shows the smoothed density field.

In the text
thumbnail Fig. 5

Wavelet Hard thresholding applied to a test density field.

In the text

Current usage metrics show cumulative count of Article Views (full-text article views including HTML views, PDF and ePub downloads, according to the available data) and Abstracts Views on Vision4Press platform.

Data correspond to usage on the plateform after 2015. The current usage metrics is available 48-96 hours after online publication and is updated daily on week days.

Initial download of the metrics may take a while.