OptBCFDNewton.h

00001 #ifndef OptBCFDNewton_h
00002 #define OptBCFDNewton_h
00003 
00004 /*----------------------------------------------------------------------
00005  Copyright (c) 2001, Sandia Corporation.
00006  J.C. Meza, Sandia National Laboratories, meza@ca.sandia.gov
00007  ----------------------------------------------------------------------*/
00008 
00009 #include "OptBCNewtonLike.h"
00010 
00011 using std::cerr;
00012 
00013 namespace OPTPP {
00014 
00025 class OptBCFDNewton: public OptBCNewton1Deriv {
00026  protected:
00028   int           nactive;        
00030   BoolVector    work_set;       
00031 
00032  public:
00036   OptBCFDNewton(): 
00037     OptBCNewton1Deriv(), nactive(0), work_set(0) 
00038     { cerr << "OptBCFDNewton :: instantiation \n";
00039       strcpy(method,"Bound constrained QNewton"); work_set = false; 
00040     }
00047   OptBCFDNewton(NLP1* p): 
00048     OptBCNewton1Deriv(p), nactive(0), work_set(p->getDim())
00049     { strcpy(method,"Bound constrained FDNewton"); work_set = false; }
00057   OptBCFDNewton(NLP1* p, UPDATEFCN u): 
00058     OptBCNewton1Deriv(p, u), nactive(0), work_set(p->getDim())
00059     { strcpy(method,"Bound constrained FDNewton"); work_set = false; }
00066   OptBCFDNewton(NLP1* p, TOLS t): 
00067     OptBCNewton1Deriv(p, t), nactive(0), work_set(p->getDim())
00068     { strcpy(method,"Bound constrained FDNewton"); work_set = false; }
00069 
00073   virtual ~OptBCFDNewton(){;}
00074 
00075 //---------------------------------
00076 // These are defined elsewhere
00077 //---------------------------------
00078 
00079   virtual int   checkDeriv();
00080   NEWMAT::SymmetricMatrix updateH(NEWMAT::SymmetricMatrix& H, int k);
00081   virtual void  reset();
00082 
00083 };
00084 
00085 } // namespace OPTPP
00086 #endif
Generated on Mon Jan 24 12:04:37 2011 for FASTlib by  doxygen 1.6.3