PIPS-NLP
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
NlpGenResiduals Class Reference

#include <NlpGenResiduals.h>

Inheritance diagram for NlpGenResiduals:
Residuals sResiduals

Public Member Functions

 NlpGenResiduals (LinearAlgebraPackage *la, long long nx, long long my, long long mz, OoqpVector *ixlow, OoqpVector *ixupp, OoqpVector *iclow, OoqpVector *icupp)
 
virtual void calcresids (Data *problem, Variables *vars)
 
virtual void add_r3_xz_alpha (Variables *vars, double alpha)
 
virtual void set_r3_xz_alpha (Variables *vars, double alpha)
 
virtual void clear_r3 ()
 
virtual void clear_r1r2 ()
 
virtual void project_r3 (double rmin, double rmax)
 
virtual int validNonZeroPattern ()
 
virtual ~NlpGenResiduals ()
 
virtual double priErr ()
 
virtual double dualErr ()
 
virtual double OriPriErr ()
 
virtual double OriDualErr ()
 
virtual double comp_Err ()
 
virtual double comp_Err_0 ()
 
virtual double getKKTRhsNorm_Primal (NlpGenData *prob, NlpGenVars *vars, const int normType=-1, const int isTrialStep=0)
 
virtual double getKKTRhsNorm_Dual (NlpGenData *prob, NlpGenVars *vars, const int normType=-1, const int isTrialStep=0)
 
virtual double getKKTError_Comp (NlpGenData *prob, NlpGenVars *vars, const double mu, const int normType=-1, const int isTrialStep=0)
 
virtual void copyFrom (NlpGenResiduals *residual_in)
 
virtual void updateSOCRhs (const double AlphaStep, NlpGenVars *vars_in, NlpGenData *prob_in)
 
virtual bool findSmallStep (NlpGenVars *vars, NlpGenVars *steps, const double tol_mach)
 
virtual void addDampingTermToOneSidePart (const double DampingTerm)
 
- Public Member Functions inherited from Residuals
double residualNorm ()
 
double dualityGap ()
 
virtual ~Residuals ()
 

Public Attributes

OoqpVectorHandle rQ
 
OoqpVectorHandle rA
 
OoqpVectorHandle rC
 
OoqpVectorHandle rz
 
OoqpVectorHandle rv
 
OoqpVectorHandle rw
 
OoqpVectorHandle rt
 
OoqpVectorHandle ru
 
OoqpVectorHandle rgamma
 
OoqpVectorHandle rphi
 
OoqpVectorHandle rlambda
 
OoqpVectorHandle rpi
 
OoqpVectorHandle rx
 
OoqpVectorHandle ry
 
OoqpVectorHandle rp_OriSys
 
OoqpVectorHandle rd_OriSys
 
OoqpVectorHandle priWrk
 
OoqpVectorHandle dualWrk
 
OoqpVectorHandle dualWrk_Z
 
OoqpVectorHandle priWrk_S
 
OoqpVectorHandle Wd
 
double nrmrho
 
double nrmr
 
double nrmrho0
 
double psi
 
double mod0
 
double mod
 
double dmod
 
double dWd
 
double thd
 
double dmodu
 
double nrmc
 
double nrmrd
 
double gammaD
 
double res
 
- Public Attributes inherited from Residuals
int m
 
int n
 

Protected Member Functions

 NlpGenResiduals ()
 
virtual void eval_kkt_res (NlpGenData *prob_in, NlpGenVars *vars_in)
 

Protected Attributes

long long nx
 
long long my
 
long long mz
 
double nxupp
 
OoqpVectorHandle ixupp
 
double nxlow
 
OoqpVectorHandle ixlow
 
double mcupp
 
OoqpVectorHandle icupp
 
double mclow
 
OoqpVectorHandle iclow
 
double perr
 
double derr
 
double comerr
 
double comerr_0
 
double Oriperr
 
double Oriderr
 
- Protected Attributes inherited from Residuals
double mResidualNorm
 
double mDualityGap
 

Detailed Description

Residuals for the general NLP formulation

Constructor & Destructor Documentation

NlpGenResiduals::NlpGenResiduals ( )
inlineprotected
NlpGenResiduals::NlpGenResiduals ( LinearAlgebraPackage la,
long long  nx,
long long  my,
long long  mz,
OoqpVector ixlow,
OoqpVector ixupp,
OoqpVector iclow,
OoqpVector icupp 
)
NlpGenResiduals::~NlpGenResiduals ( )
virtual

Member Function Documentation

void NlpGenResiduals::add_r3_xz_alpha ( Variables vars,
double  alpha 
)
virtual

Modify the "complementarity" component of the residuals, by adding the pairwise products of the complementary variables plus a constant alpha to this term.

Implements Residuals.

void NlpGenResiduals::addDampingTermToOneSidePart ( const double  DampingTerm)
virtual
void NlpGenResiduals::calcresids ( Data problem,
Variables vars 
)
virtual

calculate residuals, their norms, and duality/complementarity gap, given a problem and variable set.

Implements Residuals.

void NlpGenResiduals::clear_r1r2 ( )
virtual

set the noncomplementarity components of the residual (the terms arising from the linear equalities in the KKT conditions) to 0.

