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

#include <StochVector.h>

Inheritance diagram for StochDummyVector:
StochVector OoqpVector IotrRefCount

Public Member Functions

 StochDummyVector ()
 
virtual ~StochDummyVector ()
 
void AddChild (StochVector *child)
 
void AddChild (OoqpVector *child)
 
virtual OoqpVectordataClone () const
 
virtual StochVectorclone () const
 
virtual void jointCopyFrom (StochVector &v1, StochVector &v2, StochVector &v3)
 
virtual void jointCopyTo (StochVector &v1, StochVector &v2, StochVector &v3)
 
virtual void jointCopyFromXSYZ (StochVector &v1, StochVector &v2, StochVector &v3, StochVector &v4)
 
virtual void jointCopyToXSYZ (StochVector &v1, StochVector &v2, StochVector &v3, StochVector &v4)
 
virtual int isKindOf (int kind)
 
virtual void setToZero ()
 
virtual void setToConstant (double c)
 
virtual void randomize (double alpha, double beta, double *ix)
 
virtual void copyFrom (OoqpVector &v)
 
virtual double twonorm ()
 
virtual double infnorm ()
 
virtual double onenorm ()
 
virtual void min (double &m, int &index)
 
virtual double stepbound (OoqpVector &v, double maxStep)
 
virtual double findBlocking (OoqpVector &wstep_vec, OoqpVector &u_vec, OoqpVector &ustep_vec, double maxStep, double *w_elt, double *wstep_elt, double *u_elt, double *ustep_elt, int &first_or_second)
 
virtual void componentMult (OoqpVector &v)
 
virtual void componentDiv (OoqpVector &v)
 
virtual void scalarMult (double num)
 
virtual void writeToStream (std::ostream &out) const
 
virtual void writefToStream (std::ostream &out, const char format[]) const
 
virtual void scale (double alpha)
 
virtual void axpy (double alpha, OoqpVector &x)
 
virtual void axzpy (double alpha, OoqpVector &x, OoqpVector &z)
 
virtual void axdzpy (double alpha, OoqpVector &x, OoqpVector &z)
 
virtual void addConstant (double c)
 
virtual void gondzioProjection (double rmin, double rmax)
 
virtual double dotProductWith (OoqpVector &v)
 
virtual double shiftedDotProductWith (double alpha, OoqpVector &mystep, OoqpVector &yvec, double beta, OoqpVector &ystep)
 
virtual void negate ()
 
virtual void invert ()
 
virtual int allPositive ()
 
virtual int matchesNonZeroPattern (OoqpVector &select)
 
virtual void selectNonZeros (OoqpVector &select)
 
virtual long long numberOfNonzeros ()
 
virtual void addSomeConstants (double c, OoqpVector &select)
 
virtual void writefSomeToStream (std::ostream &out, const char format[], OoqpVector &select) const
 
virtual void axdzpy (double alpha, OoqpVector &x, OoqpVector &z, OoqpVector &select)
 
virtual int somePositive (OoqpVector &select)
 
virtual void divideSome (OoqpVector &div, OoqpVector &select)
 
virtual void copyIntoArray (double v[])
 
virtual void copyFromArray (double v[])
 
virtual void copyFromArray (char v[])
 
int getSize ()
 
virtual void print ()
 
virtual void findBlockingPD (OoqpVector &wstep_vec, OoqpVector &u_vec, OoqpVector &ustep_vec, double *w_elt, double *wstep_elt, double *u_elt, double *ustep_elt, int &first_or_second, double *alphaPri, double *alphaDual)
 
virtual double sumLog (OoqpVector &select)
 
virtual double sumPowElt (const double pow_in)
 
virtual double sumElt ()
 
virtual void MinComponentOrConstant (OoqpVector *vec_in, double minVal)
 
virtual void correctLargeVal (const double testVal, const double corVal, const int absFlag)
 
