Example #1
0
 public void SetGroupProperty(LtePredictionGroup pg, GroupProperty property)
 {
     float maxSensitivity;
     pg.Resolution = property.Resolution;
     pg.HandoverAreaThreshold = property.HandoverAreaThreshold;
     pg.DiffFreqHandoverAreaGate = property.DiffFreqHandoverAreaGate;
     pg.RxSensitivity = property.RxSensitivity;
     pg.ULTxSensitivity = property.TxSensitivity;
     pg.InterferenceGate = property.InterferenceGate;
     pg.CellEdgeCoverageProbability = property.CellEdgeCoverageProbability;
     pg.IsShadowdowAccout = property.IsShadowdowAccout;
     //add 2011.6.2
     pg.IsFDD = property.IsFDD;
     pg.IsIndoorCoverage = property.IsIndoorCoverage;
     pg.RsShifting = property.RSShifting;
     pg.IsChannelIndexSaved = true;
     this.AddRegionToGroup(pg, property.regionIndex);
     this.AddTrafficDataToGroup(pg, property);
     this.SaveFreqBand(pg, property);
     pg.MaxSensitivity = property.MaxSensitivity;
     pg.ULMaxSensitivity = property.ULMaxSensitivity;
     if (pg.MaxSensitivity < pg.RxSensitivity)
     {
         maxSensitivity = pg.MaxSensitivity;
         pg.MaxSensitivity = pg.RxSensitivity;
         pg.RxSensitivity = maxSensitivity;
     }
     if (pg.ULMaxSensitivity < pg.ULTxSensitivity)
     {
         maxSensitivity = pg.ULMaxSensitivity;
         pg.ULMaxSensitivity = pg.ULTxSensitivity;
         pg.ULTxSensitivity = maxSensitivity;
     }
     pg.ChannelIndexDic = property.channelIndexDic;
 }
Example #2
0
        public PredictionDataManager(LtePredictionGroup pg, IApplicationContext appContext, string savepath)
        {
            this.m_ProgressHandle = ServiceHelper.Lookup<IEventViewService>(appContext);
            this.m_ICellFilterBuilder = ServiceHelper.Lookup<ICellFilterBuilder>(appContext);
            this.m_ITrafficMCS = ServiceHelper.Lookup<ITrafficMCS>(appContext);
            this.m_CellFilter = new CellFilter();
            IGeoProvider provider = ServiceHelper.Lookup<IGeoProvider>(appContext);
            this.m_LteCellFilter = new LteCellFilter(provider.GetGeoInfo);
            this.m_IPLCalcVstr = ServiceHelper.Lookup<IPLCalcDataVstr>(appContext);
            //add by xujuan
            m_IGetRelayUEPathLoss = ServiceHelper.Lookup<IGetRelayUEPathLoss>(appContext);
            this.m_Group = pg;
            UnionPsService trafficService = this.m_Group.TrafficService as UnionPsService;
            LTEService service2 = trafficService.PSServiceDic[NetWorkType.LTE] as LTEService;
            this.m_DLBLER = service2.DLBLER;
            this.m_ULBLER = service2.ULBLER;
            this.m_CaseDataManager = new CaseDataManager(this.m_Group, savepath);
            this.m_NeedCalActualRxIntf = false;
            this.m_NeedCalMaxRxIntf = false;
            this.m_NeedCalHandOverArea = false;
            this.m_NeedCalSymbolRSRP = false;
            this.m_NeedCalOverlapping = false;
            this.m_NeedCalRSRQ = false;

            //add by huna 3.28
            this.m_NeedLTEBestServerID = false;

            this.NeedCreateActualRxPowerValueMatrix();
            this.NeedCreateMaxRxPowerValueMartix();
            //add by huna 3.28           
            this.IsNeedLTEBestServerID();
            //2011.3.17
            this.IsCalcRPDCCHLevel();
            //add by huna 3.17
            this.IsCalcRPDSCHLevel();
            this.IsCalcRPUCCHLevel();

            this.IsNeedCalHandOverArea();
            this.NeedCalSymbol_RSRP();
            this.NeedCalOverlapping();
            this.NeedCalRsrq();
            this.NeedCreatePenetrationLossValueMatrix();
            this.NeedCalULStudy();
            //add by huna 3.18
            this.NeedCalRULStudy();

            this.m_CaseDataManager.NeedCalRSRQ = this.m_NeedCalRSRQ;
            this.m_CaseDataManager.NeedCalSymbolRSRP = this.m_NeedCalSymbolRSRP;
            this.SetSavingPath(savepath);
            //add by huna 3.28
            this.m_CaseDataManager.NeedLTEBestServerID = this.m_NeedLTEBestServerID;
            this.m_CaseDataManager.NeedULLinkloss = this.m_NeedCalRULStudy;
            //add by huna 4.2
            this.m_CaseDataManager.NeedRPDCCHLevel = this.m_NeedCalRPDCCH;
            this.m_CaseDataManager.NeedRPDSCHLevel = this.m_NeedCalRPDSCH;
            this.m_CaseDataManager.NeedRPUCCHLevel = this.m_NeedCalRPUCCH;
        }