Reimplemented from Residuals.

void NlpGenResiduals::clear_r3 ( )
virtual

set the complementarity component of the residuals to 0.

Implements Residuals.

double NlpGenResiduals::comp_Err ( )
virtual
double NlpGenResiduals::comp_Err_0 ( )
virtual
void NlpGenResiduals::copyFrom ( NlpGenResiduals residual_in)
virtual
double NlpGenResiduals::dualErr ( )
virtual
void NlpGenResiduals::eval_kkt_res ( NlpGenData prob_in,
NlpGenVars vars_in 
)
protectedvirtual
bool NlpGenResiduals::findSmallStep ( NlpGenVars vars,
NlpGenVars steps,
const double  tol_mach 
)
virtual
double NlpGenResiduals::getKKTError_Comp ( NlpGenData prob,
NlpGenVars vars,
const double  mu,
const int  normType = -1,
const int  isTrialStep = 0 
)
virtual
double NlpGenResiduals::getKKTRhsNorm_Dual ( NlpGenData prob,
NlpGenVars vars,
const int  normType = -1,
const int  isTrialStep = 0 
)
virtual
double NlpGenResiduals::getKKTRhsNorm_Primal ( NlpGenData prob,
NlpGenVars vars,
const int  normType = -1,
const int  isTrialStep = 0 
)
virtual
double NlpGenResiduals::OriDualErr ( )
virtual
double NlpGenResiduals::OriPriErr ( )
virtual
double NlpGenResiduals::priErr ( )
virtual
void NlpGenResiduals::project_r3 ( double  rmin,
double  rmax 
)
virtual

perform the projection operation required by Gondzio algorithm: replace each component r3_i of the complementarity component of the residuals by r3p_i - r3_i, where r3p_i is the projection of r3_i onto the box [rmin, rmax]. Then if the resulting value is less than -rmax, replace it by -rmax.

See also
SimpleVector::gondzioProjection

Implements Residuals.

void NlpGenResiduals::set_r3_xz_alpha ( Variables vars,
double  alpha 
)
virtual

Set the "complementarity" component of the residuals to the pairwise products of the complementary variables plus a constant alpha

Implements Residuals.

void NlpGenResiduals::updateSOCRhs ( const double  AlphaStep,
NlpGenVars vars_in,
NlpGenData prob_in 
)
virtual
int NlpGenResiduals::validNonZeroPattern ( )
virtual

Member Data Documentation

double NlpGenResiduals::comerr
protected
double NlpGenResiduals::comerr_0
protected
double NlpGenResiduals::derr
protected
double NlpGenResiduals::dmod
double NlpGenResiduals::dmodu
OoqpVectorHandle NlpGenResiduals::dualWrk
OoqpVectorHandle NlpGenResiduals::dualWrk_Z
double NlpGenResiduals::dWd
double NlpGenResiduals::gammaD
OoqpVectorHandle NlpGenResiduals::iclow
protected
OoqpVectorHandle NlpGenResiduals::icupp
protected
OoqpVectorHandle NlpGenResiduals::ixlow
protected
OoqpVectorHandle NlpGenResiduals::ixupp
protected
double NlpGenResiduals::mclow
protected
double NlpGenResiduals::mcupp
protected
double NlpGenResiduals::mod
double NlpGenResiduals::mod0
long long NlpGenResiduals::my
protected
long long NlpGenResiduals::mz
protected
double NlpGenResiduals::nrmc
double NlpGenResiduals::nrmr
double NlpGenResiduals::nrmrd
double NlpGenResiduals::nrmrho
double NlpGenResiduals::nrmrho0
long long NlpGenResiduals::nx
protected
double NlpGenResiduals::nxlow
protected
double NlpGenResiduals::nxupp
protected
double NlpGenResiduals::Oriderr
protected
double NlpGenResiduals::Oriperr
protected
double NlpGenResiduals::perr
protected
OoqpVectorHandle NlpGenResiduals::priWrk
OoqpVectorHandle NlpGenResiduals::priWrk_S
double NlpGenResiduals::psi
OoqpVectorHandle NlpGenResiduals::rA
OoqpVectorHandle NlpGenResiduals::rC
OoqpVectorHandle NlpGenResiduals::rd_OriSys
double NlpGenResiduals::res
OoqpVectorHandle NlpGenResiduals::rgamma
OoqpVectorHandle NlpGenResiduals::rlambda
OoqpVectorHandle NlpGenResiduals::rp_OriSys
OoqpVectorHandle NlpGenResiduals::rphi
OoqpVectorHandle NlpGenResiduals::rpi
OoqpVectorHandle NlpGenResiduals::rQ
OoqpVectorHandle NlpGenResiduals::rt
OoqpVectorHandle NlpGenResiduals::ru
OoqpVectorHandle NlpGenResiduals::rv
OoqpVectorHandle NlpGenResiduals::rw
OoqpVectorHandle NlpGenResiduals::rx
OoqpVectorHandle NlpGenResiduals::ry
OoqpVectorHandle NlpGenResiduals::rz
double NlpGenResiduals::thd
OoqpVectorHandle NlpGenResiduals::Wd

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