Main Content

filterInterdigital

Create interdigital filter in microstrip from

Since R2023a

Description

Use the filterInterdigital object to create an interdigital filter in the microstrip form.

Three part image from right to left: Default image of a interdigital filter. Current distribution on the filter. S-parameters plot of the filter.

Creation

Description

filter = filterInterdigital creates an interdigital filter with default properties for a bandpass frequency of 2 GHz.

example

filter = filterInterdigital(Name=Value) sets Properties using one or more name-value arguments. For example, filterInterdigital(FilterOrder=3) creates an interdigital filter with a filter order of three. Properties not specified retain their default values.

example

Properties

expand all

Order of the filter, specified as a positive scalar in the range [3,9].

Example: filter = filterInterdigital(FilterOrder=6)

Data Types: double

Length of the resonator in meters, specified as a scalar or a vector equal in length to the order in FilterOrder.

Example: filter = filterInterdigital(ResonatorLength=[0.03045 0.01291 0.01683 0.01691 0.03045])

Data Types: double

Width of the resonator in meters, specified as a scalar or a vector equal in length to the order in FilterOrder.

Example: filter = filterInterdigital(ResonatorWidth=0.03045)

Data Types: double

Spacing between the resonators in meters, specified as a scalar or vector.

Example: filter = filterInterdigital(ResonatorSpacing=0.00014)

Data Types: double

Y-axis offset of each resonator in meters, specified as a scalar or vector. If the value is a scalar, all the resonators in the filter are offset by the same value along the Y-axis.

Example: filter = filterInterdigital(ResonatorOffset=0.1)

Data Types: double

Length of the input and the output line in meters, specified as a scalar or a two-element vector.

Example: filter = filterInterdigital(PortLineLength = 0.0095)

Data Types: double

Width of the input and the output line in meters, specified as a positive scalar.

Example: filter = filterInterdigital(PortLineWidth = 0.0041)

Data Types: double

Diameter of the via in meters, specified as a scalar or a vector equal in length to the order in FilterOrder.

Example: filter = filterInterdigital(ViaDiameter = 0.00113)

Data Types: double

Y-axis offset of the input and output lines in meters, specified as a scalar or a two-element vector.

Example: filter = filterInterdigital(FeedOffset=0.1)

Data Types: double

Height from the ground plane to the filter in meters, specified as a positive scalar. In the case of a multilayer substrate, use the Height property to create an interdigital filter at the interface of the two dielectrics.

Example: filter = filterInterDigital(Height = 0.00096)

Data Types: double

Height from the ground plane to the filter in meters, specified as a positive scalar.

Example: filter = filterInterdigital(GroundPlaneWidth = 0.040)

Data Types: double

Type of dielectric material used as a substrate, specified as a dielectric object. The dielectric material in a filterInterdigital object has these default properties: (Name={'Roger'},EpsilonR=6.15,LossTangent=0.002,Thickness=0.00127)

Example: d = dielectric("RTDuriod"); coupler = filterInterdigital(Substrate=d)

Type of metal used in the conducting layers, specified as a metal object. The metal used in the conducting layers of filterInterDigital object with default properties is PEC.

Example: m = metal("Copper"); coupler = filterInterdigital(Conductor=m)

Data Types: string | char

Flag to add a metal shielding to the PCB component, specified as a logical 0 or logical 1. The default value is logical 0.

Example: IsShielded = true or 1 add a metal shield.

Note

To enable FEM solver required for the metal shield property, download the Integro-Differential Modeling Framework for MATLAB. To download this add-on:

  1. In the Home tab Environment section, click on Add-Ons. This opens the add-on explorer. You need an active internet connection to download the add-on.

  2. Search for Integro-Differential Modeling Framework for MATLAB and click Install.

  3. To verify if the download is successful, run

    matlab.addons.installedAddons
    in your MATLAB® session command line.

  4. On Windows, to run the IDMF add-on, you must install the Windows Subsystem for Linux (WSL). To install WSL, see Install Linux on Windows with WSL.

    The Windows Defender Firewall can block the PostgreSQL server when using the IDMF add-on. To resolve this issue, you can allow the server to communicate on desired networks if the firewall prompts. Alternatively, you can manually add the executable file of the PostgreSQL server located in <matlabroot>\sys\postgresql\win64\PostgreSQL\bin\postgres.exe. For more information, see https://support.microsoft.com/en-us/windows/risks-of-allowing-apps-through-windows-defender-firewall-654559af-3f54-3dcf-349f-71ccd90bcc5c.

Data Types: logical

This property is read-only.

Metal shield for the PCB component, specified as a shape.Box object. The length and width of the box must be equal to the length and width of the ground plane. The center of the box is at [0 0 Shielding.Height].

Dependencies

To enable the Shielding property, set the IsShielded property to true or 1.

Type of RF connector assembled at the feed locations of the PCB component, specified as a RFConnector object.

Example: Create connector from RFConnector object like this: coaxial = RFConnector adds a coaxial connector.

Dependencies

To enable the Connector property, set the IsShielded property to true or 1.

Object Functions

chargeCalculate and plot charge distribution
currentCalculate and plot current distribution
feedCurrentCalculate current at feed port
layoutPlot all metal layers and board shape
meshChange and view mesh properties of metal or dielectric in PCB component
shapesExtract all metal layer shapes of PCB component
showDisplay PCB component structure or PCB shape
sparametersCalculate S-parameters for RF PCB objects

Examples

collapse all

Create an interdigital filter with default properties.

filter = filterInterdigital
filter = 
  filterInterdigital with properties:

         FilterOrder: 5
     ResonatorLength: [0.0204 0.0179 0.0178 0.0179 0.0204]
      ResonatorWidth: 0.0024
    ResonatorSpacing: [1.3000e-04 3.6000e-04 3.6000e-04 1.3000e-04]
     ResonatorOffset: 0
      PortLineLength: 0.0049
       PortLineWidth: 0.0019
          FeedOffset: -0.0025
         ViaDiameter: 0.0011
              Height: 0.0013
    GroundPlaneWidth: 0.0300
           Substrate: [1x1 dielectric]
           Conductor: [1x1 metal]
          SolverType: 'MoM'
          IsShielded: 0

View the filter.

show(filter)

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

Create a fourth-order interdigital filter with a different offset for the four resonators and a different offset for the input and output lines.

filter = filterInterdigital(FilterOrder=4,ResonatorLength=0.005, ...
    ResonatorSpacing=0.6e-3,ResonatorOffset=[0.001e-3,0,0.5e-3,0], ...
    FeedOffset=[-0.0014,0.0014],GroundPlaneWidth=12e-3);

View the filter.

show(filter)

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

References

[1] Pozar, David M. Microwave Engineering. 4th ed. Hoboken, NJ: Wiley, 2012.

[2] Hong, Jia-Sheng, and M. J. Lancaster. Microstrip Filters for RF/Microwave Applications. Wiley, 2001.

[3] Saleh, Sahar, Widad Ismail, Intan Sorfina, Zainal Abidin. “5G Hairpin and Interdigital Bandpass Filters.” International Journal of Integrated Engineering, Vol. 12, No.6, July 2020.

Version History

Introduced in R2023a

expand all