To main content

Vector Fitting

QPpassive is a package for enforcing passivity of pole-residue models as a post-processing step using quadratic programming.

This package contains a post-processing procedure for enforcing passivity of a model given on pole-residue form. This is done by introducing the passivity criterion as a constraint equation in the least squares problem. The routine requires the user to provide frequency samples for the least squares problem and the passivity constraint. A large number of options is available.



File Purpose
QPpassive.pdf User manual
passivity.pdf Document describing the theory (IEEE paper)
QPpassive.m Passivity enforcement routine
rot.m Utility routine, rotates eigenvectors to minimize their imaginary part
interchange.m Utility routine, interchanges eigenpairs to obtain eigenvalues as smooth functions of frequency
ex1.m, ex2.m, ex3a.m, ex3b.m, ex4a.m, ex4b.m Example cases described in QPpassive.pdf
ex1.mat, ex2.mat, ex3.mat, ex4.mat Workspaces containing variables for examples (ex1.m,…)

QPpassive.m uses the routine quadprog.m of the Matlab Optimization Toolbox.