DSDP
|
The interface between the SDPCone and the data matrices. More...
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. More... | |
Functions | |
int | DSDPDataMatCountNonzeros (DSDPDataMat, int *, int) |
Compute the square of the Frobenius norm. More... | |
int | DSDPDataMatDestroy (DSDPDataMat *) |
Free the data structures. More... | |
int | DSDPDataMatDot (DSDPDataMat, double[], int, int, double *) |
Compute inner product of data with a dense matrix. More... | |
int | DSDPDataMatFNorm2 (DSDPDataMat, int, double *) |
Compute the square of the Frobenius norm. More... | |
int | DSDPDataMatGetEig (DSDPDataMat, int, SDPConeVec, DSDPIndex, double *) |
Get an eigenvalue/vector pair. More... | |
int | DSDPDataMatGetRank (DSDPDataMat, int *, int) |
Get the number of nonzero eigenvalues/eigenvectors for the matrix. More... | |
int | DSDPDataMatGetRowNonzeros (DSDPDataMat, int, int, int *, int *) |
Get sparsity pattern of a row of the matrix. More... | |
int | DSDPDataMatInitialize (DSDPDataMat *) |
Set pointers to NULL;. More... | |
int | DSDPDataMatTest (DSDPDataMat) |
Test validity of matrix. More... | |
int | DSDPDataMatVecVec (DSDPDataMat, SDPConeVec, double *) |
Compute w' A w. More... | |
int | DSDPDataMatView (DSDPDataMat) |
Print matrix. More... | |
The interface between the SDPCone and the data matrices.
Definition in file dsdpdatamat.h.
struct DSDPDataMat DSDPDataMat |
Represents a single symmetric data matrix for one block in this semidefinite cone.
Definition at line 25 of file dsdpdatamat.h.
int DSDPDataMatCountNonzeros | ( | DSDPDataMat | A, |
int * | nnz, | ||
int | n | ||
) |
Compute the square of the Frobenius norm.
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.
A | symmetric data matrix |
Definition at line 444 of file dsdpdatamat.c.
Referenced by DSDPBlockDataDestroy(), and DSDPBlockRemoveDataMatrix().
int DSDPDataMatDot | ( | DSDPDataMat | A, |
double | x[], | ||
int | nn, | ||
int | n, | ||
double * | v | ||
) |
Compute inner product of data with a dense matrix.
A | symmetric data matrix |
x | dense array matrix |
nn | length of array |
n | dimension of matrix. |
v | the inner product |
Definition at line 273 of file dsdpdatamat.c.
int DSDPDataMatFNorm2 | ( | DSDPDataMat | A, |
int | n, | ||
double * | fnorm2 | ||
) |
Compute the square of the Frobenius norm.
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.
int DSDPDataMatGetEig | ( | DSDPDataMat | A, |
int | rr, | ||
SDPConeVec | V, | ||
DSDPIndex | S, | ||
double * | eigenvalue | ||
) |
Get an eigenvalue/vector pair.
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') |
Definition at line 204 of file dsdpdatamat.c.
int DSDPDataMatGetRank | ( | DSDPDataMat | A, |
int * | rank, | ||
int | n | ||
) |
Get the number of nonzero eigenvalues/eigenvectors for the matrix.
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.
int DSDPDataMatGetRowNonzeros | ( | DSDPDataMat | A, |
int | nrow, | ||
int | nmax, | ||
int * | nz, | ||
int * | nnz | ||
) |
Get sparsity pattern of a row of the matrix.
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;.
A | symmetric data matrix |
Definition at line 78 of file dsdpdatamat.c.
Referenced by DSDPBlockDataAllocate(), and DSDPDataMatDestroy().
int DSDPDataMatTest | ( | DSDPDataMat | A | ) |
Test validity of matrix.
A | symmetric data matrix |
Definition at line 96 of file dsdpdatamat.c.
int DSDPDataMatVecVec | ( | DSDPDataMat | A, |
SDPConeVec | W, | ||
double * | v | ||
) |
Compute w' A w.
A | symmetric data matrix |
W | vector |
v | the inner product |
Definition at line 297 of file dsdpdatamat.c.
int DSDPDataMatView | ( | DSDPDataMat | A | ) |
Print matrix.
A | symmetric data matrix |
Definition at line 423 of file dsdpdatamat.c.
Referenced by DSDPBlockView2(), and SDPConeViewDataMatrix().