virtual void MinComponentBetween (OoqpVector *vec_in, OoqpVector *select_in)
 
virtual void setToConstantFromTo (double c, int start, int end)
 
virtual void SetComponentFromMaxXorY (OoqpVector *x_in, OoqpVector *y_in, OoqpVector *select_in)
 
virtual void SetComponentFromMaxXorY (OoqpVector *x_in, OoqpVector *y_in, int Start, int End, int xStart, int xEnd, int yStart, int yEnd)
 
virtual void SetComponentFromMaxXorConstant (OoqpVector *x_in, const double y_in)
 
virtual void SetComponentFromMaxXorConstant (OoqpVector *x_in, const double y_in, int Start, int End, int xStart, int xEnd)
 
virtual void copyFromFromTo (OoqpVector *vec_in, int VStart, int VEnd, int VinStart, int VinEnd)
 
virtual void copyFromArrayFromTo (double *w, int VStart, int VEnd, int Wstart, int Wend)
 
virtual void copyIntoArrayFromTo (double *w, int VStart, int VEnd, int Wstart, int Wend)
 
virtual void absVal (OoqpVector *vec_in)
 
virtual void copyIntoArrayWithIndex_AggVarCon (double *ResultArray, const int *vecmap, const int length, bool isVar=true)
 
- Public Member Functions inherited from StochVector
 StochVector (int n, MPI_Comm mpiComm, int isDistributed=-1)
 
 StochVector (int n, int const treeIDX_in, MPI_Comm mpiComm, int isDistributed=-1)
 
virtual ~StochVector ()
 
void AddChild (StochVector *child)
 
void AddChild (OoqpVector *child)
 
int getSize ()
 
virtual double sumLog (OoqpVector *select)
 
- Public Member Functions inherited from OoqpVector
long long length () const
 
 OoqpVector (int n_=0)
 
virtual ~OoqpVector ()
 
double Norm (const int Norm_Type, OoqpVector *vec2=NULL)
 
double Norm (const int Norm_Type, const double norm1, const double norm2)
 
- Public Member Functions inherited from IotrRefCount
int refs ()
 
 IotrRefCount ()
 

Protected Attributes

bool firstDoNumOfNonZero
 
int nnzNonZeros
 
- Protected Attributes inherited from StochVector
bool firstDoNumOfNonZero
 
int nnzNonZeros
 

Additional Inherited Members

- Static Public Member Functions inherited from IotrRefCount
static void release (IotrRefCount **obj)
 
static void addRef (IotrRefCount *const *obj)
 
- Public Attributes inherited from StochVector
int treeIDX
 
OoqpVectorvec
 
std::vector< StochVector * > children
 
StochVectorparent
 
MPI_Comm mpiComm
 
int iAmDistrib
 
- Public Attributes inherited from OoqpVector
int n
 
- Static Public Attributes inherited from IotrRefCount
static int instances = 0
 
- Protected Member Functions inherited from IotrRefCount
virtual ~IotrRefCount ()
 

Detailed Description

DUMMY VERSION

Constructor & Destructor Documentation

StochDummyVector::StochDummyVector ( )
inline
virtual StochDummyVector::~StochDummyVector ( )
inlinevirtual

Member Function Documentation

virtual void StochDummyVector::absVal ( OoqpVector vec_in)
inlinevirtual

Return the absolute value

Reimplemented from StochVector.

void StochDummyVector::AddChild ( StochVector child)
inline
void StochDummyVector::AddChild ( OoqpVector child)
inline
virtual void StochDummyVector::addConstant ( double  c)
inlinevirtual

Add c to the elements of this OoqpVector object

Reimplemented from StochVector.

virtual void StochDummyVector::addSomeConstants ( double  c,
OoqpVector select 
)
inlinevirtual

Add the constant c to some of the elements of this OoqpVector

Parameters
cThe constant to be added
selecta mask OoqpVector. The constant c is added to an element of this OoqpVector only if the corresponding element of select is non-zero.

