How to create a complex normal i.i.d.?

40 ビュー (過去 30 日間)
Gn Gnk
Gn Gnk 2019 年 10 月 27 日
コメント済み: Gn Gnk 2019 年 10 月 27 日
Hello ,
i want to create a i.i.d CN(0,σ^2)
I create the variable like that :
x=sqrt(var/2)*(randn+1i*randn);
Is this correct?
  2 件のコメント
Bjorn Gustavsson
Bjorn Gustavsson 2019 年 10 月 27 日
Does that satisfy your definition of a complex normal distribution? Does it fit with for example the definitions here: Complex_normal_distribution?
Gn Gnk
Gn Gnk 2019 年 10 月 27 日
I just want to know how to convert it to matlab code and if this : x=sqrt(var/2)*(randn+1i*randn);
is correct or not.
Thank you.

サインインしてコメントする。

採用された回答

John D'Errico
John D'Errico 2019 年 10 月 27 日
Is it correct? It is what it is. You are creating a rotationally symmetric complex random variable, where if we define the variance to be
N = 1e7;
V = 3;
X = sqrt(V/2)*(randn(N,1) + i*randn(N,1));
Does it have zero mean? That is trivial, yes. The population mean is clearly zero, and the sample mean will approach zero as N-->inf.
Xbar = mean(X)
Xbar =
0.0002026 - 0.00027059i
Vbar = (X-Xbar)'*(X - Xbar)/(N-1)
ans =
2.999
As you can see, the sample variance seems to approach 3. I could spend some time to verify the expected value of that result for the population, done in symbolic form. But I can as easily just say that is is "correct".
  1 件のコメント
Gn Gnk
Gn Gnk 2019 年 10 月 27 日
Thank you a lot sir!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by