DSDP
|
Call an implementation of the data matrix operations. More...
Go to the source code of this file.
Functions | |
int | DSDPDataMatAddMultiple (DSDPDataMat A, double ytmp, double *v, int nn, int n) |
Add a multiple the data matrix to the array. More... | |
int | DSDPDataMatCountNonzeros (DSDPDataMat A, int *nnz, int n) |
Compute the square of the Frobenius norm. More... | |
int | DSDPDataMatDestroy (DSDPDataMat *A) |
Free the data structures. More... | |
int | DSDPDataMatDot (DSDPDataMat A, double x[], int nn, int n, double *v) |
Compute inner product of data with a dense matrix. More... | |
int | DSDPDataMatFNorm2 (DSDPDataMat A, int n, double *fnorm2) |
Compute the square of the Frobenius norm. More... | |
int | DSDPDataMatGetEig (DSDPDataMat A, int rr, SDPConeVec V, DSDPIndex S, double *eigenvalue) |
Get an eigenvalue/vector pair. More... | |
int | DSDPDataMatGetRank (DSDPDataMat A, int *rank, int n) |
Get the number of nonzero eigenvalues/eigenvectors for the matrix. More... | |
int | DSDPDataMatGetRowNonzeros (DSDPDataMat A, int nrow, int nmax, int *nz, int *nnz) |
Get sparsity pattern of a row of the matrix. More... | |
int | DSDPDataMatInitialize (DSDPDataMat *A) |
Set pointers to NULL;. More... | |
int | DSDPDataMatOpsInitialize (struct DSDPDataMat_Ops *dops) |
Initialize the table of function pointers for SDP Data matrices. More... | |
int | DSDPDataMatTest (DSDPDataMat A) |
Test validity of matrix. More... | |
int | DSDPDataMatVecVec (DSDPDataMat A, SDPConeVec W, double *v) |
Compute w' A w. More... | |
int | DSDPDataMatView (DSDPDataMat A) |
Print matrix. More... | |
Call an implementation of the data matrix operations.
Definition in file dsdpdatamat.c.
int DSDPDataMatAddMultiple | ( | DSDPDataMat | A, |
double | ytmp, | ||
double * | v, | ||
int | nn, | ||
int | n | ||
) |
Add a multiple the data matrix to the array.
A | symmetric data matrix |
ytmp | scalar multiple |
v | dense array matrix |
nn | dimension of array |
n | dimension of matrix |
Definition at line 402 of file dsdpdatamat.c.
Referenced by DSDPBlockASum().
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 DSDPDataMatOpsInitialize | ( | struct DSDPDataMat_Ops * | dops | ) |
Initialize the table of function pointers for SDP Data matrices.
dops | pointer to a structure of function pointers. |
Definition at line 47 of file dsdpdatamat.c.
Referenced by DSDPDataMatInitialize().
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().