# Constraints

**Stable poles**

In the case of transfer functions and transfer matrices, the code given in vfit.zip and mtrxfit.zip are directly applicable to system identification as the obtained model satisfies the conjugacy requirement and the stable poles requirement.

**Passivity**

In the case of Y-, Z- or S-parameter modeling, one should in addition require that the model satisfies the passivity criterion. This is because interaction between the model and the connected network may otherwise cause an unstable time domain simulation. Reference [1.3] has shown one way of doing this by adjusting the residues of the rational approximation so that the positive-real criterion eig(Re{Yfit(s)})>0 become satisfies for all s. This is achieved by linearizing the relationship between the eigenvalues and the residues which is included as a constraint in the least squares fitting problem.

**mtrxfit.zip** contains a simple approach for enforcing passivity ("Simplistic Approach" in [1.3]), but the increase in the fitting error can sometimes be substantial. It is therefore recommended to instead apply the more powerful QP-approach in [1.3] which is available in QPpassive.zip.