00001 #ifndef OptConstrQNewton_h 00002 #define OptConstrQNewton_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 00025 class OptConstrQNewton: public OptConstrNewton1Deriv { 00026 public: 00034 OptConstrQNewton(){strcpy(method,"Constrained Quasi-Newton");} 00035 00039 OptConstrQNewton(NLP1* p): OptConstrNewton1Deriv(p) 00040 {strcpy(method,"Constrained Quasi-Newton");} 00045 OptConstrQNewton(NLP1* p, UPDATEFCN u): OptConstrNewton1Deriv(p, u) 00046 {strcpy(method,"Constrained Quasi-Newton"); } 00051 OptConstrQNewton(NLP1* p, TOLS t): OptConstrNewton1Deriv(p, t) 00052 {strcpy(method,"Constrained Quasi-Newton"); } 00053 00057 virtual ~OptConstrQNewton(){} 00058 00059 //---------------------------------- 00060 // These are defined elsewhere 00061 //---------------------------------- 00062 00064 NEWMAT::SymmetricMatrix updateH(NEWMAT::SymmetricMatrix& H, int k); 00066 int checkDeriv(); 00067 00068 // virtual double initTrustRegionSize() const; 00069 }; 00070 00071 } // namespace OPTPP 00072 #endif