PIPS-NLP
|
#include <StochVector.h>
Public Member Functions | |
StochDummyVector () | |
virtual | ~StochDummyVector () |
void | AddChild (StochVector *child) |
void | AddChild (OoqpVector *child) |
virtual OoqpVector * | dataClone () const |
virtual StochVector * | clone () 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) |
![]() | |
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) |
![]() | |
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) |
![]() | |
int | refs () |
IotrRefCount () | |
Protected Attributes | |
bool | firstDoNumOfNonZero |
int | nnzNonZeros |
![]() | |
bool | firstDoNumOfNonZero |
int | nnzNonZeros |
Additional Inherited Members | |
![]() | |
static void | release (IotrRefCount **obj) |
static void | addRef (IotrRefCount *const *obj) |
![]() | |
int | treeIDX |
OoqpVector * | vec |
std::vector< StochVector * > | children |
StochVector * | parent |
MPI_Comm | mpiComm |
int | iAmDistrib |
![]() | |
int | n |
![]() | |
static int | instances = 0 |
![]() | |
virtual | ~IotrRefCount () |
DUMMY VERSION
|
inline |
|
inlinevirtual |
|
inlinevirtual |
Return the absolute value
Reimplemented from StochVector.
|
inline |
|
inline |
|
inlinevirtual |
Add c to the elements of this OoqpVector object
Reimplemented from StochVector.
|
inlinevirtual |
Add the constant c to some of the elements of this OoqpVector
c | The constant to be added |
select | a 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.
|
inlinevirtual |
True if all elements of this OoqpVector are positive.
Reimplemented from StochVector.
|
inlinevirtual |
this += alpha * x / z
Reimplemented from StochVector.
|
inlinevirtual |
this += alpha * x / z
select | only 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.
|
inlinevirtual |
this += alpha * x
Reimplemented from StochVector.
|
inlinevirtual |
this += alpha * x * z
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Divide the components of this OoqpVector by the components of v.
Reimplemented from StochVector.
|
inlinevirtual |
Multiply the components of this OoqpVector by the components of v.
Reimplemented from StochVector.
|
inlinevirtual |
Copy the elements of v into this OoqpVector object.
Reimplemented from StochVector.
|
inlinevirtual |
Copy the elements of the C-style array v into this OoqpVector.
Reimplemented from StochVector.
|
inlinevirtual |
Copy the elements of the C-style char array v into this OoqpVector.
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Copy the elements of this OoqpVector into the C-style array v.
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
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.
|
inlinevirtual |
Divide selected elements of this OoqpVector by the corresponding element in div.
div | If element i of this OoqpVector is selected, then it will be divided by element i of div. |
select | Perform division on elements of this OoqpVector only if the corresponding element in select is non-zero |
Reimplemented from StochVector.
|
inlinevirtual |
Return the dot product of this OoqpVector with v
Reimplemented from StochVector.
|
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.
|
inlinevirtual |
Reimplemented from StochVector.
|
inline |
|
inlinevirtual |
Perform the projection needed by Gondzio's multiple corrector method.
Reimplemented from StochVector.
|
inlinevirtual |
Return the infinity norm of this OoqpVector object.
Reimplemented from StochVector.
|
inlinevirtual |
Invert (1/x) the elements of this OoqpVector.
Reimplemented from StochVector.
|
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.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
True if this OoqpVector has the same non-zero pattern as select.
Reimplemented from StochVector.
|
inlinevirtual |
Return the minimum value in this vector, and the index at which it occurs.
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Negate all the elements of this OoqpVector object.
Reimplemented from StochVector.
|
inlinevirtual |
Return the number of non-zero elements in this OoqpVector.
opt - store the number of nnz to avoid communication
Reimplemented from StochVector.
|
inlinevirtual |
Return the one norm of this OoqpVector object.
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Fill this OoqpVector with random elements
alpha | |
beta | the elements will be in the interval [alpha, beta] |
ix | an aribitray number used to seed the random number generator |
Reimplemented from StochVector.
|
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.
|
inlinevirtual |
Scale each element of this OoqpVector by the constant alpha
Reimplemented from StochVector.
|
inlinevirtual |
Set each element of this OoqpVector to zero if the corresponding element in select is zero.
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Set all elements of this OoqpVector to the constant value c
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Set all elements of this OoqpVector to zero.
Reimplemented from StochVector.
|
inlinevirtual |
Return the inner product <this + alpha * mystep, yvec + beta * ystep >
Reimplemented from StochVector.
|
inlinevirtual |
True if selected elements of this OoqpVector are positive
select | Each element of this OoqpVector must be positive if the corresponding element of select is non-zero. |
Reimplemented from StochVector.
|
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.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Reimplemented from StochVector.
|
inlinevirtual |
Write some elements of this OoqpVector to a stream, subject to a format.
out | a C++-style output stream |
format | a 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. |
select | a mask OoqpVector. An element if this OoqpVector is written only if the corresponding element of selec is non-zero. |
Reimplemented from StochVector.
|
inlinevirtual |
Write the components of this OoqpVector to a stream, subject to a format.
out | a C++-style output stream |
format | a 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.
|
inlinevirtual |
Reimplemented from StochVector.
|
protected |
|
protected |