Produce pulse of desired power
2 views (last 30 days)
Show older comments
Suppose you produce a pulse x in discrete samples of duration dt each according to a function. I was given some notes in which it shows that if I want it to let it have a specific power I have to first normalize it by doing
energy = sum((x.^2).*dt) %first calculate the pulse energy
x = x./sqrt(energy) %normalize its energy to 1
then you calculate the target energy
power = 0 %target power in dBm
power = (10^(power/10))/1000 %target power in W
energy = power*len(x)*dt %target energy of the pulse
and finally you scale the pulse so that it has the target power
x = x .* sqrt(energy) %the pulse at the target power
My question is, how does that really work? Why dividing `x` by `sqrt(E)` normalize it to unit energy? And why multiplying the resulting normalized `x` by the new `sqrt(E)` brings it to the target power? Why not just divide by `E` for example? and then multiply by `E`? Does it have any relation to RMS values? And finally is it something that can be used in any arbitrary pulses, e.g. in sinusoids as well?
0 Comments
Answers (1)
Dishant Arora
on 20 Jun 2014
Because maximum absloute value of a sample in sequence can't exceed sqrt(E) and can be equal to sqrt(E) if and only if its a single valued sequence. that's why we normalize it with sqrt(E) not E itself.
0 Comments
See Also
Categories
Find more on Parametric Spectral Estimation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!