I have one timeseries input signal of variable frequency, and corresponding output signal. I want to measure phase shift between the two signals?
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Input signal has variable frequency throughout the timeseries data. The output signal has the same frequency of input data as well as another autonomous frequency. I am expecting the phase shift between these two signals at some point. I want to accurately estimate the phase angle between the two signals.
0 Commenti
Risposte (1)
Prathamesh
il 27 Lug 2023
Hi,
I understand that you want to know how to calculate phase shift between input and output signals with timeseries data.
You can use “FFT” to calculate the phase shift of the timeseries data. “FFT” will convert the time domain signal into frequency domain and then you can just subtract the phases of input and output signals to get phase shift.
t = 0:0.1:10;
f = 10 + sin(t);
x = sin(2*pi*f.*t);
tsx = timeseries(y,t);
y = sin(2*pi*f.*t + pi/4);
tsy = timeseries(x,t);
X = fft(tsx.Data);
Y = fft(tsy.Data);
phase_shift = angle(Y) - angle(X);
Refer to the documentation attached to get more information on “fft” and frequency domain analysis.
I hope this resolve your issue.
0 Commenti
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!