MATLAB Answers

Apo
0

Produce pulse of desired power

Asked by Apo
on 20 Jun 2014
Latest activity Answered by Dishant Arora on 20 Jun 2014
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

Sign in to comment.

1 Answer

Answer by 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

Sign in to comment.