Clp
1.17.11
Toggle main menu visibility
Loading...
Searching...
No Matches
Clp
src
ClpLsqr.hpp
Go to the documentation of this file.
1
/* $Id$ */
2
// Copyright (C) 2003, International Business Machines
3
// Corporation and others. All Rights Reserved.
4
// This code is licensed under the terms of the Eclipse Public License (EPL).
5
6
#ifndef ClpLsqr_H_
7
#define ClpLsqr_H_
8
9
#include "CoinDenseVector.hpp"
10
11
#include "
ClpInterior.hpp
"
12
75
class
ClpLsqr
{
76
private
:
79
80
81
public
:
84
85
int
nrows_
;
87
int
ncols_
;
89
ClpInterior
*
model_
;
91
double
*
diag1_
;
93
double
diag2_
;
95
98
ClpLsqr
();
99
101
ClpLsqr
(
ClpInterior
*model);
103
ClpLsqr
(
const
ClpLsqr
&);
105
ClpLsqr
&
operator=
(
const
ClpLsqr
&rhs);
107
~ClpLsqr
();
109
112
113
bool
setParam
(
char
*parmName,
int
parmValue);
115
void
do_lsqr
(CoinDenseVector< double > &b,
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 > *);
121
122
void
matVecMult
(
int
, CoinDenseVector< double > &, CoinDenseVector< double > &);
124
void
borrowDiag1
(
double
*array)
125
{
126
diag1_
= array;
127
};
128
129
};
130
#endif
131
132
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
133
*/
ClpInterior.hpp
ClpInterior
This solves LPs using interior point methods.
Definition
ClpInterior.hpp:72
ClpLsqr::matVecMult
void matVecMult(int, CoinDenseVector< double > *, CoinDenseVector< double > *)
Matrix-vector multiply - implemented by user.
ClpLsqr::setParam
bool setParam(char *parmName, int parmValue)
Set an int parameter.
ClpLsqr::ClpLsqr
ClpLsqr(const ClpLsqr &)
Copy constructor.
ClpLsqr::diag1_
double * diag1_
Diagonal array 1.
Definition
ClpLsqr.hpp:91
ClpLsqr::matVecMult
void matVecMult(int, CoinDenseVector< double > &, CoinDenseVector< double > &)
ClpLsqr::do_lsqr
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=
ClpLsqr & operator=(const ClpLsqr &rhs)
Assignment operator. This copies the data.
ClpLsqr::~ClpLsqr
~ClpLsqr()
Destructor.
ClpLsqr::nrows_
int nrows_
Row dimension of matrix.
Definition
ClpLsqr.hpp:85
ClpLsqr::ClpLsqr
ClpLsqr(ClpInterior *model)
Constructor for use with Pdco model (note modified for pdco!
ClpLsqr::ClpLsqr
ClpLsqr()
Default constructor.
ClpLsqr::diag2_
double diag2_
Constant diagonal 2.
Definition
ClpLsqr.hpp:93
ClpLsqr::ncols_
int ncols_
Column dimension of matrix.
Definition
ClpLsqr.hpp:87
ClpLsqr::borrowDiag1
void borrowDiag1(double *array)
diag1 - we just borrow as it is part of a CoinDenseVector<double>
Definition
ClpLsqr.hpp:124
ClpLsqr::model_
ClpInterior * model_
Pointer to Model object for this instance.
Definition
ClpLsqr.hpp:89
Info
******** DATA to be moved into protected section of ClpInterior
Definition
ClpInterior.hpp:27
Outfo
******** DATA to be moved into protected section of ClpInterior
Definition
ClpInterior.hpp:35
Generated by
1.17.0