Hi Chris,
I had to slightly change the code to execute it without errors:
- removed the for-loop: I am not sure what it is meant for
- reduced the width of antenna from 0.02 to w
With these modifications I could execute the code, and analyse the structure using R2018a. I did not get any error about intersecting structures.
Said so, I have a three comments:
- When building an array, I believe that you should not feed the panel structures, but only uhf and vhf. You can do this by setting the array property amplitudeTaper (see code below).
- From the code, it looks like you are trying to model some arbitrary 3D structure. This is currently not supported by Antenna Toolbox. For example, the panels and the ground plane of the monopole antennas are not electrically connected. Assuming that this is an acceptable approximation for you, then your approach will work.
vhf = monopole('Height',0.77,'Width',0.01,'GroundPlaneLength',0.1,'GroundPlaneWidth',0.1);
uhf = monopole('Height',0.1965,'Width',0.01,'GroundPlaneLength',0.1,...
'GroundPlaneWidth',0.1,'TiltAxis','Y','Tilt',180);
n = 5e-6;
w = n * 1e-1;
panel1 = monopole('Height',n,'Width',w,'GroundPlaneLength',0.338, ...
'GroundPlaneWidth',0.098,'TiltAxis','Y','Tilt',90);
panel2 = monopole('Height',n,'Width',w,'GroundPlaneLength',0.098, ...
'GroundPlaneWidth',0.338,'TiltAxis','X','Tilt',90);
antenna = monopole('Height',n,'Width',w,'GroundPlaneLength',0.338, ...
'GroundPlaneWidth',0.098,'TiltAxis','Y','Tilt',90);
c = conformalArray('Element',{vhf,uhf,antenna,panel1,panel2,panel2},...
'ElementPosition',[ 0 0 0.17 ;
0 0 -0.17;
0.05 0 0;
-0.05 0 0;
0 0.05 0;
0 -0.05 0],'Reference','origin');
c.AmplitudeTaper = [1 1 0 0 0 0];
current(c, 3e8);
pattern(c, 3e8);
- You might want to try using a cavity structure, and see if it helps (see second snippet of code below). Using the cavity for the panel structures makes sure that they are electrically connected. However the radiators are still not connected to it. By enabling the probe feed property enableprobefeed for a dipole will allow to feed the antenna from the cavity. The small top is negligible.
d = design(dipole,1e9)
d.Length = .001
d.Width = .0002/2
d.Tilt = 90
d.TiltAxis = [0 1 0]
c = cavity;
c.Exciter =d
c.EnableProbeFeed = 1;
show (c)
Z = impedance(c,1e9)
I hope this helps, with best regards,
Giorgia