Antenna toolbox circular array amplitude taper size error
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
The Antenna Toolboxes circularArray function help states the Element property can be specified as:
Example: 'Element',[monopole,monopole]
...and that the amplitude taper and phase shift properties are vectors of the size of 'Element'.
If I try the following code:
circularArray('Element',[monopole,monopole],'AmplitudeTaper',[1 1],'PhaseShift',[0 0])
...then I get the following error:
Error using circularArray
Expected AmplitudeTaper to be an array with number of elements equal to 6.
This appears to be referencing the default value of (6) for the number of elements, but I specified 2 as shown in the help. What am I doing wrong here?
0 comentarios
Respuestas (1)
Johnny Himbele
el 4 de Ag. de 2021
Hi Jeffrey,
I observed the same issue when providing the name-value pairs of Element, AmplitudeTaper and PhaseShift as a vector of objects to circularArray function. This is because, when initializing a circularArray object, Element is passed as a vector of objects; whereas AmplitudeTaper and PhaseShift are passed as a scalar of object. You can check this at line 100 - 104 in circularArray.m. You should be able to open circularArray.m. by running the following command:
cd (matlabroot)
edit toolbox\antenna\antenna\circularArray.m
To create a custom circularArray model, I propose the following workflow:
ant = circularArray('Element',[monopole,monopole]);
ant.AmplitudeTaper = [1 1];
ant.PhaseShift = [0 0];
FYI, if all Elements have the same AmplitudeTaper and PhaseShift values, I think you don't need to specify as a vector of objects.
Good luck!
Johnny
0 comentarios
Ver también
Categorías
Más información sobre Array Catalog en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!