OptConstrNewton.h

00001 #ifndef OptConstrNewton_h
00002 #define OptConstrNewton_h
00003 
00004 /*----------------------------------------------------------------------
00005  Copyright (c) 2001, Sandia Corporation.
00006  J.C. Meza, Sandia National Laboratories, meza@ca.sandia.gov
00007  ----------------------------------------------------------------------*/
00008 
00009 #ifndef OptConstrNewtonLike_h
00010 #include "OptConstrNewtonLike.h"
00011 #endif
00012 
00013 namespace OPTPP {
00014 
00026 class OptConstrNewton: public OptConstrNewton2Deriv {
00027 public:
00034   OptConstrNewton() {strcpy(method,"Constrained Newton");}
00035 
00041   OptConstrNewton(NLP2* p): OptConstrNewton2Deriv(p)
00042   {strcpy(method,"Constrained Newton");}
00043 
00050   OptConstrNewton(NLP2* p, UPDATEFCN u): OptConstrNewton2Deriv(p,u)
00051       {strcpy(method,"Constrained Newton");}
00058   OptConstrNewton(NLP2* p, TOLS t): OptConstrNewton2Deriv(p,t)
00059     {strcpy(method,"Constrained Newton");}
00060   
00064   virtual ~OptConstrNewton(){}
00065 
00066 // These are defined elsewhere
00067 
00069   void initHessian();
00070 
00072   NEWMAT::SymmetricMatrix updateH(NEWMAT::SymmetricMatrix& H, int k);
00073 
00075   int checkDeriv();
00076 
00078   void printStatus(char *);
00079 
00081   real stepTolNorm() const;
00082 };
00083 
00084 } // namespace OPTPP
00085 #endif
Generated on Mon Jan 24 12:04:37 2011 for FASTlib by  doxygen 1.6.3