Reimplemented from StochVector.

virtual int StochDummyVector::allPositive ( )
inlinevirtual

True if all elements of this OoqpVector are positive.

Reimplemented from StochVector.

virtual void StochDummyVector::axdzpy ( double  alpha,
OoqpVector x,
OoqpVector z 
)
inlinevirtual

this += alpha * x / z

Reimplemented from StochVector.

virtual void StochDummyVector::axdzpy ( double  alpha,
OoqpVector x,
OoqpVector z,
OoqpVector select 
)
inlinevirtual

this += alpha * x / z

Parameters
selectonly perform the division on elements of x and z if the corresponding element of select is non-zero. Generally we avoid performing the division if we know that it will result in division by zero. The OoqpVector select may be x, z or a third OoqpVector.

Reimplemented from StochVector.

virtual void StochDummyVector::axpy ( double  alpha,
OoqpVector x 
)
inlinevirtual

this += alpha * x

Reimplemented from StochVector.

virtual void StochDummyVector::axzpy ( double  alpha,
OoqpVector x,
OoqpVector z 
)
inlinevirtual

this += alpha * x * z

Reimplemented from StochVector.

virtual StochVector* StochDummyVector::clone ( ) const
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::componentDiv ( OoqpVector v)
inlinevirtual

Divide the components of this OoqpVector by the components of v.

Reimplemented from StochVector.

virtual void StochDummyVector::componentMult ( OoqpVector v)
inlinevirtual

Multiply the components of this OoqpVector by the components of v.

Reimplemented from StochVector.

virtual void StochDummyVector::copyFrom ( OoqpVector v)
inlinevirtual

Copy the elements of v into this OoqpVector object.

Reimplemented from StochVector.

virtual void StochDummyVector::copyFromArray ( double  v[])
inlinevirtual

Copy the elements of the C-style array v into this OoqpVector.

Reimplemented from StochVector.

virtual void StochDummyVector::copyFromArray ( char  v[])
inlinevirtual

Copy the elements of the C-style char array v into this OoqpVector.

Reimplemented from StochVector.

