Exporting Characteristics from MATLAB Sensor Array Analyzer

8 views (last 30 days)
I'm currently working on a project using MATLAB's Sensor Array Analyzer, and I would like to export the Characteristics section (such as HPBW, FNBW, SLL, directivity, etc.) to a MATLAB script.
However, I haven’t been able to figure out how to do this — or if there's any way to programmatically access those values.
Any help or guidance would be greatly appreciated.

Answers (2)

Shantanu Dixit
Shantanu Dixit on 22 Apr 2025
Edited: Shantanu Dixit on 22 Apr 2025
Hi Yen,
You can export the Characteristics section (including values like Half Power BeamWidth (HPBW), First Null BeamWidth (FNBW), Sidelobe Level (SLL), Directivity, and others) to a MATLAB script using the built-in generate report feature in the Sensor Array Analyzer Application.
In the Toolstrip, navigate to:
EditAnalyzer > Export > Generate Report
% Select Generate Report
This will create a MATLAB '.m' file that contains a structured report of the current analysis session, including all the values found in the Characteristics section.
Hope this helps.
  1 Comment
Yen-Yun
Yen-Yun on 23 Apr 2025
Hi Shantanu,
Thank you for your help!
However, my goal is to generate array characteristics entirely from a MATLAB script, without relying on the Sensor Array Analyzer app, so I’m looking for the code or functions needed to compute these parameters programmatically.

Sign in to comment.


Umeshraja
Umeshraja ongeveer een uur ago
I understand you're interested in computing antenna parameters such as HPBW, FNBW, SLL, directivity, and more using MATLAB. While there isn't a single function that calculates all these parameters, you can use the findLobes function to determine several key characteristics, including:
  • HPBW (half-power beamwidth)
  • FNBW (first-null beamwidth)
  • F/B (front-to-back ratio)
  • SLL (side lobe level)
  • Main (main lobe peak value and corresponding angle)
  • Back (back lobe peak value and corresponding angle)
Below is the example that creates a 15-element ULA of isotropic antenna with elements spaced one-half wavelength apart. Plot the directivity of the array at 20 GHz. Then, find the mainlobe, sidelobe, and backlobe directions of the array pattern.
fc = 20.0e9;
c = physconst('Lightspeed');
lam = c/fc;
angs = [-180:1:180];
antenna = phased.IsotropicAntennaElement('FrequencyRange',[1.0e9,100.0e9]);
array = phased.ULA('Element',antenna,'NumElements',15,'ElementSpacing',lam/2);
a = pattern(array,fc,angs,0);
P = polarpattern(angs,a);
L = findLobes(P)
L = struct with fields:
mainLobe: [1×1 struct] backLobe: [1×1 struct] sideLobes: [1×1 struct] FB: 0 SLL: 0 HPBW: 8.0000 FNBW: 16.0000 FBIdx: [181 1] SLLIdx: [181 361] HPBWIdx: [357 5] HPBWAng: [176 -176] FNBWIdx: [173 189]
If you're also interested in learning how to interact with polar plots and view associated metrics, you can refer to the following documentation
For more information on the findLobes function:
Hope it helps!

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!