Let $\mathbf{u}$ and $\mathbf{v}$ be an $M \times 1$ and $N \times 1$ vectors of unit norm, respectively. $\mathbf{u}$ is a column of a unitary matrix $\mathbf{U}$ and $\mathbf{v}$ is a column of a unitray matrix $\mathbf{V}$. In addition, we define $\mathbf{G}$ as an $M \times N$ matrix with i.i.d $\mathcal{CN}(0,1)$ elements. I am looking for the distribution of the scalar given by $$| \mathbf{u}^H \mathbf{G} \mathbf{v} |^2, $$ where $\mathbf{u}^H$ denotes the hermitian of $\mathbf{u}$.

Thank you!


If $G$ has centered, Gaussian i.i.d entries, then each row is multivariate Gaussian distributed. If $u$ is any vector, then each component in $Gu$ is a linear combination of the components of a multivariate Gaussian, and so is a Gaussian distributed vector of mean zero. Each component of this vector is still independent of the others, so this resulting vector is also multivariate Gaussian distributed. Consequently, for any vector $v$, $v^t(Gu)$ is also a linear combination of components of a multivariate gaussian, and so is a centered univariate Gaussian.

If we let $\sigma$ be the standard deviation of this resulting univaraite normal, then by $\frac{1}{\sigma} v^t G u $ is a unit normal, and by definition, $\frac{1}{\sigma} \left| v^t G u \right|^2$ is $\chi^2_1$ distributed.

To compute $\sigma$ we can apply the following result

If $X_1 \sim \mathcal{N}(0, \sigma_1)$ and $X_2 \sim \mathcal{N}(0, \sigma_2)$ are two independent Gaussian distributions, then $aX_1 + bX_2$ is also Gaussian, with mean zero, and standard deviation $\sqrt{a^2 \sigma_1^2 + b^2 \sigma_2^2}$.

The expression for the standard deviation can be derived by expanding $\mathrm{cov}(aX_1 + bX_2, aX_1 + bX_2)$.

Using this result, each of the components of the vector $Gu$ is an independent, centered normal with standard deviation

$$ \sqrt{\sum_i u_i^2}. $$

Using it once again, the final univariate normal $v^t G u$ is a centered Gaussian with standard deviation

$$ \sqrt{\sum_j \left( v_i^2 \sum_i u_i^2 \right)} .$$

In your case, with $u$ and $v$ unit vectors, this of course reduces to

$$ \sqrt{\sum_j \left( v_j^2 \sum_i u_i^2 \right)} = \sqrt{\sum_j \left( v_j^2 \right)} = 1 $$

so $v^t G u$ is a standard normal. Hence $\left| v^t G u \right|^2 \sim \chi^2_1$.

Here's a short demonstration in R you can play with


normalize <- function(v) {v / sqrt(sum(v*v))}
u <- normalize(c(.25, .75))
v <- normalize(c(.1, .4))

samples <- c()
for(i in 1:10000) {
  G <- rnorm(4)
  dim(G) <- c(2,2)
  x <- t(u) %*% G %*% c(v)
  samples <- c(samples, x)

hist(samples, breaks = 50)

enter image description here

And a validation of the standard deviation calculation

[1] 0.9955483

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.