Undefined function 'hinfnorm' for input arguments of type 'tf'.
2 次查看(过去 30 天)
显示 更早的评论
I am trying to calculate the H inf norm of a transfer function. The code is
theta=0;
kp=0.2;
kd=0.7;
tau=0.1;
h=0.5;
s=tf('s');
Gamma=(exp(-theta*s)*s^2*((0.6*s)+1)+(kd*s)+kp)/((h*s+1)*(s^2*((0.1*s)+1)+(kd*s)+kp));
ninf=hinfnorm(Gamma);
I do have the control system toolbox but I do not know why am I getting this error?
0 个评论
采纳的回答
Paul
2022-5-4
编辑:Paul
2022-5-4
Hi Kashish,
If you don't have the Robust Control Toolbox for hinfnorm(), you can probably use sigma() from the Control Systems Toolbox
Example from the Question:
theta=0;
kp=0.2;
kd=0.7;
tau=0.1;
h=0.5;
s=tf('s');
Gamma=(exp(-theta*s)*s^2*((0.6*s)+1)+(kd*s)+kp)/((h*s+1)*(s^2*((0.1*s)+1)+(kd*s)+kp));
ninf=hinfnorm(Gamma)
sv = sigma(Gamma);
max(sv(1,:))
MIMO example from doc page for hinfnorm()
G = [0 tf([3 0],[1 1 10]);tf([1 1],[1 5]),tf(2,[1 6])];
ninf = hinfnorm(G)
sv = sigma(G);
max(sv(1,:))
See the doc page for sigma() for more info to see if it will suit your needs.
Note that, unilke hinfnorm(),sigma() doesn't check for stability of the system.
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!