How do I create a random variable which is exponential with a mean of 2

Hey, I need to create a signal, X, which is exponential with a mean of 2. It is transmitted through an additive Gaussian noise channel where the Gaussian noise has a mean of -1 and a variance of 4. The signal and noise are independent.
I realize I have to use randn() for the random variable but am not really sure how to get a specific mean or how to produce the Gaussian. Have been away from MatLab for awhile. Any help would be greatly appreciated. Thanks! -Will

 採用された回答

bym
bym 2011 年 11 月 15 日

0 投票

if you have the statistics toolbox:
exprnd()
to roll your own
x = -2*log(rand)

その他の回答 (1 件)

Will
Will 2011 年 11 月 15 日

0 投票

Thanks didn't even realize I had the stats toolbox. Any ideas on how to produce the additive Gaussian noise channel?

3 件のコメント

bym
bym 2011 年 11 月 15 日
agwn = 4*randn(size(A))-1
bym
bym 2011 年 11 月 15 日
whoops should be
agwn = 2*randn(size(A))-1 %multiply by standard deviation *not* variance, sorry
Will
Will 2011 年 11 月 15 日
Appreciate it

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

質問済み:

2011 年 11 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by