From 8cfced2f8943069cd7146d6c5c06862cd54efaeb Mon Sep 17 00:00:00 2001 From: Nicola Baldo Date: Fri, 17 Jun 2011 17:41:40 +0200 Subject: [PATCH] run check-style on src/lte/ --- src/lte/examples/inter-cell-interference.cc | 28 +-- src/lte/examples/lena-first-sim.cc | 10 +- src/lte/examples/lena-rlc-calculator.cc | 6 +- src/lte/examples/profiling-reference.cc | 22 +-- src/lte/helper/lena-helper.cc | 62 +++---- src/lte/helper/lena-helper.h | 10 +- src/lte/helper/mac-stats-calculator.cc | 84 ++++----- src/lte/helper/mac-stats-calculator.h | 1 - src/lte/helper/rlc-stats-calculator.cc | 170 +++++++++--------- src/lte/helper/rlc-stats-calculator.h | 9 +- src/lte/test/lte-test-downlink-sinr.cc | 12 +- src/lte/test/lte-test-downlink-sinr.h | 16 +- src/lte/test/lte-test-earfcn.cc | 18 +- src/lte/test/lte-test-interference.cc | 26 +-- src/lte/test/lte-test-interference.h | 8 +- src/lte/test/lte-test-link-adaptation.cc | 92 +++++----- src/lte/test/lte-test-link-adaptation.h | 22 +-- src/lte/test/lte-test-pf-ff-mac-scheduler.cc | 154 ++++++++-------- src/lte/test/lte-test-pf-ff-mac-scheduler.h | 44 ++--- src/lte/test/lte-test-rr-ff-mac-scheduler.cc | 90 +++++----- src/lte/test/lte-test-rr-ff-mac-scheduler.h | 26 +-- .../test/lte-test-spectrum-value-helper.cc | 32 ++-- src/lte/test/lte-test-uplink-sinr.cc | 16 +- src/lte/test/lte-test-uplink-sinr.h | 18 +- 24 files changed, 486 insertions(+), 490 deletions(-) diff --git a/src/lte/examples/inter-cell-interference.cc b/src/lte/examples/inter-cell-interference.cc index 3354bc094..954fba072 100644 --- a/src/lte/examples/inter-cell-interference.cc +++ b/src/lte/examples/inter-cell-interference.cc @@ -38,19 +38,19 @@ int main (int argc, char *argv[]) double radius = 50.0; uint32_t numUes = 1; - + CommandLine cmd; cmd.AddValue ("enbDist", "distance between the two eNBs", enbDist); cmd.AddValue ("radius", "the radius of the disc where UEs are placed around an eNB", radius); cmd.AddValue ("numUes", "how many UEs are attached to each eNB", numUes); cmd.Parse (argc, argv); - + ConfigStore inputConfig; inputConfig.ConfigureDefaults (); - + // parse again so you can override default values from the command line cmd.Parse (argc, argv); - + // determine the string tag that identifies this simulation run // this tag is then appended to all filenames @@ -58,13 +58,13 @@ int main (int argc, char *argv[]) GlobalValue::GetValueByName ("RngRun", runValue); std::ostringstream tag; - tag << "_enbDist" << std::setw(3) << std::setfill ('0') << std::fixed << std::setprecision (0) << enbDist - << "_radius" << std::setw(3) << std::setfill ('0') << std::fixed << std::setprecision (0) << radius - << "_numUes" << std::setw(3) << std::setfill('0') << numUes - << "_rngRun" << std::setw(3) << std::setfill('0') << runValue.Get () ; - + tag << "_enbDist" << std::setw (3) << std::setfill ('0') << std::fixed << std::setprecision (0) << enbDist + << "_radius" << std::setw (3) << std::setfill ('0') << std::fixed << std::setprecision (0) << radius + << "_numUes" << std::setw (3) << std::setfill ('0') << numUes + << "_rngRun" << std::setw (3) << std::setfill ('0') << runValue.Get () ; + Ptr lena = CreateObject (); - + // Create Nodes: eNodeB and UE NodeContainer enbNodes; NodeContainer ueNodes1, ueNodes2; @@ -72,7 +72,7 @@ int main (int argc, char *argv[]) ueNodes1.Create (numUes); ueNodes2.Create (numUes); - // Position of eNBs + // Position of eNBs Ptr positionAlloc = CreateObject (); positionAlloc->Add (Vector (0.0, 0.0, 0.0)); positionAlloc->Add (Vector (enbDist, 0.0, 0.0)); @@ -98,8 +98,8 @@ int main (int argc, char *argv[]) "rho", DoubleValue (radius)); ue2mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); ue2mobility.Install (ueNodes2); - - + + // Create Devices and install them in the Nodes (eNB and UE) NetDeviceContainer enbDevs; @@ -121,7 +121,7 @@ int main (int argc, char *argv[]) Simulator::Stop (Seconds (10)); - // Insert RLC Performance Calculator + // Insert RLC Performance Calculator std::string dlOutFname = "DlRlcStats"; dlOutFname.append (tag.str ()); std::string ulOutFname = "UlRlcStats"; diff --git a/src/lte/examples/lena-first-sim.cc b/src/lte/examples/lena-first-sim.cc index c3f23072c..cebaac34d 100644 --- a/src/lte/examples/lena-first-sim.cc +++ b/src/lte/examples/lena-first-sim.cc @@ -40,18 +40,18 @@ int main (int argc, char *argv[]) ConfigStore inputConfig; inputConfig.ConfigureDefaults (); - + // parse again so you can override default values from the command line cmd.Parse (argc, argv); - + Ptr lena = CreateObject (); //lena->EnableLogComponents (); - + // LogComponentEnable ("LtePhy", LOG_LEVEL_ALL); - LogComponentEnable ("LteEnbPhy", LOG_LEVEL_ALL); + LogComponentEnable ("LteEnbPhy", LOG_LEVEL_ALL); // LogComponentEnable ("LteUePhy", LOG_LEVEL_ALL); - LogComponentEnable ("PfFfMacScheduler", LOG_LEVEL_ALL); + LogComponentEnable ("PfFfMacScheduler", LOG_LEVEL_ALL); // Create Nodes: eNodeB and UE NodeContainer enbNodes; diff --git a/src/lte/examples/lena-rlc-calculator.cc b/src/lte/examples/lena-rlc-calculator.cc index 0ce202371..d436855d8 100644 --- a/src/lte/examples/lena-rlc-calculator.cc +++ b/src/lte/examples/lena-rlc-calculator.cc @@ -37,7 +37,7 @@ int main (int argc, char *argv[]) ConfigStore inputConfig; inputConfig.ConfigureDefaults (); - + // parse again so you can override default values from the command line cmd.Parse (argc, argv); @@ -79,9 +79,9 @@ int main (int argc, char *argv[]) lena->EnableRlcTraces (); - double distance_temp [] = {10000,10000,10000}; //{10000, 10000, 10000}; + double distance_temp [] = { 10000,10000,10000}; //{10000, 10000, 10000}; std::vector userDistance; - userDistance.assign(distance_temp, distance_temp+3); + userDistance.assign (distance_temp, distance_temp + 3); for (int i = 0; i < 3; i++) { Ptr mm = ueNodes.Get (i)->GetObject (); diff --git a/src/lte/examples/profiling-reference.cc b/src/lte/examples/profiling-reference.cc index 0cb9f0619..5819eae33 100644 --- a/src/lte/examples/profiling-reference.cc +++ b/src/lte/examples/profiling-reference.cc @@ -45,13 +45,13 @@ int main (int argc, char *argv[]) cmd.AddValue ("nUe", "Number of UEs", nUe); cmd.AddValue ("radius", "the radius of the disc where UEs are placed around an eNB", radius); cmd.Parse (argc, argv); - + ConfigStore inputConfig; inputConfig.ConfigureDefaults (); // parse again so you can override default values from the command line cmd.Parse (argc, argv); - + // determine the string tag that identifies this simulation run // this tag is then appended to all filenames @@ -66,7 +66,7 @@ int main (int argc, char *argv[]) */ Ptr lena = CreateObject (); lena->EnableLogComponents (); - + // Create Nodes: eNodeB and UE NodeContainer enbNodes; vector ueNodes; @@ -76,15 +76,15 @@ int main (int argc, char *argv[]) { NodeContainer ueNode; ueNode.Create (nUe); - ueNodes.push_back(ueNode); + ueNodes.push_back (ueNode); } - // Position of eNBs + // Position of eNBs Ptr positionAlloc = CreateObject (); for (uint32_t i = 0; i < nEnb; i++) - { - positionAlloc->Add (Vector (enbDist*i, enbDist*i, 0.0)); - } + { + positionAlloc->Add (Vector (enbDist * i, enbDist * i, 0.0)); + } MobilityHelper enbMobility; enbMobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); @@ -97,9 +97,9 @@ int main (int argc, char *argv[]) { MobilityHelper ueMob; ueMob.SetPositionAllocator ("ns3::UniformDiscPositionAllocator", - "X", DoubleValue (enbDist*i), - "Y", DoubleValue (enbDist*i), - "rho", DoubleValue (radius)); + "X", DoubleValue (enbDist * i), + "Y", DoubleValue (enbDist * i), + "rho", DoubleValue (radius)); ueMob.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); ueMobility.push_back (ueMob); ueMobility[i].Install (ueNodes[i]); diff --git a/src/lte/helper/lena-helper.cc b/src/lte/helper/lena-helper.cc index 2f4ea2ff9..910b15625 100644 --- a/src/lte/helper/lena-helper.cc +++ b/src/lte/helper/lena-helper.cc @@ -91,16 +91,16 @@ TypeId LenaHelper::GetTypeId (void) .SetParent () .AddConstructor () .AddAttribute ("Scheduler", - "The type of scheduler to be used for eNBs", + "The type of scheduler to be used for eNBs", StringValue ("ns3::PfFfMacScheduler"), - MakeStringAccessor (&LenaHelper::SetSchedulerType), + MakeStringAccessor (&LenaHelper::SetSchedulerType), MakeStringChecker ()) .AddAttribute ("PropagationModel", - "The type of propagation model to be used", + "The type of propagation model to be used", StringValue ("ns3::FriisSpectrumPropagationLossModel"), - MakeStringAccessor (&LenaHelper::SetPropagationModelType), + MakeStringAccessor (&LenaHelper::SetPropagationModelType), MakeStringChecker ()) - ; + ; return tid; } @@ -186,7 +186,7 @@ LenaHelper::InstallSingleEnbDevice (Ptr n) { Ptr dlPhy = CreateObject (); Ptr ulPhy = CreateObject (); - + Ptr phy = CreateObject (dlPhy, ulPhy); Ptr p = Create (phy->GetObject ()); @@ -203,7 +203,7 @@ LenaHelper::InstallSingleEnbDevice (Ptr n) m_uplinkChannel->AddRx (ulPhy); Ptr mac = CreateObject (); - Ptr sched = m_schedulerFactory.Create (); + Ptr sched = m_schedulerFactory.Create (); Ptr rrc = CreateObject (); @@ -253,7 +253,7 @@ LenaHelper::InstallSingleUeDevice (Ptr n) ulPhy->SetMobility (mm); m_downlinkChannel->AddRx (dlPhy); - + Ptr mac = CreateObject (); Ptr rrc = CreateObject (); @@ -381,14 +381,14 @@ DlSchedulingCallback (Ptr mac, std::string path, uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) { - mac->DlScheduling(frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); + mac->DlScheduling (frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); } void LenaHelper::EnableDlMacTraces (void) { - Config::Connect("/NodeList/0/DeviceList/0/LteEnbMac/DlScheduling", - MakeBoundCallback(&DlSchedulingCallback, macStats)); + Config::Connect ("/NodeList/0/DeviceList/0/LteEnbMac/DlScheduling", + MakeBoundCallback (&DlSchedulingCallback, macStats)); } void @@ -396,14 +396,14 @@ UlSchedulingCallback (Ptr mac, std::string path, uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, uint8_t mcs, uint16_t size) { - mac->UlScheduling(frameNo, subframeNo, rnti, mcs, size); + mac->UlScheduling (frameNo, subframeNo, rnti, mcs, size); } void LenaHelper::EnableUlMacTraces (void) { - Config::Connect("/NodeList/0/DeviceList/0/LteEnbMac/UlScheduling", - MakeBoundCallback(&UlSchedulingCallback, macStats)); + Config::Connect ("/NodeList/0/DeviceList/0/LteEnbMac/UlScheduling", + MakeBoundCallback (&UlSchedulingCallback, macStats)); } void @@ -421,13 +421,13 @@ FindImsiFromEnbRlcPath (std::string path) // /NodeList/#NodeId/DeviceList/#DeviceId/LteEnbRrc/UeMap/#C-RNTI/RadioBearerMap/#LCID/LteRlc/RxPDU // We retrieve the UeInfo accociated to the C-RNTI and perform the IMSI lookup - std::string ueMapPath = path.substr (0, path.find("/RadioBearerMap")); + std::string ueMapPath = path.substr (0, path.find ("/RadioBearerMap")); Config::MatchContainer match = Config::LookupMatches (ueMapPath); if (match.GetN () != 0) { - Ptr ueInfo = match.Get(0); - return ueInfo->GetObject ()->GetImsi (); + Ptr ueInfo = match.Get (0); + return ueInfo->GetObject ()->GetImsi (); } else { @@ -443,13 +443,13 @@ FindImsiFromUeRlc (std::string path) // /NodeList/#NodeId/DeviceList/#DeviceId/LteUeRrc/RlcMap/#LCID/RxPDU // We retrieve the LteUeNetDevice path - std::string lteUeNetDevicePath = path.substr (0, path.find("/LteUeRrc")); + std::string lteUeNetDevicePath = path.substr (0, path.find ("/LteUeRrc")); Config::MatchContainer match = Config::LookupMatches (lteUeNetDevicePath); if (match.GetN () != 0) { - Ptr ueNetDevice = match.Get(0); - return ueNetDevice->GetObject ()->GetImsi (); + Ptr ueNetDevice = match.Get (0); + return ueNetDevice->GetObject ()->GetImsi (); } else { @@ -461,7 +461,7 @@ FindImsiFromUeRlc (std::string path) void DlTxPduCallback (Ptr rlcStats, std::string path, - uint16_t rnti, uint8_t lcid, uint32_t packetSize) + uint16_t rnti, uint8_t lcid, uint32_t packetSize) { uint64_t imsi = FindImsiFromEnbRlcPath (path); rlcStats->DlTxPdu (imsi, rnti, lcid, packetSize); @@ -469,7 +469,7 @@ DlTxPduCallback (Ptr rlcStats, std::string path, void DlRxPduCallback (Ptr rlcStats, std::string path, - uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay) + uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay) { uint64_t imsi = FindImsiFromUeRlc (path); rlcStats->DlRxPdu (imsi, rnti, lcid, packetSize, delay); @@ -479,22 +479,22 @@ void LenaHelper::EnableDlRlcTraces (void) { Config::Connect ("/NodeList/*/DeviceList/*/LteEnbRrc/UeMap/*/RadioBearerMap/*/LteRlc/TxPDU", - MakeBoundCallback(&DlTxPduCallback, rlcStats)); + MakeBoundCallback (&DlTxPduCallback, rlcStats)); Config::Connect ("/NodeList/*/DeviceList/*/LteUeRrc/RlcMap/*/RxPDU", - MakeBoundCallback(&DlRxPduCallback, rlcStats)); + MakeBoundCallback (&DlRxPduCallback, rlcStats)); } void -UlTxPduCallback(Ptr rlcStats, std::string path, - uint16_t rnti, uint8_t lcid, uint32_t packetSize) +UlTxPduCallback (Ptr rlcStats, std::string path, + uint16_t rnti, uint8_t lcid, uint32_t packetSize) { uint64_t imsi = FindImsiFromUeRlc (path); rlcStats->UlTxPdu (imsi, rnti, lcid, packetSize); } void -UlRxPduCallback(Ptr rlcStats, std::string path, - uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay) +UlRxPduCallback (Ptr rlcStats, std::string path, + uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay) { uint64_t imsi = FindImsiFromEnbRlcPath (path); rlcStats->UlRxPdu (imsi, rnti, lcid, packetSize, delay); @@ -505,10 +505,10 @@ UlRxPduCallback(Ptr rlcStats, std::string path, void LenaHelper::EnableUlRlcTraces (void) { - Config::Connect("/NodeList/*/DeviceList/*/LteUeRrc/RlcMap/*/TxPDU", - MakeBoundCallback(&UlTxPduCallback, rlcStats)); + Config::Connect ("/NodeList/*/DeviceList/*/LteUeRrc/RlcMap/*/TxPDU", + MakeBoundCallback (&UlTxPduCallback, rlcStats)); Config::Connect ("/NodeList/0/DeviceList/*/LteEnbRrc/UeMap/*/RadioBearerMap/*/LteRlc/RxPDU", - MakeBoundCallback(&UlRxPduCallback, rlcStats)); + MakeBoundCallback (&UlRxPduCallback, rlcStats)); } Ptr diff --git a/src/lte/helper/lena-helper.h b/src/lte/helper/lena-helper.h index acb75f898..892134806 100644 --- a/src/lte/helper/lena-helper.h +++ b/src/lte/helper/lena-helper.h @@ -120,14 +120,14 @@ public: * \param bearer the characteristics of the bearer to be activated */ void ActivateEpsBearer (Ptr ueDevice, EpsBearer bearer); - + /** * * * \param type the type of scheduler to be used for the eNBs */ void SetSchedulerType (std::string type); - + /** * set an attribute for the scheduler to be created */ @@ -139,7 +139,7 @@ public: * \param type the type of propagation model to be used for the eNBs */ void SetPropagationModelType (std::string type); - + /** * set an attribute for the propagation model to be created */ @@ -185,12 +185,10 @@ public: Ptr GetRlcStats (void); protected: - // inherited from Object virtual void DoStart (void); private: - Ptr InstallSingleEnbDevice (Ptr n); Ptr InstallSingleUeDevice (Ptr n); @@ -198,7 +196,7 @@ private: Ptr m_downlinkChannel; Ptr m_uplinkChannel; - + ObjectFactory m_schedulerFactory; ObjectFactory m_propagationModelFactory; diff --git a/src/lte/helper/mac-stats-calculator.cc b/src/lte/helper/mac-stats-calculator.cc index 9ad410ce1..de9f24532 100644 --- a/src/lte/helper/mac-stats-calculator.cc +++ b/src/lte/helper/mac-stats-calculator.cc @@ -29,17 +29,17 @@ NS_LOG_COMPONENT_DEFINE ("MacStatsCalculator"); NS_OBJECT_ENSURE_REGISTERED (MacStatsCalculator); -MacStatsCalculator::MacStatsCalculator() : - m_dlOutputFilename (""), - m_dlFirstWrite(true), +MacStatsCalculator::MacStatsCalculator () + : m_dlOutputFilename (""), + m_dlFirstWrite (true), m_ulOutputFilename (""), - m_ulFirstWrite(true) + m_ulFirstWrite (true) { NS_LOG_FUNCTION (this); } -MacStatsCalculator::~MacStatsCalculator() +MacStatsCalculator::~MacStatsCalculator () { NS_LOG_FUNCTION (this); } @@ -60,7 +60,7 @@ MacStatsCalculator::GetTypeId (void) StringValue ("UlMacStats.csv"), MakeStringAccessor (&MacStatsCalculator::SetUlOutputFilename), MakeStringChecker ()) - ; + ; return tid; } @@ -87,11 +87,11 @@ MacStatsCalculator::DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_ if ( m_dlFirstWrite == true ) { outFile.open (m_dlOutputFilename.c_str ()); - if (! outFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); - return; - } + if (!outFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); + return; + } m_dlFirstWrite = false; outFile << "# time\tframe\tsframe\tRNTI\tmcsTb1\tsizeTb1\tmcsTb2\tsizeTb2"; outFile << std::endl; @@ -99,22 +99,22 @@ MacStatsCalculator::DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_ else { outFile.open (m_dlOutputFilename.c_str (), std::ios_base::app); - if (! outFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); - return; - } + if (!outFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); + return; + } } - outFile << Simulator::Now ().GetNanoSeconds () / (double) 1e9 << "\t"; - outFile << frameNo << "\t"; - outFile << subframeNo << "\t"; - outFile << rnti<< "\t"; - outFile << (uint32_t) mcsTb1 << "\t"; - outFile << sizeTb1 << "\t"; - outFile << (uint32_t) mcsTb2 << "\t"; - outFile << sizeTb2 << std::endl; - outFile.close (); + outFile << Simulator::Now ().GetNanoSeconds () / (double) 1e9 << "\t"; + outFile << frameNo << "\t"; + outFile << subframeNo << "\t"; + outFile << rnti << "\t"; + outFile << (uint32_t) mcsTb1 << "\t"; + outFile << sizeTb1 << "\t"; + outFile << (uint32_t) mcsTb2 << "\t"; + outFile << sizeTb2 << std::endl; + outFile.close (); } void @@ -128,11 +128,11 @@ MacStatsCalculator::UlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_ if ( m_ulFirstWrite == true ) { outFile.open (m_ulOutputFilename.c_str ()); - if (! outFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); - return; - } + if (!outFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); + return; + } m_ulFirstWrite = false; outFile << "# time\tframe\tsframe\tRNTI\tmcs\tsize"; outFile << std::endl; @@ -140,20 +140,20 @@ MacStatsCalculator::UlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_ else { outFile.open (m_ulOutputFilename.c_str (), std::ios_base::app); - if (! outFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); - return; - } + if (!outFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); + return; + } } - outFile << Simulator::Now ().GetNanoSeconds () / (double) 1e9 << "\t"; - outFile << frameNo << "\t"; - outFile << subframeNo << "\t"; - outFile << rnti<< "\t"; - outFile << (uint32_t) mcs << "\t"; - outFile << size << std::endl; - outFile.close (); + outFile << Simulator::Now ().GetNanoSeconds () / (double) 1e9 << "\t"; + outFile << frameNo << "\t"; + outFile << subframeNo << "\t"; + outFile << rnti << "\t"; + outFile << (uint32_t) mcs << "\t"; + outFile << size << std::endl; + outFile.close (); } diff --git a/src/lte/helper/mac-stats-calculator.h b/src/lte/helper/mac-stats-calculator.h index 97c6989ac..cb835158d 100644 --- a/src/lte/helper/mac-stats-calculator.h +++ b/src/lte/helper/mac-stats-calculator.h @@ -99,7 +99,6 @@ public: private: - std::string m_dlOutputFilename; bool m_dlFirstWrite; diff --git a/src/lte/helper/rlc-stats-calculator.cc b/src/lte/helper/rlc-stats-calculator.cc index a65f9c4df..0caaf0d5b 100644 --- a/src/lte/helper/rlc-stats-calculator.cc +++ b/src/lte/helper/rlc-stats-calculator.cc @@ -27,13 +27,13 @@ namespace ns3 { - ImsiLcidPair::ImsiLcidPair () +ImsiLcidPair::ImsiLcidPair () { } - ImsiLcidPair::ImsiLcidPair (const uint64_t a, const uint8_t b) - : m_imsi(a), - m_lcId(b) +ImsiLcidPair::ImsiLcidPair (const uint64_t a, const uint8_t b) + : m_imsi (a), + m_lcId (b) { } @@ -54,16 +54,16 @@ NS_LOG_COMPONENT_DEFINE ("RlcStatsCalculator"); NS_OBJECT_ENSURE_REGISTERED (RlcStatsCalculator); -RlcStatsCalculator::RlcStatsCalculator() : - m_dlOutputFilename (""), +RlcStatsCalculator::RlcStatsCalculator () + : m_dlOutputFilename (""), m_ulOutputFilename (""), - m_firstWrite(true) + m_firstWrite (true) { NS_LOG_FUNCTION (this); } -RlcStatsCalculator::~RlcStatsCalculator() +RlcStatsCalculator::~RlcStatsCalculator () { NS_LOG_FUNCTION (this); ShowResults (); @@ -87,14 +87,14 @@ RlcStatsCalculator::GetTypeId (void) MakeStringChecker ()) .AddAttribute ("StartTime", "Start time of the on going epoch.", - TimeValue ( Seconds(0.) ), + TimeValue ( Seconds (0.) ), MakeTimeAccessor (&RlcStatsCalculator::m_startTime), MakeTimeChecker ()) - .AddAttribute("EpochDuration", - "Epoch duration.", TimeValue(Seconds(0.25)), - MakeTimeAccessor(&RlcStatsCalculator::m_epochDuration), - MakeTimeChecker()) - ; + .AddAttribute ("EpochDuration", + "Epoch duration.", TimeValue (Seconds (0.25)), + MakeTimeAccessor (&RlcStatsCalculator::m_epochDuration), + MakeTimeChecker ()) + ; return tid; } @@ -148,8 +148,8 @@ RlcStatsCalculator::UlRxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_ m_ulRxPackets[p]++; m_ulRxData[p] += packetSize; - Uint64StatsMap::iterator it = m_ulDelay.find(p); - if (it == m_ulDelay.end()) + Uint64StatsMap::iterator it = m_ulDelay.find (p); + if (it == m_ulDelay.end ()) { NS_LOG_DEBUG (this << " Creating UL stats calculators for IMSI " << p.m_imsi << " and LCI " << (uint32_t) p.m_lcId ); m_ulDelay[p] = CreateObject > (); @@ -172,14 +172,14 @@ RlcStatsCalculator::DlRxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_ m_dlRxPackets[p]++; m_dlRxData[p] += packetSize; - Uint64StatsMap::iterator it = m_dlDelay.find(p); - if (it == m_dlDelay.end()) + Uint64StatsMap::iterator it = m_dlDelay.find (p); + if (it == m_dlDelay.end ()) { NS_LOG_DEBUG (this << " Creating DL stats calculators for IMSI " << p.m_imsi << " and LCI " << (uint32_t) p.m_lcId ); m_dlDelay[p] = CreateObject > (); m_dlPduSize[p] = CreateObject > (); } - m_dlDelay[p]->Update(delay); + m_dlDelay[p]->Update (delay); m_dlPduSize[p]->Update (packetSize); } CheckEpoch (); @@ -192,25 +192,25 @@ RlcStatsCalculator::ShowResults (void) NS_LOG_FUNCTION (this << m_ulOutputFilename.c_str () << m_dlOutputFilename.c_str () ); NS_LOG_INFO ("Write Rlc Stats in " << m_ulOutputFilename.c_str () << " and in " << m_dlOutputFilename.c_str ()); - + std::ofstream ulOutFile; std::ofstream dlOutFile; if ( m_firstWrite == true ) { ulOutFile.open (m_ulOutputFilename.c_str ()); - if (! ulOutFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); - return; - } + if (!ulOutFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); + return; + } dlOutFile.open (m_dlOutputFilename.c_str ()); - if (! dlOutFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); - return; - } + if (!dlOutFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); + return; + } m_firstWrite = false; ulOutFile << "% start\tend\tIMSI\tRNTI\tLCID\tnTxPDUs\tTxBytes\tnRxPDUs\tRxBytes\t"; ulOutFile << "delay\tstdDev\tmin\tmax\t"; @@ -224,22 +224,22 @@ RlcStatsCalculator::ShowResults (void) else { ulOutFile.open (m_ulOutputFilename.c_str (), std::ios_base::app); - if (! ulOutFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); - return; - } + if (!ulOutFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_ulOutputFilename.c_str ()); + return; + } dlOutFile.open (m_dlOutputFilename.c_str (), std::ios_base::app); - if (! dlOutFile.is_open ()) - { - NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); - return; - } + if (!dlOutFile.is_open ()) + { + NS_LOG_ERROR ("Can't open file " << m_dlOutputFilename.c_str ()); + return; + } } - WriteUlResults(ulOutFile); - WriteDlResults(dlOutFile); + WriteUlResults (ulOutFile); + WriteDlResults (dlOutFile); } @@ -249,7 +249,7 @@ RlcStatsCalculator::WriteUlResults (std::ofstream& outFile) // Get the unique IMSI / LCID list std::vector pairVector; - for (Uint32Map::iterator it = m_ulTxPackets.begin(); it != m_ulTxPackets.end(); ++it) + for (Uint32Map::iterator it = m_ulTxPackets.begin (); it != m_ulTxPackets.end (); ++it) { if (find (pairVector.begin (), pairVector.end (), (*it).first ) == pairVector.end () ) { @@ -258,11 +258,11 @@ RlcStatsCalculator::WriteUlResults (std::ofstream& outFile) } Time endTime = m_startTime + m_epochDuration; - for (std::vector::iterator it = pairVector.begin(); it != pairVector.end(); ++it) + for (std::vector::iterator it = pairVector.begin (); it != pairVector.end (); ++it) { ImsiLcidPair p = *it; outFile << m_startTime.GetNanoSeconds () / 1.0e9 << "\t"; - outFile << endTime.GetNanoSeconds() / 1.0e9 << "\t"; + outFile << endTime.GetNanoSeconds () / 1.0e9 << "\t"; outFile << p.m_imsi << "\t"; outFile << m_flowId[p].m_rnti << "\t"; outFile << (uint32_t) m_flowId[p].m_lcId << "\t"; @@ -271,12 +271,12 @@ RlcStatsCalculator::WriteUlResults (std::ofstream& outFile) outFile << GetUlRxPackets (p.m_imsi, p.m_lcId) << "\t"; outFile << GetUlRxData (p.m_imsi, p.m_lcId) << "\t"; std::vector stats = GetUlDelayStats (p.m_imsi, p.m_lcId); - for( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) + for ( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) { outFile << (*it) * 1e-9 << "\t"; } stats = GetUlPduSizeStats (p.m_imsi, p.m_lcId); - for( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) + for ( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) { outFile << (*it) << "\t"; } @@ -291,7 +291,7 @@ RlcStatsCalculator::WriteDlResults (std::ofstream& outFile) { // Get the unique IMSI list std::vector pairVector; - for (Uint32Map::iterator it = m_dlTxPackets.begin(); it != m_dlTxPackets.end(); ++it) + for (Uint32Map::iterator it = m_dlTxPackets.begin (); it != m_dlTxPackets.end (); ++it) { if (find (pairVector.begin (), pairVector.end (), (*it).first ) == pairVector.end () ) { @@ -300,11 +300,11 @@ RlcStatsCalculator::WriteDlResults (std::ofstream& outFile) } Time endTime = m_startTime + m_epochDuration; - for (std::vector::iterator pair = pairVector.begin(); pair != pairVector.end(); ++pair) + for (std::vector::iterator pair = pairVector.begin (); pair != pairVector.end (); ++pair) { ImsiLcidPair p = *pair; outFile << m_startTime.GetNanoSeconds () / 1.0e9 << "\t"; - outFile << endTime.GetNanoSeconds() / 1.0e9 << "\t"; + outFile << endTime.GetNanoSeconds () / 1.0e9 << "\t"; outFile << p.m_imsi << "\t"; outFile << m_flowId[p].m_rnti << "\t"; outFile << (uint32_t) m_flowId[p].m_lcId << "\t"; @@ -313,12 +313,12 @@ RlcStatsCalculator::WriteDlResults (std::ofstream& outFile) outFile << GetDlRxPackets (p.m_imsi, p.m_lcId) << "\t"; outFile << GetDlRxData (p.m_imsi, p.m_lcId) << "\t"; std::vector stats = GetDlDelayStats (p.m_imsi, p.m_lcId); - for( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) + for ( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) { outFile << (*it) * 1e-9 << "\t"; } stats = GetDlPduSizeStats (p.m_imsi, p.m_lcId); - for( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) + for ( std::vector::iterator it = stats.begin (); it != stats.end (); ++it ) { outFile << (*it) << "\t"; } @@ -331,19 +331,19 @@ RlcStatsCalculator::WriteDlResults (std::ofstream& outFile) void RlcStatsCalculator::ResetResults (void) { - m_ulTxPackets.erase (m_ulTxPackets.begin (), m_ulTxPackets.end () ); - m_ulRxPackets.erase (m_ulRxPackets.begin (), m_ulRxPackets.end () ); - m_ulRxData.erase (m_ulRxData.begin (), m_ulRxData.end () ); - m_ulTxData.erase (m_ulTxData.begin (), m_ulTxData.end () ); - m_ulDelay.erase (m_ulDelay.begin (), m_ulDelay.end () ); - m_ulPduSize.erase (m_ulPduSize.begin (), m_ulPduSize.end () ); + m_ulTxPackets.erase (m_ulTxPackets.begin (), m_ulTxPackets.end () ); + m_ulRxPackets.erase (m_ulRxPackets.begin (), m_ulRxPackets.end () ); + m_ulRxData.erase (m_ulRxData.begin (), m_ulRxData.end () ); + m_ulTxData.erase (m_ulTxData.begin (), m_ulTxData.end () ); + m_ulDelay.erase (m_ulDelay.begin (), m_ulDelay.end () ); + m_ulPduSize.erase (m_ulPduSize.begin (), m_ulPduSize.end () ); - m_dlTxPackets.erase (m_dlTxPackets.begin (), m_dlTxPackets.end () ); - m_dlRxPackets.erase (m_dlRxPackets.begin (), m_dlRxPackets.end () ); - m_dlRxData.erase (m_dlRxData.begin (), m_dlRxData.end () ); - m_dlTxData.erase (m_dlTxData.begin (), m_dlTxData.end () ); - m_dlDelay.erase (m_dlDelay.begin (), m_dlDelay.end () ); - m_dlPduSize.erase (m_dlPduSize.begin (), m_dlPduSize.end () ); + m_dlTxPackets.erase (m_dlTxPackets.begin (), m_dlTxPackets.end () ); + m_dlRxPackets.erase (m_dlRxPackets.begin (), m_dlRxPackets.end () ); + m_dlRxData.erase (m_dlRxData.begin (), m_dlRxData.end () ); + m_dlTxData.erase (m_dlTxData.begin (), m_dlTxData.end () ); + m_dlDelay.erase (m_dlDelay.begin (), m_dlDelay.end () ); + m_dlPduSize.erase (m_dlPduSize.begin (), m_dlPduSize.end () ); } void @@ -352,9 +352,9 @@ RlcStatsCalculator::CheckEpoch (void) if ( Simulator::Now () > m_startTime + m_epochDuration ) { std::cout << "JNNNNNNNNNG New epoch! startTime " << m_startTime << " epoch duration " << m_epochDuration << std::endl; - ShowResults(); - ResetResults(); - StartEpoch(); + ShowResults (); + ResetResults (); + StartEpoch (); } } @@ -400,7 +400,7 @@ RlcStatsCalculator::GetUlDelay (uint64_t imsi, uint8_t lcid) Uint64StatsMap::iterator it = m_ulDelay.find (p); if ( it == m_ulDelay.end () ) { - NS_LOG_ERROR("UL delay for " << imsi << " - " << lcid << " not found"); + NS_LOG_ERROR ("UL delay for " << imsi << " - " << lcid << " not found"); return 0; } @@ -415,14 +415,14 @@ RlcStatsCalculator::GetUlDelayStats (uint64_t imsi, uint8_t lcid) Uint64StatsMap::iterator it = m_ulDelay.find (p); if ( it == m_ulDelay.end () ) { - NS_LOG_ERROR("UL delay for " << imsi << " - " << lcid << " not found"); + NS_LOG_ERROR ("UL delay for " << imsi << " - " << lcid << " not found"); return stats; } - stats.push_back(m_ulDelay[p]->getMean ()); - stats.push_back(m_ulDelay[p]->getStddev ()); - stats.push_back(m_ulDelay[p]->getMin ()); - stats.push_back(m_ulDelay[p]->getMax ()); + stats.push_back (m_ulDelay[p]->getMean ()); + stats.push_back (m_ulDelay[p]->getStddev ()); + stats.push_back (m_ulDelay[p]->getMin ()); + stats.push_back (m_ulDelay[p]->getMax ()); return stats; } @@ -434,7 +434,7 @@ RlcStatsCalculator::GetUlPduSizeStats (uint64_t imsi, uint8_t lcid) Uint32StatsMap::iterator it = m_ulPduSize.find (p); if ( it == m_ulPduSize.end () ) { - NS_LOG_ERROR("UL PDU Size for " << imsi << " - " << lcid << " not found"); + NS_LOG_ERROR ("UL PDU Size for " << imsi << " - " << lcid << " not found"); return stats; } @@ -480,7 +480,7 @@ RlcStatsCalculator::GetDlDelay (uint64_t imsi, uint8_t lcid) Uint64StatsMap::iterator it = m_dlDelay.find (p); if ( it == m_dlDelay.end () ) { - NS_LOG_ERROR("DL delay for " << imsi << " not found"); + NS_LOG_ERROR ("DL delay for " << imsi << " not found"); return 0; } return m_dlDelay[p]->getMean (); @@ -495,14 +495,14 @@ RlcStatsCalculator::GetDlDelayStats (uint64_t imsi, uint8_t lcid) if ( it == m_dlDelay.end () ) { - NS_LOG_ERROR("DL delay for " << imsi << " not found"); + NS_LOG_ERROR ("DL delay for " << imsi << " not found"); return stats; } - stats.push_back(m_dlDelay[p]->getMean ()); - stats.push_back(m_dlDelay[p]->getStddev ()); - stats.push_back(m_dlDelay[p]->getMin ()); - stats.push_back(m_dlDelay[p]->getMax ()); + stats.push_back (m_dlDelay[p]->getMean ()); + stats.push_back (m_dlDelay[p]->getStddev ()); + stats.push_back (m_dlDelay[p]->getMin ()); + stats.push_back (m_dlDelay[p]->getMax ()); return stats; } @@ -515,14 +515,14 @@ RlcStatsCalculator::GetDlPduSizeStats (uint64_t imsi, uint8_t lcid) if ( it == m_dlPduSize.end () ) { - NS_LOG_ERROR("DL delay for " << imsi << " not found"); + NS_LOG_ERROR ("DL delay for " << imsi << " not found"); return stats; } - stats.push_back(m_dlPduSize[p]->getMean ()); - stats.push_back(m_dlPduSize[p]->getStddev ()); - stats.push_back(m_dlPduSize[p]->getMin ()); - stats.push_back(m_dlPduSize[p]->getMax ()); + stats.push_back (m_dlPduSize[p]->getMean ()); + stats.push_back (m_dlPduSize[p]->getStddev ()); + stats.push_back (m_dlPduSize[p]->getMin ()); + stats.push_back (m_dlPduSize[p]->getMax ()); return stats; } diff --git a/src/lte/helper/rlc-stats-calculator.h b/src/lte/helper/rlc-stats-calculator.h index 9c892d43b..64999b3f6 100644 --- a/src/lte/helper/rlc-stats-calculator.h +++ b/src/lte/helper/rlc-stats-calculator.h @@ -30,7 +30,7 @@ #include namespace ns3 { - + struct ImsiLcidPair { @@ -66,7 +66,6 @@ typedef std::map FlowIdMap; class RlcStatsCalculator : public Object { public: - /** * Class constructor */ @@ -77,9 +76,9 @@ public: */ virtual ~RlcStatsCalculator (); - /** - * Inherited from ns3::Object - */ + /** + * Inherited from ns3::Object + */ static TypeId GetTypeId (void); /** diff --git a/src/lte/test/lte-test-downlink-sinr.cc b/src/lte/test/lte-test-downlink-sinr.cc index ead149851..cd1738df3 100644 --- a/src/lte/test/lte-test-downlink-sinr.cc +++ b/src/lte/test/lte-test-downlink-sinr.cc @@ -201,7 +201,7 @@ LteDownlinkSinrTestCase::DoRun (void) { // Create phy tag (different for each packet burst) // and add to the first packet - pktTag[pb] = LtePhyTag (100 * (pb+1)); + pktTag[pb] = LtePhyTag (100 * (pb + 1)); pkt[pb][i]->AddPacketTag ( pktTag[pb] ); } @@ -246,12 +246,12 @@ LteDownlinkSinrTestCase::DoRun (void) */ // eNB sends data to 2 UEs through 2 subcarriers - Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[0], m_sv, dlPhy->GetSpectrumType(), ds); + Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[0], m_sv, dlPhy->GetSpectrumType (), ds); - Simulator::Schedule (ti1, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[1], i1, dlPhy->GetSpectrumType(), di1); - Simulator::Schedule (ti2, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[2], i2, dlPhy->GetSpectrumType(), di2); - Simulator::Schedule (ti3, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[3], i3, dlPhy->GetSpectrumType(), di3); - Simulator::Schedule (ti4, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[4], i4, dlPhy->GetSpectrumType(), di4); + Simulator::Schedule (ti1, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[1], i1, dlPhy->GetSpectrumType (), di1); + Simulator::Schedule (ti2, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[2], i2, dlPhy->GetSpectrumType (), di2); + Simulator::Schedule (ti3, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[3], i3, dlPhy->GetSpectrumType (), di3); + Simulator::Schedule (ti4, &LteSpectrumPhy::StartRx, dlPhy, packetBursts[4], i4, dlPhy->GetSpectrumType (), di4); Simulator::Stop (Seconds (5.0)); Simulator::Run (); diff --git a/src/lte/test/lte-test-downlink-sinr.h b/src/lte/test/lte-test-downlink-sinr.h index ae9d70f9f..68abbf19b 100644 --- a/src/lte/test/lte-test-downlink-sinr.h +++ b/src/lte/test/lte-test-downlink-sinr.h @@ -41,16 +41,16 @@ public: class LteDownlinkSinrTestCase : public TestCase { - public: - LteDownlinkSinrTestCase (Ptr sv, Ptr sinr, std::string name); - virtual ~LteDownlinkSinrTestCase (); +public: + LteDownlinkSinrTestCase (Ptr sv, Ptr sinr, std::string name); + virtual ~LteDownlinkSinrTestCase (); - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); - Ptr m_sv; - Ptr m_sm; - Ptr m_sinr; + Ptr m_sv; + Ptr m_sm; + Ptr m_sinr; }; diff --git a/src/lte/test/lte-test-earfcn.cc b/src/lte/test/lte-test-earfcn.cc index a7dd899a8..86a2c1977 100644 --- a/src/lte/test/lte-test-earfcn.cc +++ b/src/lte/test/lte-test-earfcn.cc @@ -39,14 +39,14 @@ protected: uint16_t m_earfcn; double m_f; - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteEarfcnTestCase::LteEarfcnTestCase (const char* str, uint16_t earfcn, double f) : TestCase (str), - m_earfcn (earfcn), - m_f (f) + m_earfcn (earfcn), + m_f (f) { NS_LOG_FUNCTION (this << str << earfcn << f); } @@ -67,8 +67,8 @@ class LteEarfcnDlTestCase : public LteEarfcnTestCase public: LteEarfcnDlTestCase (const char* str, uint16_t earfcn, double f); - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteEarfcnDlTestCase::LteEarfcnDlTestCase (const char* str, uint16_t earfcn, double f) @@ -79,7 +79,7 @@ LteEarfcnDlTestCase::LteEarfcnDlTestCase (const char* str, uint16_t earfcn, doub void LteEarfcnDlTestCase::DoRun (void) { -// LogLevel logLevel = (LogLevel)(LOG_PREFIX_FUNC | LOG_PREFIX_TIME | LOG_LEVEL_ALL); +// LogLevel logLevel = (LogLevel)(LOG_PREFIX_FUNC | LOG_PREFIX_TIME | LOG_LEVEL_ALL); // LogComponentEnable ("LteSpectrumValueHelper", logLevel); // LogComponentEnable ("LteTestEarfcn", logLevel); @@ -93,8 +93,8 @@ class LteEarfcnUlTestCase : public LteEarfcnTestCase public: LteEarfcnUlTestCase (const char* str, uint16_t earfcn, double f); - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteEarfcnUlTestCase::LteEarfcnUlTestCase (const char* str, uint16_t earfcn, double f) diff --git a/src/lte/test/lte-test-interference.cc b/src/lte/test/lte-test-interference.cc index da5c1d2cf..bc9a006e2 100644 --- a/src/lte/test/lte-test-interference.cc +++ b/src/lte/test/lte-test-interference.cc @@ -47,15 +47,15 @@ LteTestDlSchedulingCallback (LteInterferenceTestCase *testcase, std::string path uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) { - testcase->DlScheduling(frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); + testcase->DlScheduling (frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); } void LteTestUlSchedulingCallback (LteInterferenceTestCase *testcase, std::string path, - uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcs, uint16_t sizeTb) + uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, + uint8_t mcs, uint16_t sizeTb) { - testcase->UlScheduling(frameNo, subframeNo, rnti, mcs, sizeTb); + testcase->UlScheduling (frameNo, subframeNo, rnti, mcs, sizeTb); } @@ -68,7 +68,7 @@ LteInterferenceTestSuite::LteInterferenceTestSuite () { NS_LOG_INFO ("Creating LteInterferenceTestSuite"); - AddTestCase (new LteInterferenceTestCase ("d1=3000, d2=6000", 3000.000000, 6000.000000, 3.844681, 1.714583, 0.761558, 0.389662, 6, 4)); + AddTestCase (new LteInterferenceTestCase ("d1=3000, d2=6000", 3000.000000, 6000.000000, 3.844681, 1.714583, 0.761558, 0.389662, 6, 4)); AddTestCase (new LteInterferenceTestCase ("d1=50, d2=10", 50.000000, 10.000000, 0.040000, 0.040000, 0.010399, 0.010399, 0, 0)); AddTestCase (new LteInterferenceTestCase ("d1=50, d2=20", 50.000000, 20.000000, 0.160000, 0.159998, 0.041154, 0.041153, 0, 0)); AddTestCase (new LteInterferenceTestCase ("d1=50, d2=50", 50.000000, 50.000000, 0.999997, 0.999907, 0.239828, 0.239808, 2, 2)); @@ -79,7 +79,7 @@ LteInterferenceTestSuite::LteInterferenceTestSuite () AddTestCase (new LteInterferenceTestCase ("d1=50, d2=10000", 50.000000, 10000.000000, 35964.181431, 8505.970614, 12.667381, 10.588084, 28, 28)); AddTestCase (new LteInterferenceTestCase ("d1=50, d2=100000", 50.000000, 100000.000000, 327284.773828, 10774.181090, 15.853097, 10.928917, 28, 28)); AddTestCase (new LteInterferenceTestCase ("d1=50, d2=1000000", 50.000000, 1000000.000000, 356132.574152, 10802.988445, 15.974963, 10.932767, 28, 28)); - + } static LteInterferenceTestSuite lteLinkAdaptationWithInterferenceTestSuite; @@ -93,8 +93,8 @@ LteInterferenceTestCase::LteInterferenceTestCase (std::string name, double d1, d : TestCase (name), m_d1 (d1), m_d2 (d2), - m_dlSinrDb (10*log10(dlSinr)), - m_ulSinrDb (10*log10(ulSinr)), + m_dlSinrDb (10 * log10 (dlSinr)), + m_ulSinrDb (10 * log10 (ulSinr)), m_dlSe (dlSe), m_ulSe (ulSe), m_dlMcs (dlMcs), @@ -129,7 +129,7 @@ LteInterferenceTestCase::DoRun (void) NodeContainer allNodes = NodeContainer ( enbNodes, ueNodes1, ueNodes2); // the topology is the following: - // d2 + // d2 // UE1-----------eNB2 // | | // d1| |d1 @@ -178,10 +178,10 @@ LteInterferenceTestCase::DoRun (void) enbPhy->GetUplinkSpectrumPhy ()->AddSinrChunkProcessor (testUlSinr); Config::Connect ("/NodeList/0/DeviceList/0/LteEnbMac/DlScheduling", - MakeBoundCallback(&LteTestDlSchedulingCallback, this)); + MakeBoundCallback (&LteTestDlSchedulingCallback, this)); Config::Connect ("/NodeList/0/DeviceList/0/LteEnbMac/UlScheduling", - MakeBoundCallback(&LteTestUlSchedulingCallback, this)); + MakeBoundCallback (&LteTestUlSchedulingCallback, this)); Simulator::Stop (Seconds (0.005)); @@ -199,7 +199,7 @@ LteInterferenceTestCase::DoRun (void) void LteInterferenceTestCase::DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) + uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) { /** * Note: @@ -214,7 +214,7 @@ LteInterferenceTestCase::DlScheduling (uint32_t frameNo, uint32_t subframeNo, ui void LteInterferenceTestCase::UlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcs, uint16_t sizeTb) + uint8_t mcs, uint16_t sizeTb) { /** * Note: diff --git a/src/lte/test/lte-test-interference.h b/src/lte/test/lte-test-interference.h index 21fa36f83..7103eaa80 100644 --- a/src/lte/test/lte-test-interference.h +++ b/src/lte/test/lte-test-interference.h @@ -43,16 +43,16 @@ class LteInterferenceTestCase : public TestCase public: LteInterferenceTestCase (std::string name, double d1, double d2, double dlSinr, double ulSinr, double dlSe, double ulSe, uint16_t dlMcs, uint16_t ulMcs); virtual ~LteInterferenceTestCase (); - + void DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2); + uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2); void UlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, uint8_t mcs, uint16_t sizeTb); - + private: virtual void DoRun (void); - + double m_d1; double m_d2; diff --git a/src/lte/test/lte-test-link-adaptation.cc b/src/lte/test/lte-test-link-adaptation.cc index 4a153e006..ecaaff8d3 100644 --- a/src/lte/test/lte-test-link-adaptation.cc +++ b/src/lte/test/lte-test-link-adaptation.cc @@ -44,10 +44,10 @@ using namespace ns3; void LteTestDlSchedulingCallback (LteLinkAdaptationTestCase *testcase, std::string path, - uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) + uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, + uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2) { - testcase->DlScheduling(frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); + testcase->DlScheduling (frameNo, subframeNo, rnti, mcsTb1, sizeTb1, mcsTb2, sizeTb2); } /** @@ -60,59 +60,59 @@ LteLinkAdaptationTestSuite::LteLinkAdaptationTestSuite () NS_LOG_INFO ("Creating LteLinkAdaptionTestSuite"); struct SnrEfficiencyMcs - { - double snrDb; - double efficiency; - int mcsIndex; - }; + { + double snrDb; + double efficiency; + int mcsIndex; + }; /** * Test vectors: SNRDB, Spectral Efficiency, MCS index * From XXX */ SnrEfficiencyMcs snrEfficiencyMcs[] = { - {-5.00000, 0.08024, -1}, - {-4.00000, 0.10030, -1}, - {-3.00000, 0.12518, -1}, - {-2.00000, 0.15589, 0}, - {-1.00000, 0.19365, 0}, - {0.00000, 0.23983, 2}, - {1.00000, 0.29593, 2}, - {2.00000, 0.36360, 2}, - {3.00000, 0.44451, 4}, - {4.00000, 0.54031, 4}, - {5.00000, 0.65251, 6}, - {6.00000, 0.78240, 6}, - {7.00000, 0.93086, 8}, - {8.00000, 1.09835, 8}, - {9.00000, 1.28485, 10}, - {10.00000, 1.48981, 12}, - {11.00000, 1.71229, 12}, - {12.00000, 1.95096, 14}, - {13.00000, 2.20429, 14}, - {14.00000, 2.47062, 16}, - {15.00000, 2.74826, 18}, - {16.00000, 3.03560, 18}, - {17.00000, 3.33115, 20}, - {18.00000, 3.63355, 20}, - {19.00000, 3.94163, 22}, - {20.00000, 4.25439, 22}, - {21.00000, 4.57095, 24}, - {22.00000, 4.89060, 24}, - {23.00000, 5.21276, 26}, - {24.00000, 5.53693, 26}, - {25.00000, 5.86271, 28}, - {26.00000, 6.18980, 28}, - {27.00000, 6.51792, 28}, - {28.00000, 6.84687, 28}, - {29.00000, 7.17649, 28}, - {30.00000, 7.50663, 28}, + { -5.00000, 0.08024, -1}, + { -4.00000, 0.10030, -1}, + { -3.00000, 0.12518, -1}, + { -2.00000, 0.15589, 0}, + { -1.00000, 0.19365, 0}, + { 0.00000, 0.23983, 2}, + { 1.00000, 0.29593, 2}, + { 2.00000, 0.36360, 2}, + { 3.00000, 0.44451, 4}, + { 4.00000, 0.54031, 4}, + { 5.00000, 0.65251, 6}, + { 6.00000, 0.78240, 6}, + { 7.00000, 0.93086, 8}, + { 8.00000, 1.09835, 8}, + { 9.00000, 1.28485, 10}, + { 10.00000, 1.48981, 12}, + { 11.00000, 1.71229, 12}, + { 12.00000, 1.95096, 14}, + { 13.00000, 2.20429, 14}, + { 14.00000, 2.47062, 16}, + { 15.00000, 2.74826, 18}, + { 16.00000, 3.03560, 18}, + { 17.00000, 3.33115, 20}, + { 18.00000, 3.63355, 20}, + { 19.00000, 3.94163, 22}, + { 20.00000, 4.25439, 22}, + { 21.00000, 4.57095, 24}, + { 22.00000, 4.89060, 24}, + { 23.00000, 5.21276, 26}, + { 24.00000, 5.53693, 26}, + { 25.00000, 5.86271, 28}, + { 26.00000, 6.18980, 28}, + { 27.00000, 6.51792, 28}, + { 28.00000, 6.84687, 28}, + { 29.00000, 7.17649, 28}, + { 30.00000, 7.50663, 28}, }; int numOfTests = sizeof (snrEfficiencyMcs) / sizeof (SnrEfficiencyMcs); double txPowerDbm = 30; // default eNB TX power over whole bandwdith double ktDbm = -174; // reference LTE noise PSD - double noisePowerDbm = ktDbm + 10*log10(25*180000); // corresponds to kT*bandwidth in linear units + double noisePowerDbm = ktDbm + 10 * log10 (25 * 180000); // corresponds to kT*bandwidth in linear units double receiverNoiseFigureDb = 9.0; // default UE noise figure for ( int i = 0 ; i < numOfTests; i++ ) @@ -200,7 +200,7 @@ LteLinkAdaptationTestCase::DoRun (void) uePhy->GetDownlinkSpectrumPhy ()->AddSinrChunkProcessor (testSinr); Config::Connect ("/NodeList/0/DeviceList/0/LteEnbMac/DlScheduling", - MakeBoundCallback(&LteTestDlSchedulingCallback, this)); + MakeBoundCallback (&LteTestDlSchedulingCallback, this)); Simulator::Stop (Seconds (0.005)); Simulator::Run (); diff --git a/src/lte/test/lte-test-link-adaptation.h b/src/lte/test/lte-test-link-adaptation.h index aad03a95b..055f2d19f 100644 --- a/src/lte/test/lte-test-link-adaptation.h +++ b/src/lte/test/lte-test-link-adaptation.h @@ -39,20 +39,20 @@ public: class LteLinkAdaptationTestCase : public TestCase { - public: - LteLinkAdaptationTestCase (std::string name, double snrDb, double loss, uint16_t mcsIndex); - LteLinkAdaptationTestCase (); - virtual ~LteLinkAdaptationTestCase (); +public: + LteLinkAdaptationTestCase (std::string name, double snrDb, double loss, uint16_t mcsIndex); + LteLinkAdaptationTestCase (); + virtual ~LteLinkAdaptationTestCase (); - void DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, - uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2); + void DlScheduling (uint32_t frameNo, uint32_t subframeNo, uint16_t rnti, + uint8_t mcsTb1, uint16_t sizeTb1, uint8_t mcsTb2, uint16_t sizeTb2); - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); - double m_snrDb; - double m_loss; - uint16_t m_mcsIndex; + double m_snrDb; + double m_loss; + uint16_t m_mcsIndex; }; diff --git a/src/lte/test/lte-test-pf-ff-mac-scheduler.cc b/src/lte/test/lte-test-pf-ff-mac-scheduler.cc index b6fdb64a7..03c4a0d63 100644 --- a/src/lte/test/lte-test-pf-ff-mac-scheduler.cc +++ b/src/lte/test/lte-test-pf-ff-mac-scheduler.cc @@ -52,11 +52,11 @@ NS_LOG_COMPONENT_DEFINE ("LenaTestPfFfMacCheduler"); using namespace ns3; LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite () -: TestSuite ("lte-pf-ff-mac-scheduler", SYSTEM) + : TestSuite ("lte-pf-ff-mac-scheduler", SYSTEM) { SetVerbose (true); NS_LOG_INFO ("creating LenaTestPfFfMacSchedulerSuite"); - + //Test Case 1: AMC works in PF // DOWNLINK - DISTANCE 0 -> MCS 28 -> Itbs 26 (from table 7.1.7.2.1-1 of 36.213) @@ -106,7 +106,7 @@ LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite () // 3 users -> 8 PRB at Itbs 11 -> 201 -> 201000 bytes/sec // 6 users -> 4 PRB at Itbs 11 -> 97 -> 97000 bytes/sec // 12 users -> 2 PRB at Itbs 11 -> 47 -> 47000 bytes/sec - // 15 users -> 1 PRB at Itbs 11 -> 22 -> 22000 bytes/sec + // 15 users -> 1 PRB at Itbs 11 -> 22 -> 22000 bytes/sec AddTestCase (new LenaPfFfMacSchedulerTestCase1 (1,0,6000,903000,621000)); AddTestCase (new LenaPfFfMacSchedulerTestCase1 (3,0,6000,301000,201000)); AddTestCase (new LenaPfFfMacSchedulerTestCase1 (6,0,6000,150500,97000)); @@ -136,13 +136,13 @@ LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite () // 3 users -> 309000 among 3 users -> 103000 bytes/sec // 6 users -> 309000 among 6 users -> 51500 bytes/sec // 12 users -> 309000 among 12 users -> 25750 bytes/sec - // 15 users -> 309000 among 15 users -> 20600 bytes/sec + // 15 users -> 309000 among 15 users -> 20600 bytes/sec // UPLINK - DISTANCE 15000 -> MCS 6 -> Itbs 6 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 25 PRB at Itbs 6 -> 233 -> 233000 bytes/sec // 3 users -> 8 PRB at Itbs 6 -> 69 -> 69000 bytes/sec // 6 users -> 4 PRB at Itbs 6 -> 32 -> 32000 bytes/sec // 12 users -> 2 PRB at Itbs 6 -> 15 -> 15000 bytes/sec - // 15 users -> 1 PRB at Itbs 6 -> 7 -> 7000 bytes/sec + // 15 users -> 1 PRB at Itbs 6 -> 7 -> 7000 bytes/sec AddTestCase (new LenaPfFfMacSchedulerTestCase1 (1,0,15000,309000,233000)); AddTestCase (new LenaPfFfMacSchedulerTestCase1 (3,0,15000,103000,69000)); AddTestCase (new LenaPfFfMacSchedulerTestCase1 (6,0,15000,51500,32000)); @@ -150,7 +150,7 @@ LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite () AddTestCase (new LenaPfFfMacSchedulerTestCase1 (15,0,15000,20600,7000)); // Test Case 2: fairness check - + std::vector dist; dist.push_back (0); // User 0 distance --> MCS 28 dist.push_back (3000); // User 1 distance --> MCS 24 @@ -204,11 +204,11 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) // LogComponentEnable ("LteEnbMac", LOG_LEVEL_ALL); // LogComponentEnable ("LteUeMac", LOG_LEVEL_ALL); // LogComponentEnable ("LteRlc", LOG_LEVEL_ALL); - // - // LogComponentEnable ("LtePhy", LOG_LEVEL_ALL); - // LogComponentEnable ("LteEnbPhy", LOG_LEVEL_ALL); - // LogComponentEnable ("LteUePhy", LOG_LEVEL_ALL); - +// +// LogComponentEnable ("LtePhy", LOG_LEVEL_ALL); +// LogComponentEnable ("LteEnbPhy", LOG_LEVEL_ALL); +// LogComponentEnable ("LteUePhy", LOG_LEVEL_ALL); + // LogComponentEnable ("LteSpectrumPhy", LOG_LEVEL_ALL); // LogComponentEnable ("LteInterference", LOG_LEVEL_ALL); // LogComponentEnable ("LteSinrChunkProcessor", LOG_LEVEL_ALL); @@ -223,7 +223,7 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) // LogComponentEnable ("LteNetDevice", LOG_LEVEL_ALL); // LogComponentEnable ("LteUeNetDevice", LOG_LEVEL_ALL); // LogComponentEnable ("LteEnbNetDevice", LOG_LEVEL_ALL); - + // LogComponentEnable ("PfFfMacScheduler", LOG_LEVEL_ALL); LogComponentEnable ("LenaTestPfFfMacCheduler", LOG_LEVEL_ALL); // LogComponentEnable ("LteAmc", LOG_LEVEL_ALL); @@ -232,7 +232,7 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) /** * Initialize Simulation Scenario: 1 eNB and m_nUser UEs */ - + SetVerbose (true); Ptr lena = CreateObject (); @@ -241,36 +241,36 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) NodeContainer ueNodes; enbNodes.Create (1); ueNodes.Create (m_nUser); - + // Install Mobility Model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (enbNodes); mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (ueNodes); - + // Create Devices and install them in the Nodes (eNB and UE) NetDeviceContainer enbDevs; NetDeviceContainer ueDevs; lena->SetSchedulerType ("ns3::PfFfMacScheduler"); enbDevs = lena->InstallEnbDevice (enbNodes); ueDevs = lena->InstallUeDevice (ueNodes); - + // Attach a UE to a eNB lena->Attach (ueDevs, enbDevs.Get (0)); - + // Activate an EPS bearer enum EpsBearer::Qci q = EpsBearer::GBR_CONV_VOICE; EpsBearer bearer (q); lena->ActivateEpsBearer (ueDevs, bearer); - + lena->SetAttribute ("PropagationModel", StringValue ("ns3::FriisSpectrumPropagationLossModel")); - + Ptr lteEnbDev = enbDevs.Get (0)->GetObject (); Ptr enbPhy = lteEnbDev->GetPhy (); enbPhy->SetAttribute ("TxPower", DoubleValue (30.0)); enbPhy->SetAttribute ("NoiseFigure", DoubleValue (5.0)); - + // Set UEs' position and power for (int i = 0; i < m_nUser; i++) { @@ -281,29 +281,29 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) uePhy->SetAttribute ("TxPower", DoubleValue (23.0)); uePhy->SetAttribute ("NoiseFigure", DoubleValue (9.0)); } - - lena->EnableRlcTraces(); - + + lena->EnableRlcTraces (); + double simulationTime = 1.0; double tolerance = 0.1; Simulator::Stop (Seconds (simulationTime)); - + Ptr rlcStats = lena->GetRlcStats (); - rlcStats->SetAttribute("EpochDuration", TimeValue(Seconds(simulationTime))); - + rlcStats->SetAttribute ("EpochDuration", TimeValue (Seconds (simulationTime))); + Simulator::Run (); /** * Check that the downlink assignation is done in a "proportional fair" manner */ - NS_LOG_INFO("DL - Test with " << m_nUser << " user(s) at distance " << m_dist); + NS_LOG_INFO ("DL - Test with " << m_nUser << " user(s) at distance " << m_dist); std::vector dlDataRxed; for (int i = 0; i < m_nUser; i++) { // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector ().at(0); + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); dlDataRxed.push_back (rlcStats->GetDlRxData (imsi, lcId)); NS_LOG_INFO ("\tUser " << i << " imsi " << imsi << " bytes rxed " << (double)dlDataRxed.at (i) << " thr " << (double)dlDataRxed.at (i) / simulationTime << " ref " << m_thrRefDl); } @@ -315,20 +315,20 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) */ for (int i = 0; i < m_nUser; i++) { - NS_TEST_ASSERT_MSG_EQ_TOL ((double)dlDataRxed.at (i) / simulationTime, m_thrRefDl, m_thrRefDl * tolerance, " Unfair Throughput!"); + NS_TEST_ASSERT_MSG_EQ_TOL ((double)dlDataRxed.at (i) / simulationTime, m_thrRefDl, m_thrRefDl * tolerance, " Unfair Throughput!"); } - + /** * Check that the uplink assignation is done in a "proportional fair" manner */ - NS_LOG_INFO("UL - Test with " << m_nUser << " user(s) at distance " << m_dist); + NS_LOG_INFO ("UL - Test with " << m_nUser << " user(s) at distance " << m_dist); std::vector ulDataRxed; for (int i = 0; i < m_nUser; i++) { // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector ().at(0); + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); ulDataRxed.push_back (rlcStats->GetUlRxData (imsi, lcId)); NS_LOG_INFO ("\tUser " << i << " imsi " << imsi << " bytes rxed " << (double)ulDataRxed.at (i) << " thr " << (double)ulDataRxed.at (i) / simulationTime << " ref " << m_thrRefUl); } @@ -340,7 +340,7 @@ LenaPfFfMacSchedulerTestCase1::DoRun (void) */ for (int i = 0; i < m_nUser; i++) { - NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, m_thrRefUl, m_thrRefUl * tolerance, " Unfair Throughput!"); + NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, m_thrRefUl, m_thrRefUl * tolerance, " Unfair Throughput!"); } Simulator::Destroy (); @@ -384,7 +384,7 @@ LenaPfFfMacSchedulerTestCase2::DoRun (void) // LogComponentEnable ("LtePhy", LOG_LEVEL_ALL); // LogComponentEnable ("LteEnbPhy", LOG_LEVEL_ALL); // LogComponentEnable ("LteUePhy", LOG_LEVEL_ALL); - + // LogComponentEnable ("LteSpectrumPhy", LOG_LEVEL_ALL); // LogComponentEnable ("LteInterference", LOG_LEVEL_ALL); // LogComponentEnable ("LteSinrChunkProcessor", LOG_LEVEL_ALL); @@ -399,54 +399,54 @@ LenaPfFfMacSchedulerTestCase2::DoRun (void) // LogComponentEnable ("LteNetDevice", LOG_LEVEL_ALL); // LogComponentEnable ("LteUeNetDevice", LOG_LEVEL_ALL); // LogComponentEnable ("LteEnbNetDevice", LOG_LEVEL_ALL); - + // LogComponentEnable ("PfFfMacScheduler", LOG_LEVEL_ALL); LogComponentEnable ("LenaTestPfFfMacCheduler", LOG_LEVEL_ALL); // LogComponentEnable ("LteAmc", LOG_LEVEL_ALL); // LogComponentEnable ("RlcStatsCalculator", LOG_LEVEL_ALL); - + /** * Initialize Simulation Scenario: 1 eNB and m_nUser UEs */ - + SetVerbose (true); Ptr lena = CreateObject (); - + // Create Nodes: eNodeB and UE NodeContainer enbNodes; NodeContainer ueNodes; enbNodes.Create (1); ueNodes.Create (m_nUser); - + // Install Mobility Model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (enbNodes); mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (ueNodes); - + // Create Devices and install them in the Nodes (eNB and UE) NetDeviceContainer enbDevs; NetDeviceContainer ueDevs; lena->SetSchedulerType ("ns3::PfFfMacScheduler"); enbDevs = lena->InstallEnbDevice (enbNodes); ueDevs = lena->InstallUeDevice (ueNodes); - + // Attach a UE to a eNB lena->Attach (ueDevs, enbDevs.Get (0)); - + // Activate an EPS bearer enum EpsBearer::Qci q = EpsBearer::GBR_CONV_VOICE; EpsBearer bearer (q); lena->ActivateEpsBearer (ueDevs, bearer); - + lena->SetAttribute ("PropagationModel", StringValue ("ns3::FriisSpectrumPropagationLossModel")); - + Ptr lteEnbDev = enbDevs.Get (0)->GetObject (); Ptr enbPhy = lteEnbDev->GetPhy (); enbPhy->SetAttribute ("TxPower", DoubleValue (30.0)); enbPhy->SetAttribute ("NoiseFigure", DoubleValue (5.0)); - + // Set UEs' position and power for (int i = 0; i < m_nUser; i++) { @@ -457,34 +457,34 @@ LenaPfFfMacSchedulerTestCase2::DoRun (void) uePhy->SetAttribute ("TxPower", DoubleValue (23.0)); uePhy->SetAttribute ("NoiseFigure", DoubleValue (9.0)); } - - lena->EnableRlcTraces(); - + + lena->EnableRlcTraces (); + double simulationTime = 0.4; double tolerance = 0.1; Simulator::Stop (Seconds (simulationTime)); - + Ptr rlcStats = lena->GetRlcStats (); - rlcStats->SetAttribute("EpochDuration", TimeValue(Seconds(simulationTime))); - + rlcStats->SetAttribute ("EpochDuration", TimeValue (Seconds (simulationTime))); + Simulator::Run (); - - NS_LOG_INFO("DL - Test with " << m_nUser << " user(s)"); + + NS_LOG_INFO ("DL - Test with " << m_nUser << " user(s)"); std::vector dlDataRxed; double totalData = 0; double totalEstThrPf = 0; for (int i = 0; i < m_nUser; i++) { // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector ().at(0); + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); dlDataRxed.push_back (rlcStats->GetDlRxData (imsi, lcId)); totalData += (double)dlDataRxed.at (i); NS_LOG_INFO ("\tUser " << i << " dist " << m_dist.at (i) << " imsi " << imsi << " bytes rxed " << (double)dlDataRxed.at (i) << " thr " << (double)dlDataRxed.at (i) / simulationTime << " ref " << m_nUser); totalEstThrPf += m_estThrPfDl.at (i); } - + /** * Check that the assignation is done in a "proportional fair" manner among users * with different SINRs: the bandwidht should be distributed according to the @@ -495,27 +495,27 @@ LenaPfFfMacSchedulerTestCase2::DoRun (void) double thrRatio = (double)dlDataRxed.at (i) / totalData; double estThrRatio = (double)m_estThrPfDl.at (i) / totalEstThrPf; NS_LOG_INFO ("\tUser " << i << " thrRatio " << thrRatio << " estThrRatio " << estThrRatio); - NS_TEST_ASSERT_MSG_EQ_TOL (estThrRatio, thrRatio, tolerance, " Unfair Throughput!"); + NS_TEST_ASSERT_MSG_EQ_TOL (estThrRatio, thrRatio, tolerance, " Unfair Throughput!"); + } + + /** + * Check that the assignation in uplink is done in a round robin manner. + */ + + NS_LOG_INFO ("UL - Test with " << m_nUser); + std::vector ulDataRxed; + for (int i = 0; i < m_nUser; i++) + { + // get the imsi + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); + // get the lcId + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); + ulDataRxed.push_back (rlcStats->GetUlRxData (imsi, lcId)); + NS_LOG_INFO ("\tUser " << i << " dist " << m_dist.at (i) << " bytes rxed " << (double)ulDataRxed.at (i) << " thr " << (double)ulDataRxed.at (i) / simulationTime << " ref " << (double)m_estThrPfUl.at (i)); + NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, (double)m_estThrPfUl.at (i), (double)m_estThrPfUl.at (i) * tolerance, " Unfair Throughput!"); } - - /** - * Check that the assignation in uplink is done in a round robin manner. - */ - - NS_LOG_INFO("UL - Test with " << m_nUser); - std::vector ulDataRxed; - for (int i = 0; i < m_nUser; i++) - { - // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); - // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector().at(0); - ulDataRxed.push_back (rlcStats->GetUlRxData (imsi, lcId)); - NS_LOG_INFO ("\tUser " << i << " dist " << m_dist.at (i) << " bytes rxed " << (double)ulDataRxed.at (i) << " thr " << (double)ulDataRxed.at (i) / simulationTime << " ref " << (double)m_estThrPfUl.at (i)); - NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, (double)m_estThrPfUl.at (i), (double)m_estThrPfUl.at (i) * tolerance, " Unfair Throughput!"); - } Simulator::Destroy (); - + } diff --git a/src/lte/test/lte-test-pf-ff-mac-scheduler.h b/src/lte/test/lte-test-pf-ff-mac-scheduler.h index c3f311951..c7f44d3fe 100644 --- a/src/lte/test/lte-test-pf-ff-mac-scheduler.h +++ b/src/lte/test/lte-test-pf-ff-mac-scheduler.h @@ -39,32 +39,32 @@ using namespace ns3; */ class LenaPfFfMacSchedulerTestCase1 : public TestCase { - public: - LenaPfFfMacSchedulerTestCase1 (uint16_t nUser, uint16_t nLc, uint16_t dist, double thrRefDl, double thrRefUl); - virtual ~LenaPfFfMacSchedulerTestCase1 (); +public: + LenaPfFfMacSchedulerTestCase1 (uint16_t nUser, uint16_t nLc, uint16_t dist, double thrRefDl, double thrRefUl); + virtual ~LenaPfFfMacSchedulerTestCase1 (); - private: - virtual void DoRun (void); - uint16_t m_nUser; - uint16_t m_nLc; - uint16_t m_dist; - double m_thrRefDl; - double m_thrRefUl; +private: + virtual void DoRun (void); + uint16_t m_nUser; + uint16_t m_nLc; + uint16_t m_dist; + double m_thrRefDl; + double m_thrRefUl; }; class LenaPfFfMacSchedulerTestCase2 : public TestCase { - public: - LenaPfFfMacSchedulerTestCase2 (uint16_t nUser, std::vector dist, std::vector estThrPfDl, std::vector estThrPfUl); - virtual ~LenaPfFfMacSchedulerTestCase2 (); - - private: - virtual void DoRun (void); - uint16_t m_nUser; - std::vector m_dist; - std::vector m_estThrPfDl; - std::vector m_estThrPfUl; +public: + LenaPfFfMacSchedulerTestCase2 (uint16_t nUser, std::vector dist, std::vector estThrPfDl, std::vector estThrPfUl); + virtual ~LenaPfFfMacSchedulerTestCase2 (); + +private: + virtual void DoRun (void); + uint16_t m_nUser; + std::vector m_dist; + std::vector m_estThrPfDl; + std::vector m_estThrPfUl; }; @@ -72,8 +72,8 @@ class LenaPfFfMacSchedulerTestCase2 : public TestCase class LenaTestPfFfMacSchedulerSuite : public TestSuite { - public: - LenaTestPfFfMacSchedulerSuite (); +public: + LenaTestPfFfMacSchedulerSuite (); }; diff --git a/src/lte/test/lte-test-rr-ff-mac-scheduler.cc b/src/lte/test/lte-test-rr-ff-mac-scheduler.cc index 7b4355059..87665d5bc 100644 --- a/src/lte/test/lte-test-rr-ff-mac-scheduler.cc +++ b/src/lte/test/lte-test-rr-ff-mac-scheduler.cc @@ -50,12 +50,12 @@ using namespace ns3; LenaTestRrFfMacSchedulerSuite::LenaTestRrFfMacSchedulerSuite () -: TestSuite ("lte-rr-ff-mac-scheduler", SYSTEM) + : TestSuite ("lte-rr-ff-mac-scheduler", SYSTEM) { SetVerbose (true); NS_LOG_INFO ("creating LenaRrFfMacSchedulerTestCase"); - - + + // DOWNLINK- DISTANCE 0 -> MCS 28 -> Itbs 26 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 24 PRB at Itbs 26 -> 2196 -> 2196000 bytes/sec // 3 users -> 8 PRB at Itbs 26 -> 749 -> 749000 bytes/sec @@ -76,14 +76,14 @@ LenaTestRrFfMacSchedulerSuite::LenaTestRrFfMacSchedulerSuite () AddTestCase (new LenaRrFfMacSchedulerTestCase (9,0,0,185000,185000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (12,0,0,185000,185000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (15,0,0,148000,89000)); - + // DOWNLINK - DISTANCE 3000 -> MCS 22 -> Itbs 20 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 24 PRB at Itbs 20 -> 1383 -> 1383000 bytes/sec // 3 users -> 8 PRB at Itbs 20 -> 469 -> 469000 bytes/sec // 6 users -> 4 PRB at Itbs 20 -> 233 -> 233000 bytes/sec // 9 user -> 2 PRB at Itbs 20 -> 113 -> 113000 bytes/sec // 12 users -> 2 PRB at Itbs 20 -> 113 -> 113000 bytes/sec - // 15 users -> 2 PRB at Itbs 20 * 0.8 -> 90.4 -> 90400 bytes/sec + // 15 users -> 2 PRB at Itbs 20 * 0.8 -> 90.4 -> 90400 bytes/sec // UPLINK - DISTANCE 3000 -> MCS 20 -> Itbs 18 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 25 PRB at Itbs 18 -> 1239 -> 1239000 bytes/sec // 3 users -> 8 PRB at Itbs 18 -> 389 -> 389000 bytes/sec @@ -97,28 +97,28 @@ LenaTestRrFfMacSchedulerSuite::LenaTestRrFfMacSchedulerSuite () AddTestCase (new LenaRrFfMacSchedulerTestCase (9,0,3000,113000,97000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (12,0,3000,113000,97000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (15,0,3000,90400,47000)); - + // DOWNLINK - DISTANCE 6000 -> MCS 16 -> Itbs 15 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 24 PRB at Itbs 15 -> 903 -> 903000 bytes/sec // 3 users -> 8 PRB at Itbs 15 -> 309 -> 309000 bytes/sec // 6 users -> 4 PRB at Itbs 15 -> 153 -> 153000 bytes/sec // 9 user -> 2 PRB at Itbs 15 -> 75 -> 75000 bytes/sec // 12 users -> 2 PRB at Itbs 15 -> 75 -> 75000 bytes/sec - // 15 users -> 2 PRB at Itbs 15 * 0.8 -> 60 -> 60000 bytes/sec + // 15 users -> 2 PRB at Itbs 15 * 0.8 -> 60 -> 60000 bytes/sec // UPLINK - DISTANCE 6000 -> MCS 12 -> Itbs 11 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 25 PRB at Itbs 11 -> 621 -> 621000 bytes/sec // 3 users -> 8 PRB at Itbs 11 -> 201 -> 201000 bytes/sec // 6 users -> 4 PRB at Itbs 11 -> 97 -> 97000 bytes/sec // 9 user -> 2 PRB at Itbs 11 -> 47 -> 47000 bytes/sec // 12 users -> 2 PRB at Itbs 11 -> 47 -> 47000 bytes/sec - // 15 users -> 1 PRB at Itbs 11 -> 22 -> 22000 bytes/sec + // 15 users -> 1 PRB at Itbs 11 -> 22 -> 22000 bytes/sec AddTestCase (new LenaRrFfMacSchedulerTestCase (1,0,6000,903000,621000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (3,0,6000,309000,201000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (6,0,6000,153000,97000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (9,0,6000,75000,47000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (12,0,6000,75000,47000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (15,0,6000,60000,22000)); - + // DOWNLINK - DISTANCE 9000 -> MCS 12 -> Itbs 11 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 24 PRB at Itbs 11 -> 597 -> 597000 bytes/sec // 3 users -> 8 PRB at Itbs 11 -> 201 -> 201000 bytes/sec @@ -132,46 +132,46 @@ LenaTestRrFfMacSchedulerSuite::LenaTestRrFfMacSchedulerSuite () // 6 users -> 4 PRB at Itbs 8 -> 67 -> 67000 bytes/sec // 9 user -> 2 PRB at Itbs 8 -> 32 -> 32000 bytes/sec // 12 users -> 2 PRB at Itbs 8 -> 32 -> 32000 bytes/sec - // 15 users -> 1 PRB at Itbs 8 -> 15 -> 15000 bytes/sec + // 15 users -> 1 PRB at Itbs 8 -> 15 -> 15000 bytes/sec AddTestCase (new LenaRrFfMacSchedulerTestCase (1,0,9000,597000,437000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (3,0,9000,201000,137000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (6,0,9000,97000,67000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (9,0,9000,47000,32000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (12,0,9000,47000,32000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (15,0,9000,37600,15000)); - + // DOWNLINK - DISTANCE 15000 -> MCS 6 -> Itbs 6 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 24 PRB at Itbs 6 -> 309 -> 309000 bytes/sec // 3 users -> 8 PRB at Itbs 6 -> 101 -> 101000 bytes/sec // 6 users -> 4 PRB at Itbs 6 -> 49 -> 49000 bytes/sec // 9 user -> 2 PRB at Itbs 6 -> 22 -> 22000 bytes/sec // 12 users -> 2 PRB at Itbs 6 -> 22 -> 22000 bytes/sec - // 15 users -> 2 PRB at Itbs 6 * 0.8 -> 17.6 -> 17600 bytes/sec + // 15 users -> 2 PRB at Itbs 6 * 0.8 -> 17.6 -> 17600 bytes/sec // UPLINK - DISTANCE 15000 -> MCS 6 -> Itbs 6 (from table 7.1.7.2.1-1 of 36.213) // 1 user -> 25 PRB at Itbs 6 -> 233 -> 233000 bytes/sec // 3 users -> 8 PRB at Itbs 6 -> 69 -> 69000 bytes/sec // 6 users -> 4 PRB at Itbs 6 -> 32 -> 32000 bytes/sec // 9 user -> 2 PRB at Itbs 6 -> 15 -> 15000 bytes/sec // 12 users -> 2 PRB at Itbs 6 -> 15 -> 15000 bytes/sec - // 15 users -> 1 PRB at Itbs 6 -> 7 -> 7000 bytes/sec + // 15 users -> 1 PRB at Itbs 6 -> 7 -> 7000 bytes/sec AddTestCase (new LenaRrFfMacSchedulerTestCase (1,0,15000,309000,233000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (3,0,15000,101000,69000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (6,0,15000,49000,32000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (9,0,15000,22000,15000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (12,0,15000,22000,15000)); AddTestCase (new LenaRrFfMacSchedulerTestCase (15,0,15000,17600,7000)); - + } static LenaTestRrFfMacSchedulerSuite lenaTestRrFfMacSchedulerSuite; LenaRrFfMacSchedulerTestCase::LenaRrFfMacSchedulerTestCase (uint16_t nUser, uint16_t nLc, uint16_t dist, double thrRefDl, double thrRefUl) : TestCase (""), - m_nUser (nUser), - m_nLc (nLc), - m_dist (dist), - m_thrRefDl (thrRefDl), - m_thrRefUl (thrRefUl) + m_nUser (nUser), + m_nLc (nLc), + m_dist (dist), + m_thrRefDl (thrRefDl), + m_thrRefUl (thrRefUl) { std::ostringstream oss; oss << nUser << " UEs, distance " << dist << " m" ; @@ -214,51 +214,51 @@ LenaRrFfMacSchedulerTestCase::DoRun (void) LogComponentEnable ("LenaTestRrFfMacCheduler", LOG_LEVEL_ALL); // LogComponentEnable ("LteAmc", LOG_LEVEL_ALL); // LogComponentEnable ("RlcStatsCalculator", LOG_LEVEL_ALL); - + /** * Initialize Simulation Scenario: 1 eNB and m_nUser UEs */ - + SetVerbose (true); - + Ptr lena = CreateObject (); - + // Create Nodes: eNodeB and UE NodeContainer enbNodes; NodeContainer ueNodes; enbNodes.Create (1); ueNodes.Create (m_nUser); - + // Install Mobility Model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (enbNodes); mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); mobility.Install (ueNodes); - + // Create Devices and install them in the Nodes (eNB and UE) NetDeviceContainer enbDevs; NetDeviceContainer ueDevs; lena->SetSchedulerType ("ns3::RrFfMacScheduler"); enbDevs = lena->InstallEnbDevice (enbNodes); ueDevs = lena->InstallUeDevice (ueNodes); - + // Attach a UE to a eNB - lena->Attach (ueDevs, enbDevs.Get (0)); - + lena->Attach (ueDevs, enbDevs.Get (0)); + // Activate an EPS bearer enum EpsBearer::Qci q = EpsBearer::GBR_CONV_VOICE; EpsBearer bearer (q); lena->ActivateEpsBearer (ueDevs, bearer); - + lena->SetAttribute ("PropagationModel", StringValue ("ns3::FriisSpectrumPropagationLossModel")); - + Ptr lteEnbDev = enbDevs.Get (0)->GetObject (); Ptr enbPhy = lteEnbDev->GetPhy (); enbPhy->SetAttribute ("TxPower", DoubleValue (30.0)); enbPhy->SetAttribute ("NoiseFigure", DoubleValue (5.0)); - + // Set UEs' position and power for (int i = 0; i < m_nUser; i++) { @@ -269,45 +269,45 @@ LenaRrFfMacSchedulerTestCase::DoRun (void) uePhy->SetAttribute ("TxPower", DoubleValue (23.0)); uePhy->SetAttribute ("NoiseFigure", DoubleValue (9.0)); } - + lena->EnableRlcTraces (); double simulationTime = 0.4; double tolerance = 0.1; Simulator::Stop (Seconds (simulationTime)); - - Ptr rlcStats = lena->GetRlcStats (); - rlcStats->SetAttribute ("EpochDuration", TimeValue(Seconds(simulationTime))); - + Ptr rlcStats = lena->GetRlcStats (); + rlcStats->SetAttribute ("EpochDuration", TimeValue (Seconds (simulationTime))); + + Simulator::Run (); /** * Check that the assignation is done in a RR fashion */ - NS_LOG_INFO("DL - Test with " << m_nUser << " user(s) at distance " << m_dist); + NS_LOG_INFO ("DL - Test with " << m_nUser << " user(s) at distance " << m_dist); std::vector dlDataRxed; for (int i = 0; i < m_nUser; i++) { // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector().at(0); + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); dlDataRxed.push_back (rlcStats->GetDlRxData (imsi, lcId)); NS_LOG_INFO ("\tUser " << i << " imsi " << imsi << " bytes rxed " << (double)dlDataRxed.at (i) << " thr " << (double)dlDataRxed.at (i) / simulationTime << " ref " << m_thrRefDl); - NS_TEST_ASSERT_MSG_EQ_TOL ((double)dlDataRxed.at (i) / simulationTime, m_thrRefDl, m_thrRefDl * tolerance, " Unfair Throughput!"); + NS_TEST_ASSERT_MSG_EQ_TOL ((double)dlDataRxed.at (i) / simulationTime, m_thrRefDl, m_thrRefDl * tolerance, " Unfair Throughput!"); } - - NS_LOG_INFO("UL - Test with " << m_nUser << " user(s) at distance " << m_dist); + + NS_LOG_INFO ("UL - Test with " << m_nUser << " user(s) at distance " << m_dist); std::vector ulDataRxed; for (int i = 0; i < m_nUser; i++) { // get the imsi - uint64_t imsi = ueDevs.Get (i)-> GetObject ()->GetImsi (); + uint64_t imsi = ueDevs.Get (i)->GetObject ()->GetImsi (); // get the lcId - uint8_t lcId = ueDevs.Get (i)-> GetObject ()->GetRrc ()->GetLcIdVector().at(0); + uint8_t lcId = ueDevs.Get (i)->GetObject ()->GetRrc ()->GetLcIdVector ().at (0); ulDataRxed.push_back (rlcStats->GetUlRxData (imsi, lcId)); NS_LOG_INFO ("\tUser " << i << " imsi " << imsi << " bytes txed " << (double)ulDataRxed.at (i) << " thr " << (double)ulDataRxed.at (i) / simulationTime << " ref " << m_thrRefUl); - NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, m_thrRefUl, m_thrRefUl * tolerance, " Unfair Throughput!"); + NS_TEST_ASSERT_MSG_EQ_TOL ((double)ulDataRxed.at (i) / simulationTime, m_thrRefUl, m_thrRefUl * tolerance, " Unfair Throughput!"); } Simulator::Destroy (); diff --git a/src/lte/test/lte-test-rr-ff-mac-scheduler.h b/src/lte/test/lte-test-rr-ff-mac-scheduler.h index f839ab759..0d597a842 100644 --- a/src/lte/test/lte-test-rr-ff-mac-scheduler.h +++ b/src/lte/test/lte-test-rr-ff-mac-scheduler.h @@ -39,26 +39,26 @@ using namespace ns3; */ class LenaRrFfMacSchedulerTestCase : public TestCase { - public: - LenaRrFfMacSchedulerTestCase (uint16_t nUser, uint16_t nLc, uint16_t dist, double thrRefDl, double thrRefUl); - virtual ~LenaRrFfMacSchedulerTestCase (); +public: + LenaRrFfMacSchedulerTestCase (uint16_t nUser, uint16_t nLc, uint16_t dist, double thrRefDl, double thrRefUl); + virtual ~LenaRrFfMacSchedulerTestCase (); + +private: + virtual void DoRun (void); + uint16_t m_nUser; + uint16_t m_nLc; + uint16_t m_dist; + double m_thrRefDl; + double m_thrRefUl; - private: - virtual void DoRun (void); - uint16_t m_nUser; - uint16_t m_nLc; - uint16_t m_dist; - double m_thrRefDl; - double m_thrRefUl; - }; class LenaTestRrFfMacSchedulerSuite : public TestSuite { - public: - LenaTestRrFfMacSchedulerSuite (); +public: + LenaTestRrFfMacSchedulerSuite (); }; diff --git a/src/lte/test/lte-test-spectrum-value-helper.cc b/src/lte/test/lte-test-spectrum-value-helper.cc index f0580566e..98bdad091 100644 --- a/src/lte/test/lte-test-spectrum-value-helper.cc +++ b/src/lte/test/lte-test-spectrum-value-helper.cc @@ -38,10 +38,10 @@ public: protected: Ptr m_actual; - Ptr m_expected; + Ptr m_expected; - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteSpectrumModelTestCase::LteSpectrumModelTestCase (const char* str, uint16_t earfcn, uint8_t bw, std::vector fcs) @@ -49,7 +49,7 @@ LteSpectrumModelTestCase::LteSpectrumModelTestCase (const char* str, uint16_t ea { NS_LOG_FUNCTION (this << str << earfcn << bw); m_actual = LteSpectrumValueHelper::GetSpectrumModel (earfcn, bw); - m_expected = Create (fcs); + m_expected = Create (fcs); } LteSpectrumModelTestCase::~LteSpectrumModelTestCase () @@ -74,18 +74,18 @@ public: protected: Ptr m_actual; - Ptr m_expected; + Ptr m_expected; - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteNoisePsdTestCase::LteNoisePsdTestCase (const char* str, uint16_t earfcn, uint8_t bw, double noiseFigureDb, SpectrumValue& expected) : TestCase (str), - m_actual (LteSpectrumValueHelper::CreateNoisePowerSpectralDensity (earfcn, bw, noiseFigureDb)), - m_expected (Create (expected)) + m_actual (LteSpectrumValueHelper::CreateNoisePowerSpectralDensity (earfcn, bw, noiseFigureDb)), + m_expected (Create (expected)) { - NS_LOG_FUNCTION (this << str << earfcn << bw << noiseFigureDb); + NS_LOG_FUNCTION (this << str << earfcn << bw << noiseFigureDb); } LteNoisePsdTestCase::~LteNoisePsdTestCase () @@ -111,18 +111,18 @@ public: protected: Ptr m_actual; - Ptr m_expected; + Ptr m_expected; - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); }; LteTxPsdTestCase::LteTxPsdTestCase (const char* str, uint16_t earfcn, uint8_t bw, double txPowerDbm, std::vector activeRbs, SpectrumValue& expected) : TestCase (str), - m_actual (LteSpectrumValueHelper::CreateTxPowerSpectralDensity (earfcn, bw, txPowerDbm, activeRbs)), - m_expected (Create (expected)) + m_actual (LteSpectrumValueHelper::CreateTxPowerSpectralDensity (earfcn, bw, txPowerDbm, activeRbs)), + m_expected (Create (expected)) { - NS_LOG_FUNCTION (this << str << earfcn << bw << txPowerDbm); + NS_LOG_FUNCTION (this << str << earfcn << bw << txPowerDbm); } LteTxPsdTestCase::~LteTxPsdTestCase () diff --git a/src/lte/test/lte-test-uplink-sinr.cc b/src/lte/test/lte-test-uplink-sinr.cc index 927b9044c..afc49a5c3 100644 --- a/src/lte/test/lte-test-uplink-sinr.cc +++ b/src/lte/test/lte-test-uplink-sinr.cc @@ -194,7 +194,7 @@ LteUplinkSinrTestCase::DoRun (void) // Phy tags LtePhyTag pktTag[numOfPbs]; - + /** * Build packet burst (Data and interference) */ @@ -234,7 +234,7 @@ LteUplinkSinrTestCase::DoRun (void) { // Create phy tag (different for each packet burst) // and add to the first packet - pktTag[pb] = LtePhyTag (100 * (pb+1)); + pktTag[pb] = LtePhyTag (100 * (pb + 1)); pkt[pb][i]->AddPacketTag ( pktTag[pb] ); } @@ -279,13 +279,13 @@ LteUplinkSinrTestCase::DoRun (void) */ // 2 UEs send data to the eNB through 2 subcarriers - Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[0], m_sv1, ulPhy->GetSpectrumType(), ds); - Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[1], m_sv2, ulPhy->GetSpectrumType(), ds); + Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[0], m_sv1, ulPhy->GetSpectrumType (), ds); + Simulator::Schedule (ts, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[1], m_sv2, ulPhy->GetSpectrumType (), ds); - Simulator::Schedule (ti1, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[2], i1, ulPhy->GetSpectrumType(), di1); - Simulator::Schedule (ti2, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[3], i2, ulPhy->GetSpectrumType(), di2); - Simulator::Schedule (ti3, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[4], i3, ulPhy->GetSpectrumType(), di3); - Simulator::Schedule (ti4, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[5], i4, ulPhy->GetSpectrumType(), di4); + Simulator::Schedule (ti1, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[2], i1, ulPhy->GetSpectrumType (), di1); + Simulator::Schedule (ti2, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[3], i2, ulPhy->GetSpectrumType (), di2); + Simulator::Schedule (ti3, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[4], i3, ulPhy->GetSpectrumType (), di3); + Simulator::Schedule (ti4, &LteSpectrumPhy::StartRx, ulPhy, packetBursts[5], i4, ulPhy->GetSpectrumType (), di4); Simulator::Stop (Seconds (5.0)); Simulator::Run (); diff --git a/src/lte/test/lte-test-uplink-sinr.h b/src/lte/test/lte-test-uplink-sinr.h index 97a7ea5e9..a8c033902 100644 --- a/src/lte/test/lte-test-uplink-sinr.h +++ b/src/lte/test/lte-test-uplink-sinr.h @@ -41,17 +41,17 @@ public: class LteUplinkSinrTestCase : public TestCase { - public: - LteUplinkSinrTestCase (Ptr sv1, Ptr sv2, Ptr sinr, std::string name); - virtual ~LteUplinkSinrTestCase (); +public: + LteUplinkSinrTestCase (Ptr sv1, Ptr sv2, Ptr sinr, std::string name); + virtual ~LteUplinkSinrTestCase (); - private: - virtual void DoRun (void); +private: + virtual void DoRun (void); - Ptr m_sv1; - Ptr m_sv2; - Ptr m_sm; - Ptr m_sinr; + Ptr m_sv1; + Ptr m_sv2; + Ptr m_sm; + Ptr m_sinr; };