# ClpSimplexProgress Class Reference

For saving extra information to see if looping. More...

`#include <ClpSolve.hpp>`

Collaboration diagram for ClpSimplexProgress:
[legend]

List of all members.

## Public Member Functions
Constructors and destructor and copy
| ClpSimplexProgress ()
| Default constructor.
| ClpSimplexProgress (ClpSimplex *model)
| Constructor from model.
| ClpSimplexProgress (const ClpSimplexProgress &)
| Copy constructor.
ClpSimplexProgress & | operator= (const ClpSimplexProgress &rhs)
| Assignment operator. This copies the data.
| ~ClpSimplexProgress ()
| Destructor.
void | reset ()
| Resets as much as possible.
void | fillFromModel (ClpSimplex *model)
| Fill from model.
Check progress
int | looping ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
void | startCheck ()
| Start check at beginning of whileIterating.
int | cycle (int in, int out, int wayIn, int wayOut)
| Returns cycle length in whileIterating.
double | lastObjective (int back=1) const
| Returns previous objective (if -1) - current if (0).
void | setInfeasibility (double value)
| Set real primal infeasibility and move back.
double | lastInfeasibility (int back=1) const
| Returns real primal infeasibility (if -1) - current if (0).
void | modifyObjective (double value)
| Modify objective e.g. if dual infeasible in dual.
int | lastIterationNumber (int back=1) const
| Returns previous iteration number (if -1) - current if (0).
void | clearIterationNumbers ()
| clears all iteration numbers (to switch off panic)
void | newOddState ()
| Odd state.
void | endOddState ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
void | clearOddState ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
int | oddState () const
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
int | badTimes () const
| number of bad times
void | clearBadTimes ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
int | reallyBadTimes () const
| number of really bad times
void | incrementReallyBadTimes ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
int | timesFlagged () const
| number of times flagged
void | clearTimesFlagged ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
void | incrementTimesFlagged ()
| Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
## Public Attributes
Data
double | objective_ [CLP_PROGRESS]
| Objective values.
double | infeasibility_ [CLP_PROGRESS]
| Sum of infeasibilities for algorithm.
double | realInfeasibility_ [CLP_PROGRESS]
| Sum of real primal infeasibilities for primal.
double | initialWeight_
| Initial weight for weights.
int | in_ [CLP_CYCLE]
| For cycle checking.
int | out_ [CLP_CYCLE]
| Objective values.
char | way_ [CLP_CYCLE]
| Objective values.
ClpSimplex * | model_
| Pointer back to model so we can get information.
int | numberInfeasibilities_ [CLP_PROGRESS]
| Number of infeasibilities.
int | iterationNumber_ [CLP_PROGRESS]
| Iteration number at which occurred.
int | numberTimes_
| Number of times checked (so won't stop too early).
int | numberBadTimes_
| Number of times it looked like loop.
int | numberReallyBadTimes_
| Number really bad times.
int | numberTimesFlagged_
| Number of times no iterations as flagged.
int | oddState_
| If things are in an odd state.

## Detailed Description

For saving extra information to see if looping.

Definition at line 252 of file ClpSolve.hpp.

## Constructor & Destructor Documentation

ClpSimplexProgress::ClpSimplexProgress | ( |  | ) |

Default constructor.

ClpSimplexProgress::ClpSimplexProgress | ( | ClpSimplex * | model | ) |

Constructor from model.

ClpSimplexProgress::ClpSimplexProgress | ( | const ClpSimplexProgress & |  | ) |

Copy constructor.

ClpSimplexProgress::~ClpSimplexProgress | ( |  | ) |

Destructor.

## Member Function Documentation

ClpSimplexProgress& ClpSimplexProgress::operator= | ( | const ClpSimplexProgress & | rhs | ) |

Assignment operator. This copies the data.

void ClpSimplexProgress::reset | ( |  | ) |

Resets as much as possible.

void ClpSimplexProgress::fillFromModel | ( | ClpSimplex * | model | ) |

Fill from model.

int ClpSimplexProgress::looping | ( |  | ) |

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

void ClpSimplexProgress::startCheck | ( |  | ) |

Start check at beginning of whileIterating.

int ClpSimplexProgress::cycle | ( | int | in,
|  | int | out,
|  | int | wayIn,
|  | int | wayOut |
| ) |  |  |

Returns cycle length in whileIterating.

double ClpSimplexProgress::lastObjective | ( | int | back = `1` | ) | const

Returns previous objective (if -1) - current if (0).

void ClpSimplexProgress::setInfeasibility | ( | double | value | ) |

Set real primal infeasibility and move back.

double ClpSimplexProgress::lastInfeasibility | ( | int | back = `1` | ) | const

Returns real primal infeasibility (if -1) - current if (0).

void ClpSimplexProgress::modifyObjective | ( | double | value | ) |

Modify objective e.g. if dual infeasible in dual.

int ClpSimplexProgress::lastIterationNumber | ( | int | back = `1` | ) | const

Returns previous iteration number (if -1) - current if (0).

void ClpSimplexProgress::clearIterationNumbers | ( |  | ) |

clears all iteration numbers (to switch off panic)

void ClpSimplexProgress::newOddState | ( |  | ) | `[inline]`

Odd state.

Definition at line 303 of file ClpSolve.hpp.

void ClpSimplexProgress::endOddState | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 306 of file ClpSolve.hpp.

void ClpSimplexProgress::clearOddState | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 309 of file ClpSolve.hpp.

int ClpSimplexProgress::oddState | ( |  | ) | const`[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 312 of file ClpSolve.hpp.

int ClpSimplexProgress::badTimes | ( |  | ) | const`[inline]`

number of bad times

Definition at line 316 of file ClpSolve.hpp.

void ClpSimplexProgress::clearBadTimes | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 319 of file ClpSolve.hpp.

int ClpSimplexProgress::reallyBadTimes | ( |  | ) | const`[inline]`

number of really bad times

Definition at line 323 of file ClpSolve.hpp.

void ClpSimplexProgress::incrementReallyBadTimes | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 326 of file ClpSolve.hpp.

int ClpSimplexProgress::timesFlagged | ( |  | ) | const`[inline]`

number of times flagged

Definition at line 330 of file ClpSolve.hpp.

void ClpSimplexProgress::clearTimesFlagged | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 333 of file ClpSolve.hpp.

void ClpSimplexProgress::incrementTimesFlagged | ( |  | ) | `[inline]`

Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.

Definition at line 336 of file ClpSolve.hpp.

## Member Data Documentation

double ClpSimplexProgress::objective_[CLP_PROGRESS]

Objective values.

Definition at line 346 of file ClpSolve.hpp.

double ClpSimplexProgress::infeasibility_[CLP_PROGRESS]

Sum of infeasibilities for algorithm.

Definition at line 348 of file ClpSolve.hpp.

double ClpSimplexProgress::realInfeasibility_[CLP_PROGRESS]

Sum of real primal infeasibilities for primal.

Definition at line 350 of file ClpSolve.hpp.

double ClpSimplexProgress::initialWeight_

Initial weight for weights.

Definition at line 364 of file ClpSolve.hpp.

int ClpSimplexProgress::in_[CLP_CYCLE]

For cycle checking.

Definition at line 368 of file ClpSolve.hpp.

int ClpSimplexProgress::out_[CLP_CYCLE]

Objective values.

Definition at line 369 of file ClpSolve.hpp.

char ClpSimplexProgress::way_[CLP_CYCLE]

Objective values.

Definition at line 370 of file ClpSolve.hpp.

ClpSimplex* ClpSimplexProgress::model_

Pointer back to model so we can get information.

Definition at line 372 of file ClpSolve.hpp.

int ClpSimplexProgress::numberInfeasibilities_[CLP_PROGRESS]

Number of infeasibilities.

Definition at line 374 of file ClpSolve.hpp.

int ClpSimplexProgress::iterationNumber_[CLP_PROGRESS]

Iteration number at which occurred.

Definition at line 376 of file ClpSolve.hpp.

int ClpSimplexProgress::numberTimes_

Number of times checked (so won't stop too early).

Definition at line 384 of file ClpSolve.hpp.

int ClpSimplexProgress::numberBadTimes_

Number of times it looked like loop.

Definition at line 386 of file ClpSolve.hpp.

int ClpSimplexProgress::numberReallyBadTimes_

Number really bad times.

Definition at line 388 of file ClpSolve.hpp.

int ClpSimplexProgress::numberTimesFlagged_

Number of times no iterations as flagged.

Definition at line 390 of file ClpSolve.hpp.

int ClpSimplexProgress::oddState_

If things are in an odd state.

Definition at line 392 of file ClpSolve.hpp.

The documentation for this class was generated from the following file:

- /home/coin/svn-release/Alps-1.4.5/Clp/src/ClpSolve.hpp