5#ifndef SRC_NR_MODEL_IDEAL_BEAMFORMING_ALGORITHM_H_
6#define SRC_NR_MODEL_IDEAL_BEAMFORMING_ALGORITHM_H_
9#include "beamforming-vector.h"
11#include <ns3/object.h>
47 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
48 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const = 0;
92 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
93 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
96 double m_beamSearchAngleStep{30};
130 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
131 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
134 std::vector<double> m_azimuth{-56.25, -33.75, -11.25, 11.25, 33.75, 56.25};
135 std::vector<double> m_zenith{112.5, 157.5};
178 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
179 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
182 double m_beamSearchAngleStep{30};
206 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
207 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
232 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
233 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
259 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
260 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
288 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
289 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
363 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
364 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
367 std::vector<double> m_colRxBeamAngles{0, 90};
368 std::vector<double> m_colTxBeamAngles{0, 90};
369 std::vector<double> m_rowRxBeamAngles{0, 90};
370 std::vector<double> m_rowTxBeamAngles{0, 90};
424 const Ptr<NrSpectrumPhy>& gnbSpectrumPhy,
425 const Ptr<NrSpectrumPhy>& ueSpectrumPhy)
const override;
428 std::vector<double> m_colBeamAngles{0, 90};
429 std::vector<double> m_rowBeamAngles{0, 90};