solver
|
This class contains all information about the conic optimization problem, and provides functionality for conic operations, such as scalings, residuals and sizes. More...
#include <Cone.hpp>
Public Member Functions | |
void | setupLpcone (int size) |
void | setupSocone (const Eigen::VectorXi &indices) |
void | initialize (int nvars, int nleq, int nlineq, const Eigen::VectorXi &nsoc) |
const int | numLeq () const |
const int | numSoc () const |
const int | sizeSoc () const |
const int | sizeLpc () const |
const int | numVars () const |
const int | sizeCone () const |
const int | extSizeSoc () const |
const int | sizeSoc (int id) const |
const int | numCones () const |
const int | sizeProb () const |
const int | extSizeCone () const |
const int | lpConeStart () const |
const int | soConeStart () const |
const int | extSizeProb () const |
const int | startSoc (int id) const |
const int | sizeConstraints () const |
const int | optStartSoc (int id) const |
const int | extStartSoc (int id) const |
int & | indexLpc (int id) |
Eigen::VectorXd & | scalingLpc () |
double & | scalingLpc (int id) |
Eigen::VectorXd & | sqScalingLpc () |
double & | sqScalingLpc (int id) |
const int & | indexLpc (int id) const |
const Eigen::VectorXd & | scalingLpc () const |
const double & | scalingLpc (int id) const |
const Eigen::VectorXd & | sqScalingLpc () const |
const double & | sqScalingLpc (int id) const |
NesterovToddScaling & | soc (int id) |
const NesterovToddScaling & | soc (int id) const |
double | conicResidual (const double *u, int size) const |
double | conicResidual (const double *u, const double *v, int size) const |
double | conicResidual (const Eigen::Ref< const Eigen::VectorXd > &u) const |
double | conicResidual (const Eigen::Ref< const Eigen::VectorXd > &u, const Eigen::Ref< const Eigen::VectorXd > &v) const |
double | safeDivision (double x, double y) const |
void | conicProjection (Eigen::Ref< Eigen::VectorXd > s) |
void | conicNTScaling (const double *z, double *lambda) const |
void | conicNTScaling (const Eigen::VectorXd &z, Eigen::Ref< Eigen::VectorXd > lambda) const |
void | conicNTScaling2 (const Eigen::VectorXd &x, Eigen::Ref< Eigen::VectorXd > y) const |
void | conicDivision (const Eigen::Ref< const Eigen::VectorXd > &u, const Eigen::Ref< const Eigen::VectorXd > &w, Eigen::Ref< Eigen::VectorXd > v) const |
double | conicProduct (const Eigen::Ref< const Eigen::VectorXd > u, const Eigen::Ref< const Eigen::VectorXd > v, Eigen::Ref< Eigen::VectorXd > w) const |
ConeStatus | updateNTScalings (const Eigen::VectorXd &s, const Eigen::VectorXd &z, Eigen::VectorXd &lambda) |
void | unpermuteSolution (const Eigen::PermutationMatrix< Eigen::Dynamic, Eigen::Dynamic > &Pinv, const Eigen::VectorXd &Px, OptimizationVector &sd) const |
void | unpermuteSolution (const Eigen::PermutationMatrix< Eigen::Dynamic, Eigen::Dynamic > &Pinv, const Eigen::VectorXd &Px, OptimizationVector &sd, Eigen::VectorXd &dz) const |
ScalingOperator & | W () |
const ScalingOperator & | W () const |
Static Public Member Functions | |
static double | normSoc (const Eigen::Ref< const Eigen::VectorXd > &v) |
Private Attributes | |
int | nvars_ |
int | neq_ |
int | nineq_ |
int | nsoc_ |
int | ssoc_ |
int | extssoc_ |
int | lpconestart_ |
int | soconestart_ |
int | sizecone_ |
int | extsizecone_ |
int | sizeconstraints_ |
int | sizeproblem_ |
int | extsizeproblem_ |
Eigen::VectorXi | q_ |
Eigen::VectorXi | LP_id_ |
Eigen::VectorXd | LP_scaling_ |
Eigen::VectorXd | LP_sq_scaling_ |
Eigen::VectorXd | skbar_ |
Eigen::VectorXd | zkbar_ |
std::vector< NesterovToddScaling > | soc_ |
Eigen::VectorXi | SOC_start_ |
Eigen::VectorXi | opt_SOC_start_ |
Eigen::VectorXi | ext_SOC_start_ |
ScalingOperator | W_scaling_operator_ |
This class contains all information about the conic optimization problem, and provides functionality for conic operations, such as scalings, residuals and sizes.