// s17dg Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; namespace NagDotNetExamples { public class S17DGE { static string datafile = "ExampleData/s17dge.d"; static void Main(String[] args) { if (args.Length == 1) { datafile = args[0]; } StartExample(); } public static void StartExample() { try { PrintManager.Warning = new PrintManager.MessageLogger(discardmessage); DataReader sr = new DataReader(datafile); Complex ai = new Complex(0.0, 0.0), z = new Complex(0.0, 0.0); double xxx = ai.re; int nz = 0; string deriv = "", scal = ""; int ifail; Console.WriteLine("s17dg Example Program Results"); // Skip heading in data file sr.Reset(); Console.WriteLine(""); Console.WriteLine(" {0}", "deriv z scal ai nz ifail"); Console.WriteLine(""); try { while (true) { sr.Reset(); deriv = sr.Next(); z = Complex.Parse(sr.Next()); scal = sr.Next(); // S.s17dg(deriv, z, scal, out ai, out nz, out ifail); // string formattedZ = String.Format("({0,8:f4},{1,7:f4})", z.re, z.im); string formattedAI = String.Format("({0,8:f4},{1,8:f4})", ai.re, ai.im); if (ifail >= 0) { Console.WriteLine(" {0,-5} {1}{2,6} {3,8}{4,5}{5,7}", deriv, formattedZ, scal, formattedAI, nz, ifail); } else { Console.WriteLine("** s17dg failed with ifail = {0,5}", ifail); } } } catch { } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Exception Raised"); } } static void discardmessage(String message) { } } }