// g13aj Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; namespace NagDotNetExamples { public class G13AJE { static string datafile = "ExampleData/g13aje.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 c, rms; int i, ifv, ist, kfc, nfv, npar, nst, nx; int[] isf = new int[4]; int[] mr = new int[7]; int ifail; Console.WriteLine("g13aj Example Program Results"); // Skip heading in data file sr.Reset(); sr.Reset(); nx = int.Parse(sr.Next()); double[] x = new double[nx]; for (i = 1; i <= 7; i++) { mr[i - 1] = int.Parse(sr.Next()); } nfv = int.Parse(sr.Next()); npar = mr[0] + mr[2] + mr[3] + mr[5]; double[] par = new double[npar]; if (nx > 0 && npar > 0) { sr.Reset(); for (i = 1; i <= nx; i++) { x[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } sr.Reset(); for (i = 1; i <= npar; i++) { par[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } sr.Reset(); kfc = int.Parse(sr.Next()); c = double.Parse(sr.Next(), CultureInfo.InvariantCulture); ist = mr[3] + mr[6] + mr[1] + mr[4] + mr[2] + Math.Max(mr[0], mr[5] * mr[6]); ifv = Math.Max(1, nfv); double[] fva = new double[ifv]; double[] fsd = new double[ifv]; double[] st = new double[ist]; // G13.g13aj(mr, par, c, kfc, x, nx, out rms, st, out nst, nfv, fva, fsd, isf, out ifail); // Console.WriteLine(""); Console.WriteLine(" {0}{1,9:f2}", "The residual mean square is ", rms); Console.WriteLine(""); Console.WriteLine(" {0}{1,1}{2}", "The state set consists of ", nst, " values\r\n"); for (i = 1; i <= nst; i++) { Console.Write(" {0:0.0000}", st[i - 1]); if (i % 5 == 0) { Console.WriteLine(""); ; } } Console.WriteLine(""); ; Console.WriteLine(""); Console.WriteLine(" {0}{1,2}{2}", "The ", nfv, " forecast values and standard errors are -\r\n"); for (i = 1; i <= nfv; i++) { Console.WriteLine(" {0, 10:f2}{1,10:f2}", fva[i - 1], fsd[i - 1]); } Console.WriteLine(""); ; } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Exception Raised"); } } } }