equal
deleted
inserted
replaced
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)); |