15.2 Complex random variables

The simplest way to model a distribution over a complex random number \(z = x = yi\) is to consider its real part \(x\) and imaginary part \(y\) to have a bivariate normal distribution. For example, a complex prior can be expressed as follows.

complex z;
vector[2] mu;
cholesky_cov[2] L_Sigma;
// ...
[to_real(z), to_imag(z)]' ~ multi_normal_cholesky(mu, L_Sigma);

For example, if z is data, this can be used to estimate mu and the covariance Cholesky factor L_Sigma. Alternatively, if z is a parameter, mu and L_Sigma may constants defining a prior or further parameters defining a hierarchical model.