7#ifndef THREE_GPP_ANTENNA_MODEL_H
8#define THREE_GPP_ANTENNA_MODEL_H
12#include "ns3/object.h"
Class holding the azimuth and inclination angles of spherical coordinates.
interface for antenna radiation pattern models
Antenna model based on a parabolic approximation of the main lobe radiation pattern.
double m_geMax
maximum directional gain of the antenna element (G_{E,max}) [dBi]
double GetAntennaElementGain() const
Get the maximum directional gain of the antenna element.
RadiationPattern
The different antenna radiation patterns defined in ITU-R M.2412.
static TypeId GetTypeId()
Get the type ID.
~ThreeGppAntennaModel() override
RadiationPattern m_radiationPattern
current antenna radiation pattern
double m_horizontalBeamwidthDegrees
beamwidth in the horizontal direction [deg]
double GetVerticalBeamwidth() const
Get the vertical beamwidth of the antenna element.
void SetIndoorAntennaPattern()
Set the radiation pattern for Indoor Hotspot - eMBB, Table 8-7 in Report ITU-R M.2412.
double GetHorizontalBeamwidth() const
Get the horizontal beamwidth of the antenna element.
void SetRadiationPattern(RadiationPattern pattern)
Set the antenna radiation pattern.
double m_verticalBeamwidthDegrees
beamwidth in the vertical direction [deg]
double GetGainDb(Angles a) override
this method is expected to be re-implemented by each antenna model
void SetOutdoorAntennaPattern()
Set the radiation pattern Dense Urban – eMBB, Rural – eMBB, Urban Macro – mMTC, and Urban Macro - URL...
RadiationPattern GetRadiationPattern() const
Get the antenna radiation pattern.
double m_aMax
maximum attenuation (A_{max}) [dB]
void DoInitialize() override
Initialize() implementation.
double GetMaxAttenuation() const
Get the maximum attenuation of the antenna element.
double GetSlaV() const
Get the side-lobe attenuation in the vertical direction of the antenna element.
double m_slaV
side-lobe attenuation in the vertical direction (SLA_V) [dB]
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.