src/buildings/test/buildings-shadowing-test.cc
changeset 8317 2ec35f16dc11
parent 8310 32b343bc3b0c
child 8318 368cccf883a6
equal deleted inserted replaced
8316:3a780aa1f7ca 8317:2ec35f16dc11
    20 
    20 
    21 #include "ns3/simulator.h"
    21 #include "ns3/simulator.h"
    22 #include "ns3/log.h"
    22 #include "ns3/log.h"
    23 #include "ns3/buildings-shadowing-test.h"
    23 #include "ns3/buildings-shadowing-test.h"
    24 #include <ns3/buildings-propagation-loss-model.h>
    24 #include <ns3/buildings-propagation-loss-model.h>
    25 #include <ns3/spectrum-model.h>
       
    26 #include <ns3/single-model-spectrum-channel.h>
       
    27 #include "ns3/string.h"
    25 #include "ns3/string.h"
    28 #include "ns3/double.h"
    26 #include "ns3/double.h"
    29 #include <ns3/building.h>
    27 #include <ns3/building.h>
    30 #include <ns3/enum.h>
    28 #include <ns3/enum.h>
    31 // #include <ns3/net-device-container.h>
       
    32 // #include <ns3/lte-ue-net-device.h>
       
    33 // #include <ns3/lte-enb-net-device.h>
       
    34 // #include <ns3/lte-ue-rrc.h>
       
    35 // #include <ns3/lena-helper.h>
       
    36 // #include <ns3/lte-enb-phy.h>
       
    37 // #include <ns3/lte-ue-phy.h>
       
    38 // #include <ns3/lte-test-sinr-chunk-processor.h>
       
    39 
    29 
    40 NS_LOG_COMPONENT_DEFINE ("BuildingsShadowingTest");
    30 NS_LOG_COMPONENT_DEFINE ("BuildingsShadowingTest");
    41 
    31 
    42 using namespace ns3;
    32 using namespace ns3;
    43 
    33 
   161   double sum = 0.0;
   151   double sum = 0.0;
   162   double sumSquared = 0.0;
   152   double sumSquared = 0.0;
   163   int samples = 10000;
   153   int samples = 10000;
   164   for (int i = 0; i < samples; i++)
   154   for (int i = 0; i < samples; i++)
   165   {
   155   {
   166   Ptr<SpectrumChannel> m_downlinkChannel = CreateObject<SingleModelSpectrumChannel> ();
   156   Ptr<BuildingsPropagationLossModel> propagationLossModel = CreateObject<BuildingsPropagationLossModel> ();
   167   Ptr<SpectrumChannel> m_uplinkChannel = CreateObject<SingleModelSpectrumChannel> ();
   157   loss.push_back (propagationLossModel->GetLoss (m_node1, m_node2) - m_lossRef);
   168   Ptr<BuildingsPropagationLossModel> m_downlinkPropagationLossModel = CreateObject<BuildingsPropagationLossModel> ();
       
   169   Ptr<BuildingsPropagationLossModel>  m_uplinkPropagationLossModel = CreateObject<BuildingsPropagationLossModel> ();
       
   170   m_downlinkChannel->AddPropagationLossModel (m_downlinkPropagationLossModel);
       
   171   m_uplinkChannel->AddPropagationLossModel (m_uplinkPropagationLossModel);
       
   172   loss.push_back (m_downlinkPropagationLossModel->GetLoss (m_node1, m_node2) - m_lossRef);
       
   173   sum += loss.at (loss.size()-1);
   158   sum += loss.at (loss.size()-1);
   174   sumSquared += (loss.at (loss.size()-1)*loss.at (loss.size()-1));
   159   sumSquared += (loss.at (loss.size()-1)*loss.at (loss.size()-1));
   175   }
   160   }
   176   double mean = sum/samples;
   161   double mean = sum/samples;
   177   double sigma = sqrt(sumSquared/samples - (mean*mean));
   162   double sigma = sqrt(sumSquared/samples - (mean*mean));