ConicBundle
Public Member Functions | Public Attributes | Friends | List of all members
ConicBundle::QPKKT_KKTStats Class Reference

Used for collecting statics in QPKKTSolverComparison: For each bundle subproblem there is a block QPKKT_ProbStats, which holds for each KKT system a block of QPKKT_KKTStats (this), which holds for each solver a block QPKKT_SolverStats. More...

#include <QPKKTSolverComparison.hxx>

Public Member Functions

 QPKKT_KKTStats ()
 constructor
 
 ~QPKKT_KKTStats ()
 destructor
 
int append_col (CH_Matrix_Classes::Matrix &muvals, CH_Matrix_Classes::Matrix &prepsecs, CH_Matrix_Classes::Matrix &predsecs, CH_Matrix_Classes::Matrix &corrsecs, CH_Matrix_Classes::Indexmatrix &predcalls, CH_Matrix_Classes::Indexmatrix &corrcalls, CH_Matrix_Classes::Matrix &cond, CH_Matrix_Classes::Indexmatrix &pccols, CH_Matrix_Classes::Matrix &sysviol)
 appends the statsitics data of this KKT system as the last column of the repsective matrices More...
 
int add_col (CH_Matrix_Classes::Matrix &prepsecs, CH_Matrix_Classes::Matrix &predsecs, CH_Matrix_Classes::Matrix &corrsecs, CH_Matrix_Classes::Indexmatrix &predcalls, CH_Matrix_Classes::Indexmatrix &corrcalls)
 adds the respecitve values of the solvers to last column. It is used for collecting cummlative data for each subproblem per solver. Columns are subproblems, rows are solvers More...
 

Public Attributes

CH_Matrix_Classes::Real prec
 this is the (minimal) precision requirement in the calls
 
CH_Matrix_Classes::Real mu
 this is the (minimal) mu>0 value used in the calls
 
std::vector< QPKKT_SolverStatssdata
 one entry per solver
 

Friends

std::ostream & operator<< (std::ostream &out, const QPKKT_KKTStats &k)
 (file-)output
 
std::istream & operator>> (std::ostream &in, QPKKT_KKTStats &k)
 (file-)input
 

Detailed Description

Used for collecting statics in QPKKTSolverComparison: For each bundle subproblem there is a block QPKKT_ProbStats, which holds for each KKT system a block of QPKKT_KKTStats (this), which holds for each solver a block QPKKT_SolverStats.

Member Function Documentation

◆ add_col()

int ConicBundle::QPKKT_KKTStats::add_col ( CH_Matrix_Classes::Matrix prepsecs,
CH_Matrix_Classes::Matrix predsecs,
CH_Matrix_Classes::Matrix corrsecs,
CH_Matrix_Classes::Indexmatrix predcalls,
CH_Matrix_Classes::Indexmatrix corrcalls 
)
inline

adds the respecitve values of the solvers to last column. It is used for collecting cummlative data for each subproblem per solver. Columns are subproblems, rows are solvers

Parameters
prepsecspreparation time (one row for each solver)
predsecspredictor time (one row for each solver)
corrsecscorrector time (one row for each solver)
predcallspredictor matrix vector multiplications (one row for each solver)
corrcallscorrector matrix vector multiplications (one row for each solver)

References CH_Matrix_Classes::Matrix::coldim(), ConicBundle::QPKKT_SolverStats::operator<<, and ConicBundle::QPKKT_SolverStats::operator>>.

◆ append_col()

int ConicBundle::QPKKT_KKTStats::append_col ( CH_Matrix_Classes::Matrix muvals,
CH_Matrix_Classes::Matrix prepsecs,
CH_Matrix_Classes::Matrix predsecs,
CH_Matrix_Classes::Matrix corrsecs,
CH_Matrix_Classes::Indexmatrix predcalls,
CH_Matrix_Classes::Indexmatrix corrcalls,
CH_Matrix_Classes::Matrix cond,
CH_Matrix_Classes::Indexmatrix pccols,
CH_Matrix_Classes::Matrix sysviol 
)
inline

appends the statsitics data of this KKT system as the last column of the repsective matrices

Parameters
muvalsthe barrier parameter,
prepsecspreparation time (one row for each solver)
predsecspredictor time (one row for each solver)
corrsecscorrector time (one row for each solver)
predcallspredictor matrix vector multiplications (one row for each solver)
corrcallscorrector matrix vector multiplications (one row for each solver)
condcondition number estimate (one row for each solver)
pccolsrank of the predictor (one row for each solver)
sysviolnorm of the system residual for corrector (one row for each solver)

References CH_Matrix_Classes::Matrix::coldim(), CH_Matrix_Classes::Matrix::concat_right(), ConicBundle::QPKKT_SolverStats::cond, CH_Matrix_Classes::Matrix::enlarge_right(), CH_Matrix_Classes::Indexmatrix::enlarge_right(), CH_Matrix_Classes::Matrix::rowdim(), CH_Matrix_Classes::Indexmatrix::rowdim(), and ConicBundle::QPKKT_SolverStats::sysviol.


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