Antenna Panel

[1]:
import numpy as np
import scipy.io

import neoradium as nr
[2]:
# We first create an antenna element template. The 'AntennaPanel' class uses this template to
# create the panel’s elements.
elementTemplate = nr.AntennaElement(beamWidth=[65,65], maxAttenuation=30)

# Next, we create the antenna panel using the element template.
# Note that the spacing between elements is 0.5 λ by default.
panel = nr.AntennaPanel([4,4], elements=elementTemplate, polarization="+")

# The 'showElements' method visualizes the antenna panel, displaying all of its elements.
panel.showElements(zeroTicks=True)

../../../../_images/source_Playground_Notebooks_Antenna_AntennaPanel_2_0.png
[3]:
# Depending on the input parameters, the 'drawRadiation' method can generate different types of plots.
# Here, we plot the field values of the antenna panel in the horizontal plane at zero elevation.
radValues = panel.drawRadiation(theta=90, viewAngles=(90,0), radiationType="Field", normalize=False)

../../../../_images/source_Playground_Notebooks_Antenna_AntennaPanel_3_0.png
[4]:
# Here, the 'drawRadiation' method is used to plot the field values in the vertical plane at an azimuth angle of 0°.
radValues = panel.drawRadiation(phi=0, radiationType="Field", normalize=False)

../../../../_images/source_Playground_Notebooks_Antenna_AntennaPanel_4_0.png
[5]:
# Here, the 'drawRadiation' method is used to generate a 3D plot of directivity.
radValues = panel.drawRadiation(radiationType="Directivity", normalize=True, viewAngles=(60,10))

../../../../_images/source_Playground_Notebooks_Antenna_AntennaPanel_5_0.png
[ ]:

[ ]: