Main Content

ArbitraryFiniteGapFeed

Create an arbitrary finite gap feed object

Since R2024b

    Description

    Use the ArbitraryFiniteGapFeed object to create and specify the FeedDefinitions property in a parent pcbComponent object.

    Creation

    Description

    f1=ArbitraryFiniteGapFeed creates a default ArbtraryFiniteGapFeed object.

    f1=ArbitraryFiniteGapFeed(Name=value) sets object Properties using one or more name value arguments. Properties not set retain their default value.

    example

    Properties

    expand all

    Specifies the locations that require positive excitation, as an array of size N-by-2 in meters.

    The first and the second columns correspond to the X and Y coordinates in meters, respectively. Each location must lie on the edge of a metal layer.

    Example: f1=ArbitraryFiniteGapFeed;f1.SignalLocations=[-0.2 0]

    Data Types: double

    Specifies the locations that require negative excitation as an array of size N-by-2 in meters.

    The first and the second columns correspond to the X and Y coordinates in meters, respectively. Each location must lie on the edge of a metal layer.

    Example: f1=ArbitraryFiniteGapFeed;f1.GroundLocations=[-0.2 0]

    Data Types: double

    Specifies the widths of the signal locations, in meters, as an N-by-1 array.

    The metal edge on which the SignalLocations(n,:) lie must be longer than, or equal to, the SignalWidths(n).

    Example: f1=ArbitraryFiniteGapFeed;f1.SignalWidths=.007

    Data Types: double

    Specifies the widths the negative excitation sites, in meters, as an N-by-1 array.

    The metal edge on which the GroundLocations(n,:) lie must be longer than, or equal to the GroundWidths(n).

    Example: f1=ArbitraryFiniteGapFeed;f1.GroundWidths=0.007

    Data Types: double

    Specifies the board layers for all positive excitation sites as an N-by-1 array.

    Example: f1=ArbitraryFiniteGapFeed;f1.SignalLayers=2

    Data Types: double

    Specifies the board layers for all negative excitation sites as an N-by-1 array.

    Example: f1=ArbitraryFiniteGapFeed;f1.GroundLayers=4

    Data Types: double

    Examples

    collapse all

    This example shows how to configure an ArbitraryFiniteGapFeed to excite a coplanar waveguide with no conductor backing implemented as a pcbComponent object.

    Set up three rectangles in a coplanar waveguide configuration.

    w = 3e-3;           % width of the strip (m)
    s = 0.2e-3;         % spacing from strip to ground planes (m)
    t = 1e-3;           % substrate thickness
    boardWidth = 4*w;   % Total width of the board (m)
    boardLength = 10*w; % Length of the trace and all GPs (m)
    
    d = dielectric('Teflon');
    d.Thickness = t;
    
    rect1 = traceRectangular('Length', boardLength, 'Width', boardWidth);
    rectCut1 = traceRectangular('Length', boardLength, 'Width', s, 'Center', [0, (s/2+w/2)]);
    rectCut2 = copy(rectCut1); rectCut2.Center = -rectCut1.Center;
    
    p = pcbComponent;
    p.BoardShape = rect1;
    p.BoardThickness = t;
    p.Layers = {rect1 - rectCut1 - rectCut2, d};

    Switch the pcbComponent's FeedFormat property to 'FeedDefinitions' to expose its FeedDefinitions property, and configure one ArbitraryFiniteGapFeed at each end of the coplanar waveguide. Each property of a given ArbitraryFiniteGapFeed requires two rows in this case. All properties' first rows together will define the first +/- excitation pair - that is, the excitation of the strip against the right ground plane. All properties' second rows together will define the second +/- excitation pair: the strip against the left ground plane.

    p.FeedFormat = 'FeedDefinitions';
    f1 = ArbitraryFiniteGapFeed('SignalLocations', [-boardLength/2 0; -boardLength/2 0], 'GroundLocations', [-boardLength/2, (w+s); -boardLength/2, -(w+s)], 'SignalWidths', [w;w], 'GroundWidths', [w; w], 'SignalLayers', [1; 1], 'GroundLayers', [1, 1]);
    f2 = copy(f1); f2.SignalLocations = -f1.SignalLocations; f2.GroundLocations = -f1.GroundLocations;
    p.FeedDefinitions = [f1; f2];
    figure; show(p)

    Figure contains an axes object. The axes object with title pcbComponent element, xlabel x (mm), ylabel y (mm) contains 5 objects of type patch, surface. These objects represent PEC, feed, Teflon.

    Compute and plot S-parameters for the waveguide.

    s = sparameters(p, linspace(1e9, 5e9, 51));
    figure; rfplot(s)

    Figure contains an axes object. The axes object with xlabel Frequency (GHz), ylabel Magnitude (dB) contains 4 objects of type line. These objects represent dB(S_{11}), dB(S_{21}), dB(S_{12}), dB(S_{22}).

    Version History

    Introduced in R2024b