Skip to Main Content
Rational macromodels must be passive in order to guarantee a stable simulation. This paper introduces a fast approach for enforcing passivity for S-parameter based pole-residue models, using a similar method previously introduced for Y-parameter models. The approach is based on perturbing the elements of the residue matrices with the perturbed residue matrix eigenvalues as free variables. This gives large savings for the CPU time and memory requirements. The implementation does not require sparse computations. Combining the passivity enforcement step with iterations and fast passivity assessment via a half-size test matrix gives a globally passive model. Error control strategies are implemented via least squares weighting. The approach is demonstrated for a two-port microwave filter, a four-port interconnect, a 48-port low-order package model, and a 28-port high-order package model.