On Sun, 27 Apr 2008 09:40:02 -0500, totohaha wrote:
(context restored -- this is USENET)
On Sat, 26 Apr 2008 10:44:29 -0500, Tim Wescott wrote:
> On Fri, 25 Apr 2008 17:03:41 -0500, totohaha wrote:
>
>>>I want to simulate a MIMO system in Matlab, can anybody tell me how to
>> add
>>>gaussian noise for a MIMO system given EbNo(in dB), say M*N, how to
>>>caculate the noise variance and the standard deviation?
>>>
>>>
>>>
>> I dont want to use the Matlab function awgn(), so am I right to
>> caculate as follows?
>>
>> eb_n0_linear = 10^(EbN0/10);
>> noise_std = sqrt(1/(2*sqrt(M)*eb_n0_linear)); noise_var =
>> M/eb_n0_linear;
>> awgn_noise = noise_std *(randn(N, 1)+j*randn(N, 1));
>
> You seem to be mixing metaphors. Are you _simulating_ the system, or
> trying to analyze it and predict it's behavior?
>
> I have seen additive Gaussian noise modeled as a linear MIMO system
> that's being excited by a vector of independent, unity-power-density
> white zero-mean Gaussian processes:
>
> dx_n/dt = A * x_n + B * w, y_n = C * x_n,
>
> where y_n is the noise vector that gets added in to your system and w is
> a vector of independent white Gaussian processes.
>
> This method gives you good control over the spectral and cross-
> correlation properties of your resulting noise vector, although if your
> spectral requirements are complex then your state evolution matrix (and
> state vector) may get quite large.
>
> I wouldn't know how to do this in Matlab, specifically -- Matlab is just
> a tool; if you know your tool and you know your method then you can use
> the tool to implement the method.
>
> If you don't know your method then you have no chance of implementing it
> correctly. The best you can hope for is in such a circumstance is that
> your use of someone else's implementation happens to be right -- but you
> can't know for sure.
(end restored context)
> thanks, i just want to simulate a MIMO system (say 2*2) and add the
> Gaussian noise into the transmitted signal based on a specific EbNo.
Then use the above equations to generate your noise vector based on your
knowledge of the system, add it to your received signal vector, and
continue your simulation.
--
Tim Wescott
Control systems and communications consulting
http://www.wescottdesign.com
Need to learn how to apply control theory in your embedded system?
"Applied Control Theory for Embedded Systems" by Tim Wescott
Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
Reply by totohaha●April 27, 20082008-04-27
thanks, i just want to simulate a MIMO system (say 2*2) and add the
Gaussian noise into the transmitted signal based on a specific EbNo.
Reply by Tim Wescott●April 26, 20082008-04-26
On Fri, 25 Apr 2008 17:03:41 -0500, totohaha wrote:
>>I want to simulate a MIMO system in Matlab, can anybody tell me how to
> add
>>gaussian noise for a MIMO system given EbNo(in dB), say M*N, how to
>>caculate the noise variance and the standard deviation?
>>
>>
>
> I dont want to use the Matlab function awgn(), so am I right to caculate
> as follows?
>
> eb_n0_linear = 10^(EbN0/10);
> noise_std = sqrt(1/(2*sqrt(M)*eb_n0_linear)); noise_var =
> M/eb_n0_linear;
> awgn_noise = noise_std *(randn(N, 1)+j*randn(N, 1));
You seem to be mixing metaphors. Are you _simulating_ the system, or
trying to analyze it and predict it's behavior?
I have seen additive Gaussian noise modeled as a linear MIMO system
that's being excited by a vector of independent, unity-power-density
white zero-mean Gaussian processes:
dx_n/dt = A * x_n + B * w, y_n = C * x_n,
where y_n is the noise vector that gets added in to your system and w is
a vector of independent white Gaussian processes.
This method gives you good control over the spectral and cross-
correlation properties of your resulting noise vector, although if your
spectral requirements are complex then your state evolution matrix (and
state vector) may get quite large.
I wouldn't know how to do this in Matlab, specifically -- Matlab is just
a tool; if you know your tool and you know your method then you can use
the tool to implement the method.
If you don't know your method then you have no chance of implementing it
correctly. The best you can hope for is in such a circumstance is that
your use of someone else's implementation happens to be right -- but you
can't know for sure.
--
Tim Wescott
Control systems and communications consulting
http://www.wescottdesign.com
Need to learn how to apply control theory in your embedded system?
"Applied Control Theory for Embedded Systems" by Tim Wescott
Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
Reply by totohaha●April 26, 20082008-04-26
anyone know the answer?
Reply by totohaha●April 25, 20082008-04-25
>I want to simulate a MIMO system in Matlab, can anybody tell me how to
add
>gaussian noise for a MIMO system given EbNo(in dB), say M*N, how to
>caculate the noise variance and the standard deviation?
>
I dont want to use the Matlab function awgn(), so am I right to caculate
as follows?
eb_n0_linear = 10^(EbN0/10);
noise_std = sqrt(1/(2*sqrt(M)*eb_n0_linear));
noise_var = M/eb_n0_linear;
awgn_noise = noise_std *(randn(N, 1)+j*randn(N, 1));
Reply by totohaha●April 25, 20082008-04-25
I want to simulate a MIMO system in Matlab, can anybody tell me how to add
gaussian noise for a MIMO system given EbNo(in dB), say M*N, how to
caculate the noise variance and the standard deviation?