virtual void StochDummyVector::copyFromArrayFromTo ( double *  w,
int  VStart,
int  VEnd,
int  Wstart,
int  Wend 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::copyFromFromTo ( OoqpVector vec_in,
int  VStart,
int  VEnd,
int  VinStart,
int  VinEnd 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::copyIntoArray ( double  v[])
inlinevirtual

Copy the elements of this OoqpVector into the C-style array v.

Reimplemented from StochVector.

virtual void StochDummyVector::copyIntoArrayFromTo ( double *  w,
int  VStart,
int  VEnd,
int  Wstart,
int  Wend 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::copyIntoArrayWithIndex_AggVarCon ( double *  ResultArray,
const int *  vecmap,
const int  length,
bool  isVar = true 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::correctLargeVal ( const double  testVal,
const double  corVal,
const int  absFlag 
)
inlinevirtual

Reimplemented from StochVector.

virtual OoqpVector* StochDummyVector::dataClone ( ) const
inlinevirtual

Creates and returns a vector of the type used to store data in this node, i.e., same type as 'vec'. NO data is copied, for this use one of the 'copy...' functions.

Reimplemented from StochVector.

virtual void StochDummyVector::divideSome ( OoqpVector div,
OoqpVector select 
)
inlinevirtual

Divide selected elements of this OoqpVector by the corresponding element in div.

Parameters
divIf element i of this OoqpVector is selected, then it will be divided by element i of div.
selectPerform division on elements of this OoqpVector only if the corresponding element in select is non-zero

Reimplemented from StochVector.

virtual double StochDummyVector::dotProductWith ( OoqpVector v)
inlinevirtual

Return the dot product of this OoqpVector with v

Reimplemented from StochVector.

virtual double StochDummyVector::findBlocking ( OoqpVector wstep_vec,
OoqpVector u_vec,
OoqpVector ustep_vec,
double  maxStep,
double *  w_elt,
double *  wstep_elt,
double *  u_elt,
double *  ustep_elt,
int &  first_or_second 
)
inlinevirtual

Return the largest value of alpha in the interval [0,1] for which: this + alpha * wstep_vec >= 0 and u_vec + alpha * ustep_vec >= 0. Also return the components this[i], wstep_vec[i], u_vec[i], ustep_vec[i], where i is the index of the "blocking" component - the one that limits the step length to alpha. Also return first_or_second=1 if the blocking component is in "this", and first_or_second=2 if the blocking component is in u_vec.

Reimplemented from StochVector.

virtual void StochDummyVector::findBlockingPD ( OoqpVector wstep_vec,
OoqpVector u_vec,
OoqpVector ustep_vec,
double *  w_elt,
double *  wstep_elt,
double *  u_elt,
double *  ustep_elt,
int &  first_or_second,
double *  alphaPri,
double *  alphaDual 
)
inlinevirtual

Reimplemented from StochVector.

int StochDummyVector::getSize ( )
inline
virtual void StochDummyVector::gondzioProjection ( double  rmin,
double  rmax 
)
inlinevirtual

Perform the projection needed by Gondzio's multiple corrector method.

See also
SimpleVector::gondzioProjection

Reimplemented from StochVector.

virtual double StochDummyVector::infnorm ( )
inlinevirtual

Return the infinity norm of this OoqpVector object.

Reimplemented from StochVector.

virtual void StochDummyVector::invert ( )
inlinevirtual

Invert (1/x) the elements of this OoqpVector.

Reimplemented from StochVector.

virtual int StochDummyVector::isKindOf ( int  kind)
inlinevirtual

True if this OoqpVector identifies itself as having the type kind.

Classes overriding this method must call the inherited version, so that the class hierarchy is supported.

Reimplemented from StochVector.

virtual void StochDummyVector::jointCopyFrom ( StochVector v1,
StochVector v2,
StochVector v3 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::jointCopyFromXSYZ ( StochVector v1,
StochVector v2,
StochVector v3,
StochVector v4 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::jointCopyTo ( StochVector v1,
StochVector v2,
StochVector v3 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::jointCopyToXSYZ ( StochVector v1,
StochVector v2,
StochVector v3,
StochVector v4 
)
inlinevirtual

Reimplemented from StochVector.

virtual int StochDummyVector::matchesNonZeroPattern ( OoqpVector select)
inlinevirtual

True if this OoqpVector has the same non-zero pattern as select.

Reimplemented from StochVector.

virtual void StochDummyVector::min ( double &  m,
int &  index 
)
inlinevirtual

Return the minimum value in this vector, and the index at which it occurs.

Reimplemented from StochVector.

virtual void StochDummyVector::MinComponentBetween ( OoqpVector vec_in,
OoqpVector select_in 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::MinComponentOrConstant ( OoqpVector vec_in,
double  minVal 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::negate ( )
inlinevirtual

Negate all the elements of this OoqpVector object.

Reimplemented from StochVector.

virtual long long StochDummyVector::numberOfNonzeros ( )
inlinevirtual

Return the number of non-zero elements in this OoqpVector.

opt - store the number of nnz to avoid communication

Reimplemented from StochVector.

virtual double StochDummyVector::onenorm ( )
inlinevirtual

Return the one norm of this OoqpVector object.

Reimplemented from StochVector.

virtual void StochDummyVector::print ( )
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::randomize ( double  alpha,
double  beta,
double *  ix 
)
inlinevirtual

Fill this OoqpVector with random elements

Parameters
alpha
betathe elements will be in the interval [alpha, beta]
ixan aribitray number used to seed the random number generator

Reimplemented from StochVector.

virtual void StochDummyVector::scalarMult ( double  num)
inlinevirtual

Write the components of this OoqpVector, one element per line, to the stream out. Multiply the components of this OoqpVector by num.

Reimplemented from StochVector.

virtual void StochDummyVector::scale ( double  alpha)
inlinevirtual

Scale each element of this OoqpVector by the constant alpha

Reimplemented from StochVector.

virtual void StochDummyVector::selectNonZeros ( OoqpVector select)
inlinevirtual

Set each element of this OoqpVector to zero if the corresponding element in select is zero.

Reimplemented from StochVector.

virtual void StochDummyVector::SetComponentFromMaxXorConstant ( OoqpVector x_in,
const double  y_in 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::SetComponentFromMaxXorConstant ( OoqpVector x_in,
const double  y_in,
int  Start,
int  End,
int  xStart,
int  xEnd 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::SetComponentFromMaxXorY ( OoqpVector x_in,
OoqpVector y_in,
OoqpVector select_in 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::SetComponentFromMaxXorY ( OoqpVector x_in,
OoqpVector y_in,
int  Start,
int  End,
int  xStart,
int  xEnd,
int  yStart,
int  yEnd 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::setToConstant ( double  c)
inlinevirtual

Set all elements of this OoqpVector to the constant value c

Reimplemented from StochVector.

virtual void StochDummyVector::setToConstantFromTo ( double  c,
int  start,
int  end 
)
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::setToZero ( )
inlinevirtual

Set all elements of this OoqpVector to zero.

Reimplemented from StochVector.

virtual double StochDummyVector::shiftedDotProductWith ( double  alpha,
OoqpVector mystep,
OoqpVector yvec,
double  beta,
OoqpVector ystep 
)
inlinevirtual

Return the inner product <this + alpha * mystep, yvec + beta * ystep >

Reimplemented from StochVector.

virtual int StochDummyVector::somePositive ( OoqpVector select)
inlinevirtual

True if selected elements of this OoqpVector are positive

Parameters
selectEach element of this OoqpVector must be positive if the corresponding element of select is non-zero.

Reimplemented from StochVector.

virtual double StochDummyVector::stepbound ( OoqpVector v,
double  maxStep 
)
inlinevirtual

Return the largest value of alpha in the interval [0, maxStep] for which: this + alpha * v >= 0. Set firstBlocking to be the "blocking" index i - the one that limits the step length to alpha.

Reimplemented from StochVector.

virtual double StochDummyVector::sumElt ( )
inlinevirtual

Reimplemented from StochVector.

virtual double StochDummyVector::sumLog ( OoqpVector select)
inlinevirtual
virtual double StochDummyVector::sumPowElt ( const double  pow_in)
inlinevirtual

Reimplemented from StochVector.

virtual double StochDummyVector::twonorm ( )
inlinevirtual

Reimplemented from StochVector.

virtual void StochDummyVector::writefSomeToStream ( std::ostream &  out,
const char  format[],
OoqpVector select 
) const
inlinevirtual

Write some elements of this OoqpVector to a stream, subject to a format.

Parameters
outa C++-style output stream
formata string used to format the output. The substring %{index} will be substituted by the index of the current element and the string %{value} will be substituted with the element's value.
selecta mask OoqpVector. An element if this OoqpVector is written only if the corresponding element of selec is non-zero.

Reimplemented from StochVector.

virtual void StochDummyVector::writefToStream ( std::ostream &  out,
const char  format[] 
) const
inlinevirtual

Write the components of this OoqpVector to a stream, subject to a format.

Parameters
outa C++-style output stream
formata string used to format the output. The substring %{index} will be substituted by the index of the current element and the string %{value} will be substituted with the element's value.

Reimplemented from StochVector.

virtual void StochDummyVector::writeToStream ( std::ostream &  out) const
inlinevirtual

Reimplemented from StochVector.

Member Data Documentation

bool StochDummyVector::firstDoNumOfNonZero
protected
int StochDummyVector::nnzNonZeros
protected

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