matchingnetwork

Create matching network and generate circuit objects

Description

Use the matchingnetwork object to create matching networks and generate circuit objects. A matching network is a set of circuits that match the impedance of a given source to the impedance of a given load at a specified center frequency.

Creation

Description

example

matchnet = matchingnetwork creates a matching network object with default property values.

example

matchnet = matchingnetwork(Name,Value) sets properties using one or more name-value pairs. For example, matchnet = matchingnetwork('SourceImpedance','60') creates a matching network with a source impedance of 60 ohms.

Properties

expand all

Source impedance as seen at the terminals looking from the network into the source, specified as one of the following:

  • Constant complex scalar in ohms

  • sparameters object

  • yparameters object

  • zparameters object

  • File name of a Touchstone file

  • One-port circuit object

  • Antenna Toolbox™ antenna object

  • Function handle to a function that computes an impedance list from a frequency list

Example: 'SourceImpedance',60

Example: matchnet.SourceImpedance = 60

Data Types: double | char | string | function_handle

Load impedance as seen at the terminals looking from the matching network into the load, specified as one of the following:

  • Constant complex scalar in ohms

  • sparameters object

  • yparameters object

  • zparameters object

  • File name of a Touchstone file

  • One-port circuit object

  • Antenna Toolbox antenna object

  • Function handle to a function that computes an impedance list from a frequency list

Example: 'LoadImpedance',60

Example: matchnet.LoadImpedance = 60

Data Types: double | char | string | function_handle

Frequency to calculate the impedance match between the source and the load, specified as a real positive scalar in hertz

Example: 'CenterFrequency',2e9

Example: matchnet.CenterFrequency = 2e9

Data Types: double

Desired bandwidth (transducer gain >= minus 3 dB over this bandwidth centered on CenterFrequency), specified as a real positive scalar in hertz.

Example: 'BandWidth',1e9

Example: matchnet.BandWidth = 1e9

Data Types: double

Desired loaded quality factor, specified as a real positive scalar. Setting LoadedQ updates the bandwidth. If you specify CenterFrequency, LoadedQ is recalculated from CenterFrequency and BandWidth.

Example: 'LoadedQ',2

Example: matchnet.LoadedQ = 2

Data Types: double

Note

The addition of a third element introduces an added degree of freedom allowing you to control the LoadedQ property. Hence, the Bandwidth and the LoadedQ are hidden when there are 2 components. For more information please see, [2].

Number of components or type of topology for the matching network design, specified as 2 or 3 for the number of components and 'Pi', 'Tee', or, 'L' for the type of topology.

Example: 'Components','Pi'

Example: matchnet.Components = 'Pi'

Data Types: double | char | string

Object Functions

exportCircuitsExport selected matching network objects as circuit or rfckt objects for further analysis
circuitDescriptionsTables describing each created matching network's topology and performance
addEvaluationParameterAdds performance goal for sort, pass, or fail matching network design
getEvaluationParametersTable of evaluation parameters currently used to rank and pass or fail matching network designs
clearEvaluationParameterDelete one or more performance goals
smithplotPlot measurement data on Smith chart
rfplotPlot S-parameter data
sparametersS-parameter object

Examples

collapse all

Create a default matching network using the object, matchingnetwork.

matchnet = matchingnetwork
matchnet = 
  matchingnetwork with properties:

       SourceImpedance: 50 Ohms
         LoadImpedance: 50 Ohms
       CenterFrequency: 1 GHz
            Components: 2
               Circuit: [1x2 circuit]

Create a matching network with source impedance, 100 ohms, load impedance, 75 ohms, center frequency, 2 GHz, desired loaded quality factor (loadedq), 5, and the number of components, 3.

m = matchingnetwork('SourceImpedance',100,'LoadImpedance',...
    75,'CenterFrequency',2e9,'LoadedQ',5,...
    'Components',3)
m = 
  matchingnetwork with properties:

       SourceImpedance: 100 Ohms
         LoadImpedance: 75 Ohms
       CenterFrequency: 2 GHz
             Bandwidth: 400 MHz
            Components: 3
               LoadedQ: 5
               Circuit: [1x8 circuit]

Plot the frequency response of the network between 0.5 GHz and 2.5 GHz.

frequencies = linspace(0.5e9,2.4e9);
rfplot(m,frequencies,1)

smithplot(m)

Show the topology and the performance of the network.

c = circuitDescriptions(m)
c=8×6 table
                 component1Type    component1Value    component2Type    component2Value    component3Type    component3Value
                 ______________    _______________    ______________    _______________    ______________    _______________

    Circuit 1      "Shunt C"         3.9789e-12         "Series L"        2.1389e-10         "Shunt L"         1.3876e-09   
    Circuit 2      "Series C"        1.8501e-13         "Shunt C"         2.8519e-14         "Series L"        2.9842e-08   
    Circuit 3      "Shunt L"         1.5915e-09         "Series C"        2.9607e-11         "Shunt C"         4.5637e-12   
    Circuit 4      "Series L"        3.4228e-08         "Shunt L"         2.2205e-07         "Series C"        2.1221e-13   
    Circuit 5      "Shunt C"         3.9789e-12         "Series L"        2.8468e-09         "Shunt C"         4.5637e-12   
    Circuit 6      "Series L"        3.4228e-08         "Shunt C"         3.7957e-13         "Series L"        2.9842e-08   
    Circuit 7      "Shunt L"         1.5915e-09         "Series C"        2.2245e-12         "Shunt L"         1.3876e-09   
    Circuit 8      "Series C"        1.8501e-13         "Shunt L"         1.6684e-08         "Series C"        2.1221e-13   

Show the evaluation parameters of the network.

ep = getEvaluationParameters(m)
ep=1×6 table
    Parameter    Comparison     Goal         Band        Weight       Source    
    _________    __________    ______    ____________    ______    _____________

     {'Gt'}        {'>'}       {[-3]}    {1x2 double}    {[1]}     {'Automatic'}

Add a new evaluation parameter and plot the frequency response.

m = m.addEvaluationParameter('gammain','>',-2,[0.5e9 1.5e9],1)
m = 
  matchingnetwork with properties:

       SourceImpedance: 100 Ohms
         LoadImpedance: 75 Ohms
       CenterFrequency: 2 GHz
             Bandwidth: 400 MHz
            Components: 3
               LoadedQ: 5
               Circuit: [1x8 circuit]
rfplot(m,frequencies,1)

References

[1] Bowick, Chris. RF Circuit Design, Butterworth-Heinemann,1982

[2] Ludwig, Reinhold, and Gene Bogdanov. RF Circuit Design: Theory and Applications. Upper Saddle River,NJ: Prentice Hall, 2009.

Introduced in R2019a