Abstract
Passivity of rational macromodels is a necessary requirement for guaranteeing a stable time-domain simulation. This paper describes a freely available routine for passivity enforcement of multiport models (y parameters) using residue perturbation. The procedure calculates a correction to the original model by adjusting its residues and constant term as a postprocessing step while minimizing the model perturbation in the least squares (LS) sense. Control parameters are available for limiting the number of free variables and for specifying different LS weighting schemes. Two different constraint types can be specified, which helps to ensure reliable convergence when applied in an iterative scheme. Usage of a sparse solver is shown to greatly reduce the computation time. The software is demonstrated by several numerical examples. Copyright IEEE