Sign in

username:

password:



Not a member?

Search matlab



Search tips

Subscribe to matlab



matlab by Keywords

Atanh | Autocorrelation | Bandpass Filter | C++ | Conv | Database | Deconv | Excel | FFT | Filter | Filtering | FIR | Fourier Transfrom | FSK | Gaussian Noise | Haykin | IFFT | Image | Java | LFSR | LMS | LPC | MEX | OFDM | QPSK | Radix | Random | Sampling | Segmentation | Simulink | Visual Basic | Waveform | Wavelet

Sponsor

NEW! TMS320C6474: 3x the performance. 1/3 the cost. Three 1 GHz cores on 1 chip.

Discussion Groups

Discussion Groups | Matlab DSP | Calculation of physical power using MATLAB FFT

Technical discussion about Matlab and issues related to Digital Signal Processing.

  

Post a new Thread

Calculation of physical power using MATLAB FFT - kamr...@gmail.com - Jun 14 11:09:58 2008



Hi all! I am an electromagnetics person and don't have a strong hands-on experience of
signal processing. I have a basic question that I shall be happy to get some answers to.

I know that power spectral density (PSD) is described as the power per unit bandwidth (W/Hz)
and that the total power in a signal can be found by integrating the PSD over the frequency
range of interest. 

However, the problem arises when I try to use MATLAB FFT to calculate the physical power of a
signal (in Watts), because as far as I know, the DFT (on which the MATLAB FFT is based) is not
just a discrete version of the fourier transform of a signal; it involves convolution of the
sampled time-domain data's fourier transform with the fourier transform of a window function. I
fear that this convolution process drastically changes the amplitude of the frequency domain
samples that we get with the MATLAB FFT operation compared to the "real" data. (Or
does MATLAB adjust the amplitudes of the discrete FFT samples to bring them close the the
"real" values?)

Given this limitation of the DFT, how can I calculate the total physical power (in watts) of a
signal?

For those who are curious, I need to calculate the power dissipated by a time-varying current
when it flows through a frequency-varying resistance. Hence, I need to calculate the physical
power, not the PSD.

I look forward to some useful advice. Many thanks in advance!



(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )

Re: Calculation of physical power using MATLAB FFT - arkkimede - Jun 15 15:18:42 2008

Your problem, I think, is related to the evaluation of the FFT.
Try to apply your fft to an analytical wave form and verify if the result is
correct (choose a wave form with analytic result e.g. ddp of Rayleight).
If your result il wrong, look here:
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=5654&objectType=fi
le
If the amplitude is right also the power should be OK
Bye

On Sat, Jun 14, 2008 at 3:48 PM, <k...@gmail.com> wrote:

>   Hi all! I am an electromagnetics person and don't have a strong hands-on
> experience of signal processing. I have a basic question that I shall be
> happy to get some answers to.
>
> I know that power spectral density (PSD) is described as the power per unit
> bandwidth (W/Hz) and that the total power in a signal can be found by
> integrating the PSD over the frequency range of interest.
>
> However, the problem arises when I try to use MATLAB FFT to calculate the
> physical power of a signal (in Watts), because as far as I know, the DFT (on
> which the MATLAB FFT is based) is not just a discrete version of the fourier
> transform of a signal; it involves convolution of the sampled time-domain
> data's fourier transform with the fourier transform of a window function. I
> fear that this convolution process drastically changes the amplitude of the
> frequency domain samples that we get with the MATLAB FFT operation compared
> to the "real" data. (Or does MATLAB adjust the amplitudes of the discrete
> FFT samples to bring them close the the "real" values?)
>
> Given this limitation of the DFT, how can I calculate the total physical
> power (in watts) of a signal?
>
> For those who are curious, I need to calculate the power dissipated by a
> time-varying current when it flows through a frequency-varying resistance.
> Hence, I need to calculate the physical power, not the PSD.
>
> I look forward to some useful advice. Many thanks in advance!
>
>  
>


(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )

Re: Calculation of physical power using MATLAB FFT - jk Zhao - Jun 16 6:58:32 2008

Hi,
Before deal with convolution with ttf or dft(they are same thing only different from
arithmetic.)
you have to pay attation to sample rate in order that convey continious signal to decrete
signal without distortion. or say not change the amplitude of frequency domain.
China

--- On Sat, 6/14/08, k...@gmail.com <k...@gmail.com> wrote:

From: k...@gmail.com <k...@gmail.com>
Subject: [matlab] Calculation of physical power using MATLAB FFT
To: m...@yahoogroups.com
Date: Saturday, June 14, 2008, 9:48 PM
Hi all! I am an electromagnetics person and don't have a strong hands-on experience of signal
processing. I have a basic question that I shall be happy to get some answers to.

I know that power spectral density (PSD) is described as the power per unit bandwidth (W/Hz)
and that the total power in a signal can be found by integrating the PSD over the frequency
range of interest. 

