예제 #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            HRDataReading hrD = new HRDataReading(true);

            hrD.isBeat = true;
            hrD.Write();
        }
예제 #2
0
        public static double HRVMean(List <DataReading> data)
        {
            List <double> hrv      = new List <double>();
            HRDataReading lastBeat = (HRDataReading)data.First();

            foreach (HRDataReading d in data)
            {
                if (d.isBeat)
                {
                    if (lastBeat.IBI != null)
                    {
                        hrv.Add((int)d.IBI - (int)lastBeat.IBI);
                        lastBeat = d;
                    }
                    else
                    {
                        lastBeat = d;
                    }
                }
            }
            return(hrv.Average(x => x));
        }
예제 #3
0
        public static double HRVRMSSD(List <DataReading> data)
        {
            List <double> sqauredHRV = new List <double>();
            HRDataReading lastBeat   = (HRDataReading)data.First();

            foreach (HRDataReading d in data)
            {
                if (d.isBeat)
                {
                    if (lastBeat.IBI != null)
                    {
                        sqauredHRV.Add(Math.Pow((double)d.IBI - (double)lastBeat.IBI, 2));
                        lastBeat = d;
                    }
                    else
                    {
                        lastBeat = d;
                    }
                }
            }
            return(Math.Sqrt(sqauredHRV.Average(x => x)));
        }
예제 #4
0
        public static double HRVSD(List <DataReading> data)
        {
            List <double> hrv      = new List <double>();
            HRDataReading lastBeat = (HRDataReading)data.First();

            foreach (HRDataReading d in data)
            {
                if (d.isBeat)
                {
                    if (lastBeat.IBI != null)
                    {
                        hrv.Add((int)d.IBI - (int)lastBeat.IBI);
                    }
                    else
                    {
                        lastBeat = d;
                    }
                }
            }
            double avg = hrv.Average(x => x);

            return(Math.Sqrt(hrv.Average(x => Math.Pow(x - avg, 2))));
        }
예제 #5
0
 public void AddHRData(HRDataReading data)
 {
     data.Write();
     hrData.Add(data);
 }