Ejemplo n.º 1
0
        public static List <double> CaculateA(HolesAD ad, HolesAD fullAd, HolesT t, ALimit limit, string str)
        {
            List <double> tgList = new List <double>();
            HolesA        a      = new HolesA(t.LED_ROW, t.LED_COL, t.LED_NUMS);

            for (int i = 0; i < t.LED_ROW; ++i)
            {
                for (int j = 0; j < t.LED_COL; ++j)
                {
                    for (int k = 0; k < t.LED_NUMS; ++k)
                    {
                        if (_VALUE_INVALID == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = _VALUE_INVALID;
                        }
                        else if (_VALUE_OVERFLOW == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = _VALUE_OVERFLOW;
                        }
                        else if (1 == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = 0;
                        }
                        else
                        {
                            if (ad.adValues[i][j][k] < 1)
                            {
                                a.aValues[i][j][k] = 5;
                            }
                            else
                            {
                                a.aValues[i][j][k] = Math.Log10(fullAd.adValues[i][j][k] / ad.adValues[i][j][k]);
                            }
                        }
                        tgList.Add(a.aValues[i][j][k]);
                    }
                }
            }
            return(tgList);
        }
Ejemplo n.º 2
0
        // 吸光度 标准曲线法,只需要计算吸光度即可。
        public static HolesA CaculateA(HolesAD ad, HolesAD fullAd, HolesT t, ALimit limit)
        {
            HolesA a = new HolesA(t.LED_ROW, t.LED_COL, t.LED_NUMS);

            for (int i = 0; i < t.LED_ROW; ++i)
            {
                for (int j = 0; j < t.LED_COL; ++j)
                {
                    for (int k = 0; k < t.LED_NUMS; ++k)
                    {
                        if (_VALUE_INVALID == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = _VALUE_INVALID;
                        }
                        else if (_VALUE_OVERFLOW == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = _VALUE_OVERFLOW;
                        }
                        else if (1 == t.tValues[i][j][k])
                        {
                            a.aValues[i][j][k] = 0;
                        }
                        else
                        {
                            if (ad.adValues[i][j][k] < 1)
                            {
                                a.aValues[i][j][k] = 5;
                            }
                            else
                            {
                                a.aValues[i][j][k] = Math.Log10(fullAd.adValues[i][j][k] / ad.adValues[i][j][k]);
                            }
                        }
                    }
                }
            }
            return(a);
        }