# ClpConstraintAmpl.hpp

Go to the documentation of this file.

    00001 /* $Id: ClpConstraintAmpl.hpp 1902 2013-04-10 16:58:16Z stefan $ */
    00002 // Copyright (C) 2007, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 // This code is licensed under the terms of the Eclipse Public License (EPL).
    00005
    00006 #ifndef ClpConstraintAmpl_H
    00007 #define ClpConstraintAmpl_H
    00008
    00009 #include "ClpConstraint.hpp"
    00010
    00011 //#############################################################################
    00012
    00017 class ClpConstraintAmpl : public ClpConstraint {
    00018
    00019 public:
    00020
    00022
    00023
    00024
    00031     virtual int gradient(const ClpSimplex * model,
    00032                          const double * solution,
    00033                          double * gradient,
    00034                          double & functionValue ,
    00035                          double & offset,
    00036                          bool useScaling = false,
    00037                          bool refresh = true) const ;
    00039     virtual void resize(int newNumberColumns) ;
    00041     virtual void deleteSome(int numberToDelete, const int * which) ;
    00043     virtual void reallyScale(const double * columnScale) ;
    00047     virtual int markNonlinear(char * which) const ;
    00051     virtual int markNonzero(char * which) const;
    00053     virtual void newXValues() ;
    00055
    00056
    00058
    00059
    00060     ClpConstraintAmpl();
    00061
    00063     ClpConstraintAmpl(int row, void * amplInfo);
    00064
    00067     ClpConstraintAmpl(const ClpConstraintAmpl & rhs);
    00068
    00070     ClpConstraintAmpl & operator=(const ClpConstraintAmpl& rhs);
    00071
    00073     virtual ~ClpConstraintAmpl ();
    00074
    00076     virtual ClpConstraint * clone() const;
    00078
    00079
    00080
    00081     virtual int numberCoefficients() const;
    00083     inline const int * column() const {
    00084         return column_;
    00085     }
    00087     inline const double * coefficient() const {
    00088         return coefficient_;
    00089     }
    00091
    00092     //---------------------------------------------------------------------------
    00093
    00094 private:
    00097     void * amplInfo_;
    00099     int * column_;
    00101     double * coefficient_;
    00103     int numberCoefficients_;
    00105 };
    00106
    00107 #endif
    00108

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines