cannot get fftshift to shift frequency
Mostra commenti meno recenti
I am trying to verify an FFT computation by producing the original signal. Below I explain the situation. My question is in CAPS below
VACCL.csv has the following format. (no line spaces)
sec VACCL
0 1
0.125 1.002
0.25 1.002
0.375 1.007
0.5 1.002
0.625 1.002
0.75 1
0.875 1.002
1 1.005
1.125 1.005
1.25 1.005
1.375 1.002
1.5 1.002
in command line I typed:
TT = readtimetable(VACCL.csv');
Using signal analysis tool on TT, I was able to plot the original signal and a frequency response. The frequency response was plotted in Hz, but signal time was plotted in hours. In input file VACCL.csv, time was given in seconds.
I then Imported VACCL.csv as matrix with 64 bit double precision and typed
Y = fft(VACCL)
Y was generated in the workspace as complex double: 2 columns: one real, one Imaginary
When I plotted Y(:,2) on sig analyzer, the display was identical to original signal analyzer result except for axis labels: the signal was plotted in samples, while the normalized frequency was plotted from 0 to 1.0
Then I typed:
Y_SHIFTED = fftshift(Y)
When I plotted Y_SHIFTED in signal analyzer,
the time signal was broken in two halfs, left and right, and the two halves switched, while
the frequency remained normalized from 0 to 1.0.
HOW DO I GET THE FREQUENCY SHIFTED RATHER THAN THE SIGNAL?
Risposta accettata
Più risposte (1)
Sk Group
il 27 Ott 2021
0 voti
Frequency shifting Prove: DFT{x(n)e^(j(2*pi/N)nl = X(K-l)
For detailed post and complete code visit: https://www.swebllc.com/frequency-shifting-property-in-matlab- complete-prove-code-output/
Categorie
Scopri di più su Measurements and Feature Extraction in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
