|
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 | DSDPDataMatSetData (DSDPDataMat *, struct DSDPDataMat_Ops *, void *) |
| Set the opaque pointer and function pointers to the matrix. 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 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.
| 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.
Referenced by DSDPBlockADot(), and DSDPDataMatCheck().
| 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.
Referenced by DSDPDataMatCheck().
| 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.
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.
| 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.
| 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 DSDPDataMatSetData | ( | DSDPDataMat * | A, |
| struct DSDPDataMat_Ops * | ops, | ||
| void * | data | ||
| ) |
Set the opaque pointer and function pointers to the matrix.
| 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.
| 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.
| 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.
| A | symmetric data matrix |
Definition at line 423 of file dsdpdatamat.c.
Referenced by DSDPBlockView2(), and SDPConeViewDataMatrix().