Main Content

Feedback Interconnection of Passive Systems

This example illustrates the properties of a feedback interconnection of passive systems.

Feedback Interconnection of Passive Systems

Consider an interconnection of two subsystems G1 and G2 in feedback. The interconnected system H maps the input r to the output y1.

If both systems G1 and G2 are passive, then the interconnected system H is guaranteed to be passive. Take for example


Both systems are passive as confirmed by

G1 = tf([1,1,1],[1,1,4]); 
ans = logical

G2 = tf([1,2],[1,5]);
ans = logical

The interconnected system is therefore passive.

H = feedback(G1,G2);
ans = logical

This is confirmed by verifying that the Nyquist plot of H is positive real.


Passivity Indices for Feedback Interconnection

There is a relationship between the passivity indices of G1 and G2 and the passivity indices of the interconnected system H. Let ν1 and ν2 denote the input passivity indices for G1 and G2, and let ρ1 and ρ2 denote the output passivity indices. If all these indices are positive, then the input passivity index ν and the output passivity index ρ for the feedback interconnection H satisfy


In other words, we can infer some minimum level of input and output passivity for the closed-loop system H from the input and output passivity indices of G1 and G2. For details, see the paper by Zhu, F. and Xia, M and Antsaklis, P.J., "Passivity analysis and passivation of feedback systems using passivity indices," American Control Conference , 2014, pp. 1833-1838. Verify the lower bound for the input passivity index ν.

% Input passivity index for G1
nu1 = getPassiveIndex(G1,'input');
% Output passivity index for G2
rho2 = getPassiveIndex(G2,'output');
% Input passivity index for H
nu = getPassiveIndex(H,'input')
nu = 0.1293
% Lower bound
ans = 7.1402e-11

Similarly, verify the lower bound for the output passivity index of H.

% Output passivity index for G1
rho1 = getPassiveIndex(G1,'output');
% Input passivity index for G2
nu2 = getPassiveIndex(G2,'input');
% Output passivity index for H
rho = getPassiveIndex(H,'output')
rho = 0.4441
% Lower bound
ans = 0.4000

See Also


Related Topics