Passivity
When a model is to be included in a time domain simulation, it is important that the model does not result in an unstable simulation. This requires the model to satisfy two criteria:
- All poles are stable
- The model is passive
The stable pole requirement is enforced by vector fitting. The passivity requirement means that the model cannot generate energy when connected to an external network. A model is passive provided that |
|
![]() |
(1) |
i.e. all eigenvalues of the real part of the model admittance matrix are positive for all frequencies. Most approaches for passivity enforcement rely on a postprocessing step of the model, assuming that only a small correction is needed. One method described in [1.3] achieves this by solving the constrained equation | |
![]() |
(2a) |
![]() |
(2b) |
First order perturbation leads to the constrained linear least squares problem (3), which is solved by Quadratic Programming. | |
![]() |
(3a) |
![]() |
(3b) |
This passivity enforcement approach is available in package QPpassive.zip, see the Downloads page. (Requires Matlab Optimization Toolbox). |