# Gaussian random fields: matrix and convolution sampling

I should be able to generate a stationary GRF from white noise in two different ways:

• multiplying the white noise vector by the square root of a covariance matrix with appropriate kernel;
• taking the 2D convolution of the white noise field with a 2D kernel

Each of these methods uses a kernel, but using the same kernel for both doesn't give samples from the same GRF.

If I want to use the convolution method to sample from the same GRF as the matrix method, how do I calculate the convolution kernel from the matrix kernel?

I would guess that I should take the square root of the matrix kernel, is this right?

• What do you mean by the square root of the covariance matrix? Do you mean an element-wise square root? If so, this is not the correct way to obtain an observation from a multivariate normal. If $X \sim \mathcal N(\mu, \Sigma)$, then $X$ can be sampled by: $X = \mu + LZ$ where $Z$ is a vector of standard normals and L is the Cholesky decomposition of the covariance matrix, which I suspect you're after. I guess, in some sense, the Cholesky decomposition corresponds with the standard deviation in higher dimensions. – InfProbSciX Dec 11 '18 at 21:38
• I mean either the matrix square root or the Cholesky decomposition. Not the element-wise square root. – prdnr Dec 12 '18 at 7:30