Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Matlab question (noise addition)

Status
Not open for further replies.

lincolndsp

Banned
Joined
Aug 13, 2005
Messages
71
Helped
2
Reputation
4
Reaction score
1
Trophy points
1,288
Location
Ukraine
Activity points
0
noise addition in matlab

How can I accurately add to my signal white
gaussian noise of exact SNR in dB (in POWER not
voltage terms)?
when I use awgn(...) function it seems
to me the noise has more power than I
set in its SNR parameter.
 

davyzhu

Advanced Member level 1
Joined
May 23, 2004
Messages
494
Helped
5
Reputation
10
Reaction score
2
Trophy points
1,298
Location
oriental
Activity points
4,436
noise addition in matlab

Hi,

I suggest you use randn().

1D noise:
Code:
noise = sqrt(variance)*randn(1, symbols_per_frame );

2D noise:
Code:
noise = sqrt(variance)*( randn(1,symbols_per_frame) + j*randn(1,symbols_per_frame) );

Regards,
Davy
 

    lincolndsp

    Points: 2
    Helpful Answer Positive Rating

lincolndsp

Banned
Joined
Aug 13, 2005
Messages
71
Helped
2
Reputation
4
Reaction score
1
Trophy points
1,288
Location
Ukraine
Activity points
0
noise addition matlab

please tell me how then set SNR in power terms?
 

davyzhu

Advanced Member level 1
Joined
May 23, 2004
Messages
494
Helped
5
Reputation
10
Reaction score
2
Trophy points
1,298
Location
oriental
Activity points
4,436
Sorry, I am not familiar with awgn().

You may turn to NewsGroup: comp.soft-sys.matlab
to ask the question.

You can access NewsGroup via groups.google.com

Regards,
Davy
 

    lincolndsp

    Points: 2
    Helpful Answer Positive Rating

mimomod

Member level 4
Joined
Jan 25, 2006
Messages
77
Helped
22
Reputation
44
Reaction score
7
Trophy points
1,288
Activity points
2,351
Hi lincolndsp,

from the formula SNR = 10 * log_10 (P_signal/P_noise) we get (Ps/Pn) = 10^(SNR/10).

In my simulation I usually set the power of the input signal Ps equals to 1, then vary the power of the noise (variance). So,

Pn = 10^(-SNR/10);
noise = sqrt(Pn)*randn(1, symbols_per_frame );

best
 

    lincolndsp

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top