- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# /home/coin/SVN-release/Alps-1.2.1/Clp/src/ClpLsqr.hpp

Go to the documentation of this file.

    00001 /* $Id: ClpLsqr.hpp 1525 2010-02-26 17:27:59Z mjs $ */
    00002 // Copyright (C) 2003, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 #ifndef ClpLsqr_H_
    00005 #define ClpLsqr_H_
    00006
    00007 #include "CoinDenseVector.hpp"
    00008
    00009 #include "ClpInterior.hpp"
    00010
    00011
    00074 class ClpLsqr {
    00075 private:
    00078
    00079
    00080 public:
    00083
    00084      int          nrows_;
    00086      int          ncols_;
    00088      ClpInterior        *model_;
    00090      double         *diag1_;
    00092      double         diag2_;
    00094
    00097      ClpLsqr();
    00098
    00100      ClpLsqr(ClpInterior *model);
    00102      ClpLsqr(const ClpLsqr &);
    00104      ClpLsqr & operator=(const ClpLsqr & rhs);
    00106      ~ClpLsqr();
    00108
    00111
    00112      bool setParam(char *parmName, int parmValue);
    00114      void do_lsqr( CoinDenseVector<double> &b,
    00115                    double damp, double atol, double btol, double conlim, int itnlim,
    00116                    bool show, Info info, CoinDenseVector<double> &x , int *istop,
    00117                    int *itn, Outfo *outfo, bool precon, CoinDenseVector<double> &Pr );
    00119      void matVecMult( int, CoinDenseVector<double> *, CoinDenseVector<double> *);
    00120
    00121      void matVecMult( int, CoinDenseVector<double> &, CoinDenseVector<double> &);
    00123      void borrowDiag1(double * array) {
    00124           diag1_ = array;
    00125      };
    00127 };
    00128 #endif
    00129
    00130
    00131
    00132