## Computing output passivity index of a simple system using getPassiveIndex

I am trying to compute the output passivity index of the system,

by calling

H = tf([1 0],[1 0.2 1]);

[rho,freq] = getPassiveIndex(H,’output’)

The results in

rho = -Inf

freq = NaN

However, based on the definition of output passivity index here, I think the value of rho should be 0.2.

If we did

rho = 0.2;

Hc = feedback(H,0.2,+1)

isPassive(Hc)

we get a system that is just passive, and increasing rho any further would result in a closed loop system that is not passive.

Intuitively also, this makes sense. H is the transfer function from force to velocity of a (passive) spring-mass-dashpot system. 0.2 is the damping coefficient, and may be thought of as the surplus passivity that the system has.

I am wondering why getPassiveIndex doesn’t return an output passivity index of 0.2, and if I am interpreting something incorrectly.I am trying to compute the output passivity index of the system,

by calling

H = tf([1 0],[1 0.2 1]);

[rho,freq] = getPassiveIndex(H,’output’)

The results in

rho = -Inf

freq = NaN

However, based on the definition of output passivity index here, I think the value of rho should be 0.2.

If we did

rho = 0.2;

Hc = feedback(H,0.2,+1)

isPassive(Hc)

we get a system that is just passive, and increasing rho any further would result in a closed loop system that is not passive.

Intuitively also, this makes sense. H is the transfer function from force to velocity of a (passive) spring-mass-dashpot system. 0.2 is the damping coefficient, and may be thought of as the surplus passivity that the system has.

I am wondering why getPassiveIndex doesn’t return an output passivity index of 0.2, and if I am interpreting something incorrectly. I am trying to compute the output passivity index of the system,

by calling

H = tf([1 0],[1 0.2 1]);

[rho,freq] = getPassiveIndex(H,’output’)

The results in

rho = -Inf

freq = NaN

However, based on the definition of output passivity index here, I think the value of rho should be 0.2.

If we did

rho = 0.2;

Hc = feedback(H,0.2,+1)

isPassive(Hc)

we get a system that is just passive, and increasing rho any further would result in a closed loop system that is not passive.

Intuitively also, this makes sense. H is the transfer function from force to velocity of a (passive) spring-mass-dashpot system. 0.2 is the damping coefficient, and may be thought of as the surplus passivity that the system has.

I am wondering why getPassiveIndex doesn’t return an output passivity index of 0.2, and if I am interpreting something incorrectly. control systems toolbox, passivity, passivity index, getpassiveindex MATLAB Answers — New Questions