Example #3
0
 private void AddRegionToGroup(LtePredictionGroup pg, int regionIndex)
 {
     if (regionIndex != 0)
     {
         pg.Region = this.m_GeoProvider.PolygonRegionList[regionIndex - 1];
     }
     else
     {
         pg.Region = null;
     }
 }
 //创建Group时调用
 public IPredictionGroup CreateGroup(List<StudyTemplate> studyTemplateList, string groupName, int groupID, NetWorkType predictionType)
 {
     IPredictionGroup group = new LtePredictionGroup();
     group.IsCoGroup = false;
     group.Name = groupName;
     group.GroupId = groupID;
     group.PredictionType = predictionType;
     foreach (StudyTemplate template in studyTemplateList)
     {
         group.StudyList.Add(this.CreateStudyByTemplate(template));
     }
     return group;
 }
Example #5
0
 private void AddTrafficDataToGroup(LtePredictionGroup pg, GroupProperty property)
 {
     pg.TerminalValue = property.terminalIndexes;
     Terminal terminal = this.m_ITraffic.FindTerminalList(NetWorkType.LTE)[property.terminalIndexes];
     pg.TrafficTerminal = terminal;
     pg.ServiceValue = property.serviceIndexes;
     Service service = this.m_ITraffic.FindServiceList(NetWorkType.LTE)[property.serviceIndexes];
     pg.TrafficService = service;
     UnionPsService service2 = service as UnionPsService;
     LTEService service3 = service2.PSServiceDic[NetWorkType.LTE] as LTEService;
     pg.MobilityValue = property.mobIndexes;
     Mobility mobility = this.m_ITraffic.MobilityList[property.mobIndexes];
     pg.TrafficMobility = mobility;
 }
Example #6
0
 /// <summary>
 /// 初始化链路损耗、计算等级、PredictionDataMgr、小区
 /// </summary>
 /// <param name="pg"></param>
 /// <param name="transceiverList"></param>
 /// <param name="savepath"></param>
 private void InitialMember(LtePredictionGroup pg, List<Transceiver> transceiverList, string savepath)
 {
     this.m_Group = pg;
     this.m_LinkPrediction = ServiceHelper.Lookup<ILTELinkLossCalculatorBuilder>(this.m_AppContext).GetCalculator(pg.CellEdgeCoverageProbability);
     this.m_CalcStep = CalcStep.BestServerCalcStep;
     this.m_LinkPrediction.SetPareForPrediction((this.m_Group.TrafficService as UnionPsService).BodyLoss, this.m_Group.TrafficTerminal.NetTerminalList[0].Loss, this.m_Group.TrafficTerminal.Attenuation, this.m_Group.TrafficTerminal.Gain, this.m_Group.CellEdgeCoverageProbability, this.m_Group.IsShadowdowAccout, this.m_Group.IsIndoorCoverage);
     this.m_DataManager = new PredictionDataManager(this.m_Group, this.m_AppContext, savepath);
     this.m_TransceiverList = transceiverList;
 }
Example #7
0
 private void SaveFreqBand(LtePredictionGroup pg, GroupProperty property)
 {
     pg.FreqBandIdList.Clear();
     pg.FreqBandIdList.AddRange(property.freqBandIndexes);
     pg.ChannelIndexDic = property.channelIndexDic;
 }
Example #8
0
 public CaseDataManager(LtePredictionGroup group, string savepath)
 {
     this.m_Group = group;
     this.SetSavingPath(savepath);
     this.m_CalMatrixStructArr = new List<CalculatorMatrixStruct>();
 }