DSDP
dsdpdsmat.h
Go to the documentation of this file.
1 #if !defined(__DSDP_DSMATRIX_H)
2 #define __DSDP_DSMATRIX_H
3 
4 #include "sdpconevec.h"
5 #include "dsdpxmat.h"
6 
12 /* DSDPDSMat objects are not used for much: DS, X, eigenvalue stuff */
13 /* These objects are good basically for assembling a matrix, accessing
14  the data, and applying the operator to a vector */
15 
16 /* DSDP Matrix Structure */
23 struct DSDPDSMat_C{
24  void *matdata;
25  struct DSDPDSMat_Ops* dsdpops;
26 };
27 
33 typedef struct DSDPDSMat_C DSDPDSMat;
34 
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38 
39 extern int DSDPDSMatGetType(DSDPDSMat, int *);
40 extern int DSDPDSMatSetData(DSDPDSMat *, struct DSDPDSMat_Ops*, void*);
41 extern int DSDPDSMatInitialize(DSDPDSMat*);
42 
46 extern int DSDPDSMatVecVec(DSDPDSMat, SDPConeVec, double*);
47 
48 extern int DSDPDSMatTest(DSDPDSMat);
49 extern int DSDPDSMatGetSize(DSDPDSMat,int*);
50 extern int DSDPDSMatView(DSDPDSMat);
51 extern int DSDPDSMatDestroy(DSDPDSMat*);
52 
53 extern int DSDPDSMatCheck(DSDPDSMat,SDPConeVec,SDPConeVec,DSDPVMat);
54 #ifdef __cplusplus
55 }
56 #endif
57 
58 
59 #endif
60 
61 
int DSDPDSMatZeroEntries(DSDPDSMat)
Zero the entries in the matrix.
Definition: dsdpdsmat.c:110
int DSDPDSMatSetArray(DSDPDSMat, DSDPVMat)
Set values into the matrix.
Definition: dsdpdsmat.c:130
int DSDPDSMatVecVec(DSDPDSMat, SDPConeVec, double *)
Compute the product x' A x.
Definition: dsdpdsmat.c:181
int DSDPDSMatGetSize(DSDPDSMat, int *)
Set the opaque pointer and function pointers to the matrix.
Definition: dsdpdsmat.c:50
Each block of the SDPCone has two vectors of appropriate size.
int DSDPDSMatView(DSDPDSMat)
Print the matrix.
Definition: dsdpdsmat.c:92
Vector whose length corresponds to dimension of a block in a cone.
Definition: sdpconevec.h:13
int DSDPDSMatSetData(DSDPDSMat *, struct DSDPDSMat_Ops *, void *)
Set the opaque pointer and function pointers to the matrix.
Definition: dsdpdsmat.c:31
The interface between the SDPCone and the dense matrix array.
int DSDPDSMatInitialize(DSDPDSMat *)
Set pointers to null.
Definition: dsdpdsmat.c:254
int DSDPDSMatMult(DSDPDSMat, SDPConeVec, SDPConeVec)
Set values into the matrix.
Definition: dsdpdsmat.c:154
Symmetric Delta S matrix for one block in the semidefinite cone.
int DSDPDSMatDestroy(DSDPDSMat *)
Free the data structure.
Definition: dsdpdsmat.c:70
Symmetric Delta S matrix for one block in the semidefinite cone.
Definition: dsdpdsmat.h:23
Dense symmetric matrix for one block in the semidefinite cone.
Definition: dsdpxmat.h:17