示例#1
0
        public static Analisis analizar2(BindingList <CalibracionElec> lista, Equipo equipo, EnergiaElectrones energia)
        {
            Analisis      analisis = new Analisis();
            List <Double> valores  = lista.Select(q => q.Dwzref).ToList();

            if (CalibracionElec.hayReferencia(equipo, energia))
            {
                CalibracionElec caliRef = CalibracionElec.obtenerCaliReferencia(equipo, energia);
                analisis.Referencia = ValorARF.crear(caliRef.Dwzref, caliRef.Dwzref, caliRef.Fecha);
            }
            else
            {
                analisis.Referencia = new ValorARF()
                {
                    absoluto = double.NaN,
                    relativo = double.NaN,
                    fecha    = "",
                };
            }
            analisis.Maximo   = ValorARF.crear(valores.Max(), analisis.Referencia.absoluto, (lista[valores.IndexOf(valores.Max())].Fecha));
            analisis.Minimo   = ValorARF.crear(valores.Min(), analisis.Referencia.absoluto, (lista[valores.IndexOf(valores.Min())].Fecha));
            analisis.Promedio = ValorARF.crear(Math.Round(valores.Average(), 2), analisis.Referencia.absoluto);
            analisis.DesvEst  = ValorARF.crear(Calcular.desvEstandar(valores), analisis.Referencia.absoluto);

            return(analisis);
        }