// g13ad Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; namespace NagDotNetExamples { public class G13ADE { static string datafile = "ExampleData/g13ade.d"; static void Main(String[] args) { if (args.Length == 1) { datafile = args[0]; } StartExample(); } public static void StartExample() { try { DataReader sr = new DataReader(datafile); double rv, xv; int i, nk, npar; int ifail; Console.WriteLine("g13ad Example Program Results"); // Skip heading in data file sr.Reset(); sr.Reset(); nk = int.Parse(sr.Next()); sr.Reset(); xv = double.Parse(sr.Next(), CultureInfo.InvariantCulture); double[] r = new double[nk]; int[] isf = new int[4]; int[] mr = new int[7]; Console.WriteLine(""); if (nk > 0) { sr.Reset(); for (i = 1; i <= nk; i++) { r[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } sr.Reset(); for (int mrlenindex = 0; mrlenindex < 7; mrlenindex++) { mr[mrlenindex] = int.Parse(sr.Next()); } npar = mr[0] + mr[2] + mr[3] + mr[5]; double[] par = new double[npar]; if (nk >= Math.Max(mr[0]+mr[2], mr[6]*(mr[3]+mr[5]))) { // G13.g13ad(mr, r, nk, xv, par, out rv, isf, out ifail); // if (ifail < 0) { Console.WriteLine(""); Console.WriteLine("** g13ad failed with ifail = {0,5}", ifail); } else { if (ifail != 0) { Console.WriteLine(" {0}{1,5}", "g13ad fails. ifail = ", ifail); Console.WriteLine(""); } if ((ifail == 0) || (ifail >= (7))) { Console.Write(" {0}", "Parameter estimation success/failure indicator"); for (i = 1; i <= 4; i++) { Console.Write(" {0}", isf[i - 1]); } Console.WriteLine(""); Console.WriteLine(""); Console.Write(" {0}", "ARIMA model parameter values "); for (i = 1; i <= npar; i++) { Console.Write(" {0, 10:f5}", par[i - 1]); } Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(" {0}{1,10:f5}", "Residual variance", rv); } } } } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Exception Raised"); } } } }