Main Content

makepassive

Enforce passivity of rational fit

Since R2019a

Description

example

pfit = makepassive(fit,s) produces a passive fit by modifying the input, fit while optimally matching the data of S-parameter input, s. makepassive function does modifies the residues of the fit to make it passive.

pfit = makepassive(fit,s,'Display','on') solves as above, but turns on the display of iteration information. The default for 'Display' is 'off'.

Examples

collapse all

Read a file named passive.s2p and fit the 2x2 S-parameters.

 S = sparameters('passive.s2p');
 fit = rationalfit(S);

Plot the passivity of the 2x2 fit, noting the violations.

 figure
 passivity(fit)

Figure contains an axes object. The axes object with title Fit not passive, H indexOf infinity baseline blank norm blank is blank 1 blank + blank 1.791e-02 blank at blank 17.6816 blank GHz., xlabel Frequency (GHz), ylabel norm(H) contains 4 objects of type line. One or more of the lines displays its values using only markers

Optimize residues to produce a passive fit still close to S.

 pfit = makepassive(fit,S)
pfit = 
  2x2 rfmodel.rational array with properties:

    A
    C
    D
    Delay
    Name

To display iteration information:

  pfit = makepassive(fit,S,'Display','on' )
ITER	 H-INFTY NORM	FREQUENCY		ERRDB		CONSTRAINTS
0		1 + 1.791e-02	17.6816  GHz	-40.4702
1		1 + 2.678e-04	282.601  MHz	-40.9167	5
2		1 + 7.110e-05	377.139  MHz	-40.9077	8
3		1 + 1.361e-06	361.144  MHz	-40.9066	9
4		1 - 1.800e-06	367.533  MHz	-40.9064	10
pfit = 
  2x2 rfmodel.rational array with properties:

    A
    C
    D
    Delay
    Name

Plot the passivity of the new fit.

 figure
 passivity(pfit)

Figure contains an axes object. The axes object with title Fit passive, H indexOf infinity baseline blank norm blank is blank 1 blank - blank 1.800e-06 blank at blank 367.533 blank MHz., xlabel Frequency (GHz), ylabel norm(H) contains an object of type line.

Input Arguments

collapse all

Rational fit object, specified as an N-by-N array of a rational or rationalfit object.

S-parameters, specified as an RF Toolbox™ network parameter object. To create this type of object, use the sparameters function.

Output Arguments

collapse all

rfmodel.rational objects, returned as N-by-N array.

Version History

Introduced in R2019a