Main Content

sparameters

Calculate S-parameters for antennas and antenna arrays

Description

example

sobj = sparameters(antenna,freq) calculates the complex S-parameter for an antenna over specified frequency values.

sobj = sparameters(antenna,freq,Z0) calculates the complex S-parameter for an antenna over specified frequency values and with a reference impedance Z0.

example

sobj = sparameters(array,freq) calculates the complex S-parameters for an array over specified frequency values.

sobj = sparameters(array,freq,Z0) calculates the complex S-parameters for an array over specified frequency values and with a reference impedance Z0.

example

sobj = sparameters(filename) creates an S-parameter object sobj by importing data from the Touchstone file specified by filename.

sobj = sparameters(data,freq) creates an S-parameter object from the S-parameter data data, and frequencies freq.

sobj = sparameters(data,freq,Z0) creates an S-parameter object from the S-parameter data data, and frequencies freq, with a reference impedance Z0.

sobj = sparameters(netparamobj) converts the network parameter object, netparamobj, to S-parameter object with the default reference impedance.

sobj = sparameters(netparamobj,Z0) converts the network parameter object netparamobj to S-parameter object with a reference impedance Z0.

sobj = sparameters(___,UseParallel = true) uses the Parallel Computing Toolbox™ to perform S-parameter calculations for each frequency in parallel. To use this feature, you need a license to the Parallel Computing Toolbox.

Examples

collapse all

Calculate the complex s-parameters for a default dipole at 70MHz frequency.

 h = dipole
h = 
  dipole with properties:

        Length: 2
         Width: 0.1000
    FeedOffset: 0
     Conductor: [1x1 metal]
          Tilt: 0
      TiltAxis: [1 0 0]
          Load: [1x1 lumpedElement]

 sparameters(h,70e6)
ans = 
  sparameters with properties:

      Impedance: 50
       NumPorts: 1
     Parameters: 0.1869 - 0.0031i
    Frequencies: 70000000

Calculate the complex s-parameters for a default rectangular array at 70MHz frequency.

h = rectangularArray
h = 
  rectangularArray with properties:

           Element: [1x1 dipole]
              Size: [2 2]
        RowSpacing: 2
     ColumnSpacing: 2
           Lattice: 'Rectangular'
    AmplitudeTaper: 1
        PhaseShift: 0
              Tilt: 0
          TiltAxis: [1 0 0]

s = sparameters(h,70e6);
s.Parameters
ans = 4×4 complex

   0.3042 - 0.0815i  -0.0575 - 0.2370i  -0.0577 - 0.2369i  -0.0247 - 0.0707i
  -0.0575 - 0.2370i   0.3043 - 0.0815i  -0.0247 - 0.0707i  -0.0576 - 0.2370i
  -0.0577 - 0.2369i  -0.0247 - 0.0707i   0.3042 - 0.0815i  -0.0575 - 0.2370i
  -0.0247 - 0.0707i  -0.0576 - 0.2370i  -0.0575 - 0.2370i   0.3043 - 0.0815i

Extract S-parameters from corrugatedconicalhorn.s2p touchstone file.

sobj = sparameters("corrugatedconicalhorn.s2p");
display(sobj)
sobj = 
  sparameters with properties:

      Impedance: 50
       NumPorts: 1
     Parameters: [1x1x11 double]
    Frequencies: [11x1 double]

Plot the S-parameters data using rfplot function.

rfplot(sobj)

Input Arguments

collapse all

Antenna to calculate S-parameter, specified as either of these objects:

Example: dipole

Example: customAntenna

Array to calculate S-parameters, specified as either of these objects:

  • array catalog element

  • customArrayMesh

  • customArrayGeometry

  • pcbStack

Example: linearArray

Example: array(pcbStack,"linear")

Frequencies in Hertz to calculate S-parameters, specified as a vector of positive real numbers, sorted from smallest to largest.

Example: [500e6 550e6 600e6]

Reference impedance in Ohms, specified as a positive real scalar. You cannot specify Z0 if you are importing data from a file. The argument Z0 is optional and is stored in the Impedance property.

S-parameter data, specified as an array of complex numbers, of size N-by-N-by-K where K represents number of frequency points.

Network parameter object. The network parameter objects are of the type: sparameters (RF Toolbox), yparameters (RF Toolbox), zparameters (RF Toolbox), gparameters (RF Toolbox), hparameters (RF Toolbox), abcdparameters (RF Toolbox), and tparameters (RF Toolbox).

Example: S1 = sparameters(Y1,100). Y1 is a parameter object. This example converts Y-parameters to S-parameters at 100 ohms.

Touchstone data file, specified as a character vector, that contains network parameter data. filename can be the name of a file on the MATLAB® path or the full path to a file.

Example: sobj = sparameters("defaultbandpass.s2p");

Flag to enable parallel pool, specified as a logical value. The default value is false. Set the flag to true or 1 to enable the parallel pool. Use parallel pool to speedup the S-parameter calculations at multiple frequencies for computationally large antennas and arrays.

Example: UseParallel=true

Data Types: logical

Output Arguments

collapse all

S-parameter data, returned as an object. disp(sobj) returns the properties of the object:

  • NumPorts — Number of ports, specified as an integer. The function calculates this value automatically when you create the object.

  • Frequencies — S-parameter frequencies, specified as a K-by-1 vector of positive real numbers sorted from smallest to largest. The function sets this property from the filename or freq input arguments.

  • Parameters — S-parameter data, specified as an N-by-N-by-K array of complex numbers. The function sets this property from the filename or data input arguments.

  • Impedance — Reference impedance in ohms, specified as a positive real scalar. The function sets this property from the filename or Z0 input arguments. If no reference impedance is provided, the function uses a default value of 50.

Version History

Introduced in R2015a