- 25th March 2006, 05:21 #1

- Join Date
- Aug 2005
- Location
- Ukraine
- Posts
- 71
- Helped
- 4 / 4
- Points
- 1,669
- Level
- 9

## 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.

- 25th March 2006, 05:21

- 25th March 2006, 05:41 #2

- Join Date
- May 2004
- Location
- oriental
- Posts
- 494
- Helped
- 5 / 5
- Points
- 4,947
- Level
- 16

## noise addition in matlab

Hi,

I suggest you use randn().

1D noise:

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

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

Davy

1 members found this post helpful.

- 25th March 2006, 05:41

- 25th March 2006, 08:26 #3

- Join Date
- Aug 2005
- Location
- Ukraine
- Posts
- 71
- Helped
- 4 / 4
- Points
- 1,669
- Level
- 9

## noise addition matlab

please tell me how then set SNR in power terms?

- 25th March 2006, 08:26

- 25th March 2006, 10:17 #4

- Join Date
- May 2004
- Location
- oriental
- Posts
- 494
- Helped
- 5 / 5
- Points
- 4,947
- Level
- 16

## Matlab question (noise addition)

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

1 members found this post helpful.

- 26th March 2006, 15:52 #5

- Join Date
- Jan 2006
- Posts
- 77
- Helped
- 23 / 23
- Points
- 1,622
- Level
- 9

## Matlab question (noise addition)

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

1 members found this post helpful.