However, the problem arises when I try to use MATLAB FFT to calculate the physical power of a
signal (in Watts), because as far as I know, the DFT (on which the MATLAB FFT is based) is not
just a discrete version of the fourier transform of a signal; it involves convolution of the
sampled time-domain data's fourier transform with the fourier transform of a window function. I
fear that this convolution process drastically changes the amplitude of the frequency domain
samples that we get with the MATLAB FFT operation compared to the "real" data. (Or
does MATLAB adjust the amplitudes of the discrete FFT samples to bring them close the the
"real" values?)

Given this limitation of the DFT, how can I calculate the total physical power (in watts) of a
signal?

For those who are curious, I need to calculate the power dissipated by a time-varying current
when it flows through a frequency-varying resistance. Hence, I need to calculate the physical
power, not the PSD.

I look forward to some useful advice. Many thanks in advance!



(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )

Re: Calculation of physical power using MATLAB FFT - kamr...@gmail.com - Jun 19 13:20:47 2008

Many thanks to those who took the trouble to reply to my original query.

I applied the MATLAB FFT to two functions whose continuous Fourier Transforms are analytically
known (the rectangular pulse function and the exponential function). In both cases, the
magnitude of the FFT was related to the continuous Fourier Transform through the same
normalisation factor---the time interval between two samples of the sampled time-domain data.

In other words, (if what I discovered is correct), if one multiplies the result of the MATLAB
FFT with the time interval between two samples, one gets the "correct" Fourier
Transform.

Has anyone else also reached the same conclusion? Can anyone please confirm?

On a theoretical note, something similar to this result is derived in "Fourier and Wavelet
Analysis", by George Bachman, Lawrence Narici and Edward Beckenstein. I wonder why other
authors don't make the connection between the amplitude of the FFT and the continuous Fourier
Transform more explicitly.

Comments welcome!



(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )

Re: Calculation of physical power using MATLAB FFT - arkkimede - Jun 19 16:43:55 2008

I spent long  time to  understand  this  concept  and  now  I'm  happy to
share this result.
The first comment is related to the rectangular pulse. This example bring
many problems.
The spectrum is theoretically extended from -infinity to +infinitive and is
better to use
Gaussian function or exponential where the spectrum is limited.

My tutorial derived from my originally problem: when I used for the first
time the fft (for example in rectangular pulse)
I didn't obtain numerically results that was in agreement  with theory.
I neglected this considerations using like results the amplitude (often
reported in dB) but the doubt  survived  in  me.
Some  years  ago  (2004) I found  a first  result  and  decided  to share
the  result  with  the community  (Guide  to fft 1^ edition).
This result was a good point  but i was unable to explain why the formula
that I deduced was right.
After 3 years the explication: the fft is defined for asymmetrical  time
support  (from 0 to T) and not for symmetrical time support
(like rectangular pulse) an than I submitted to  the  Matlab  forum  the
new  version   (Guide  to fft 2^ edition).

You ask why authors speaking about fft don't underling the effect of the
coefficient for the amplitude.
The answer is that, like reported in matlab or other library  (NAG, IMSL)
the fft  applied  only  to  the data  can  be   good  enough (for a lot of
application) and is general
for example fft(x).  In fact usually about the result of the fft what is
relevant is the amplitude and not the phase.

But if you need a result comparable with theory this normalization is
necessary.

Bye
Daniele

On Thu, Jun 19, 2008 at 4:42 PM, <k...@gmail.com> wrote:

>   Many thanks to those who took the trouble to reply to my original query.
>
> I applied the MATLAB FFT to two functions whose continuous Fourier
> Transforms are analytically known (the rectangular pulse function and the
> exponential function). In both cases, the magnitude of the FFT was related
> to the continuous Fourier Transform through the same normalisation
> factor---the time interval between two samples of the sampled time-domain
> data.
>
> In other words, (if what I discovered is correct), if one multiplies the
> result of the MATLAB FFT with the time interval between two samples, one
> gets the "correct" Fourier Transform.
>
> Has anyone else also reached the same conclusion? Can anyone please
> confirm?
>
> On a theoretical note, something similar to this result is derived in
> "Fourier and Wavelet Analysis", by George Bachman, Lawrence Narici and
> Edward Beckenstein. I wonder why other authors don't make the connection
> between the amplitude of the FFT and the continuous Fourier Transform more
> explicitly.
>
> Comments welcome!
>
>  
>


(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )

Re: Calculation of physical power using MATLAB FFT - kamr...@gmail.com - Jul 7 12:02:18 2008

Hi Daniele! Thanks a lot for your help and sorry for the late response. I have, more or
less, solved the problem conceptually. Your input was highly useful. In future also I will need
some help. So, I thank you in advance!



(You need to be a member of matlab -- send a blank email to matlab-subscribe@yahoogroups.com )