dsdpdatamat.h File Reference


Detailed Description

The interface between the SDPCone and the data matrices.

Definition in file dsdpdatamat.h.

Go to the source code of this file.

Data Structures

struct  DSDPDataMat_C
 Symmetric data matrix for one block in the semidefinite cone. More...

Typedefs

typedef struct DSDPDataMat_C DSDPDataMat
 Represents a single symmetric data matrix for one block in this semidefinite cone.

Functions

int DSDPDataMatCountNonzeros (DSDPDataMat, int *, int)
 Compute the square of the Frobenius norm.
int DSDPDataMatDestroy (DSDPDataMat *)
 Free the data structures.
int DSDPDataMatDot (DSDPDataMat, double[], int, int, double *)
 Compute inner product of data with a dense matrix.
int DSDPDataMatFNorm2 (DSDPDataMat, int, double *)
 Compute the square of the Frobenius norm.
int DSDPDataMatGetEig (DSDPDataMat, int, SDPConeVec, DSDPIndex, double *)
 Get an eigenvalue/vector pair.
int DSDPDataMatGetRank (DSDPDataMat, int *, int)
 Get the number of nonzero eigenvalues/eigenvectors for the matrix.
int DSDPDataMatGetRowNonzeros (DSDPDataMat, int, int, int *, int *)
 Get sparsity pattern of a row of the matrix.
int DSDPDataMatInitialize (DSDPDataMat *)
 Set pointers to NULL;.
int DSDPDataMatSetData (DSDPDataMat *, struct DSDPDataMat_Ops *, void *)
 Set the opaque pointer and function pointers to the matrix.
int DSDPDataMatTest (DSDPDataMat)
 Test validity of matrix.
int DSDPDataMatVecVec (DSDPDataMat, SDPConeVec, double *)
 Compute w' A w.
int DSDPDataMatView (DSDPDataMat)
 Print matrix.


Typedef Documentation

Represents a single symmetric data matrix for one block in this semidefinite cone.

Definition at line 25 of file dsdpdatamat.h.


Function Documentation

int DSDPDataMatCountNonzeros ( DSDPDataMat  A,
int *  nnz,
int  n 
)

Compute the square of the Frobenius norm.

Parameters:
A symmetric data matrix.
n dimension of the matrix.
*nnz nonzeros in matrix.
Used to identify which of a few strategies to compute Hessian.

Definition at line 152 of file dsdpdatamat.c.

int DSDPDataMatDestroy ( DSDPDataMat A  ) 

Free the data structures.

Parameters:
A symmetric data matrix

Definition at line 444 of file dsdpdatamat.c.

Referenced by DSDPBlockAddDataMatrix(), DSDPBlockDataDestroy(), and DSDPBlockRemoveDataMatrix().

int DSDPDataMatDot ( DSDPDataMat  A,
double  x[],
int  nn,
int  n,
double *  v 
)

Compute inner product of data with a dense matrix.

Parameters:
A symmetric data matrix
x dense array matrix
nn length of array
n dimension of matrix.
v the inner product
See also:
SDPConeSetStorageFormat()

DSDPVMatGetArray()

Definition at line 273 of file dsdpdatamat.c.

Referenced by DSDPBlockADot(), and DSDPDataMatCheck().

int DSDPDataMatFNorm2 ( DSDPDataMat  A,
int  n,
double *  fnorm2 
)

Compute the square of the Frobenius norm.

Parameters:
A symmetric data matrix.
n dimension of the matrix.
fnorm2 square of norm.
Used to scale the problem

Definition at line 175 of file dsdpdatamat.c.

Referenced by DSDPDataMatCheck().

int DSDPDataMatGetEig ( DSDPDataMat  A,
int  rr,
SDPConeVec  V,
DSDPIndex  S,
double *  eigenvalue 
)

Get an eigenvalue/vector pair.

Parameters:
A symmetric data matrix
rr identifies which pair of eigs, (0 <= rr < rank)
V Eigenvector
S Indentifies sparsity pattern in V.
eigenvalue the scalar associated with the vector. These pairs do not have to be eigenvalues and eigenvectors. What matters is that the matrix is a sum of the outer products of these vectors. That is, A = sum (rr * V *V')
See also:
DSDPDataMatGetRank()

Definition at line 204 of file dsdpdatamat.c.

Referenced by DSDPDataMatCheck(), SDPConeComputeHessian(), SDPConeComputeRHS(), SDPConeComputeXX(), and SDPConeMultiply().

int DSDPDataMatGetRank ( DSDPDataMat  A,
int *  rank,
int  n 
)

Get the number of nonzero eigenvalues/eigenvectors for the matrix.

Parameters:
A symmetric data matrix
rank number of nonzero eigenvalues and vectors.
n rows and columns in matrix.

Definition at line 129 of file dsdpdatamat.c.

Referenced by DSDPDataMatCheck(), SDPConeComputeHessian(), SDPConeComputeRHS(), SDPConeComputeXX(), and SDPConeMultiply().

int DSDPDataMatGetRowNonzeros ( DSDPDataMat  A,
int  nrow,
int  nmax,
int *  nz,
int *  nnz 
)

Get sparsity pattern of a row of the matrix.

Parameters:
A symmetric data matrix.
nrow number >=0 and < n.
nmax dimension of the matrix.
nz array used to mark nonzeros.
nnz number of nonzeros in row. Used to create sparse data structure for S and Delta S.

Definition at line 355 of file dsdpdatamat.c.

Referenced by DSDPBlockDataRowSparsity().

int DSDPDataMatInitialize ( DSDPDataMat A  ) 

Set pointers to NULL;.

Parameters:
A symmetric data matrix

Definition at line 78 of file dsdpdatamat.c.

Referenced by DSDPBlockDataAllocate(), and DSDPDataMatDestroy().

int DSDPDataMatSetData ( DSDPDataMat A,
struct DSDPDataMat_Ops ops,
void *  data 
)

Set the opaque pointer and function pointers to the matrix.

Parameters:
A symmetric data matrix
ops pointer to a structure of function pointers
data pointer to a matrix structure

Definition at line 25 of file dsdpdatamat.c.

Referenced by DSDPBlockAddDataMatrix(), DSDPDataMatInitialize(), and DSDPSetDataMatZero().

int DSDPDataMatTest ( DSDPDataMat  A  ) 

Test validity of matrix.

Parameters:
A symmetric data matrix

Definition at line 96 of file dsdpdatamat.c.

Referenced by DSDPDataMatSetData().

int DSDPDataMatVecVec ( DSDPDataMat  A,
SDPConeVec  W,
double *  v 
)

Compute w' A w.

Parameters:
A symmetric data matrix
W vector
v the inner product

Definition at line 297 of file dsdpdatamat.c.

Referenced by DSDPBlockvAv(), and DSDPDataMatCheck().

int DSDPDataMatView ( DSDPDataMat  A  ) 

Print matrix.

Parameters:
A symmetric data matrix

Definition at line 423 of file dsdpdatamat.c.

Referenced by DSDPBlockView2(), and SDPConeViewDataMatrix().


Generated on Wed Nov 5 21:46:05 2008 for DSDP by  doxygen 1.5.6