Beispiel #1
0
        // TimeDomainEstimate没有继承DataAnalyzer类,需要特殊处理
        /// <summary>
        /// 构造时间域分析
        /// </summary>
        public TimeDomainEstimate()
        {
            analyzer = new TimeDomainEstimator();
//            RawAnalyzer = analyzer;

            IsAnalyzeParamSet = true;
        }
        /// <summary>
        /// 时域分析
        /// </summary>
        /// <param name="testData">测试波形</param>
        /// <param name="peakToPeak">峰峰值</param>
        /// <param name="rms">有效电平</param>
        /// <param name="dc">直流信号</param>
        /// <param name="rmsOfAc">AC的有效电平</param>
        /// <param name="max">最大值</param>
        /// <param name="min">最小值</param>
        public static void TimeDomainEstimate(double[] testData, out double peakToPeak, out double rms, out double dc,
                                              out double rmsOfAc, out double max, out double min)
        {
            TimeDomainEstimator estimator = new TimeDomainEstimator();

            estimator.Estimate(testData, (uint)testData.Length);
            peakToPeak = estimator.GetPeakToPeak();
            rms        = estimator.GetRMS();
            dc         = estimator.GetDcPart();
            rmsOfAc    = estimator.GetAcPart();
            max        = estimator.GetMax();
            min        = estimator.GetMin();
        }