Main Content

ieee370QualityCheckFrequencyDomain

Check quality of measured S-parameter data using IEEE 370 standard

Since R2023b

    Description

    [causalityMetric,reciprocityMetric,passivityMetric] = ieee370QualityCheckFrequencyDomain(sparams) checks the quality of the measured S-parameter data specified in sparams by calculating a causality, reciprocity, and passivity metric.

    example

    [causalityMetric,reciprocityMetric,passivityMetric] = ieee370QualityCheckFrequencyDomain(sparams,freqnum,portnum) checks the quality of the measured S-parameters data based on the total number of frequency samples and ports in the network.

    Examples

    collapse all

    Read in a Touchstone data file.

    sparams = 'measured.s2p';

    Verify the quality of the S-parameter data in the Touchstone file using the IEEE® 370 standard.

     [causalityMetric,reciprocityMetric,passivityMetric] = ieee370QualityCheckFrequencyDomain(sparams)
    causalityMetric = 
    89.1924
    
    reciprocityMetric = 
    99.5426
    
    passivityMetric = 
    99.7613
    

    Create an sparameters object using the default.s4p file.

    sparams = sparameters('default.s4p');

    Convert the single-ended S-parameters to mixed-mode S-parameters.

    [S_diff,~,~,S_comm] = s2smm(sparams.Parameters);

    Check the quality of the differential-mode S-parameters using the IEEE 370 standard.

    [causalityMetric,reciprocityMetric,passivityMetric] = ieee370QualityCheckFrequencyDomain(S_diff)
    causalityMetric = 
    99.7273
    
    reciprocityMetric = 
    99.8164
    
    passivityMetric = 
    100
    

    Check the quality of the common-mode S-parameters using the IEEE 370 standard.

    [causalityMetric2,reciprocityMetric2,passivityMetric2] = ieee370QualityCheckFrequencyDomain(S_comm)
    causalityMetric2 = 
    99.5998
    
    reciprocityMetric2 = 
    99.8276
    
    passivityMetric2 = 
    100
    

    Input Arguments

    collapse all

    S-parameter data, specified as an sparameters object, a Touchstone file, or a complex N-by-N-by-K 3-D array. Use an N-by-N-by-K array to specify the S-parameter data of an N-port network measured at K different frequency points. Specify the name of the Touchstone file as a character vector or a string scalar.

    Example: 'measured.s2p'

    Data Types: double
    Complex Number Support: Yes

    Number of frequency samples of sparams, specified as a positive real scalar.

    Example: 10

    Number of ports of sparams, specified as a positive real scalar.

    Example: 2

    Output Arguments

    collapse all

    Causality quality metric (CQMi), returned as a scalar in percentage (%). The function computes the CQMi for the element with the lowest value (worst element) in matrix. You can determine the causality quality of the S-parameter data based on where the CQMi value lies in this range:

    • (80, 100] — Good

    • (50, 80] — Acceptable

    • (20, 50] — Inconclusive

    • [0, 20] — Poor

    Reciprocity quality metric (RQMi), returned as a scalar in percentage (%). The function computes the RQMi of the S-parameter data by calculating the number of frequency samples in which the symmetry of the S-parameter matrix is not upheld. You can determine the reciprocity quality of the S-parameter databased on where the RQMi value lies in this range:

    • (99.9, 100] — Good

    • (99, 99.9] — Acceptable

    • (80, 99] — Inconclusive

    • [0, 80] — Poor

    Passivity quality metric (PQMi), returned as a scalar in percentage (%). The PQMi value measures the passivity violations in the S-parameter data. You can determine the passivity quality of the S-parameter data based on where the PQMi value lies in this range:

    • (99.9, 100] — Good

    • (99, 99.9] — Acceptable

    • (80, 99] — Inconclusive

    • [0, 80] — Poor

    Version History

    Introduced in R2023b