Phase shift between data and identified model using tfest

8 views (last 30 days)
Hi, I'm struggling with the tfest function for model estimation. I'm usinf tfest to get a precise model from frequency data. When the phase is wrapped, my model is perfect in amplitude and phase for reasonably low order, by using a weighting vector and a moving average filter to smooth the response in high frequencies. But by plotting my Preprocessed data, my model and my raw data, I have a phase offset between my models. I know I can artificially remove it after the estimation or using the properties editor of the bode function and so on, but I need my model to be really accurate on the phase. My question is, is there a way to force the tfest estimation to fit the absolute value of the phase ?
Phase_offset_identification_raw_data_processed.PNG
On the figure, the phase of the raw data (orange), the phase of the preprocessed data (yellow) and the phase of the model (blue).
  1 Comment
Romain Liechti
Romain Liechti on 23 May 2019
This phase shift seems to be created by the "bode" function. Almost each time I'm using it, I have a different absolute phase value. Is there any way to get the absolute phase value of a sys ? So I could use it to automatically correct the phase when exported with:
[mag,pha,~]=bode(sys,2*pi*f_ax);

Sign in to comment.

Answers (1)

Paul Mandl
Paul Mandl on 7 Aug 2019
Hi Romain,
did you already solve the problem? I'm having troubles with the same issue.

Community Treasure Hunt

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

Start Hunting!