5#ifndef NR_MIMO_MATRICES_H
6#define NR_MIMO_MATRICES_H
8#include <ns3/matrix-array.h>
9#include <ns3/spectrum-value.h>
14class NrIntfNormChanMat;
26 : ComplexMatrixArray(arr){};
47 virtual NrIntfNormChanMat CalcIntfNormChannelMimo(
const ComplexMatrixArray& chanMat)
const;
68 : ComplexMatrixArray(arr){};
79 virtual ComplexMatrixArray ComputeMse(
const ComplexMatrixArray& precMats)
const;
85 virtual ComplexMatrixArray ComputeMseMimo(
const ComplexMatrixArray& precMats)
const;
94 : DoubleMatrixArray(arr){};
96 : DoubleMatrixArray(values){};
98 : DoubleMatrixArray(rank, nRbs){};
100 uint8_t GetRank()
const;
101 size_t GetNumRbs()
const;
virtual NrIntfNormChanMat CalcIntfNormChannel(const ComplexMatrixArray &chanMat) const
Calculate the interference-normalized channel matrix for SISO and MIMO. See NrIntfNormChanMat for det...
virtual void SubtractInterferenceSignal(const ComplexMatrixArray &rhs)
virtual void AddInterferenceSignal(const ComplexMatrixArray &rhs)
virtual NrSinrMatrix ComputeSinrForPrecoding(const ComplexMatrixArray &precMats) const
Compute the MIMO SINR when a specific precoder is applied.
NrSinrMatrix stores the MIMO SINR matrix, with dimension rank x nRbs.
SpectrumValue GetVectorizedSpecVal() const
Linearize a 2D matrix into a vector, and convert that vector to a SpectrumValue Matches layer-to-code...