dsdpdsmat.h
Go to the documentation of this file.
#if !defined(__DSDP_DSMATRIX_H)
#define __DSDP_DSMATRIX_H
#include "sdpconevec.h"
#include "dsdpxmat.h"
/* DSDPDSMat objects are not used for much: DS, X, eigenvalue stuff */
/* These objects are good basically for assembling a matrix, accessing
the data, and applying the operator to a vector */
/* DSDP Matrix Structure */
struct DSDPDSMat_C{
void *matdata;
struct DSDPDSMat_Ops* dsdpops;
};
typedef struct DSDPDSMat_C DSDPDSMat;
#ifdef __cplusplus
extern "C" {
#endif
extern int DSDPDSMatGetType(DSDPDSMat, int *);
extern int DSDPDSMatSetData(DSDPDSMat *, struct DSDPDSMat_Ops*, void*);
extern int DSDPDSMatInitialize(DSDPDSMat*);
extern int DSDPDSMatZeroEntries(DSDPDSMat);
extern int DSDPDSMatSetArray(DSDPDSMat,DSDPVMat);
extern int DSDPDSMatMult(DSDPDSMat, SDPConeVec, SDPConeVec);
extern int DSDPDSMatVecVec(DSDPDSMat, SDPConeVec, double*);
extern int DSDPDSMatTest(DSDPDSMat);
extern int DSDPDSMatGetSize(DSDPDSMat,int*);
extern int DSDPDSMatView(DSDPDSMat);
extern int DSDPDSMatDestroy(DSDPDSMat*);
extern int DSDPDSMatCheck(DSDPDSMat,SDPConeVec,SDPConeVec,DSDPVMat);
#ifdef __cplusplus
}
#endif
#endif
DSDPDSMatGetSize
int DSDPDSMatGetSize(DSDPDSMat, int *)
Set the opaque pointer and function pointers to the matrix.
Definition dsdpdsmat.c:50
DSDPDSMatSetData
int DSDPDSMatSetData(DSDPDSMat *, struct DSDPDSMat_Ops *, void *)
Set the opaque pointer and function pointers to the matrix.
Definition dsdpdsmat.c:31
DSDPDSMatVecVec
int DSDPDSMatVecVec(DSDPDSMat, SDPConeVec, double *)
Compute the product x' A x.
Definition dsdpdsmat.c:181
DSDPDSMatSetArray
int DSDPDSMatSetArray(DSDPDSMat, DSDPVMat)
Set values into the matrix.
Definition dsdpdsmat.c:130
DSDPDSMatDestroy
int DSDPDSMatDestroy(DSDPDSMat *)
Free the data structure.
Definition dsdpdsmat.c:70
DSDPDSMatView
int DSDPDSMatView(DSDPDSMat)
Print the matrix.
Definition dsdpdsmat.c:92
DSDPDSMatZeroEntries
int DSDPDSMatZeroEntries(DSDPDSMat)
Zero the entries in the matrix.
Definition dsdpdsmat.c:110
DSDPDSMatMult
int DSDPDSMatMult(DSDPDSMat, SDPConeVec, SDPConeVec)
Set values into the matrix.
Definition dsdpdsmat.c:154
DSDPDSMatInitialize
int DSDPDSMatInitialize(DSDPDSMat *)
Set pointers to null.
Definition dsdpdsmat.c:254
dsdpxmat.h
The interface between the SDPCone and the dense matrix array.
sdpconevec.h
Each block of the SDPCone has two vectors of appropriate size.
DSDPDSMat_C
Symmetric Delta S matrix for one block in the semidefinite cone.
Definition dsdpdsmat.h:23
DSDPDSMat_Ops
Symmetric Delta S matrix for one block in the semidefinite cone.
Definition dsdpdsmat_impl.h:15
DSDPVMat_C
Dense symmetric matrix for one block in the semidefinite cone.
Definition dsdpxmat.h:17
SDPConeVec_C
Vector whose length corresponds to dimension of a block in a cone.
Definition sdpconevec.h:13