:class:`CircularPatch` ====================== .. py:class:: pyedb.libraries.rf_libraries.planar_antennas.CircularPatch(edb_cell=None, target_frequency: Union[str, float] = '2.4GHz', length_feeding_line: Union[str, float] = 0, layer: str = 'TOP_METAL', bottom_layer: str = 'BOT_METAL', add_port: bool = True) Circular microstrip patch antenna (optionally probe-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_cell** : :obj:`pyedb.Edb`, :obj:`optional` EDB project/cell in which the antenna will be built. **freq** : :class:`python:str` or :class:`python:float`, :obj:`default` "2.4GHz" Target resonance frequency of the patch. A string such as ``"2.4GHz"`` or a numeric value in Hz can be given. **probe_offset** : :class:`python:str` or :class:`python:float`, :obj:`default` 0 Radial offset of the 50 Ω coax probe from the patch center. A value of 0 places the probe at the center (not recommended for good matching). **layer** : :class:`python:str`, :obj:`default` "TOP_METAL" Metallization layer on which the patch polygon is drawn. **bottom_layer** : :class:`python:str`, :obj:`default` "BOT_METAL" Metallization layer on which the ground polygon is drawn. **add_port** : :ref:`bool `, :obj:`default` :data:`python:True` If True, create a lumped port (probe feed) and add an HFSS setup with a frequency sweep. .. rubric:: Examples Build a 5.8 GHz circular patch on a 0.787 mm Rogers RO4350B substrate: >>> edb = pyedb.Edb() >>> patch = CircularPatch(edb_cell=edb, freq="5.8GHz", probe_offset="6.4mm", 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("circ_patch_5p8GHz.aedb") Probe-fed 2.4 GHz patch with default 0 offset (center feed): >>> edb = pyedb.Edb() >>> CircularPatch(edb, freq=2.4e9).create() >>> edb.save_as("probe_circ_patch_2p4GHz.aedb") :Attributes: **substrate** : :obj:`Substrate` Substrate definition (``er``, ``tand``, ``h``) used for all analytical calculations. .. !! processed by numpydoc !! .. py:currentmodule:: CircularPatch Overview -------- .. tab-set:: .. tab-item:: Methods .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~create` - Draw the patch, ground plane and feed geometry in EDB. .. tab-item:: Properties .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~estimated_frequency` - Improved analytical resonance frequency (Hz) of the dominant TM11 mode. * - :py:attr:`~radius` - Patch physical radius (m) derived for the target frequency. .. tab-item:: Attributes .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~target_frequency` - * - :py:attr:`~length_feeding_line` - * - :py:attr:`~layer` - * - :py:attr:`~bottom_layer` - * - :py:attr:`~substrate` - * - :py:attr:`~add_port` - Import detail ------------- .. code-block:: python from pyedb.libraries.rf_libraries.planar_antennas import CircularPatch Property detail --------------- .. py:property:: estimated_frequency :type: float Improved analytical resonance frequency (Hz) of the dominant TM11 mode. Uses Balanis’ closed-form model for single-layer circular patches. Accuracy ≈ ±0.5 % compared with full-wave solvers for 0.003 ≤ h/λd ≤ 0.05 and εr 2–12. :Returns: :class:`python:float` Resonant frequency in Hz. .. !! processed by numpydoc !! .. py:property:: radius :type: float Patch physical radius (m) derived for the target frequency. .. !! processed by numpydoc !! Attribute detail ---------------- .. py:attribute:: target_frequency .. py:attribute:: length_feeding_line .. py:attribute:: layer :value: 'TOP_METAL' .. py:attribute:: bottom_layer :value: 'BOT_METAL' .. py:attribute:: substrate .. py:attribute:: add_port :value: True Method detail ------------- .. py:method:: create() -> bool Draw the patch, ground plane and feed geometry in EDB. :Returns: :ref:`bool ` True when the geometry has been successfully created. .. !! processed by numpydoc !!