/// <summary> /// 构造函数 /// </summary> /// <param name="CI">当前链路的CIR</param> /// <param name="bestCell">当前点的最佳服务小区</param> /// <param name="tdHSDPABearList">承载列表</param> /// <param name="tdTerminal">终端类型</param> public TDDwLinkThroughPutCalculator(double CI, IACell bestCell, List<TDHSDPABearer> tdHSDPABearList, TDTerminal tdTerminal) { m_ServiceCI = CI; m_TdHSDPABearList = tdHSDPABearList; m_TdCell = bestCell as TDSCDMACarrier; m_TdTerminal = tdTerminal; }
public TdTerminalDesc(TerminalManagement terminalManager, ReceptionEquipmentManagement receptionEquipment, Terminal terminal) { this.m_NewNames = new List<string>(); this.m_TerminalManagement = terminalManager; this.m_ReceptionEquipment = receptionEquipment; this.m_Terminal = terminal; this.m_TdTerminal = terminal.NetTerminalList[0] as TDTerminal; }
public bool ValidateDr(DataRow dr, List<Terminal> excludeTerminal, int validateId) { this.m_ValidatId = validateId; IExtractor ex = new DataRowExtractor(dr); Terminal terminal = new Terminal(); TDTerminal item = new TDTerminal(); terminal.NetTerminalList.Add(item); this.m_Desc = new TdTerminalDesc(this.m_TerminalManagement, this.m_ReceptionEquipment, terminal); return this.Validate(ref this.m_Info, this.m_Desc, ex, validateId); }
private void InitTerminal(TDPredictionGroup group) { m_Terminal = new Terminal(); group.TrafficTerminal = m_Terminal; List<NetworkTerminal> netTerminalList = new List<NetworkTerminal>(); m_Terminal.NetTerminalList = netTerminalList; TDTerminal tdTerminal = new TDTerminal(); tdTerminal.MaxTxPower = 21; tdTerminal.Attenuation = 45f; tdTerminal.NetType = NetWorkType.TDSCDMA; netTerminalList.Add(tdTerminal); }
public void MyTestInitialize() { m_Index = 0; m_Name = "ULDCHRSCP"; m_Context = new Context(); m_Case = new ULDCHRSCPCase(); TrueFalseMatrix matrix = new TrueFalseMatrix(4, 4, 0.0, 200, 50, true); TDPredictionGroup group = MockGroupAndCell.MockTDPredicGroup(); IACell cell = MockGroupAndCell.CreateTDCell(); m_Teminal = new Terminal(); group.TrafficTerminal =m_Teminal; List<NetworkTerminal> netTerminalList=new List<NetworkTerminal>(); m_Teminal.NetTerminalList = netTerminalList; TDTerminal tdTeminal = new TDTerminal(); tdTeminal.Attenuation = 45f; tdTeminal.MaxTxPower = 21; tdTeminal.NetType = NetWorkType.TDSCDMA; netTerminalList.Add(tdTeminal); List<IACell> celllist = new List<IACell>(); celllist.Add(new TDSCDMACarrier()); celllist.Add(new TDSCDMACarrier()); double[] x = { 100, 150 }; double[] y = { 100, 100 }; celllist = MockCellList.CreateCellList(celllist, x, y); celllist.Add(cell); LinkLossAssist.Init(); IProjectManager projectMgr = ServiceHelper.Lookup<IProjectManager>(ProjectSingleton.CurrentProject.AppContext); string path = projectMgr.CurrentProjectLossPath; string absolutePath2 = ResultFilePath.CreateFilePath(path, group.Name, group.Region.Name, TDPredictionStudyType.Best_Server.ToString()); string relativePath2 = ResultFilePath.CreateRelativePath(group.Name, group.Region.Name, TDPredictionStudyType.Best_Server.ToString()); ShortResultStruct srs2 = ShortResultStruct.DefaultMax; ValueMatrixShort BestServerCellID = ValueMatrixAssist.GenerateByTrueFalseMatrix(matrix, absolutePath2, relativePath2, srs2); BestServerCellID[0] = cell.ID; m_Context.Add(ContextKeys.CurrentCalcCell, cell); m_Context.Add(ContextKeys.Group, group); m_Context.Add(ContextKeys.TDBestServerCellID, BestServerCellID); m_Context.Add(ContextKeys.CellList, celllist); m_Context.Add(ContextKeys.TFMatrix, matrix); m_Context.Add(ContextKeys.ApplicationContext, ProjectSingleton.CurrentProject.AppContext); }
private void GetValueFromContext(Context context) { m_tdPreGroup = (TDPredictionGroup)context[ContextKeys.Group]; m_tFMatrix = (TrueFalseMatrix)context[ContextKeys.TFMatrix]; m_AppContext = (IBaseService)context[ContextKeys.ApplicationContext]; m_Name = m_tdPreGroup.Name; TrafficAdaptorAssist trafficAdaptor = TrafficAdaptorAssist.Instance; m_BearerList = trafficAdaptor.TDHSUPABearerList; m_BestServerCellIDMatrix = (ValueMatrixShort)context[ContextKeys.TDBestServerCellID]; m_cells = (List<IACell>)context[ContextKeys.CellList]; m_ProjectManager = ServiceHelper.Lookup<IProjectManager>(m_AppContext); m_tdTerminal = (TDTerminal)m_tdPreGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); m_HSUPACIMatrix = (ValueMatrixShort)context[ContextKeys.ULDCHCIR]; }
private void InitTerminal(TDPredictionGroup group) { m_Terminal = new TDTerminal(); m_Terminal = (TDTerminal)group.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); m_Terminal.EnableHsdpa = true; //List<NetworkTerminal> netTerminalList = new List<NetworkTerminal>(); //m_Terminal.NetTerminalList = netTerminalList; //TDTerminal tdTerminal = new TDTerminal(); //tdTerminal.MaxTxPower = 21; //tdTerminal.UppchPower = 23; //tdTerminal.NetType = NetWorkType.TDSCDMA; //netTerminalList.Add(tdTerminal); }
public void MyTestInitialize() { m_Name = "DLPeakThroughput"; m_Group = MockGroupAndCell.MockTDPredicGroup(); m_Cell = MockGroupAndCell.CreateTDCell(); m_transList = new List<Transceiver>(); m_Transceiver = new Transceiver(); m_tfMatrix = new TrueFalseMatrix(4, 4, 0.0, 200, 50, true); m_index = 0; m_terminal = new TDTerminal(); //m_Group.TrafficTerminal.NetTerminalList.Add(m_terminal); m_terminal = (TDTerminal)m_Group.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); m_terminal.EnableHSUPA = true; //UnionCsService m_service = new UnionCsService(); //UnionPsService service = new UnionPsService(); //TDPsService S = new TDPsService(); ////((TDPsService)m_Group.TrafficService ).EnableHSUPA = true; //service.PSServiceDic.Add(NetWorkType.TDSCDMA, S); //(service.PSServiceDic[NetWorkType.TDSCDMA] as TDPsService).EnableHSUPA = true; LinkLossAssist.Init(); m_Case = new HSUPAPeakThroughputCase(); m_projectMgr = ServiceHelper.Lookup<IProjectManager>(ProjectSingleton.CurrentProject.AppContext); GenerateMatrix(); m_BestServerIDMatrix[m_index] = (short)(m_Cell.ID); m_HSUPACIMatrix[m_index] = -540; m_Case.Name = m_Name; m_CellList = new List<IACell>(); m_Context = new Context(); m_CellList.Add(m_Cell); //GenerateCellList(); m_Transceiver.Cells = m_CellList; m_transList.Add(m_Transceiver); AddToContext(); }
public void MyTestInitialize() { m_Name = "HSPDSCH_SINR"; m_Context = new Context(); m_Case = new HSPDSCHCIRCase(); m_CellList = new List<IACell>(); LinkLossAssist.Init(); tfMatrix = new TrueFalseMatrix(4, 4, 0.0, 200, 50, true); tdGroup = MockGroupAndCell.MockTDPredicGroup(); m_Cell = MockGroupAndCell.CreateTDCell(); m_Cell.ID = 5; m_terminal = new TDTerminal(); m_terminal = (TDTerminal)tdGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); m_terminal.EnableHsdpa = true; InitMatrix(tfMatrix, tdGroup); InitCellList(); AddToContext(tfMatrix, tdGroup); }
//构造使用PS业务的用户 public static User CreatUser_PS() { Mobility mobility = new Mobility("mobility", 30); //构造业务参数 UnionPsService unionPsService = new UnionPsService(); Dictionary<NetWorkType, Service> PSServiceDic = new Dictionary<NetWorkType, Service>(); TDPsService tdPsService = new TDPsService(); tdPsService.TDR99Bearer = new TDR99Bearer(); PSServiceDic.Add(NetWorkType.TDSCDMA, tdPsService); unionPsService.PSServiceDic = PSServiceDic; //构造终端参数 Terminal terminal = new Terminal(); List<NetworkTerminal> terminalList = new List<NetworkTerminal>(); TDTerminal tempTerminal = new TDTerminal(); tempTerminal.NoiseFigure = 2; tempTerminal.NetType = NetWorkType.TDSCDMA; tempTerminal.MinTxPower = 24; tempTerminal.MaxTxPower = 36; terminalList.Add(tempTerminal); terminal.NetTerminalList = terminalList; User user = new User(mobility, unionPsService, terminal, LinkType.Uplink, 1); user.Id = 1; return user; }
public object Clone() { TDTerminal terminal = new TDTerminal(); terminal.DlMaxTxPower = this.DlMaxTxPower; terminal.EnableHsdpa = this.EnableHsdpa; terminal.EnableHSUPA = this.EnableHSUPA; terminal.Gain = base.Gain; terminal.TDHSPAsupport = this.TDHSPAsupport; terminal.HSUPAUeCatgoryIndex = this.HSUPAUeCatgoryIndex; terminal.HSDPAUeCategoryIndex = this.HSDPAUeCategoryIndex; terminal.Loss = base.Loss; terminal.MaxTxPower = base.MaxTxPower; terminal.MinTxPower = base.MinTxPower; terminal.MudFactor = this.MudFactor; terminal.Name = base.Name; terminal.NoiseFigure = base.NoiseFigure; terminal.Reception = base.Reception; terminal.RhoFactor = this.RhoFactor; terminal.TDHsupaUeCategory = this.TDHsupaUeCategory; terminal.TDHsdpaUeCategory = this.TDHsdpaUeCategory; terminal.HSPower = this.HSPower; terminal.UppchPower = this.UppchPower; return terminal; }
/// <summary> /// 从context里面取数据 /// </summary> /// <param name="context"></param> private void GetValueFromContext(Context context) { m_TFMatrix = (TrueFalseMatrix)context[ContextKeys.TFMatrix]; m_tdPredicGroup = (TDPredictionGroup)context[ContextKeys.Group]; m_BestServerCellIDMatrix = (ValueMatrixShort)context[ContextKeys.TDBestServerCellID]; m_CellList = (List<IACell>)context[ContextKeys.CellList]; m_appContext = (IBaseService)context[ContextKeys.ApplicationContext]; m_projectManager = ServiceHelper.Lookup<IProjectManager>(m_appContext); m_TDTerminal = (TDTerminal)m_tdPredicGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); List<Transceiver> trans = (List<Transceiver>)context[ContextKeys.TranceiverList]; InterfParameter interfPara = new InterfParameter(); interfPara.InterfTable = TrafficAdaptorMgr.Instance.TableDIC; m_IInterf = (IInterf)interfPara; m_linkLossCalc = new CoLinkLossCalc(m_tdPredicGroup.RxSensitivity, m_tdPredicGroup.TrafficTerminal, m_tdPredicGroup.TrafficService, m_tdPredicGroup.Shadow, m_tdPredicGroup.IndoorCoverage, m_tdPredicGroup.CoverageProb); InitialHopDic(trans); }
private void InitTerminal() { this.m_Terminal.Name = this.m_TerminalManagement.GeneralNewTerminalName(); this.m_Terminal.Attenuation = 0f; this.m_TdTerminal = new TDTerminal(); this.m_TdTerminal.MaxTxPower = 0f; this.m_TdTerminal.MinTxPower = 0f; this.m_Terminal.NetTerminalList.Add(this.m_TdTerminal); }
private bool CheckTxPowerValid(TDTerminal tdTerminal, ref string info) { if ((tdTerminal.MaxTxPower < this.MINPOWERVALUE) || (tdTerminal.MaxTxPower > this.MAXPOWERVALUE)) { return false; } if ((tdTerminal.MinTxPower < this.MINPOWERVALUE) || (tdTerminal.MinTxPower > this.MAXPOWERVALUE)) { return false; } if (tdTerminal.MinTxPower > tdTerminal.MaxTxPower) { return false; } return true; }
/// <summary> /// 从Context获取本case所需的指标 /// </summary> /// <param name="context"></param> private void GetDataFromContext(Context context) { m_predictionGroup = (TDPredictionGroup)context[ContextKeys.Group]; m_tfMatrix = (TrueFalseMatrix)context[ContextKeys.TFMatrix]; m_appContext = (IBaseService)context[ContextKeys.ApplicationContext]; m_projectMgr = ServiceHelper.Lookup<IProjectManager>(m_appContext); m_cellList = (List<IACell>)context[ContextKeys.CellList]; m_bestServerCellIDMatrix = (ValueMatrixShort)context[ContextKeys.TDBestServerCellID]; m_HSPDSCHRSCPMatrix = (ValueMatrixShort)context[ContextKeys.HSPDSCHRSCP]; m_HSPDSCHInterfMatrix = (ValueMatrixDouble)context[ContextKeys.HSPDSCHInterf]; m_OtherSystemInterfMatrix = (ValueMatrixDouble)context[ContextKeys.OtherSystemInterf]; m_tdTermianl = (TDTerminal)m_predictionGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); }
/// <summary> /// 从context里获取数据 /// </summary> /// <param name="context"></param> private void GetDataFromContext(Context context) { m_Group = (CoPredicGroup)context[ContextKeys.Group]; m_appContext = (IBaseService)context[ContextKeys.ApplicationContext]; IProjectManager projectManager = ServiceHelper.Lookup<IProjectManager>(m_appContext); m_ProjectPath = projectManager.CurrentProjectLossPath; //获得Cell列表 m_CellList = (List<IACell>)context[ContextKeys.CellList]; //获得接收功率矩阵 m_GSMBestServerRSCP = (ValueMatrixShort)context[ContextKeys.CoGSMBestServerRSCP]; m_UMTSBestServerRSCP = (ValueMatrixShort)context[ContextKeys.CoUMTSBestServerRSCP]; m_TDBestServerRSCP = (ValueMatrixShort)context[ContextKeys.CoTDSCDMABestServerRSCP]; m_LTEBestServerRSCP = (ValueMatrixShort)context[ContextKeys.CoLTEBestServerRSCP]; m_GSMBestServerID = (ValueMatrixDouble)context[ContextKeys.CoGSMBestServerID]; m_UMTSBestServerID = (ValueMatrixDouble)context[ContextKeys.CoUMTSBestServerID]; m_TDBestServerID = (ValueMatrixDouble)context[ContextKeys.CoTDBestServerID]; m_LTEBestServerID = (ValueMatrixDouble)context[ContextKeys.CoLTEBestServerID]; //获得干扰矩阵 m_GSMInterf = (ValueMatrixDouble)context[ContextKeys.CoGSMInterf]; m_UMTSInterf = (ValueMatrixDouble)context[ContextKeys.CoUMTSInterf]; m_TDInterf = (ValueMatrixDouble)context[ContextKeys.CoTDInterf]; m_LTEInterf = (ValueMatrixDouble)context[ContextKeys.CoLTEInterf]; m_UMTSTerminal = (UMTSTerminal)m_Group.CoUMTSGroup.Terminal.GetNetWorkTerminal(NetWorkType.UMTS); m_TDTerminal = (TDTerminal)m_Group.CoTDSCDMAGroup.Terminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); m_LTETerminal = (LTETerminal)m_Group.CoLTEGroup.Terminal.GetNetWorkTerminal(NetWorkType.LTE); }
/// <summary> /// 从context里面取对象 /// </summary> /// <param name="context"></param> private void GetValueFromContext(Context context) { m_tdPredicGroup = (TDPredictionGroup)context[ContextKeys.Group]; m_tFMatrix = (TrueFalseMatrix)context[ContextKeys.TFMatrix]; m_BestServerCellIDMatrix = (ValueMatrixShort)context[ContextKeys.TDBestServerCellID]; m_CellList = (List<IACell>)context[ContextKeys.CellList]; m_appContext = (IBaseService)context[ContextKeys.ApplicationContext]; m_smartAntGain = ServiceHelper.Lookup<ISmartAntCalcGain>(m_appContext); m_ProjectManager = ServiceHelper.Lookup<IProjectManager>(m_appContext); m_Name = m_tdPredicGroup.Name; m_tdTerminal = m_tdPredicGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA) as TDTerminal; }
/// <summary> /// 从context里面提取数据对象 /// </summary> /// <param name="context"></param> private void GetValueFromContext(Context context) { m_TdPredicGroup = (TDPredictionGroup)context[ContextKeys.Group]; m_TFMatrix = (TrueFalseMatrix)context[ContextKeys.TFMatrix]; m_AppContext = (IBaseService)context[ContextKeys.ApplicationContext]; m_ProjectManager = ServiceHelper.Lookup<IProjectManager>(m_AppContext); m_ITrafficService = ServiceHelper.Lookup<ITrafficService>(m_AppContext); HSDPABearerManagement tdHSDPAManagement = m_ITrafficService.LookupManager(typeof(HSDPABearerManagement)) as HSDPABearerManagement; m_TdHSDPAList.AddRange(tdHSDPAManagement.TdHsdpaBearerList); m_CellList = (List<IACell>)context[ContextKeys.CellList]; m_BestServerCellID = (ValueMatrixShort)context[ContextKeys.TDBestServerCellID]; m_DLInterf = (ValueMatrixDouble)context[ContextKeys.DLDCHInterf]; m_Name = m_TdPredicGroup.Name; m_SpaceDivMultipleGain = m_TdPredicGroup.tdUIParam.SpaceDivMultipleGain; m_MaxSpaceDivMultipleGain = m_TdPredicGroup.tdUIParam.MaxSpaceDivMultipleGain; m_TdTermial = (TDTerminal)m_TdPredicGroup.TrafficTerminal.GetNetWorkTerminal(NetWorkType.TDSCDMA); }
private bool CheckTdTerminalPropertyValid(TDTerminal tdTerminal, ref string info) { if ((tdTerminal.Gain < this.MINZEROVALUE) || (tdTerminal.Gain > this.MAXVALUE)) { info = string.Format(TrafficMapResource.TRAFFIC_MESSAGE_IMPROPERTY, TrafficModelResource.TRAFFICMODEL_GAIN); return false; } if (!this.CheckTxPowerValid(tdTerminal, ref info)) { info = TrafficModelResource.TRAFFICMODEL_TERMINAL_MINMAX_POWER; return false; } if ((tdTerminal.NoiseFigure < this.MINZEROVALUE) || (tdTerminal.NoiseFigure > this.MAXVALUE)) { info = string.Format(TrafficMapResource.TRAFFIC_MESSAGE_IMPROPERTY, TrafficModelResource.TRAFFICMODEL_NOISEFIGUREDB); return false; } return true; }