7 #include "CoinDenseVector.hpp"
111 bool setParam(
char *parmName,
int parmValue);
114 void do_lsqr( CoinDenseVector<double> &b,
115 double damp,
double atol,
double btol,
double conlim,
int itnlim,
116 bool show,
Info info, CoinDenseVector<double> &x ,
int *istop,
117 int *itn,
Outfo *outfo,
bool precon, CoinDenseVector<double> &Pr );
119 void matVecMult(
int, CoinDenseVector<double> *, CoinDenseVector<double> *);
121 void matVecMult(
int, CoinDenseVector<double> &, CoinDenseVector<double> &);
ClpLsqr & operator=(const ClpLsqr &rhs)
Assignment operator. This copies the data.
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
This solves LPs using interior point methods.
bool setParam(char *parmName, int parmValue)
Set an int parameter.
void borrowDiag1(double *array)
diag1 - we just borrow as it is part of a CoinDenseVector
ClpLsqr()
Default constructor.
int nrows_
Row dimension of matrix.
This class implements LSQR.
int ncols_
Column dimension of matrix.
double * diag1_
Diagonal array 1.
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.
double diag2_
Constant diagonal 2.
void matVecMult(int, CoinDenseVector< double > *, CoinDenseVector< double > *)
Matrix-vector multiply - implemented by user.