// g13ah Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; namespace NagDotNetExamples { public class G13AHE { static string datafile = "ExampleData/g13ahe.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, nfv, npar, nst, nwa; int[] mr = new int[7]; int ifail; Console.WriteLine("g13ah Example Program Results"); // Skip heading in data file sr.Reset(); sr.Reset(); nfv = int.Parse(sr.Next()); double[] fsd = new double[nfv]; double[] fva = new double[nfv]; sr.Reset(); for (i = 1; i <= 7; i++) { mr[i - 1] = int.Parse(sr.Next()); } npar = mr[0] + mr[2] + mr[3] + mr[5]; nst = mr[3] * mr[6] + mr[4] * mr[6] + mr[1] + mr[2] + Math.Max(mr[0], mr[5] * mr[6]); nwa = 4 * npar + 3 * nst; double[] par = new double[npar]; double[] st = new double[nst]; if (nfv > 0 && npar > 0 && nst > 0) { sr.Reset(); for (i = 1; i <= npar; i++) { par[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } c = double.Parse(sr.Next(), CultureInfo.InvariantCulture); sr.Reset(); for (i = 1; i <= nst; i++) { st[i - 1] = double.Parse(sr.Next(), CultureInfo.InvariantCulture); } sr.Reset(); rms = double.Parse(sr.Next(), CultureInfo.InvariantCulture); // G13.g13ah(st, nst, mr, par, c, rms, nfv, fva, fsd, out ifail); // Console.WriteLine(""); Console.WriteLine(" {0}{1,3}{2}", "The required", nfv, " forecast values are as follows\r\n"); for (i = 1; i <= nfv; i++) { Console.Write(" {0, 8:f4}{1}", fva[i - 1], i%8==0?"\n":""); } Console.WriteLine(""); ; Console.WriteLine(""); Console.WriteLine(" {0}", "The standard deviations corresponding to the forecasts are\r\n"); for (i = 1; i <= nfv; i++) { Console.Write(" {0, 8:f4}{1}", fsd[i - 1], i%8==0?"\n":""); } Console.WriteLine(""); ; } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Exception Raised"); } } } }