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?

采纳的回答

Paul
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)
ninf = 1.0753
sv = sigma(Gamma);
max(sv(1,:))
ans = 1.0736
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)
ninf = 3.0150
sv = sigma(G);
max(sv(1,:))
ans = 2.9976
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 个)

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by