5#ifndef SRC_NR_MODEL_BEAMFORMING_VECTOR_H_
6#define SRC_NR_MODEL_BEAMFORMING_VECTOR_H_
10#include "ns3/mobility-model.h"
11#include "ns3/uniform-planar-array.h"
29typedef std::pair<BeamformingVector, BeamformingVector> BeamformingVectorPair;
37PhasedArrayModel::ComplexVector
CreateQuasiOmniBfv(
const Ptr<const UniformPlanarArray>& antenna);
47PhasedArrayModel::ComplexVector
CreateDirectionalBfv(
const Ptr<const UniformPlanarArray>& antenna,
71PhasedArrayModel::ComplexVector CreateDirectPathBfv(
const Ptr<MobilityModel>& a,
72 const Ptr<MobilityModel>& b,
73 const Ptr<const UniformPlanarArray>& antenna);
81PhasedArrayModel::ComplexVector CreateKroneckerBfv(
const Ptr<const UniformPlanarArray>& antenna,
std::pair< PhasedArrayModel::ComplexVector, BeamId > BeamformingVector
Physical representation of a beam.
PhasedArrayModel::ComplexVector CreateDirectionalBfvAz(const Ptr< const UniformPlanarArray > &antenna, double azimuth, double zenith)
Creates a beamforming vector for a given azimuth and zenith.
PhasedArrayModel::ComplexVector CreateQuasiOmniBfv(const Ptr< const UniformPlanarArray > &antenna)
Create a quasi omni beamforming vector.
PhasedArrayModel::ComplexVector CreateDirectionalBfv(const Ptr< const UniformPlanarArray > &antenna, uint16_t sector, double elevation)
Creates a beamforming vector for a given sector and elevation.