Power of sine wave plot

46 views (last 30 days)
Namira
Namira on 25 May 2018
Commented: Rishabh Rathore on 28 May 2018
I have a power spectrum for my model. I would like to add sine wave as a drive with power spectrum. I don't know how to calculate the power of sine wave? Can I add the sine wave with power? Can anyone help me, please?

Accepted Answer

Rishabh Rathore
Rishabh Rathore on 28 May 2018
Edited: Rishabh Rathore on 28 May 2018
Here's what I understand from your question, you want to know how to calculate 'Power' of sine wave and plot it over Power Spectrum of your model.
Power of the sine wave A*sin(x), is (A^2)/2, but only when A is constant. If the amplitude is varying, then integrate the wave over one time period and divide it by the time period to get the power.
You can then use this to add/plot the corresponding value on the Power spectrum of your model.
To plot the power of Sine wave over the existing plot, use hold on and hold of.
Refer this link for more information on Hold.
  4 Comments
Namira
Namira on 28 May 2018
Thanks. I found this code in Matlab to calculate Power Spectral Density Estimates Using FFT. I am a little bit confused why the signal is squared after fft?
rng default
Fs = 1000;
t = 0:1/Fs:1-1/Fs;
x = cos(2*pi*100*t) + randn(size(t));
N = length(x);
xdft = fft(x);
xdft = xdft(1:N/2+1);
psdx = (1/(Fs*N)) * abs(xdft).^2;
psdx(2:end-1) = 2*psdx(2:end-1);
freq = 0:Fs/length(x):Fs/2;
plot(freq,10*log10(psdx))
grid on
title('Periodogram Using FFT')
xlabel('Frequency (Hz)')
ylabel('Power/Frequency (dB/Hz)')
Rishabh Rathore
Rishabh Rathore on 28 May 2018
it is because of the line
psdx = (1/(Fs*N)) * abs(xdft).^2;
The absolute value is squared.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!