50 NS_LOG_INFO(
"creating LenaTestTdMtFfMacSchedulerSuite");
52 bool errorModel =
false;
69 TestCase::Duration::EXTENSIVE);
71 TestCase::Duration::QUICK);
73 TestCase::Duration::EXTENSIVE);
75 TestCase::Duration::EXTENSIVE);
88 TestCase::Duration::EXTENSIVE);
90 TestCase::Duration::EXTENSIVE);
92 TestCase::Duration::EXTENSIVE);
94 TestCase::Duration::EXTENSIVE);
108 TestCase::Duration::EXTENSIVE);
110 TestCase::Duration::EXTENSIVE);
112 TestCase::Duration::EXTENSIVE);
114 TestCase::Duration::EXTENSIVE);
128 TestCase::Duration::EXTENSIVE);
130 TestCase::Duration::EXTENSIVE);
132 TestCase::Duration::EXTENSIVE);
134 TestCase::Duration::EXTENSIVE);
148 TestCase::Duration::EXTENSIVE);
150 TestCase::Duration::EXTENSIVE);
152 TestCase::Duration::EXTENSIVE);
154 TestCase::Duration::EXTENSIVE);
159 TestCase::Duration::QUICK);
225 lteHelper->SetAttribute(
"PathlossModel",
StringValue(
"ns3::FriisSpectrumPropagationLossModel"));
235 mobility.SetMobilityModel(
"ns3::ConstantPositionMobilityModel");
236 mobility.Install(enbNodes);
237 mobility.SetMobilityModel(
"ns3::ConstantPositionMobilityModel");
238 mobility.Install(ueNodes);
243 lteHelper->SetSchedulerType(
"ns3::TdMtFfMacScheduler");
245 enbDevs = lteHelper->InstallEnbDevice(enbNodes);
246 ueDevs = lteHelper->InstallUeDevice(ueNodes);
249 lteHelper->Attach(ueDevs, enbDevs.
Get(0));
254 lteHelper->ActivateDataRadioBearer(ueDevs, bearer);
258 enbPhy->SetAttribute(
"TxPower",
DoubleValue(30.0));
259 enbPhy->SetAttribute(
"NoiseFigure",
DoubleValue(5.0));
262 for (
int i = 0; i <
m_nUser; i++)
266 mm->SetPosition(Vector(
m_dist, 0.0, 0.0));
270 uePhy->SetAttribute(
"NoiseFigure",
DoubleValue(9.0));
273 double statsStartTime = 0.300;
274 double statsDuration = 0.6;
275 double tolerance = 0.1;
278 lteHelper->EnableMacTraces();
279 lteHelper->EnableRlcTraces();
290 std::vector<uint64_t> dlDataRxed;
291 for (
int i = 0; i <
m_nUser; i++)
296 dlDataRxed.push_back(rlcStats->GetDlRxData(imsi, lcId));
297 NS_LOG_INFO(
"\tUser " << i <<
" imsi " << imsi <<
" bytes rxed " << (
double)dlDataRxed.at(i)
298 <<
" thr " << (
double)dlDataRxed.at(i) / statsDuration <<
" ref "
308 for (
int i = 0; i <
m_nUser; i++)
316 " Unfair Throughput!");
333 std::vector<uint64_t> ulDataRxed;
334 for (
int i = 0; i <
m_nUser; i++)
340 ulDataRxed.push_back(rlcStats->GetUlRxData(imsi, lcId));
341 NS_LOG_INFO(
"\tUser " << i <<
" imsi " << imsi <<
" bytes rxed " << (
double)ulDataRxed.at(i)
342 <<
" thr " << (
double)ulDataRxed.at(i) / statsDuration <<
" ref "
351 for (
int i = 0; i <
m_nUser; i++)
356 " Unfair Throughput!");