1 Introduction

Spherically indexed Gaussian random fields have attracted a growing interest in recent decades. They are useful in the modeling of georeferenced variables arising in many branches of applied sciences, such as astronomy, climatology, oceanography, biology and geosciences, amongst many others. We refer the reader to Marinucci and Peccati (2011), Jeong et al. (2017) and Porcu et al. (2018) for recent reviews about this topic. In general, the space consists of a 2-dimensional sphere, but hyperspheres are sometimes met, e.g., in high-dimensional shape analysis (Dryden 2005; Mardia and Patrangenaru 2005).

Simulation is crucial for the development of new applications in spatial statistics. It is well known that simulation algorithms based on the Cholesky decomposition of the covariance matrix (Ripley 1987) are computationally prohibitive when the sample size is large, since the order of computation of the Cholesky decomposition is equal to the cube of the sample size. As a result, the search for new efficient methods to simulate Gaussian random fields in spherical domains is of paramount importance. Within the class of isotropic random fields, i.e., random fields whose finite-dimensional distributions are invariant under rotations, several appealing alternatives have been proposed, including spherical harmonic approximations (Lang and Schwab 2015; Clarke et al. 2018; Emery and Porcu 2019; Lantuéjoul et al. 2019), circulant embedding approaches (Cuevas et al. 2019), random coin type methods (Hansen et al. 2015), and simulations over Euclidean spaces restricted to low-dimensional spheres (Emery et al. 2019).

In this paper, we propose a simple algorithm that simulates a Gaussian random field with a prescribed isotropic covariance structure, based on adequate combinations of Gegenbauer waves. Our proposal, named the ‘turning arcs’ method, can be seen as the spherical counterpart of the spectral turning bands method developed in Euclidean spaces (see, e.g., Matheron, 1973, Mantoglou and Wilson, 1982, Lantuéjoul, 2002, Emery and Lantuéjoul, 2006 and Emery et al., 2016). The advantages of this algorithm over existing ones are threefold:

  1. 1.

    It is computationally less expensive than approximations based on spherical harmonics.

  2. 2.

    It is applicable to the simulation not only on the 2-sphere, but also on the d-sphere, for any dimension d.

  3. 3.

    It allows the simulation not only of scalar random fields, but also on vector random fields.

The outline of the paper is as follows. In Sect. 2 preliminary results about isotropic scalar- and vector-valued Gaussian random fields on the d-sphere are reviewed. The ‘turning arcs’ simulation algorithm is then presented in Sect. 3. In Sect. 4, the applicability of our proposal is illustrated through numerical examples. Section 5 discusses the computational implementation and provides some guidelines to practitioners. Section 6 concludes the paper, while technical proofs are given in Appendices.

2 Background

2.1 Scalar-valued isotropic Gaussian random fields on the sphere

Let \({\mathbb {S}}^d = \{\varvec{x} \in {\mathbb {R}}^{d+1}: \varvec{x}^\top \varvec{x}=1\}\) be the d-dimensional unit sphere embedded in \({\mathbb {R}}^{d+1}\), where \(^\top \) denotes the transpose operator, and consider a real-valued random field, \(Z = \{ Z(\varvec{x}): \varvec{x}\in {\mathbb {S}}^d\}\) with finite second-order moments. We assume Z to be Gaussian, i.e., for all \(k\in {\mathbb {N}}^*\) and \(\varvec{x}_1,\ldots ,\varvec{x}_k\in {\mathbb {S}}^d\), the random vector \(\{Z(\varvec{x}_1),\ldots ,Z(\varvec{x}_k)\}^\top \) follows a multivariate normal distribution. Thus, Z is completely characterized by its mean function and its covariance function given by

$$\begin{aligned} C(\varvec{x}_1,\varvec{x}_2) = \mathrm{cov}\{Z(\varvec{x}_1),Z(\varvec{x}_2)\}, \qquad \varvec{x}_1,\varvec{x}_2\in {\mathbb {S}}^d. \end{aligned}$$

Let us introduce the geodesic distance on \({\mathbb {S}}^d\), which is the main ingredient to define the property of isotropy of a random field. For two points, \(\varvec{x}_1\) and \(\varvec{x}_2\) in \({\mathbb {S}}^d\), their geodesic distance is defined as \(\vartheta (\varvec{x}_1,\varvec{x}_2) = \arccos \{ \varvec{x}_1^\top \varvec{x}_2 \} \in [0,\pi ]\). We shall equivalently use \(\vartheta (\varvec{x}_1,\varvec{x}_2)\) or the shortcut \(\vartheta \) to denote the geodesic distance. Following Marinucci and Peccati (2011), the random field is called (weakly) isotropic if it has constant mean and if its covariance function can be written as

$$\begin{aligned} C(\varvec{x}_1, \varvec{x}_2) = K\{ \vartheta (\varvec{x}_1,\varvec{x}_2) \}, \qquad \varvec{x}_1, \varvec{x}_2 \in {\mathbb {S}}^d, \end{aligned}$$
(2.1)

for some continuous function \(K: [0,\pi ]\rightarrow {\mathbb {R}}\). Thus, the covariance function just depends on the geodesic distance. It is common to call K the isotropic part of the covariance function C (see, e.g., Guella and Menegatto, 2018). For Gaussian random fields, isotropy also implies that the probability distribution of \(\{Z(\varvec{x}_1),\ldots ,Z(\varvec{x}_k)\}^\top \) is invariant under the group of rotations on \({\mathbb {S}}^d\) (see Marinucci and Peccati, 2011).

Positive semi-definiteness is a necessary and sufficient condition for a function to be a valid covariance. In his pioneering paper, Schoenberg (1942) showed that C as in (2.1) is positive semi-definite if, and only if, its isotropic part K has a series representation of the form

$$\begin{aligned} K(\vartheta ) = \sum _{n=0}^\infty b_{n,d} \, {G}_n^{(d-1)/2}(\cos \vartheta ), \qquad 0 \le \vartheta \le \pi , \end{aligned}$$
(2.2)

where \(\{b_{n,d}: n\in {\mathbb {N}}\}\) is a sequence of nonnegative coefficients such that \(\sum _{n=0}^\infty b_{n,d} {G}_n^{(d-1)/2}(1) < +\infty \), referred to as a Schoenberg sequence (Gneiting 2013), while \(\{{G}_n^{\lambda }: n\in {\mathbb {N}}\}\) is the sequence of \(\lambda \)-Gegenbauer polynomials (Abramowitz and Stegun 1972), which are implicitly defined through the identity

