Beispiel #1
0
 /// <summary>
 /// 计算点到小区的干扰,返回线性值mw
 /// </summary>
 /// <param name="bestServerCell"></param>
 /// <param name="intefCell"></param>
 /// <param name="dLinkLoss"></param>
 /// <returns></returns>
 private static double GetOneCellInf(Signal usefulSignal, Signal source, IInterfCalc m_IInterf, double rIntef)
 {
     InterfResult result = m_IInterf.CalcOneSourceInf(usefulSignal, source);
     //用前一次的干扰值初始化总干扰
     double m_totalInf = rIntef;
     m_totalInf = AddPowerTomw(result.SC, result.AC, result.AC2) + AddPowerTomw(result.OtherAC, result.BCI, result.SE);
     return m_totalInf;
 }
Beispiel #2
0
        /// <summary>
        /// 计算点到小区的干扰,返回线性值mw
        /// </summary>
        /// <param name="usefulSignal">有用信号</param>
        /// <param name="source">干扰信号</param>
        /// <param name="m_IInterf">干扰计算接口</param>
        /// <param name="rIntef">计算本小区之前的总干扰值(mw)</param>
        /// <returns>加上当前干扰信号的总干扰值(mw)</returns>
        private static double GetOneCellInf(Signal usefulSignal, Signal source, IInterfCalc m_IInterf, double rIntef)
        {
            InterfResult result = m_IInterf.CalcOneSourceInf(usefulSignal, source);
            //用前一次的干扰值初始化总干扰
            double m_totalInf = rIntef;
            double m_SameFreqInf = UnitTrans.dBto(result.SC);
            double m_AdjFreqInf = UnitTrans.dBto(result.AC);
            double m_AdjFreqInf2 = UnitTrans.dBto(result.AC2);
            double m_OtherSymIntf = UnitTrans.dBto(result.OtherAC);
            double m_bicInf = UnitTrans.dBto(result.BCI);
            double m_seInf = UnitTrans.dBto(result.SE);
            m_totalInf += m_SameFreqInf * (1 - source.OrthCoef);
            m_totalInf += m_AdjFreqInf;
            m_totalInf += m_AdjFreqInf2;
            m_totalInf += m_OtherSymIntf;
            m_totalInf += m_bicInf;
            m_totalInf += m_seInf;

            return m_totalInf;
        }