Filter löschen
Filter löschen

spectral analysis, frequency spectrum, power spectral density

2 Ansichten (letzte 30 Tage)
hardik
hardik am 11 Mai 2012
I have power=2000 float data points and time= 2000 float time intervals. in 200ns.
is there any way i can put this in matlab to see some spectral analysis of frequency and other things. basically i have x and y values of power vs time. I want to manuplite this data to show frequency values which i expect to be in 500-1000MHz range.
or may be draw a fft plot. but the problem is i just know these two variables (power and time) is it possible? if yes then how?
  2 Kommentare
Walter Roberson
Walter Roberson am 11 Mai 2012
Are the times evenly spaced or irregularly spaced?
hardik
hardik am 12 Mai 2012
time is evenly spaced since we are using a sampling rate of 10e9.so yea, but the amplitude keeps on changing

Melden Sie sich an, um zu kommentieren.

Antworten (3)

Rick Rosson
Rick Rosson am 12 Mai 2012
N = 2000;
StartTime = 0;
StopTime = 200e-9;
dt = (StopTime - StartTime)/N;
Fs = 1/dt;
dF = Fs/N;
f = -Fs/2:dF:Fs/2-dF;

Rick Rosson
Rick Rosson am 12 Mai 2012
  1 Kommentar
hardik
hardik am 12 Mai 2012
thanks for ur answer....it helps a lot but some clarity i need...when i do freqz(w) for the power data. i see x values of freq as normalised freq as api rad/sample. can i change this to actual frequency. say like in MHZ?
I have a sample of power values generated in 200ns. this values of power vary with different frequency. with a high freq the power goes very high. and then drops back to low freq. its about partial discharge.
so i was wondering if i can see the frequency values as well with this.?

Melden Sie sich an, um zu kommentieren.


Wayne King
Wayne King am 12 Mai 2012
"thanks for ur answer....it helps a lot but some clarity i need...when i do freqz(w) for the power data. i see x values of freq as normalised freq as api rad/sample. can i change this to actual frequency. say like in MHZ?"
Have you read the documentation for freqz()? It shows that you can use the sampling frequency as an input argument
[H,F] = freqz(B,A,N,Fs);
For example:
Fs = 1e4;
% Butterworth filter with 3dB frequency of 1 kHz
[B,A] = butter(10,(2*1e3)/Fs);
[H,F] = freqz(B,A,[],Fs);
plot(F,20*log10(abs(H)));
grid on; xlabel('Hz');

Community Treasure Hunt

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

Start Hunting!

Translated by