$$\begin{aligned} \frac{1}{(1-2rt + t^2)^\lambda } = \sum _{n=0}^\infty G_n^{\lambda }(r)t^n, \qquad -1\le r \le 1. \end{aligned}$$

The Gegenbauer polynomials can be calculated in a straightforward manner by use of the following relationships:

$$\begin{aligned} {\left\{ \begin{array}{ll} {G}_0^{\lambda }(r) = 1; \\ {G}_1^{\lambda }(r) = 2 \, \lambda \, r;\\ {G}_n^{\lambda }(r) \\ \quad = \frac{2(n+\lambda -1)}{n} \, r \, \, {G}_{n-1}^{\lambda }(r) - \frac{n+2\lambda -2}{n} \, {G}_{n-2}^{\lambda }(r), \qquad n>1. \end{array}\right. } \end{aligned}$$
(2.3)

In practice, the most usual cases correspond to spheres of dimensions \(d=1\) or \(d=2\). When \(d=1\), Schoenberg’s expansion is written in terms of Chebyshev polynomials, \(G_n^0(\cos \vartheta ) = \cos (n \vartheta )\). When \(d=2\), one obtains an expansion in terms of Legendre polynomials, \(G_n^{1/2}(\cos \vartheta ) = P_n(\cos \vartheta )\).

There is a one-to-one correspondence between an isotropic covariance K and its Schoenberg sequence. Classical inversion formulae yield the identity (Schoenberg 1942; Gneiting 2013; Ziegel 2014)

$$\begin{aligned} b_{n,d}= & {} \frac{1}{\parallel G_n^{(d-1)/2} \parallel ^2} \int _0^\pi G_n^{(d-1)/2}(\cos \vartheta ) \nonumber \\&(\sin \vartheta )^{d-1} K(\vartheta ) \text {d}\vartheta , \qquad n\in {\mathbb {N}}, \end{aligned}$$
(2.4)

with (Abramowitz and Stegun (1972), formula 22.2.3)

$$\begin{aligned} \begin{aligned} \parallel G_n^{(d-1)/2} \parallel ^2&= \int _0^\pi \bigl [ G_n^{(d-1)/2} (\cos \vartheta ) \bigr ]^2 \, \sin ^{d-1} (\vartheta ) \, d \vartheta \\&= {\left\{ \begin{array}{ll} \frac{2\pi }{n^2} &{}\text {if} \, d=1 \\ \frac{2^{3-d}\pi }{(2n+d-1)} \frac{{\varGamma }(d-1+n)}{n! {\varGamma }((d-1)/2)^2} &{}\text {if} \, d \ge 2. \end{array}\right. } \end{aligned} \end{aligned}$$
(2.5)

The isotropic covariance function, or its Schoenberg sequence, is often specified to belong to a parametric family whose members are known to be positive semi-definite. For a thorough review on positive semi-definite functions on spheres and a list of parametric families, we refer the reader to Huang et al. (2011), Gneiting (2013), Arafat et al. (2018) and Lantuéjoul et al. (2019). The Schoenberg sequences of two specific parametric families (Chentsov and exponential covariances) on \({\mathbb {S}}^d\), \(d \ge 2\), are also given in Appendix D, which seems to be a new result.

2.2 Vector-valued isotropic Gaussian random fields on the sphere

Let \(\varvec{Z}=\{ [Z_1(\varvec{x}), \ldots , Z_p(\varvec{x})]^\top : \varvec{x}\in {\mathbb {S}}^d\}\) be a p-variate random field, with each component having finite second-order moments. We assume \(\varvec{Z}\) to be Gaussian, i.e., for all \(k\in {\mathbb {N}}^{*}\) and \(\varvec{x}_1,\ldots ,\varvec{x}_k\in {\mathbb {S}}^d\), the random vector \(\{\varvec{Z}(\varvec{x}_1),\ldots ,\varvec{Z}(\varvec{x}_k)\}^\top \) follows a multivariate normal distribution, where \(\varvec{Z}(\varvec{x}) = [Z_1(\varvec{x}), \ldots , Z_p(\varvec{x})]^\top \). We denote by \(\varvec{C}(\varvec{x}_1,\varvec{x}_2)\) the \(p\times p\) covariance matrix between \(\varvec{Z}(\varvec{x}_1)\) and \(\varvec{Z}(\varvec{x}_2)\), with the (ij)th entry equal to \(C_{ij}(\varvec{x}_1,\varvec{x}_2)\). The diagonal elements, \(C_{ii}(\varvec{x}_1,\varvec{x}_2)\), are called direct covariance functions, whereas the off-diagonal elements, \(C_{ij}(\varvec{x}_1,\varvec{x}_2)\), for \(i\ne j\), are called cross-covariance functions.

The isotropy of a vector-valued random field can be defined in a similar fashion to the scalar-valued case. Indeed, the random field \(\varvec{Z}\) is said to be isotropic if each of its components has a constant mean and if its matrix-valued covariance function can be written as

$$\begin{aligned} \varvec{C}(\varvec{x}_1, \varvec{x}_2) = \varvec{K}\{ \vartheta (\varvec{x}_1,\varvec{x}_2) \}, \qquad \varvec{x}_1, \varvec{x}_2 \in {\mathbb {S}}^d, \end{aligned}$$

for some continuous matrix-valued function \(\varvec{K}: [0,\pi ]\rightarrow {\mathbb {R}}^{p\times p}\). The condition of positive semi-definiteness can also be adapted to the vector-valued case. The Schoenberg’s expansion for the matrix-valued isotropic part is given by (Yaglom 1987; Hannan 2009)

$$\begin{aligned} \varvec{K}(\vartheta ) = \sum _{n=0}^\infty \varvec{B}_{n,d} \, {G}_n^{(d-1)/2}(\cos \vartheta ), \qquad 0 \le \vartheta \le \pi , \end{aligned}$$
(2.6)

where \(\{\varvec{B}_{n,d}: n\in {\mathbb {N}}\}\) is a sequence of positive semi-definite matrices (called Schoenberg matrices) such that \(\sum _{n=0}^\infty \varvec{B}_{n,d} {G}_n^{(d-1)/2}(1) < +\infty \) (element-wise summation). Similarly to the scalar-valued scenario, Fourier calculus implies that

$$\begin{aligned} \varvec{B}_{n,d}= & {} \frac{1}{\parallel G_n^{(d-1)/2} \parallel ^2}\int _0^\pi G_n^{(d-1)/2}(\cos \vartheta ) \\&(\sin \vartheta )^{d-1} \varvec{K}(\vartheta ) \text {d}\vartheta , \qquad n\in {\mathbb {N}}. \end{aligned}$$

3 The turning arcs simulation algorithm

3.1 Scalar-valued case

This section presents an algorithm for simulating scalar-valued isotropic Gaussian random fields on \({\mathbb {S}}^d\). The representation (2.2) allows for an immediate simulation procedure based on the Schoenberg sequence \(\{b_{n,d}: n\in {\mathbb {N}}\}\). The following proposition is crucial to develop the simulation algorithm.

Proposition 1

Let \(\varepsilon \) be a random variable with zero mean and unit variance, \(\varvec{\omega }\) a random vector uniformly distributed on \({\mathbb {S}}^d\), and \(\kappa \) a discrete random variable with \({\mathbb {P}}(\kappa = n) = a_n\), \(n\in {\mathbb {N}}\), where \({\mathbb {P}}\) indicates the probability. Suppose that the support of the probability mass sequence \(\{a_n: n\in {\mathbb {N}}\}\) contains the support of the Schoenberg sequence \(\{b_{n,d}: n\in {\mathbb {N}}\}\) and that \(\varepsilon \), \(\varvec{\omega }\) and \(\kappa \) are independent. Then,

  1. (1)

    For \(d=1\), the random field defined by

    $$\begin{aligned} {Z}(\varvec{x}) = \varepsilon \sqrt{ \frac{2 b_{\kappa ,1}}{a_\kappa } } \cos (\kappa \vartheta (\varvec{\omega }, \varvec{x})), \qquad \varvec{x}\in {\mathbb {S}}^1, \end{aligned}$$
    (3.1)

    is isotropic, with zero mean and covariance function with isotropic part given by

    $$\begin{aligned} K(\vartheta ) = \sum _{n=0}^\infty b_{n,1} \cos (n \vartheta ), \qquad 0\le \vartheta \le \pi . \end{aligned}$$
  2. (2)

    For \(d\ge 2\), the random field defined by

    $$\begin{aligned}&{Z}(\varvec{x}) = \varepsilon \sqrt{\frac{b_{\kappa ,d} (2\kappa + d -1)}{a_\kappa (d-1) } } {G}_\kappa ^{(d-1)/2}(\varvec{\omega }^\top \varvec{x}), \nonumber \\&\qquad \varvec{x}\in {\mathbb {S}}^d, \end{aligned}$$
    (3.2)

    is isotropic, with zero mean and covariance function with isotropic part given by (2.2).

Proposition 1, the proof of which is deferred to Appendix A for a neater exposition, provides a procedure to simulate isotropic random fields on the sphere with the predefined covariance function (2.2). Note that the algorithm separates the choice of the adaptive Schoenberg sequence, which provides the covariance structure of the simulated random field, from the choice of the probability mass sequence \(\{a_n: n\in {\mathbb {N}}\}\) according to which the degrees of the Gegenbauer polynomials are simulated.

The simulated random field reproduces the desired first- and second-order moments (zero mean and isotropic covariance K), but is not normally distributed. A central limit approximation of a Gaussian random field with the same first- and second-order moments can be obtained by (Lantuéjoul 2002; Chilès and Delfiner 2012)

$$\begin{aligned} {\widetilde{Z}}(\varvec{x}) = \frac{1}{\sqrt{L}}\sum _{\ell = 1}^L {Z}_\ell (\varvec{x}), \qquad \varvec{x}\in {\mathbb {S}}^d, \end{aligned}$$
(3.3)

where L is a large integer and \({Z}_1(\varvec{x}),\ldots , {Z}_L(\varvec{x})\) are L independent copies of \({Z}(\varvec{x})\).

The simulated random field (3.3) is the sum of L basic random fields (Gegenbauer waves), each of which varies along the meridians passing through a vector (pole) uniformly distributed on the sphere while it remains constant along the parallels orthogonal to this pole. We refer this construction as the ‘turning arcs’ algorithm, by analogy with the turning bands method in which a random field in the Euclidean space is obtained by spreading basic random fields that varies along a direction spanned by a random vector and are constant in the hyperplanes orthogonal to this vector (Matheron 1973; Mantoglou and Wilson 1982; Lantuéjoul 2002) (Fig. 1).

Fig. 1
figure 1

Turning arcs on the 2-sphere: three arcs with random poles \(\varvec{\omega }_1\), \(\varvec{\omega }_2\) and \(\varvec{\omega }_3\) passing through a point \(\varvec{x}\) (red, green and blue great circles) and the basic random fields \({Z}_1\), \({Z}_2\) and \({Z}_3\) (thin colored lines) varying along these arcs. The equator and a few meridians are superimposed (dashed lines). The simulated random field Z at \(\varvec{x}\) is a weighted sum of the three basic random fields at this point

As pointed out in Emery et al. (2016) for the turning bands method, the process time of the turning arcs algorithm is, up to a pre-processing cost for generating the random vectors \(\{\varvec{\omega }_\ell : \ell = 1, \cdots , L\}\) and random variables \(\{\kappa _\ell : \ell = 1, \cdots , L\}\), proportional to the number L of basic random fields and to the number of target points on the sphere, and turns out to be considerably fast. It is even faster than the spectral algorithms where the L basic random fields are spherical harmonics or hyperspherical harmonics (Emery and Porcu 2019; Lantuéjoul et al. 2019), insofar as the calculation of such harmonics is much more expensive than that of Gegenbauer polynomials, which can be easily computed by using (2.3), see discussion in Sect. 5.

3.2 Extension to vector-valued random fields

The goal of this section is to extend Proposition 1 to the vector-valued case. Consider the sequence of Schoenberg matrices, \(\{\varvec{B}_{n,d}: n\in {\mathbb {N}}\}\), and the factorization

$$\begin{aligned} \varvec{B}_{n,d} = \varvec{{\varGamma }}_{n,d} \, \varvec{{\varGamma }}_{n,d}^\top , \qquad n\in {\mathbb {N}}. \end{aligned}$$

For instance, \(\varvec{{\varGamma }}_{n,d}\) can be the Cholesky factor of \(\varvec{B}_{n,d}\) or any square root of this matrix; in the latter case, \(\varvec{{\varGamma }}_{n,d}\) is symmetric since \(\varvec{B}_{n,d}\) is symmetric. We use the notation \(\varvec{\gamma }^{(i)}_{n,d}\) for the ith column of \(\varvec{{\varGamma }}_{n,d}\). We observe that

$$\begin{aligned} \sum _{i=1}^p \varvec{\gamma }^{(i)}_{n,d}\, [\varvec{\gamma }^{(i)}_{n,d}]^\top = \varvec{B}_{n,d}. \end{aligned}$$
(3.4)

The following proposition provides a simulation algorithm for the vector-valued scenario.

Proposition 2

Let \(\varepsilon \) be a random variable with zero mean and unit variance, \(\varvec{\omega }\) a random vector uniformly distributed on \({\mathbb {S}}^d\), \(\iota \) a random integer uniformly distributed on \(\{1, \ldots , p \}\) and \(\kappa \) a random integer with \({\mathbb {P}}(\kappa = n) = a_n\), \(n\in {\mathbb {N}}\), where \(\{a_n: n\in {\mathbb {N}}\}\) is a probability mass sequence with a support containing that of the sequence of matrices \(\{\varvec{B}_{n,d}: n\in {\mathbb {N}}\}\). Suppose that all these random variables and vectors are independent. Then,

  1. (1)

    For \(d=1\), the random field defined by

    $$\begin{aligned} \varvec{Z}(\varvec{x}) = \varepsilon \, \sqrt{\frac{2p}{a_{\kappa }}} \, \varvec{\gamma }^{(\iota )}_{\kappa ,1} \, \cos (\kappa \vartheta (\varvec{\omega }, \varvec{x})), \qquad \varvec{x}\in {\mathbb {S}}^1, \end{aligned}$$
    (3.5)

    is isotropic, with zero mean and covariance function with isotropic part given by

    $$\begin{aligned} \varvec{K}(\vartheta ) = \sum _{n=0}^\infty \varvec{B}_{n,1} \cos (n \vartheta ), \qquad 0\le \vartheta \le \pi . \end{aligned}$$
  2. (2)

    For \(d\ge 2\), the random field defined by

    $$\begin{aligned}&\varvec{Z}(\varvec{x}) = \varepsilon \, \sqrt{ \frac{ p (2\kappa + d -1)}{a_{\kappa } (d-1) } } \, \varvec{\gamma }^{(\iota )}_{\kappa ,d} \, {G}_{\kappa }^{(d-1)/2}(\varvec{\omega }^\top \varvec{x}), \nonumber \\&\qquad \varvec{x}\in {\mathbb {S}}^d, \end{aligned}$$
    (3.6)

    is isotropic, with zero mean and covariance function with isotropic part given by (2.6).

The proof of Proposition 2 has been deferred to Appendix B. As for the scalar case, a central limit approximation of a vector-valued Gaussian random field is obtained by putting

$$\begin{aligned} \widetilde{\varvec{Z}}(\varvec{x}) = \frac{1}{\sqrt{L}}\sum _{\ell = 1}^L {\varvec{Z}}_\ell (\varvec{x}), \qquad \varvec{x}\in {\mathbb {S}}^d, \end{aligned}$$
(3.7)

where \({\varvec{Z}}_1(\varvec{x}),\ldots , {\varvec{Z}}_L(\varvec{x})\) are L independent simulated copies, and L is a large integer.

3.3 Choice of the distributions of \(\varepsilon \) and \(\kappa \)

The results presented in the previous subsections show that the desired spatial correlation structure is reproduced as soon as the random variable \(\varepsilon \) has a zero mean and unit variance and the random integer \(\kappa \) has a probability mass sequence whose support contains the support of the Schoenberg sequence associated with the covariance of the target random field.

The choice of the distributions of \(\varepsilon \) and \(\kappa \) only impacts the rate of convergence of the central-limit approximation to the multivariate normal distribution. Which distributions yield a faster rate of convergence? To answer this question, following Chilès and Delfiner (2012), we focus on the marginal distribution of \({\widetilde{Z}}(\varvec{x})\), as defined in (3.3) (the same exercise could be done in the multivariate case, by examining each component of \(\widetilde{\varvec{Z}}(\varvec{x})\) as defined in (3.7)). The Berry-Esséen inequality (Berry 1941; Esséen 1942) gives an upper bound for the Kolmogorov-Smirnov distance between the marginal distribution of \({\widetilde{Z}}(\varvec{x})\) and a normal distribution:

$$\begin{aligned} \underset{z\in {\mathbb {R}}}{\sup } \Bigg |{\mathbb {P}} \left( \frac{{\widetilde{Z}}(\varvec{x})}{\sigma } < z \right) - G(z) \Bigg |\le \frac{\xi \mu _3^Z}{\sigma ^3 \, \sqrt{L}}, \end{aligned}$$
(3.8)

where G is the standard normal cumulative distribution function, \(\mu _3^Z\) is the third-order absolute moment of the basic random field \({Z}(\varvec{x})\) as defined in (3.1) or (3.2), that is: \(\mu _3^Z = {\mathbb {E}}\{|{Z}(\varvec{x})|^3\}\), L is the number of basic random fields as defined in (3.3), \(\sigma ^2 = K(0)\) (variance of \({Z}(\varvec{x})\) and \({\widetilde{Z}}(\varvec{x})\)) and \(\xi \) is a constant greater than 0.4097 and lower than 0.4748 (Esséen 1956; Korolev and Shevtsova 2010; Shevtsova 2011).

Hereinafter, we focus on the case when \(d \ge 2\) in order to express the third-order absolute moment \(\mu _3^Z\) and to find out an upper bound for this moment. Accounting for the fact that \(\varepsilon \) is independent of \(\kappa \) and \(\varvec{\omega }\), one can write:

$$\begin{aligned} \mu _3^Z= & {} {\mathbb {E}}\left( |\varepsilon |^3 \right) {\mathbb {E}} \\&\Bigg \{ \left( \frac{b_{\kappa ,d} (2\kappa +d-1)}{a_\kappa (d-1)} \right) ^{3/2} {\mathbb {E}} \left( |G_\kappa ^{(d-1)/2}(\varvec{\omega }^T \varvec{x}) |^3 \, \Big | \kappa \right) \Bigg \}. \end{aligned}$$

For \(\mu _3^Z\) to be minimum, the third-order absolute moment of \(\varepsilon \) must be minimum. Jensen’s moment inequality (Jensen 1906) implies that \({\mathbb {E}}\{ |\varepsilon |^3 \} \ge {\mathbb {E}}\{ \varepsilon ^2 \}^{3/2} = 1\), the equality being reached when \(\varepsilon \) has a symmetric two-point distribution concentrated at \(-1\) and \(+1\) (Rademacher distribution), i.e., \(\varepsilon \) is a random sign with equal probability of being positive or negative. On the other hand, one has (Appendix C):

$$\begin{aligned} \begin{aligned} \mu _3^G(n)&:= {\mathbb {E}} \left( |G_\kappa ^{(d-1)/2}(\varvec{\omega }^T \varvec{x}) |^3 \, \Big | \kappa = n \right) \\&= \left\{ \begin{aligned}&{\mathcal {O}}(n^{-3/2}) \text { if} \, d=2 \\&{\mathcal {O}}(\ln n) \text { if} \, d=3 \\&{\mathcal {O}}(n^{3\lfloor \frac{d-1}{2} \rfloor }) \text { if} \, d\ge 4, \end{aligned} \right. \end{aligned} \end{aligned}$$
(3.9)

where \(\lfloor \cdot \rfloor \) denotes the floor function. Under these conditions, one has

$$\begin{aligned} \mu _3^Z = \frac{1}{(d-1)^{3/2}} \sum _{n} \frac{b_{n,d}^{3/2} \, (2n + d -1)^{3/2} \, \mu _3^G(n)}{a_n^{1/2}}, \end{aligned}$$
(3.10)

the sum being extended over the integers n such that \(a_n>0\).

The following cases provide criteria to choose a probability mass sequence \(\{a_n: n\in {\mathbb {N}}\}\) that yields a finite value for \(\mu _3^Z\), therefore a finite upper bound in the Berry-Esséen inequality (3.8), ensuring the convergence of the distribution of \({\widetilde{Z}}(\varvec{x})\) to a normal distribution with a rate in \(L^{-1/2}\), where L is defined in (3.3) or (3.7):

  • Case 1 The Schoenberg sequence \(\{b_{n,d}: n\in {\mathbb {N}}\}\) has a finite support, i.e., \(b_{n,d}\) is nonzero for finitely many values of n. In this case, any choice of the probability mass sequence \(\{a_n: n\in {\mathbb {N}}\}\) leads to a finite value for \(\mu _3^Z\), therefore to a finite upper bound in the Berry-Esséen inequality.

  • Case 2 The Schoenberg sequence \(\{b_{n,d}: n\in {\mathbb {N}}\}\) is nonzero for infinitely many values of n and is such that \(\limsup _{n \rightarrow +\infty }{\root n \of {b_{n,d}}} = r < 1\). In such a case, based on the Cauchy root convergence test, \(\mu _3^Z\) is finite provided that the following condition holds:

    $$\begin{aligned} \liminf _{n \rightarrow +\infty } {\root n \of {a_{n}}} \ge r^3. \end{aligned}$$
    (3.11)
  • Case 3 The Schoenberg sequence \(\{b_{n,d}: n\in {\mathbb {N}}\}\) is nonzero for infinitely many values of n and such that \(b_{n,d} = {\mathcal {O}}(n^{-\theta })\). On the one hand, the convergence of the series \(\{b_{n,d} \, G_n^{(d-1)/2}(1): n\in {\mathbb {N}}\}\) implies \(\theta >d-1\). On the other hand, using formula 6.1.46 of Abramowitz and Stegun (1972), it is found that the summand in (3.10) is \({\mathcal {O}}(a_n^{-1/2} \, n^{3/2-3\theta /2} \, \mu _3^G(n))\). Based on (3.9), \(\mu _3^Z\) is finite if \(a_n \ge c \, n^{-\theta ^\prime }\) when \(n \ge n_0\), with \(n_0 \in {\mathbb {N}}\), \(c > 0\) and \(\theta ^\prime \in ]1,\theta _{\max }^\prime [\) with

    $$\begin{aligned} \theta _{\max }^\prime = \left\{ \begin{aligned}&3\theta -2 \text { if} \, d=2\\&3\theta -5 \text { if} \, d=3\\&3\theta -5-6 \Big \lfloor \frac{d-1}{2} \Big \rfloor \text { if} \, d\ge 4. \end{aligned} \right. \end{aligned}$$
    (3.12)

    Because \(\theta > d-1\), a value of \(\theta ^\prime \) can always be found in the nonempty interval \(]1,\theta _{\max }^\prime [\) when \(d=2\) and \(d=3\). In contrast, for \(d\ge 4\), \(\theta \) must be greater than \(2 \lfloor \frac{d+1}{2} \rfloor \) for the interval \(]1,\theta _{\max }^\prime [\) to be nonempty.

4 Examples

4.1 Example 1: Bivariate random field with multiquadric covariance on \({\mathbb {S}}^2\)

The isotropic multiquadric covariance with parameter \(\delta \in ]0,1[\) and the associated Schoenberg sequence on the 2-sphere are given by (Gneiting 2013; Moller et al. 2018)

$$\begin{aligned} K_{M}(\vartheta ;\delta )= & {} \frac{1-\delta }{\sqrt{1+\delta ^2-2\delta \cos \vartheta }}, \qquad 0\le \vartheta \le \pi , \end{aligned}$$
(4.1)
$$\begin{aligned} b_{n,2}^{M}(\delta )= & {} (1-\delta ) \, \delta ^n, \qquad n \in {\mathbb {N}}. \end{aligned}$$
(4.2)

A bivariate multiquadric covariance model and its associated Schoenberg sequence can be obtained as follows (Emery and Porcu 2019):

$$\begin{aligned}&\varvec{K}_{M}(\vartheta ;\varvec{\delta },\rho ) \nonumber \\&\quad = \left[ \begin{array}{ccc} K_{M}(\vartheta ;\delta _{11}) &{} \rho \,K_{M}(\vartheta ;\delta _{12}) \\ \rho \,K_{M}(\vartheta ;\delta _{12}) &{} K_{M}(\vartheta ;\delta _{22}) \end{array} \right] , \qquad 0\le \vartheta \le \pi , \end{aligned}$$
(4.3)
$$\begin{aligned}&\varvec{B}_{n,2}^{M}(\varvec{\delta },\rho ) \nonumber \\&\quad = \left[ \begin{array}{ccc} b_{n,2}^{M}(\delta _{11}) &{} \rho \,b_{n,2}^{M}(\delta _{12}) \\ \rho \,b_{n,2}^{M}(\delta _{12}) &{} b_{n,2}^{M}(\delta _{22}) \end{array} \right] , \qquad n \in {\mathbb {N}}, \end{aligned}$$
(4.4)

with \(\varvec{\delta } = (\delta _{11},\delta _{12},\delta _{22})\) such that \(\delta _{11} < 1\), \(\delta _{22} < 1\) and \(\delta _{12} \le \min (\delta _{11},\delta _{22})\), and \(|\rho |\le \frac{\sqrt{(1-\delta _{11})(1-\delta _{22})}}{1-\delta _{12}}\).

As \(\{b_{n,2}^{M}(\delta ): n\in {\mathbb {N}}\}\) in (4.2) is a geometric series, \(\limsup _{n \rightarrow +\infty }{\root n \of {b_{n,2}^{M}(\delta )}} = \delta \). According to (3.11), to ensure a finite Berry-Esséen bound in (3.8) for both components of a bivariate random field with covariance (4.3), it suffices to choose a probability mass sequence \(\{a_{n}: n\in {\mathbb {N}}\}\) such that \(\liminf _{n \rightarrow +\infty } {\root n \of {a_{n}}} \ge \min (\delta _{11}^3,\delta _{22}^3)\). As an illustration, Fig. 2 shows orthographic projections of one realization of a bivariate random field obtained by applying the turning arcs algorithm with the following parameters:

  • \(\delta _{11}=\delta _{12}=0.2\), \(\delta _{22}=0.7\), \(\rho =0.6\);

  • \(L=15\), 150 or 1500;

  • \(\varepsilon \) with a Rademacher distribution;

  • \(\kappa \) with a geometric distribution with success probability 0.01;

  • discretization of \({\mathbb {S}}^2\) into \(500 \times 500\) faces with regularly-spaced colatitudes and longitudes.

Arc-shaped artifacts (striations) can be observed on the projections obtained with \(L=15\), which indicates that the finite-dimensional distributions of the associated random field deviate from the multivariate normal distributions expected for a Gaussian random field. This phenomenon is similar to the banding or striping effect of the continuous spectral and turning bands methods in the Euclidean space (Mantoglou and Wilson 1982; Tompson et al. 1989; Emery and Lantuéjoul 2006, 2008). The artifacts are no longer perceptible on the projections obtained with \(L=150\) or \(L=1500\) basic random fields, which display realizations that are visually close to that of a Gaussian random field, in agreement with the central limit theorem.

Fig. 2
figure 2

Orthographic projections showing a realization of a bivariate random field with a multiquadric covariance (\(\delta _{11}=\delta _{12}=0.2\), \(\delta _{22}=0.7\) and \(\rho =0.6\)), obtained by using \(L=15\) (top), \(L=150\) (center) and \(L=1500\) (bottom) basic random fields, a Rademacher distribution for \(\varepsilon \) and a geometric distribution with success probability 0.01 for \(\kappa \). Left: first random field component; right: second random field component

4.2 Example 2: Bivariate random field with spectral-Matérn covariance on \({\mathbb {S}}^2\)

The isotropic spectral-Matérn covariance with parameters \(\alpha > 0\) and \(\nu > 0\) on the 2-sphere, hereafter denoted by \(K_{SM}(\vartheta ;\alpha ,\nu )\) with \(0 \le \vartheta \le \pi \), is associated with the following Schoenberg sequence (Guinness and Fuentes 2016):

$$\begin{aligned} b_{n,2}^{SM}(\alpha ,\nu ) = \frac{(n^2+\alpha ^2)^{-\nu -1/2}}{\sum _{k=0}^{+\infty }(k^2+\alpha ^2)^{-\nu -1/2}}, \qquad n \in {\mathbb {N}}. \end{aligned}$$
(4.5)

As n gets very large, the Schoenberg coefficient \(b_{n,2}^{SM}(\alpha ,\nu )\) is asymptotically of the order of \(n^{-\theta }\) with \(\theta =2\nu +1\). Based on the third case presented in Sect. 3.3, a finite Berry-Esséen bound is obtained when \(\{a_{n}: n \in {\mathbb {N}}\}\) is a zeta probability mass sequence with parameter \(\theta ^{\prime } \in ]1,6\nu +1[\) (Eq. (3.12)) shifted by one unit, i.e.,

$$\begin{aligned} a_n = \frac{1}{\zeta (\theta ^{\prime })} (1+n)^{-\theta ^{\prime }}, \end{aligned}$$
(4.6)

where \(\zeta \) refers to the Riemann zeta function (Abramowitz and Stegun 1972). The simulation of a random variable \(\kappa \) with such a shifted zeta distribution can be done by the acceptance-rejection algorithm proposed by Devroye (1986).

A bivariate spectral-Matérn covariance model and its associated Schoenberg sequence can be obtained as follows (Emery and Porcu 2019):

$$\begin{aligned}&\varvec{K}_{SM}(\vartheta ;\alpha ,\varvec{\nu },\rho ) \nonumber \\&\quad = \left[ \begin{array}{ccc} K_{SM}(\vartheta ;\alpha ,\nu _{11}) &{} \rho \,K_{SM}(\vartheta ;\alpha ,\nu _{12}) \\ \rho \,K_{SM}(\vartheta ;\alpha ,\nu _{12}) &{} K_{SM}(\vartheta ;\alpha ,\nu _{22}) \end{array} \right] , \nonumber \\&\qquad 0\le \vartheta \le \pi , \end{aligned}$$
(4.7)

with \(\alpha > 0\), \(\varvec{\nu } = (\nu _{11},\nu _{12},\nu _{22})\) such that \(\nu _{11} > 0\), \(\nu _{22} > 0\) and \(\nu _{12} \ge \frac{\nu _{11}+\nu _{22}}{2}\), and \(|\rho |\le \min (1,\alpha ^{2\nu _{12}-\nu _{11}-\nu _{22}})\).

The following illustration (Fig. 3) shows orthographic projections of one realization of a bivariate random field obtained by applying the turning arcs algorithm with the following parameters:

  • \(\alpha =1\), \(\nu _{11}=2\), \(\nu _{12}=\nu _{22}=0.75\), \(\rho =-0.6\);

  • \(L=1500\);

  • \(\varepsilon \) with a Rademacher distribution;

  • \(\kappa +1\) with a zeta distribution with parameter 2;

  • discretization of \({\mathbb {S}}^2\) into \(500 \times 500\) faces with regularly-spaced colatitudes and longitudes.

Fig. 3
figure 3

Orthographic projections showing a realization of a bivariate random field with a spectral-Matérn covariance (\(\alpha =1\), \(\nu _{11}=2\), \(\nu _{12}=\nu _{22}=0.75\) and \(\rho =-0.6\)), obtained by using \(L=1500\) basic random fields, a Rademacher distribution for \(\varepsilon \) and a zeta distribution with parameter 2 for \(\kappa +1\). Left: first random field component; right: second random field component

The two components are negatively correlated (\(\rho <0\)), the first one being smoother than the second one because \(\nu _{11}>\nu _{22}\) (Guinness and Fuentes 2016). The striation effect is slightly perceptible in the right-hand side figure, which can be explained because the rate of convergence of the Schoenberg sequence \(\{b_{n,2}^{SM}(\alpha ,\nu _{22}): n\in {\mathbb {N}}\}\) is slower than that of the sequence \(\{b_{n,2}^{SM}(\alpha ,\nu _{11}): n\in {\mathbb {N}}\}\), hence the third-order absolute moment (3.10) and the upper bound in the Berry-Esséen inequality (3.8) are higher: for the same number L of basic random fields, the deviations from marginal normality and, a fortiori, from multivariate normality, are likely to be more important for the second random field component than for the first one.

4.3 Example 3: Univariate random field with generalized \({{\mathcal {F}}}\)-covariance on \({\mathbb {S}}^3\)

The isotropic generalized \({{\mathcal {F}}}\)-covariance on \({\mathbb {S}}^d\) is associated with the Schoenberg sequence \(\{b_{n,d}^{{{\mathcal {F}}}}: n\in {\mathbb {N}}\}\) defined as follows (Alegria et al. 2018):

$$\begin{aligned}&b_{n,d}^{{{\mathcal {F}}}}(\alpha ,\nu ,\tau ) \nonumber \\&\quad = \frac{B(\alpha ,\nu +\tau )}{B(\alpha ,\nu )} \, \frac{(\alpha )_n \, (\tau )_n}{(\alpha +\nu +\tau )_n \, n!}, \qquad n \in {\mathbb {N}}, \end{aligned}$$
(4.8)

where \(\alpha >0\), \(\nu >0\), \(\tau >0\), \(B(\cdot ,\cdot )\) is the beta function and \((a)_n\) denotes the Pochhammer symbol (Abramowitz and Stegun 1972).

As n increases, the Schoenberg coefficient \(b_{n,d}^{{{\mathcal {F}}}}(\alpha ,\nu ,\tau )\) is of the order of \(n^{-\nu -1}\). As for the previous example, this suggests the use of a probability mass sequence \(\{a_{n}: n\in {\mathbb {N}}\}\) with a shifted zeta distribution with parameter \(\theta ^{\prime } \in ]1,3\nu -2[\) (Eq. (3.12)).

The following illustration (Fig. 4) shows orthographic projections of one realization of a univariate random field obtained by applying the turning arcs algorithm with the following parameters:

  • \(\alpha =1\), \(\nu =3.5\), \(\tau =2\);

  • \(L=1500\);

  • \(\varepsilon \) with a Rademacher distribution;

  • \(\kappa +1\) with a zeta distribution with parameter 2;

  • \(d=3\);

  • discretization of each 2-sphere resulting from a cross-section of \({\mathbb {S}}^3\) into \(500 \times 500\) faces with regularly-spaced colatitudes and longitudes.

Fig. 4
figure 4

Orthographic projections showing a realization of a univariate random field with a generalized \({{\mathcal {F}}}\)-covariance (\(\alpha =1\), \(\nu =3.5\) and \(\tau =2\)) on the 3-sphere, obtained by using \(L=1500\) basic random fields, a Rademacher distribution for \(\varepsilon \) and a zeta distribution with parameter 2 for \(\kappa +1\). Representations of the 2-sphere corresponding to the sections of the 3-sphere with the fourth coordinate equal to \(-0.75\) (top left), \(-0.25\) (top right), 0.25 (bottom left) and 0.75 (bottom right)

4.4 Example 4: Univariate random field with Chentsov covariance on \({\mathbb {S}}^d\)

The isotropic Chentsov covariance on \({\mathbb {S}}^d\) is defined as \(K_C(\vartheta ) = 1-\frac{2\vartheta }{\pi }\) and its Schoenberg sequence \(\{b_{n,d}^{C}: n\in {\mathbb {N}}\}\) is given in Appendix D. The following illustration (Fig. 5) displays orthographic projections of realizations on the 2-sphere such that \(x_1^2 + x_2^2 + x_3^2 = 1\) and \(x_4 = \cdots = x_{d+1} = 0\) (intersection of \({\mathbb {S}}^d\) with the subspace whose last \(d-2\) coordinates are zero), obtained with \(L=1500\) basic random fields, a Rademacher distribution for \(\varepsilon \), a zero probability for even integers \(\kappa \) and a zeta distribution with parameter 2 for odd integers \(\kappa \), for dimensions d ranging between 2 and 256. One notes that the striation effect is all the more pronounced as d increases, which may be explained because the central limit approximation has a slower and slower rate of convergence. In particular, since the Schoenberg coefficient \(b_{n,d}^{C}\) behaves like \(n^{-d}\) as n increases, the Berry-Esséen bound is finite in the cases \(d=2\) and \(d=3\), but not necessarily for higher dimensions (Eq (3.12)). Interestingly, the striation effect becomes imperceptible when increasing the number of basic random fields to \(L=20,000\) (Fig. 6).

Fig. 5
figure 5

Orthographic projections showing a realization of a univariate random field with a Chentsov covariance, obtained by using \(L=1500\) basic random fields, \(\varepsilon \) with a Rademacher distribution and \(\kappa \) of the form \(2n-1\) with a zeta distribution of parameter 2 for n. Representations of the 2-sphere corresponding to the sections of the d-sphere with the last \(d-2\) coordinates equal to 0. From top to bottom and left to right: \(d=2\), 4, 8, 16, 32, 64, 128 and 256

5 Practical aspects

5.1 Distribution of \(\kappa \)

The distribution of \(\kappa \) should give a non-negligible probability to any degree having a significant contribution to the spectral representation of the target random field (degree n for which the Schoenberg matrix \(\varvec{B}_{n,d}\) has large entries). In practice, many of the usual covariance models (with the exception of the multiquadric model) have a Schoenberg sequence that is lower bounded by a hyperharmonic series (behaving like \(n^{-\theta }\) with \(\theta >d-1\)) and their rate of decay as n increases is quite slow. Based on the third case presented in Sect. 3.3, it is convenient to choose a shifted zeta distribution for the random integer \(\kappa \) (Eq. (3.12)) in order to ensure a finite Berry-Esséen bound and a convergence to normality in \(L^{-1/2}\). Such a distribution is long-tailed and allows the simulated random field to be a mixture of Gegenbauer waves with degrees ranging from very low to very high. This option, which has been adopted in Examples 2 to 4 above, is particularly interesting in order to reproduce both the low-frequency (large-scale) and high-frequency (small-scale) variations of the target random field.

However, when simulating on high-dimensional spheres or when the covariance model is associated with a Schoenberg sequence that is not lower bounded by a hyperharmonic series (which corresponds to a strongly irregular random field), the use of a shifted zeta distribution for \(\kappa \) may not guarantee the existence of a finite Berry-Esséen bound. In such cases, one may trade the zeta distribution for a ‘super-heavy’ tailed distribution, e.g., a distribution with a logarithmically decaying tail such as the discretized log-Cauchy distribution. The same issue arises with simulation algorithms based on spherical or hyperspherical harmonics approximations (Emery and Porcu 2019; Lantuéjoul et al. 2019), with the inconvenience that the calculation of such harmonics for high degrees is particularly expensive and can make these algorithms prohibitive in terms of computation time. Also note that having a infinite Berry-Esséen bound does not prevent the simulated random field to converge to a Gaussian random field as L tends to infinity: it just means that the convergence rate can be slower than \(L^{-1/2}\).

5.2 Number of basic random fields (Gegenbauer waves)

The choice of the number L of basic random fields depends on the smoothness of the target random field and the dimension of the sphere on which it is simulated: as illustrated with the examples, more basic random fields are needed for irregular random fields (covariance function that quickly decays near the origin) and/or for high-dimensional spheres, in order to avoid the striation effect. The latter effect indicates that the convergence to multivariate normality is not reached, although the simulated field possesses the correct first- and second-order moments (expectation and covariance function). As a rule of thumbs, unless the target random field is strongly irregular or the simulation is performed on a high-dimensional sphere, a few thousand basic random fields (\(L=1000\) to 5000) is often sufficient to get ‘good-looking’ realizations.

5.3 Computer implementation and running time

A set of Matlab® scripts implementing turning arcs simulation is provided in Supplementary Material. These scripts consist of

  • one main routine (turningarcs.m) allowing the simulation of random fields on \({\mathbb {S}}^d\) with multiquadric, spectral-Matérn, generalized \({{\mathcal {F}}}\), Chentsov and exponential covariances, using a Rademacher distribution for \(\varepsilon \) and a zeta distribution with parameter 2 for \(\kappa +1\) or, in the case of the Chentov model, for \(2\kappa -1\);

  • two subroutines (Gegenbauer.m and zetarnd.m) used to calculate Gegenbauer polynomials based on (2.3) and to simulate \(\kappa \), respectively;

  • one instruction file (examples.m) that reproduces the examples shown in Sect. 4.

Fig. 6
figure 6

Orthographic projection showing a realization of a univariate random field with a Chentsov covariance in \({\mathbb {S}}^{256}\), obtained by using \(L=20,000\) basic random fields, all the other parameters being the same as in Fig. 5

Executing the examples on a desktop with 128 GB RAM and an Intel® Xeon® processor @2.10 GHz for simulating a random field on \({\mathbb {S}}^2\) discretized into \(500 \times 500\) faces takes around 2 seconds when using \(L=15\) (Example 1 for a bivariate multiquadric covariance) and around 30 seconds when using \(L=1500\) (Examples 1, 2 and 4 for the bivariate multiquadric, bivariate spectral-Matérn and univariate Chentsov covariances). These running times, which include pre-processing, simulation and writing the results into an output file, are comparable to that (around 1 and 25 seconds for \(L=15\) and \(L=1500\), respectively) of the spectral algorithms based on spherical harmonics approximations proposed by Emery and Porcu (2019) and Lantuéjoul et al. (2019) when taking advantage of the fact that the sphere is discretized into a regular lattice, these algorithms being the most competitive alternatives to date. However, the difference in running time between the turning arcs and other spectral algorithms considerably increases when simulating at irregularly spaced colatitudes and longitudes, in which case the spherical harmonics must be calculated at each target point. For instance, for an irregular discretization of the sphere into 250, 000 points, this implies a running time about 500 times higher than for a regular discretization into \(500 \times 500\) points (i.e., about 3.5 hours for \(L=1500\), instead of 25 seconds), while the running time of the turning arcs remains exactly the same (30 seconds).

Still with \(L = 1500\), the turning arcs algorithm takes 150 seconds to simulate a random field with a generalized \({{\mathcal {F}}}\)-covariance on \({\mathbb {S}}^3\) discretized into \(8 \times 500 \times 500\) faces, from which the maps in Fig. 4 can be obtained (Example 3): the higher computation time (5 times more than for the examples in \({\mathbb {S}}^2\)) is mainly explained because there are 8 times more points targeted for simulation in this example. As for Example 4 concerning the simulation of a random field with a Chentsov covariance on a sphere of dimension 256 discretized into \(500 \times 500 \times 1 \times \cdots \times 1\) faces, the computation time increases to 258 seconds (4.3 minutes) when using \(L=1500\) basic random fields and 1110 seconds (18.5 minutes) with \(L=20,000\). All these examples prove that the turning arcs simulation on spheres of more than two dimensions is a fast and simple alternative to the spectral simulation algorithms based on expansions into hyperspherical harmonics (Emery and Porcu 2019), the computation of which is laborious and numerically expensive on irregular lattices.

Finally note that the turning arcs algorithm lends itself to parallel computing (not implemented in the Supplementary Material scripts), which could decrease all the aforementioned calculation times by one or two orders of magnitude.

6 Conclusions

The turning arcs algorithm allows simulating isotropic scalar- and vector-valued Gaussian random fields on the sphere \({\mathbb {S}}^d\), provided that the spectral representation (Schoenberg sequence) of their covariance function is known. The simulation is obtained by spreading Gegenbauer waves that vary along randomly oriented arcs and remain constant along the parallels orthogonal to these arcs, alike the continuous spectral and turning bands algorithms used to simulate random fields in Euclidean spaces. The advantages of the algorithm over existing alternatives are threefold: (1) it is extremely flexible, as it allows the simulation of vector random fields with any number of components, any isotropic covariance structure, on any d-dimensional sphere and any number and configuration of points targeted for simulation; (2) it accurately reproduces the desired covariance, and (3) it is computationally inexpensive, the numerical complexity being essentially proportional to the number of target points. Furthermore, with a suitable choice of the simulation parameters, the rate of convergence of the simulated random field to normality is at most of the order of \(L^{-1/2}\), where L is the number of Gegenbauer waves, except for covariance models on high-dimensional spheres (\(d \ge 4\)) whose Schoenberg coefficients decrease slowly as n increases. A by-product of this research is a closed-form expression of the Schoenberg coefficients associated with the Chentsov and exponential covariance models in \({\mathbb {S}}^d\) for any \(d \ge 2\).