예제 #1
0
        public virtual void Arma2ma_test()
        {
            double[] ar  = new double[] { 1.0, -0.25 };
            double[] ma  = new double[] { 1.0, 2.0 };
            int      lag = 10;

            double[] ma_coeff   = ForecastUtil.ARMAtoMA(ar, ma, lag);
            double[] true_coeff = new double[] { 1.0, 2.0, 3.75, 3.25, 2.3125, 1.5, 0.921875, 0.546875, 0.31640625, 0.1796875 };

            Assert.Equal(ma_coeff, true_coeff); //$!!$, 1e-6);
            //Util.Equal(ma_coeff, true_coeff, 1e-6);
        }
예제 #2
0
 /// <summary>
 /// Set Sigma2(RMSE) and Predication Interval for forecast result.
 /// </summary>
 /// <param name="params"> ARIMA parameters </param>
 /// <param name="forecastResult"> MODIFIED. forecast result </param>
 /// <param name="forecastSize"> size of forecast </param>
 /// <returns> max normalized variance </returns>
 //JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
 //ORIGINAL LINE: public static double setSigma2AndPredicationInterval(final TimeSeries.Forecast.TimeSeries.Arima.struct.ArimaParams params, final TimeSeries.Forecast.TimeSeries.Arima.struct.ForecastResult forecastResult, final int forecastSize)
 public static double setSigma2AndPredicationInterval(ArimaParams @params, ForecastResult forecastResult, int forecastSize)
 {
     //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
     //ORIGINAL LINE: final double[] coeffs_AR = params.getCurrentARCoefficients();
     double[] coeffs_AR = @params.CurrentARCoefficients;
     //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
     //ORIGINAL LINE: final double[] coeffs_MA = params.getCurrentMACoefficients();
     double[] coeffs_MA = @params.CurrentMACoefficients;
     return(forecastResult.SetConfInterval(ForecastUtil.confidence_constant_95pct, ForecastUtil.getCumulativeSumOfCoeff(ForecastUtil.ARMAtoMA(coeffs_AR, coeffs_MA, forecastSize))));
 }