LTE Module User Documentation(翻译5)——Mobility Model with Buildings
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                LTE Module User Documentation(翻译5)——Mobility Model with Buildings
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.                        
                                LTE用戶文檔
(如有不當(dāng)?shù)牡胤?#xff0c;歡迎指正!)
8 Mobility Model with Buildings
我們現(xiàn)在通過例子解釋如何在 ns-3 仿真程序中使用 buildings 模型(特別是 MobilityBuildingInfo ?和 BuildingPropagationModel?類) 來設(shè)置 LTE 仿真場景(包括建筑物和室內(nèi)節(jié)點(diǎn))。1. 包含的頭文件:
#include <ns3/mobility-building-info.h> #include <ns3/buildings-propagation-loss-model.h> #include <ns3/building.h>2. 路徑損耗模型選擇:
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> (); lteHelper->SetAttribute ("PathlossModel", StringValue ("ns3::BuildingsPropagationLossModel"));3. EUTRA 頻帶選擇:
傳播模型的工作頻段選擇必須通過相關(guān)章節(jié)(“配置LTE模型參數(shù)”)描述的標(biāo)準(zhǔn) ns-3? 屬性系統(tǒng)來實(shí)現(xiàn),例如,通過設(shè)置 DlEarfcn 和 UlEarfcn 參數(shù): ? lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (100)); lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (18100)); ? 注意,使用其他方式配置傳播模型使用的頻段(例如,直接配置相關(guān)的?BuildingsPropagationLossModel?屬性),可能會(huì)在仿真期間對模塊中頻率的定義造成沖突,因此不提倡這樣做。 ?1. 移動(dòng)性模型選擇:
MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");2. 創(chuàng)建建筑物:
double x_min = 0.0; double x_max = 10.0; double y_min = 0.0; double y_max = 20.0; double z_min = 0.0; double z_max = 10.0; Ptr<Building> b = CreateObject <Building> (); b->SetBoundaries (Box (x_min, x_max, y_min, y_max, z_min, z_max)); b->SetBuildingType (Building::Residential); b->SetExtWallsType (Building::ConcreteWithWindows); b->SetNFloors (3); b->SetNRoomsX (3); b->SetNRoomsY (2); 上述代碼會(huì)實(shí)例化一個(gè)住宅區(qū)建筑物,底部為 10 x 20 米,高為10 米,外墻是混凝土的窗戶;建筑物有三層和 3 x 2 個(gè)同樣大小的內(nèi)部網(wǎng)格房間。3. 節(jié)點(diǎn)創(chuàng)建和位置:
ueNodes.Create (2); mobility.Install (ueNodes); BuildingsHelper::Install (ueNodes); NetDeviceContainer ueDevs; ueDevs = lteHelper->InstallUeDevice (ueNodes); Ptr<ConstantPositionMobilityModel> mm0 = enbNodes.Get (0)->GetObject<ConstantPositionMobilityModel> (); Ptr<ConstantPositionMobilityModel> mm1 = enbNodes.Get (1)->GetObject<ConstantPositionMobilityModel> (); mm0->SetPosition (Vector (5.0, 5.0, 1.5)); mm1->SetPosition (Vector (30.0, 40.0, 1.5));4. 完成建筑物和移動(dòng)性模型的配置:
BuildingsHelper::MakeMobilityModelConsistent (); 詳情見 buildings?模塊文檔。 ?參考文獻(xiàn)
https://www.nsnam.org/docs/models/html/lte-user.html
轉(zhuǎn)載于:https://www.cnblogs.com/alice123/p/5500516.html
總結(jié)
以上是生活随笔為你收集整理的LTE Module User Documentation(翻译5)——Mobility Model with Buildings的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: Activiti+oracle 启动项目
 - 下一篇: IoT Architecture