00001 /* $Id: CouenneExprHess.hpp 716 2011-06-26 12:43:43Z pbelotti $ 00002 * 00003 * Name: CouenneExprHess.hpp 00004 * Authors: Pietro Belotti, Lehigh University 00005 * Purpose: Hessian of the Lagrangian, definition 00006 * 00007 * This file is licensed under the Eclipse Public License (EPL) 00008 */ 00009 00010 #ifndef CouenneExprHess_HPP 00011 #define CouenneExprHess_HPP 00012 00013 namespace Couenne { 00014 00015 class expression; 00016 class CouenneProblem; 00017 00020 00021 class ExprHess { 00022 00023 private: 00024 00025 int nnz_; 00026 int *iRow_; 00027 int *jCol_; 00028 00043 00044 int *numL_; 00045 00046 int **lamI_; 00047 00048 00049 00050 expression ***expr_; 00051 00052 public: 00053 00054 ExprHess (); 00055 ExprHess (CouenneProblem *); 00056 00057 ExprHess (const ExprHess &); 00058 ExprHess &operator=(const ExprHess &); 00059 ExprHess *clone (); 00060 00061 ~ExprHess (); 00062 00063 int nnz () {return nnz_;} 00064 int *iRow () {return iRow_;} 00065 int *jCol () {return jCol_;} 00066 int *numL () {return numL_;} 00067 int **lamI () {return lamI_;} 00068 00069 expression ***expr () {return expr_;} 00070 }; 00071 } 00072 00073 #endif