Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Is there a function in matlab that finds a transmition function of a filter, based on the input and output signals?

Asked by chen on 19 Jul 2012

I have a non linear filter with unknown transmition function, which i want tio find.The data is input and output signal. Is there a builtin function in matlab for that purpose?

0 Comments

chen

2 Answers

Answer by Wayne King on 19 Jul 2012

You can use tfestimate() in the Signal Processing Toolbox to estimate the transfer function.

In the System Identification Toolbox, there is etfe

0 Comments

Wayne King
Answer by Rajiv Singh on 23 Jul 2012

See various model estimation functions in System Identification Toolbox such as pem, n4sid, oe, tfest, procest, ssest (the latter 3 are new in R2012a) for linear transfer function estimation. For nonlinear estimation, see nlarx, nlhw.

2 Comments

Xiwang on 2 Jul 2013

Hi,

I am also using N4sid for system identification. It seems that the n4sid function just gave me the estimation of the output. How can I get the transfer function? and use this transfer function (model) to estimate the new output (based on some new measured input, but without corresponding measured output).

Thanks very much.

Rajiv Singh on 3 Jul 2013

Do tf(m) where m is the identified model. Type m.a, m.b etc to fetch individual model matrices (type get(m) to see all the properties of the model). You can also do [a,b,c,d,k] = idssdata(m), or [num,den] = tfdata(m)

Rajiv Singh

Contact us