RectangularPatch#

class pyedb.libraries.rf_libraries.planar_antennas.RectangularPatch(edb_cell=None, target_frequency: str | float = '2.4Ghz', length_feeding_line: str | float = 0, layer: str = 'TOP_METAL', bottom_layer: str = 'BOT_METAL', add_port: bool = True, permittivity: float = None)#

Rectangular microstrip patch antenna (optionally inset-fed).

The class automatically determines the physical dimensions for a desired resonance frequency, creates the patch, ground plane and either an inset microstrip feed or a coaxial probe feed, and optionally sets up an HFSS simulation.

Parameters:
edb_cellpyedb.Edb, optional

EDB project/cell in which the antenna will be built.

freqstr or float, default “2.4GHz”

Target resonance frequency of the patch. A string such as "2.4GHz" or a numeric value in Hz can be given.

insetstr or float, default 0

Inset depth for a 50 Ω microstrip feed. A value of 0 selects a probe (via) feed instead.

layerstr, default “TOP_METAL”

Metallization layer on which the patch polygon is drawn.

bottom_layerstr, default “BOT_METAL”

Metallization layer on which the ground polygon is drawn.

add_portbool, default True

If True, create a wave port (inset feed) or lumped port (probe feed) and add an HFSS setup with a frequency sweep.

Examples

Build a 5.8 GHz patch on a 0.787 mm Rogers RO4350B substrate:

>>> edb = pyedb.Edb()
>>> patch = RectangularPatch(edb_cell=edb, freq="5.8GHz", inset="4.2mm", layer="TOP", bottom_layer="GND")
>>> patch.substrate.er = 3.66
>>> patch.substrate.tand = 0.0037
>>> patch.substrate.h = 0.000787
>>> patch.create()
>>> edb.save_as("patch_5p8GHz.aedb")

Probe-fed 2.4 GHz patch (no inset):

>>> edb = pyedb.Edb()
>>> RectangularPatch(edb, freq=2.4e9, inset=0).create()
>>> edb.save_as("probe_patch_2p4GHz.aedb")
Attributes:
substrateSubstrate

Substrate definition (er, tand, h) used for all analytical calculations.

Overview#

create

Draw the patch, ground plane and feed geometry in EDB.

estimated_frequency

Analytical resonance frequency (GHz) computed from the cavity model.

width

Patch width (m) derived for the target frequency.

length

Patch length (m) accounting for fringing fields.

Import detail#

from pyedb.libraries.rf_libraries.planar_antennas import RectangularPatch

Property detail#

property RectangularPatch.estimated_frequency: float#

Analytical resonance frequency (GHz) computed from the cavity model.

Returns:
float

Resonant frequency in Hz.

property RectangularPatch.width: float#

Patch width (m) derived for the target frequency.

property RectangularPatch.length: float#

Patch length (m) accounting for fringing fields.

Attribute detail#

RectangularPatch.target_frequency#
RectangularPatch.length_feeding_line#
RectangularPatch.layer = 'TOP_METAL'#
RectangularPatch.bottom_layer = 'BOT_METAL'#
RectangularPatch.add_port = True#
RectangularPatch.substrate#

Method detail#

RectangularPatch.create() bool#

Draw the patch, ground plane and feed geometry in EDB.

Returns:
bool

True when the geometry has been successfully created.