Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

DenseGenMatrix Class Reference
[DenseLinearAlgebra]

#include <DenseGenMatrix.h>

Inheritance diagram for DenseGenMatrix:

GenMatrix DoubleMatrix IotrRefCount List of all members.

Public Methods

virtual int isKindOf (int matType)
virtual void getSize (int &m, int &n)
virtual void atPutDense (int row, int col, double *A, int lda, int rowExtent, int colExtent)
virtual void atPutZeros (int row, int col, int rowExtent, int colExtent)
virtual void getDiagonal (OoqpVector &vec)
virtual void setToDiagonal (OoqpVector &vec)
virtual void atPutSubmatrix (int destRow, int destCol, DoubleMatrix &M, int srcRow, int srcCol, int rowExtent, int colExtent)
virtual void atPutSpRow (int row, double A[], int lenA, int jcolA[], int &info)
virtual void putSparseTriple (int irow[], int len, int jcol[], double A[], int &info)
virtual void mult (double beta, OoqpVector &y, double alpha, OoqpVector &x)
virtual void transMult (double beta, OoqpVector &y, double alpha, OoqpVector &x)
virtual void fromGetDense (int row, int col, double *A, int lda, int rowExtent, int colExtent)
virtual void fromGetSpRow (int row, int col, double A[], int lenA, int jcolA[], int &nnz, int rowExtent, int &info)
virtual void ColumnScale (OoqpVector &vec)
virtual void RowScale (OoqpVector &vec)
virtual void SymmetricScale (OoqpVector &vec)
virtual void scalarMult (double num)
virtual double abmaxnorm ()
virtual void writeToStream (ostream &out) const
virtual void randomize (double alpha, double beta, double *seed)
virtual void atPutDiagonal (int idiag, OoqpVector &v)
virtual void fromGetDiagonal (int idiag, OoqpVector &v)
virtual void getRow (int rowIndex, OoqpVector &v_in)
double * elements ()
double ** Mat ()

Detailed Description

A class of dense, non-symmetric, possibly non-square, matrices.


Member Function Documentation

virtual double DenseGenMatrix::abmaxnorm   [virtual]
 

the magnitude of the element in this matrix with largest absolute value.

Implements DoubleMatrix.

virtual void DenseGenMatrix::atPutDense int    row,
int    col,
double *    A,
int    lda,
int    rowExtent,
int    colExtent
[virtual]
 

Set the value of some of the elements of this matrix.

See also:
DoubleMatrix::fromGetDense

Implements GenMatrix.

virtual void DenseGenMatrix::atPutDiagonal int    idiag,
OoqpVector   v
[virtual]
 

Set some of the diagonal elements of this matrix.

Parameters:
idiag  the index of the first diagonal element to be modified.
x  the new values for the diagonal elements.
The length of x is the number of diagonal elements to be modified. Typically x will have length less than the length of the diagonal.

Implements DoubleMatrix.

virtual void DenseGenMatrix::atPutSpRow int    row,
double    A[],
int    lenA,
int    jcolA[],
int &    info
[virtual]
 

Put a sparse row into this matrix.

The meaning of the parmameters is the same as in fromGetSpRow.

See also:
DoubleMatrix::fromGetSpRow

Implements GenMatrix.

virtual void DenseGenMatrix::atPutSubmatrix int    destRow,
int    destCol,
DoubleMatrix   M,
int    srcRow,
int    srcCol,
int    rowExtent,
int    colExtent
[virtual]
 

Put a submatrix of M into this matrix.

Parameters:
destRow  The top row of the submatrix of M is placed at destRow.
destCol  The leftmost column of the submatrix of M is placed at destCol.
srcRow  The first row of the submatrix of M is srcRow.
srcCol  The first column of the submatrix of M is srcCol.
rowExtent  rowExtent rows are copied from M.
colExtent  colExtent columns are copied from M.

Implements GenMatrix.

virtual void DenseGenMatrix::atPutZeros int    row,
int    col,
int    rowExtent,
int    colExtent
[virtual]
 

Fill a region of this matrix with zeros.

The region starts at (row, col) and extends rowExtent rows and colExtent columns.

