12 #ifndef IpoptWarmStart_HPP
13 #define IpoptWarmStart_HPP
14 #include "CoinWarmStartBasis.hpp"
15 #include "CoinWarmStartPrimalDual.hpp"
47 public virtual CoinWarmStartPrimalDual,
public virtual CoinWarmStartBasis
58 const double * primal,
const double * dual);
67 virtual CoinWarmStart *
clone()
const
73 virtual CoinWarmStartDiff*
79 applyDiff (
const CoinWarmStartDiff *
const cwsdDiff);
116 CoinWarmStartPrimalDualDiff(),
119 CoinWarmStartPrimalDualDiff::swap(*diff);
123 CoinWarmStartPrimalDualDiff(other),
130 virtual CoinWarmStartDiff *
clone()
const
IpoptWarmStartDiff(const IpoptWarmStartDiff &other)
Copy constructor.
static Bigint * diff(Bigint *a, Bigint *b)
Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter_
warm start information object
Class for storing warm start informations for Ipopt.
Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter() const
Accessor to warm start information obecjt.
virtual CoinWarmStartDiff * generateDiff(const CoinWarmStart *const oldCWS) const
Generate the "differences" between two IpoptWarmStart.
virtual CoinWarmStartDiff * clone() const
`Virtual constructor'
virtual CoinWarmStart * clone() const
`Virtual constructor'
virtual void applyDiff(const CoinWarmStartDiff *const cwsdDiff)
Apply 'differences' to an Ipopt warm start.
Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter() const
Accessor to warm start information obecjt.
virtual ~IpoptWarmStart()
Abstract destructor.
Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter_
warm start information object
virtual ~IpoptWarmStartDiff()
Abstract destructor.
bool empty_
Say if warm start is empty.
Diff class for IpoptWarmStart.
IpoptWarmStartDiff(CoinWarmStartPrimalDualDiff *diff, Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter)
Useful constructor; takes over the data in diff.
IpoptWarmStart(bool empty=1, int numvars=0, int numcont=0)
Default constructor.
bool empty() const
Is this an empty warm start?
void flushPoint()
flush the starting point