OptNIPS.h
00001 #ifndef OptNIPS_h
00002 #define OptNIPS_h
00003
00004 #ifndef OptNIPSLike_h
00005 #include "OptNIPSLike.h"
00006 #endif
00007
00008 namespace OPTPP {
00009
00017 class OptNIPS: public OptNIPSLike {
00018 private:
00019 NLP2* nlp;
00020
00021 protected:
00025 NLP2* nlprob2() const {return nlp;}
00029 NLP1* nlprob() const {return nlp;}
00030
00031 public:
00032
00039 OptNIPS(): OptNIPSLike(), nlp(0)
00040 {strcpy(method,"Nonlinear Interior-Point Method");}
00044 OptNIPS(NLP2* p): OptNIPSLike(p->getDim()), nlp(p)
00045 {strcpy(method,"Nonlinear Interior-Point Method");}
00050 OptNIPS(NLP2* p, UPDATEFCN u): OptNIPSLike(p->getDim(),u), nlp(p)
00051 {strcpy(method,"Nonlinear Interior-Point Method"); }
00056 OptNIPS(NLP2* p, TOLS t): OptNIPSLike(p->getDim(),t), nlp(p)
00057 {strcpy(method,"Nonlinear Interior-Point Method"); }
00058
00062 virtual ~OptNIPS(){}
00063
00065 virtual void initHessian();
00067 virtual NEWMAT::SymmetricMatrix updateH(NEWMAT::SymmetricMatrix& H, int k);
00069 virtual void printStatus(char *s);
00070 };
00071
00072 }
00073 #endif