double* DenseGenMatrix::elements   [inline]
 

Return a pointer to the first element in the matrix

virtual void DenseGenMatrix::fromGetDense int    row,
int    col,
double *    A,
int    lda,
int    rowExtent,
int    colExtent
[virtual]
 

Get the value of some of the elements of this matrix.

Parameters:
row  start reading the elements of this matrix from row number "row".
col  start reading the elements of this matrix from column number "col".
A  Any array to hold the values from this matrix.
ldA  the leading dimension of A.
rowExtent  get rowExtent rows from this matrix.
colExtent  get colExtent columns from this matrix.

Implements DoubleMatrix.

virtual void DenseGenMatrix::fromGetDiagonal int    idiag,
OoqpVector   v
[virtual]
 

Get some of the diagonal elements of this matrix.

Parameters:
idiag  the index of the first diagonal element to be read.
x  a vector to hold the diagonal elements
The length of x is the number of diagonal elements to be gotten. Typically x will have length less than the length of the diagonal.

Implements DoubleMatrix.

virtual void DenseGenMatrix::fromGetSpRow int    row,
int    col,
double    A[],
int    lenA,
int    jcolA[],
int &    nnz,
int    rowExtent,
int &    info
[virtual]
 

Get one sparse row from this matrix.

Parameters:
row  get row number "row"
col  ignore all elements of the row before column "col"
A  store the values of the sparse row in A
lenA  the length of A
jcolA  an array of length lenA containing the column index of each element in the sparse row
colExtent  ignore all elements of the row that have column indices greater than or equal to col + colExtent
info  info is 0 if and only if the sparse row can fit into A.

Implements DoubleMatrix.

virtual void DenseGenMatrix::getDiagonal OoqpVector   vec [virtual]
 

Place the diagonal elements of this matrix in the vector vec

Implements DoubleMatrix.

virtual void DenseGenMatrix::getRow int    rowIndex,
OoqpVector   v_in
[virtual]
 

Get a row of this matrix.

virtual int DenseGenMatrix::isKindOf int    matType [virtual]
 

True if this matrix identifies itself to be of type matrixType.

Implements DoubleMatrix.

double** DenseGenMatrix::Mat   [inline]
 

Return mMat, an

virtual void DenseGenMatrix::mult double    beta,
OoqpVector   y,
double    alpha,
OoqpVector   x
[virtual]
 

y = beta * y + alpha * this * x

Implements DoubleMatrix.

virtual void DenseGenMatrix::putSparseTriple int    irow[],
int    len,
int    jcol[],
double    A[],
int &    info
[virtual]
 

Copy elements from sparse triple format into this matrix

Parameters:
len  the number of elements
irow  an array containing the row number of the elements
jcol  an array containing the column number of the elements
A  an array containing the values for the elements.
info  on return, info will be zero if and only if the insertion was successful.

Implements DoubleMatrix.

virtual void DenseGenMatrix::randomize double    alpha,
double    beta,
double *    seed
[virtual]
 

Fill this matrix with random elements.

Parameters:
alpha  the elements will be no smaller than alpha.
beta  the elements will be no larger than beta.
seed  a arbitrary number used to seed the random number generator.

Implements GenMatrix.

virtual void DenseGenMatrix::setToDiagonal OoqpVector   vec [virtual]
 

Set the matrix to the diagoanl matrix whose diagonal is vec

Implements DoubleMatrix.

virtual void DenseGenMatrix::SymmetricScale OoqpVector   vec [virtual]
 

Get the number of rows and columns in the matrix

Parameters:
m  the number of rows
n  the number of columns

Implements DoubleMatrix.

virtual void DenseGenMatrix::transMult double    beta,
OoqpVector   y,
double    alpha,
OoqpVector   x
[virtual]
 

y = beta * y + alpha * this^T * x

Implements DoubleMatrix.

virtual void DenseGenMatrix::writeToStream ostream &    out const [virtual]
 

Write this element to a C++ stream

Implements DoubleMatrix.


The documentation for this class was generated from the following file:
Generated on Mon May 24 17:40:46 2004 for OOQP by doxygen1.2.18