matlab-design-antenna

Design, analyze, and optimize antennas, arrays, and PCB antennas using MATLAB Antenna Toolbox.

995|122|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-design-antenna
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: matlab-design-antenna
Source: https://github.com/matlab/matlab-agentic-toolkit/tree/main/skills-catalog/rf-and-mixed-signal/matlab-design-antenna
Command: npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-design-antenna

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Designing antennas in MATLAB requires deep knowledge of Antenna Toolbox conventions—correct namespaces (shape.* vs antenna.*), design() ordering, feed placement, meshing rules, and optimization setup. This Skill gives an AI agent the curated workflows and must-follow rules to produce correct antenna, array, and PCB antenna designs without hallucinating functions or missing critical steps.

Core Features & Use Cases

  • Catalog & Custom Antenna Design: Design standard antennas (dipole, patch, horn, Yagi) with design(), or build custom geometries from shape.* primitives with extrusion, boolean operations, and proper feed configuration.
  • PCB Antenna & Array Design: Build multi-layer pcbStack stackups with Gerber export, and design finite/infinite arrays with beam steering, tapering, mutual coupling, and MIMO isolation analysis.
  • AI-Accelerated Exploration & Optimization: Use AIAntenna surrogates and patternFromAI for rapid design-space exploration, plus SADEA/TR-SADEA optimization with geometric constraints.
  • Use Case: Ask the agent to design a 2.4 GHz inset-fed patch antenna on FR4, analyze its S-parameters and radiation pattern, then optimize its dimensions for maximum gain subject to an S11 < -10 dB constraint.

Quick Start

Ask the agent to design a dipole antenna at 2.4 GHz and plot its 3D radiation pattern and impedance over a frequency sweep.

Frequently Asked Questions about matlab-design-antenna

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design a patch antenna at a specific frequency in MATLAB?

Create a patchMicrostrip object, set its Substrate (e.g., dielectric("FR4")) before calling design(ant, freq), then mesh at lambda/8 for substrate antennas. Analyze with impedance(), sparameters(), and pattern() at the target frequency.

What is the difference between shape.* and antenna.* namespaces in MATLAB?

shape.* primitives (Rectangle, Box, Cylinder) are used with customAntenna for arbitrary 3D geometries, while antenna.* shapes are used with pcbStack for PCB metal patterns. They are not interchangeable, and mixing them is the most common source of errors.

Can I use design() directly on a pcbStack antenna?

No, design() does not work on pcbStack. Design a catalog antenna first with design(), then convert it using pcbStack(ant). Also set BoardThickness before assigning Layers, since Layers overwrites dielectric thickness.

Which antennas support AI-accelerated design with AIAntenna?

Only 12 antenna types have pretrained AI models, including dipole, patchMicrostrip variants, pifa, dipoleHelix, waveguide, and horn. Create them via design(ant, freq, ForAI=true); the direct em.ai.AIAntenna() constructor is not supported.

Why does my customAntenna return near-zero impedance?

The feed is likely placed in the middle of a continuous flat plate rather than at a geometric discontinuity. Use createFeed() at a gap, slot edge, or shape junction, and verify current flow with current(ant, freq, Scale="log").

When should I use SADEA versus the built-in optimize() for antenna optimization?

Use built-in optimize() for catalog antennas with string objectives like "maximizeGain". Use OptimizerSADEA or OptimizerTRSADEA for customAntenna/pcbStack designs or custom evaluation functions, wrapping evaluations in try/catch with a 1e6 penalty for invalid geometry.