This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


RF Amplifier


Use the rfckt.amplifier object to represent RF amplifiers that are characterized by network parameters, noise data, and nonlinearity data

Use the read object function to read the amplifier data from a data file in one of the following formats:

  • Touchstone

  • Agilent® P2D

  • Agilent S2D

  • AMP


If you set NonLinearData using rfdata.ip3 or rfdata.power, then the property is converted from scalar OIP3 format to the format of rfdata.ip3 or rfdata.power.



h = rfckt.amplifier
h = rfckt.amplifier('Property1',value1,'Property2',value2,...)



h = rfckt.amplifier returns an amplifier circuit object whose properties all have their default values.

h = rfckt.amplifier('Property1',value1,'Property2',value2,...) sets properties using one or more name-value pairs. For example, rfckt.amplifier ('IntType','Cubic') creates an RF amplifier circuit that uses cubic interpolation. You can specify multiple name-value pairs. Enclose each property name in a quote.


expand all

This property is read-only.

Computed S-parameters, noise figure, OIP3, and group delay values, specified as an object. For more information refer, .Algorithms.

Data Types: function_handle

Interpolation method specified one of the following values:

LinearLinear interpolation
SplineCubic spline interpolation
CubicPiecewise cubic Hermite interpolation

Data Types: char

This property is read-only.

Name of amplifier object.

Data Types: char

Network parameter data.

Data Types: function_handle

Noise information, specified as one of the following:

  • Scalar noise figure in dB

  • rfdata.noise object

  • object

Data Types: double | function_handle

Noise information, specified as one of the following:

  • Scalar OIP3 in dB

  • rfdata.power object

  • rfdata.ip3 object

Data Types: double | function_handle

This property is read-only.

Number of ports. The default value is 2.

Data Types: double

Object Functions

analyzeAnalyze RFCKT object in frequency domain
calculateCalculate specified parameters for rfckt objects or rfdata objects
plotyyPlot specified parameters on X-Y plane with Y-axes on both left and right sides
circleDraw circles on Smith Chart
extractExtract specified network parameters from rfckt object or data object


collapse all

Create an Amplifier using rfckt.amplifier object.

amp = rfckt.amplifier('IntpType','cubic')
amp = 
   rfckt.amplifier with properties:

         NoiseData: [1x1 rfdata.noise]
     NonlinearData: [1x1 rfdata.power]
          IntpType: 'Cubic'
       NetworkData: [1x1]
             nPort: 2
    AnalyzedResult: [1x1]
              Name: 'Amplifier'


The analyze function computes the AnalyzedResult property using the data stored in the rfckt.amplifier object properties as follows:

  • The analyze function uses the data stored in the NoiseData property of the rfckt.amplifier object to calculate the noise figure.

  • The analyze function uses the data stored in the NonlinearData property of the rfckt.amplifier object to calculate OIP3.

    If power data exists in the NonlinearData property, the block extracts the AM/AM and AM/PM nonlinearities from the power data.

    If the NonlinearData property contains only IP3 data, the method computes and adds the nonlinearity by:

    1. Using the third-order input intercept point value in dBm to compute the factor, f, that scales the input signal before the amplifier object applies the nonlinearity:


    2. Computing the scaled input signal by multiplying the amplifier input signal by f.

    3. Limiting the scaled input signal to a maximum value of 1.

    4. Applying an AM/AM conversion to the amplifier gain, according to the following cubic polynomial equation:


      where u is the magnitude of the scaled input signal, which is a unitless normalized input voltage.

  • The analyze function uses the data stored in the 'NetworkData' property of the rfckt.amplifier object to calculate the group delay values of the amplifier at the frequencies specified in freq, as described in the analyze function reference page.

  • The analyze function uses the data stored in the NetworkData property of the rfckt.amplifier object to calculate the S-parameter values of the amplifier at the frequencies specified in freq. If the 'NetworkData' property contains network Y-parameters or Z-parameters, the analyze function first converts the parameters to S-parameters. Using the interpolation method you specify with the IntpType property, the analyze method interpolates the S-parameter values to determine their values at the specified frequencies.

    Specifically, the analyze function orders the S-parameters according to the ascending order of their frequencies, fn. It then interpolates the S-parameters, using the MATLAB® interp1 function. For example, the curve in the following diagram illustrates the result of interpolating the S11 parameters at five different frequencies.

    For more information, see “One-Dimensional Interpolation” and the interp1 reference page.

    As shown in the preceding diagram, the analyze function uses the parameter values at fmin, the minimum input frequency, for all frequencies smaller than fmin. It uses the parameters values at fmax, the maximum input frequency, for all frequencies greater than fmax. In both cases, the results may not be accurate, so you need to specify network parameter values over a range of frequencies that is wide enough to account for the amplifier behavior.


[1] EIA/IBIS Open Forum. Touchstone File Format Specification, Rev. 1.1, 2002 (

Introduced before R2006a