Structured transfer function estimation in MATLAB?
I have some input-output data for a dynamical system (input = stimulus, output = observation). Assuming that this system is linear time-invariant, I am trying to estimate a transfer function $H(s)$ of this system in MATLAB. I found the function tfest in the System Identification Toolbox. It allows you to define the number of poles, the number of zeros, and even some delay.
However, I am wondering if it is possible to force the transfer function to have a certain structure. For example, $$H(s) = H_1(s) + \alpha \, e^{-\tau s} \, H_2(s).$$
Is there a way to estimate this structured transfer function in Matlab?
Thank you in advance for your help.
$\endgroup$ 11 Answer
$\begingroup$I don't actually know if that is, what you are asking for.
I did the following
alpha = 1;
tau = 1;
s = tf('s');
H1 = 1/(s+2)^2; % arbitrary transfer function
H2 = s/(s+1)^3; % arbitrary transfer function
H = H1 + alpha * exp(-tau*s) * H2 By this method, you will obtain the state-space model which you can try to fit.
You can also check this answer.
$\endgroup$