Effacer les filtres
Effacer les filtres

3D Farfield radiation pattern

36 vues (au cours des 30 derniers jours)
Roman Klimovich
Roman Klimovich le 20 Nov 2017
Commenté : Luis Carrion le 30 Juin 2022
Hello everyone,
I've measured an antenna with rotation stand and got results for phi, theta and measured power. Phi and Theta are vectors, and P is the 2D power matrix. Because the antenna wasn't centered I used rotation matrices to compensate for the shift so after this compensation I got three 2D matrices - for Theta, for Phi and for Power. A used surf(Theta, Phi, P) and got :
Now this is a good visualization, but I want to plot in polar axes, so it will look more like this:
  2 commentaires
KSSV
KSSV le 20 Nov 2017
Roman Klimovich
Roman Klimovich le 20 Nov 2017
Tried that, but it looks more of the same - I need to plot my data on 3D spherical axes, to look like farfield of the antenna that you get when you use pattern function (part of the antenna design toolbox)

Connectez-vous pour commenter.

Réponses (5)

Roman Klimovich
Roman Klimovich le 20 Nov 2017
I found a function called patternCustom that plots the radiation pattern, only when theta and phi are vectors, and power is a matrix. The problem is it shows the radiation pattern compressed in azimuth direction:
Does anyone have a solution for this?

Roman Klimovich
Roman Klimovich le 21 Nov 2017
Please help :-)

Georgios Kyriakou
Georgios Kyriakou le 3 Jan 2020
I used the patternCustom(magE,theta,phi) and it worked. You should take care to call it properly, that is vector theta should be row and phi should be column, and magE should be of size [length(phi) length(theta)]. Also angles should be given in degrees. I got this for the pattern I was trying to plot, which is pretty much what I expected
polarplot.png

Vishwanath Iyer
Vishwanath Iyer le 3 Juin 2021
patternCustom is indeed the way to proceed with this. Details of the inputs and their dimensions are provided here
and in the following example:

Jan Budroweit
Jan Budroweit le 14 Avr 2022
When i try to plot the 3D pattern i get the following error:
Unable to resolve the name em.FieldAnalysisWithFeed.getfieldlabels.
Error in antennashared.internal.radiationpattern3D (line 33)
[~, units] = em.FieldAnalysisWithFeed.getfieldlabels(parserObj.Results.plottype);
Error in patternCustom (line 159)
[hPlot] = antennashared.internal.radiationpattern3D(MagEBlocks,theta1,phi1,'CurrentAxes', 1);
Plotting the rectengular coordinating systems works
  1 commentaire
Luis Carrion
Luis Carrion le 30 Juin 2022
I removed line 33 from radiationpattern3D.m
[~, units] = em.FieldAnalysisWithFeed.getfieldlabels(parserObj.Results.plottype);
After that, everything worked.
It seem to be that you only use that line for getting 'units' name from a p-code.
You can change line 76 (radiationpattern3D.m) for the following:
ylabel(cbar, '');

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by