frequency shift property of the of FT
52 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dear All,
I have a question, maybe it is a basic for someone, but i am still stuck on it for few days now..
i want to apply the modulation/ Frequency shifting property of the Fourier transform ----> F{exp(j2πf0t)x(t)}=X(f−f0)
I have a signal with size of (3072000 1) it is a pulse signal not a sine wave.
with the following parameters:
Lc = 500; % Code length of the signal
Tc = 2e-9; % Time for which a constant phase applied in the transmitter
so i was trying to do it as the following:
nfft=length(signal);
shift= -500000000;
T= 0:Tc/2:1-1/Tc; % time vector
mult= exp(-i*2*pi*shift*T);
shiftsignal=fft(signal.*mult);
But it gives me an empty vector because of the time vector!!
Can someone help me with that? also, how can i chose the correct time vector for this example.
0 Kommentare
Antworten (4)
Jon
am 11 Aug. 2020
As currently written you are trying to produce a time vector starting at 0 with increments of 1e-9 (Tc/2) up to a value of -5e8 (1 - 1/Tc). This is empty because the end value is smaller than the start.
This probably wasn't what you intended. What starting value, increment, and final value do you actually want for Tc?
Were you trying to shift the result by an amount 1/Tc? If so you need to use parentheses like this
T= (0:Tc/2:1) - 1/Tc;
2 Kommentare
Jon
am 28 Aug. 2020
Sorry I haven't been on MATLAB answers for awhile.
In general if I want a vector that starts at t1 and ends at t2 in increments of dT you would use:
t = t1:dT:t2
I'm not really clear on your notation, but I think you should be able to adapt the above line of code to your situation.
If you are running out of memory, I would suspect that either your final time is too large or your increment is too small so that you are generating a vector that has many more elements than you really want.
Sk Group
am 27 Okt. 2021
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/
0 Kommentare
JAHNAVI
am 26 Sep. 2023
clc
clear all
close all
syms t w
x1 = exp(-t)*heaviside(t); % try with different input signals and obsere the output
X1 = fourier(x1);
disp("Fourier transform of signal 1")
X1
x2=dirac(t);% try with different input signals and obsere the output
X2=fourier(x2);
disp("Fourier transform of signal 2")
X2
disp("Sum of Fourier transoforms of signal 1 and signal2")
X1+X2
x=x1+x2;
X=fourier(x);
disp("Fourier transform of sum of signal 1 and signal 2")
X
syms t a
x = exp(-t)*heaviside(t)*exp(a*t);
X = fourier(x);
disp("Fourier Transform of frequency shift right signal is")
X
0 Kommentare
JAHNAVI
am 26 Sep. 2023
clc
clear all
close all
syms t w
x1 = exp(-t)*heaviside(t); % try with different input signals and obsere the output
X1 = fourier(x1);
disp("Fourier transform of signal 1")
X1
x2=dirac(t);% try with different input signals and obsere the output
X2=fourier(x2);
disp("Fourier transform of signal 2")
X2
disp("Sum of Fourier transoforms of signal 1 and signal2")
X1+X2
x=x1+x2;
X=fourier(x);
disp("Fourier transform of sum of signal 1 and signal 2")
X
syms t a
x = exp(-t)*heaviside(t)*exp(-a*t);% try with different input signals and obsere the output
X = fourier(x);
disp("Fourier Transform of frequency shift left signal is")
X
syms t a
x = exp(-t)*heaviside(t)*exp(a*t);
X = fourier(x);
disp("Fourier Transform of frequency shift right signal is")
X
0 Kommentare
Siehe auch
Kategorien
Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!