/////////////////////////////////////////////////////////// //! rcsid="$Id: testNumFunc.cc,v 1.7 1999/06/17 15:34:25 ees1cg Exp $" #include "amma/Num/NumFuncConstant.hh" #include "amma/Filename.hh" #include "amma/EntryPnt.hh" #include int testNumFunc (int n,char **argv) { FilenameC dataFile("/tmp/testNumFunc.data"); dataFile = dataFile.MkTemp(); cout << "Starting test... \n"; VectorC Xvec (3); Xvec.SetZero(); VectorC Yvec (2); Yvec[0] = 1.0; Yvec[1] = 2.0; NumFuncC function1 = NumFuncConstantC (Yvec); { ofstream out (dataFile); out << function1 << " " << function1; out.close(); } ifstream in (dataFile); NumFuncC function (in); cout << "Function Name: " << function.GetName() << "\n"; cout << "Size X and Y: " << function.SizeX() << " " << function.SizeY() << "\n"; cout << function.GetInfo() << "\n"; cout << "Output at X=" << Xvec << " is Y=" << function(Xvec) << "\n"; cout << "Jacobian at X is " << function.Jacobian(Xvec) << "\n"; // Try loading a second version... NumFuncC function2 (in); if(!function2.IsValid()) { cerr << "Failed to load second object. \n"; return 1; } cout << "Function2 Name: " << function2.GetName() << "\n"; cout << "TEST PASSED. \n"; dataFile.Remove(); return 0; } AMMA_ENTRY_POINT(testNumFunc);