How to calculate the transfer function for a 16 input system?

1 次查看(过去 30 天)
Hi, I have a system output dependant of 16 inputs, I am doing tests and I have the outputs values for some sets of inputs, how could I calculate the transfer function?, thanks

回答(2 个)

Khaled Hamed
Khaled Hamed 2020-7-17
编辑:Khaled Hamed 2020-7-17
It depends on what type of Transfer Function you want to use. For example, if you want to use an ARX model (I am using random inputs and output here, which you can replace with your own data) :
x=randn(100,16);
y=x*randi(10,16,1);
a=arx(iddata(y,x,1),[1 ones(1,16) zeros(1,16)]);
You will need the System Identification toolbox. There are several models which include a transfer function component, such as BJ, ARX, and ARMAX.
Or you can use:
a=tfest(iddata(y,x,1),0,0)
Of course you may want to change the number of poles, zeros, or the delays for each input.

Rajiv Singh
Rajiv Singh 2020-7-17
Try also TFEST. Although you might want to reduce the number of inputs by PCA or PLS analysis.

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by