4 #ifndef CONICBUNDLE_LPGROUNDSETMODIFICATION_HXX 5 #define CONICBUNDLE_LPGROUNDSETMODIFICATION_HXX 49 {
clear(var_olddim,row_olddim);}
90 {
return mdf.
add_append_vars(append_dim,append_lb,append_ub,append_cols,start_val,append_costs);}
int Integer
all integer numbers in calculations and indexing are of this type
Definition: matop.hxx:40
Base class for informing oracles (or the solver) about dynamic changes in the number and sorting of t...
Definition: CBSolver.hxx:544
int add_set_ub(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real ub)
set the upper bound on variable with index ind to value ub
double Real
all real numbers in calculations are of this type
Definition: matop.hxx:50
int add_append_vars(CH_Matrix_Classes::Integer append_dim, const CH_Matrix_Classes::Matrix *append_lb, const CH_Matrix_Classes::Matrix *append_ub, const CH_Matrix_Classes::Sparsemat *append_cols, const CH_Matrix_Classes::Matrix *start_val, const CH_Matrix_Classes::Matrix *append_costs)
append append_dim new variables with lower bounds append_lb (NULL: default value) and upper bounds ap...
Definition: LPGroundsetModification.hxx:84
CH_Matrix_Classes::Integer new_rowdim() const
returns the number of rows once all stored modifications have been performed
Definition: LPGroundsetModification.hxx:199
int add_set_lb(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real lb)
set the lower bound on variable with index ind to value lb
Definition: LPGroundsetModification.hxx:68
CH_Matrix_Classes::Integer appended_rowdim() const
returns the number of rows that are appended (due to later reassignments they may no longer be locate...
Definition: Modification.hxx:680
int incorporate(const OracleModification &m)
Definition: LPGroundsetModification.hxx:131
CH_Matrix_Classes::Integer old_rowdim() const
returns the number of rows before modification (given on initialization)
Definition: LPGroundsetModification.hxx:197
int add_append_rows(CH_Matrix_Classes::Integer append_dim, const CH_Matrix_Classes::Sparsemat *append_rows, const CH_Matrix_Classes::Matrix *append_rhslb, const CH_Matrix_Classes::Matrix *append_rhsub)
append append_dim new rows as in append_rows (if NULL, use default value) with lower bound append_rhs...
Definition: LPGroundsetModification.hxx:116
int apply_to_rows(CH_Matrix_Classes::Sparsemat *rows, CH_Matrix_Classes::Matrix *rhslb, CH_Matrix_Classes::Matrix *rhsub) const
carry out the collected modifications on the given vectors
conic bundle method solver for sum of convex functions. See the ConicBundle_Manual for a quick introd...
Definition: CBSolver.hxx:22
int add_set_rhsub(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real rhsub)
set the upper bound on row right hand side with index ind to value rhsub
Definition: LPGroundsetModification.hxx:112
base class for uniform use of WARNINGS and ERRORS (at some point in time)
Definition: CBout.hxx:30
int apply_to_vars(CH_Matrix_Classes::Matrix *vars, CH_Matrix_Classes::Matrix *lb, CH_Matrix_Classes::Matrix *ub, CH_Matrix_Classes::Matrix *cost) const
carry out the collected modifications on the given vectors
int clear(CH_Matrix_Classes::Integer var_olddim, CH_Matrix_Classes::Integer row_olddim, bool ensure_start_val_box_feasibility=false, bool ensure_bounds_consistency=true, CH_Matrix_Classes::Real start_val_def=0., CH_Matrix_Classes::Real bounds_minus_infty=CB_minus_infinity, CH_Matrix_Classes::Real bounds_plus_infty=CB_plus_infinity, CH_Matrix_Classes::Real rhs_minus_infty=CB_minus_infinity, CH_Matrix_Classes::Real rhs_plus_infty=CB_plus_infinity, CH_Matrix_Classes::Real cost_def=0.)
resets all variables so that the object to be modified has starting size var_olddim (number of variab...
void clear(CH_Matrix_Classes::Integer var_olddim, CH_Matrix_Classes::Integer row_olddim)
reset modifications to an unmodified object currently having var_olddim variables and row_olddim cons...
Definition: LPGroundsetModification.hxx:44
CH_Matrix_Classes::Integer appended_rowdim() const
returns the number of rows that are appended (due to later reassignments they may no longer be locate...
Definition: LPGroundsetModification.hxx:201
int add_set_rhslb(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real rhslb)
set the lower bound on row right hand side with index ind to value rhslb
Definition: LPGroundsetModification.hxx:103
int apply_to_rows(CH_Matrix_Classes::Sparsemat &rows, CH_Matrix_Classes::Matrix &rhslb, CH_Matrix_Classes::Matrix &rhsub) const
carry out the collected modification on the constraint matrix and the corresponding lower and upper b...
Definition: LPGroundsetModification.hxx:160
int add_set_rhslb(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real rhslb)
set the lower bound on row right hand side with index ind to value rhslb
Matrix class for real values of type Real
Definition: matrix.hxx:74
Header declaring the class ConicBundle::GroundsetModification.
int apply_to_bounds(CH_Matrix_Classes::Matrix &lb, CH_Matrix_Classes::Matrix &ub) const
carry out the collected modifications on the given vectors of lower and upper bounds on the variables...
Definition: LPGroundsetModification.hxx:153
Collects modifications for the linearly constrained LPGroundset for appending, deleting or reassignin...
Definition: LPGroundsetModification.hxx:32
Modification mdf
this class provides a restricted interface to this Modification instance where all modifications are ...
Definition: GroundsetModification.hxx:36
Matrix class of sparse matrices with real values of type Real
Definition: sparsmat.hxx:74
OracleModification * new_initial_oraclemodification(int old_var_dim) const
returns a new object on the heap, that allows to incorporate this but starts off from a function whos...
Definition: LPGroundsetModification.hxx:139
CH_Matrix_Classes::Integer old_rowdim() const
returns the number of rows before modification (given on initialization)
Definition: Modification.hxx:676
Collects modifications for the unconstrained Groundset for appending, deleting or reassigning variabl...
Definition: GroundsetModification.hxx:32
int add_set_lb(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real lb)
set the lower bound on variable with index ind to value lb
int add_append_rows(CH_Matrix_Classes::Integer append_dim, const CH_Matrix_Classes::Sparsemat *append_rows, const CH_Matrix_Classes::Matrix *append_rhslb, const CH_Matrix_Classes::Matrix *append_rhsub)
append information on new rows at the respective ends
int add_set_ub(CH_Matrix_Classes::Integer ind, CH_Matrix_Classes::Real ub)
set the upper bound on variable with index ind to value ub
Definition: LPGroundsetModification.hxx:77
CH_Matrix_Classes::Real offset
specifies which value should be added to the offset of the groundset objective
Definition: GroundsetModification.hxx:38
LPGroundsetModification(CH_Matrix_Classes::Integer var_olddim, CH_Matrix_Classes::Integer row_olddim, const CBout *cbo=0, int incr=-1)
calls clear(var_olddim,row_olddim)
Definition: LPGroundsetModification.hxx:48
int add_append_vars(CH_Matrix_Classes::Integer append_dim, const CH_Matrix_Classes::Matrix *append_lb, const CH_Matrix_Classes::Matrix *append_ub, const CH_Matrix_Classes::Sparsemat *append_cols, const CH_Matrix_Classes::Matrix *append_start_val, const CH_Matrix_Classes::Matrix *append_linear_costs)
append information on new variables at the respective ends
virtual int incorporate(const Modification &m)
add the modification specified in m on top of the modifications collected so far
CH_Matrix_Classes::Integer new_rowdim() const
returns the number of rows once all stored modifications have been performed
Definition: Modification.hxx:678
int incorporate(const OracleModification &m)
incorporate the OracleModification m (it should only contain variable changes, but this is not checke...
Definition: GroundsetModification.hxx:168