> Design antennas, arrays, and PCB antennas using MATLAB Antenna Toolbox. Covers catalog antenna design and pattern analysis, custom antenna construction (customAntenna + shape.*), PCB antenna design (pcbStack + antenna.*), finite and infinite array design, AI-accelerated design exploration (AIAntenna, patternFromAI), and optimization (SADEA/TR-SADEA). Use when the user wants to design, create, model, analyze, optimize, or fabricate an antenna or array.
npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-design-antennas
Design, analyze, and optimize antennas and arrays using MATLAB Antenna Toolbox —
from catalog elements to custom shapes, PCB fabrication, AI-accelerated exploration,
and surrogate-assisted optimization.
Catalog antenna design
Custom antenna design
PCB antenna design
Array design
AI-accelerated design
Optimization
matlab-analyze-antenna-structuresmatlab-integrate-antennascustomAntenna — use customAntenna only when no catalog antenna or system antenna matches the requested geometrydesign() unless user provides explicit dimensions or antenna lacks design() supportdesign() — design() adapts dimensions to the substrateSweepOption="interp" only with sparameters (not impedance) on substrate antennasshape.* namespace (NOT antenna.*) with customAntennacustomAntenna without createFeed cannot be analyzedextrudeLinear requires XY-plane shapescopy() to preserve before transformingBoardThickness BEFORE Layers — otherwise dielectric gets wrong thicknessantenna.* namespace (NOT shape.*) for pcbStack metal patterns{M,D,M}, ground is index 3design() does not work on pcbStack — design catalog antenna first, then convertFilename must be char ('single quotes'), not "string"design(arr, freq, element) — omitting resets to dipoleAmplitudeTaper for rectangularArray is column-major orderphaseShift() for finite steering, ScanAzimuth/ScanElevation for infinitedesign(..., ForAI=true) — direct em.ai.AIAntenna() constructor not supportedpatternFromAI must be row vectors with 1-degree integer spacingexportAntenna + full-wave simulationdesign() to get physically reasonable initial dimensions{lb1,lb2; ub1,ub2}, Tier 2 bounds: numeric matrix [lb;ub]FrequencyRange explicitly for bandwidth optimization (default +/-5% may not match target)design(ant, freq)mesh(ant, MaxEdgeLength=lambda/8) for substrate antennaspolarpatternshape.* primitives (Rectangle, Box, Cylinder, Polygon)translate, rotate, scale (handle objects — copy first)+ (union), - (subtract), & (intersect)extrudeLinear (taper) or extrudeRotate (revolution)customAntenna(Shape=...), createFeed(ant, loc, numEdges)mesh(ant, MaxEdgeLength=lambda/6), impedance, patternpcbStack, set BoardThickness FIRST, then Layersantenna.* shapes with boolean operationsFeedLocations = [x, y, sigLayer, gndLayer]SweepOption="interp"), patterngerberWrite with PCBWriter, PCBServices, PCBConnectorsdesign(arr, freq, element)phaseShift() finite, ScanAzimuth/ScanElevation infiniteAmplitudeTaper (column-major for rectangular)arrayFactor (fast) → patternMultiply → pattern (accurate)sparameters, correlation, isolation metricsdesign(ant, freq, ForAI=true) for supported typestunableRanges, parametric sweep, resonantFrequency, bandwidthexportAntenna + full-wave impedance/patternpatternFromAI from 2D slices (row vectors, 1-deg spacing)optimize() or OptimizerSADEA/OptimizerTRSADEAgetBestMemberData, showConvergenceTrend, isConverged| Class | Purpose |
|-------|---------|
| design() | Scale catalog antennas to frequency |
| customAntenna | Arbitrary geometry from shape.* primitives |
| pcbStack | Multi-layer PCB antenna with antenna.* shapes |
| linearArray / rectangularArray / circularArray | Finite arrays |
| conformalArray | Arbitrary element positions (MIMO, custom) |
| infiniteArray | Unit cell with Floquet BC |
| em.ai.AIAntenna | Pretrained surrogate for instant prediction |
| patternFromAI | 3D pattern from 2D slices |
| optimize() | Built-in SADEA for catalog antennas |
| OptimizerSADEA / OptimizerTRSADEA | Custom optimization |
"double quotes" for strings (except Gerber Filename which requires 'char')fprintf for formatted outputpattern, show, rfplot, impedance)plot figures and TitleTop to polarpatternphysconst("LightSpeed") — never hardcode 3e8For design, analysis, or sweep tasks — write code to .m files, run via run_matlab_file, iterate by editing and re-running. Use inline evaluate_matlab_code for quick one-off checks.
| Load when... | Reference |
|-------------|-----------|
| Designing catalog antennas (types, design(), substrate, patterns) | references/catalog-antennas.md |
| Building custom antennas (shape.*, extrusion, feeds, substrate) | references/custom-antennas.md |
| Designing PCB antennas (pcbStack, layers, boolean, Gerber) | references/pcb-antennas.md |
| Designing arrays (finite, infinite, steering, taper, MIMO) | references/arrays.md |
| AI design exploration (AIAntenna, patternFromAI, surrogates) | references/ai-antenna-workflows.md |
| Optimizing antennas (SADEA, bounds, constraints, custom eval) | references/optimization.md |
----
Copyright 2026 The MathWorks, Inc.
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take matlab/matlab-design-antennas from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.