I know that MATLAB provides some built-in functions but I am not interested in those. I want to know how can we code to obtain the Rician fading channel gains from normal or Gaussian distributions. For example, the works in 1 and 2 define a Rician distributed random variable (channel amplitude) as: \begin{align} h\sim \mathcal{CN}\left(\sqrt{\left(\dfrac{k}{k+1}\right)},\dfrac{1}{1+k}\right) \tag{1} \end{align} where $\mathcal{CN}$ denotes the complex-Normal distribution. While in the majority of the literature the PDF of Rician fading is defined as:


where $I_0(z)$ is the modified Bessel function of the first kind with order zero.

While some other works e.g. 3 define the Rician fading channel as:

$$h=\sqrt{\dfrac{k}{1+k}} h^{Los}+\sqrt{\dfrac{1}{1+k}} h^{NLos},\tag{3}$$ where $h^{NLos}$ is gaussian random variable with mean 0 and variance 1. However, the papers do not discuss what is the distribution of $h^{Los}$. Is $h^{Los}$ also a Gaussian distributed random variable with mean 0 and variance 1? If not, what is it, specifically in a SISO system?

The good thing about (1) and (3) is that we only need the value of the k-factor. Unlike, (2) where we need the values of so many parameters, and even after that we will need to use some technique like rejection sampling to generate the random variables.

I have the following questions:

1: Is it ok to use (1) for generating the random channel amplitudes?

2: If (3) is used how do we generate $h^{Los}$? Is $h^{Los}$ also a Gaussian distributed random variable with mean 0 and variance 1? If not, what is it, specifically in a SISO system?

3: Are (1) and (3) related? How do researchers know which model to use?

4: There seems to be some kind of relation between (1) and (2), however, the relationship is not clear to me. Can someone please explain?

I will be really grateful if you could even reply to one of the questions. More specifically, if you could explain why is it ok to use the model in (1), it would help me a lot (or if you could mention any book or paper that actually justifies using the model in (1) for Rician fading channels).


1 Answer 1


To Q1: Yes you can use a complex Gaussian distribution with mean to simulate a Ricean distribution. In Matlab, you can use something like


To Q4: Only the magnitude of (1) will be Ricean distributed as in (2). The real and imaginary parts will be obviously Gaussian distributed. The phase of (1) depends on the value of K. For K=0, the phase will be uniformly distributed between $-\pi$ and $\pi$ (or 0 and $2\pi$). For large values of K it will resemble a Dirac impulse distribution.

If you want to link (1) and (2) you need to also divide the variance of (1) by 2, i.e. $\frac 1 {2(K+1)}$, since the signal is complex and the power of (1) will be $2\sigma^2$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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