// s17dh Example Program Text // C# version, NAG Copyright 2008 using System; using NagLibrary; using System.Globalization; namespace NagDotNetExamples { public class S17DHE { static string datafile = "ExampleData/s17dhe.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 bi = new Complex(0.0, 0.0), z = new Complex(0.0, 0.0); string deriv = "", scal = ""; int ifail; Console.WriteLine("s17dh Example Program Results"); // Skip heading in data file sr.Reset(); Console.WriteLine(""); Console.WriteLine(" {0}", "deriv z scal bi ifail"); Console.WriteLine(""); try { while (true) { sr.Reset(); deriv = sr.Next(); z = Complex.Parse(sr.Next()); scal = sr.Next(); // S.s17dh(deriv, z, scal, out bi, out ifail); // string formattedZ = String.Format("({0,8:f4},{1,7:f4})", z.re, z.im); string formattedBI = String.Format("({0,8:f4},{1,8:f4})", bi.re, bi.im); if (ifail >= 0) { Console.WriteLine(" {0,-5} {1}{2,6} {3,8} {4,7}", deriv, formattedZ, scal, formattedBI, ifail); } else { Console.WriteLine("** s17dh failed with ifail = {0,5}", ifail); } } } catch { } // } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Exception Raised"); } } static void discardmessage(String message) { } } }