9#include "CoinDenseVector.hpp"
116 double damp,
double atol,
double btol,
double conlim,
int itnlim,
117 bool show,
Info info, CoinDenseVector< double > &x,
int *istop,
118 int *itn,
Outfo *outfo,
bool precon, CoinDenseVector< double > &Pr);
120 void matVecMult(
int, CoinDenseVector< double > *, CoinDenseVector< double > *);
122 void matVecMult(
int, CoinDenseVector< double > &, CoinDenseVector< double > &);
This solves LPs using interior point methods.
This class implements LSQR.
void matVecMult(int, CoinDenseVector< double > *, CoinDenseVector< double > *)
Matrix-vector multiply - implemented by user.
bool setParam(char *parmName, int parmValue)
Set an int parameter.
ClpLsqr(const ClpLsqr &)
Copy constructor.
double * diag1_
Diagonal array 1.
void matVecMult(int, CoinDenseVector< double > &, CoinDenseVector< double > &)
void do_lsqr(CoinDenseVector< double > &b, double damp, double atol, double btol, double conlim, int itnlim, bool show, Info info, CoinDenseVector< double > &x, int *istop, int *itn, Outfo *outfo, bool precon, CoinDenseVector< double > &Pr)
Call the Lsqr algorithm.
ClpLsqr & operator=(const ClpLsqr &rhs)
Assignment operator. This copies the data.
int nrows_
Row dimension of matrix.
ClpLsqr(ClpInterior *model)
Constructor for use with Pdco model (note modified for pdco!!!!)
ClpLsqr()
Default constructor.
double diag2_
Constant diagonal 2.
int ncols_
Column dimension of matrix.
void borrowDiag1(double *array)
diag1 - we just borrow as it is part of a CoinDenseVector<double>
ClpInterior * model_
Pointer to Model object for this instance.
******** DATA to be moved into protected section of ClpInterior
******** DATA to be moved into protected section of ClpInterior