DSDP
sdpconevec.h
Go to the documentation of this file.
1#if !defined(__SDPCONE_VECTORS_H)
2#define __SDPCONE_VECTORS_H
7#include <math.h>
14 int dim;
15 double *val;
16};
17
18typedef struct {
19 int *indx;
20} DSDPIndex;
21
26typedef struct SDPConeVec_C SDPConeVec;
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32extern int SDPConeVecCreate(int,SDPConeVec *);
34extern int SDPConeVecDot(SDPConeVec, SDPConeVec, double *);
35extern int SDPConeVecView( SDPConeVec);
36extern int SDPConeVecDestroy(SDPConeVec*);
37#define SDPConeVecCreateWArray(a,b,c) 0;{ (*(a)).val=(b); (*(a)).dim=(c);}
38
39extern int SDPConeVecSet(double, SDPConeVec );
40extern int SDPConeVecZero(SDPConeVec );
42extern int SDPConeVecAXPY(double, SDPConeVec, SDPConeVec);
43extern int SDPConeVecNorm2( SDPConeVec, double *);
45extern int SDPConeVecScale(double, SDPConeVec);
46
47#define SDPConeVecGetArray(a,b) 0;{ *(b)=((a).val); }
48#define SDPConeVecRestoreArray(a,b) 0;{ *(b)=0;}
49#define SDPConeVecGetSize(a,b) 0;{ *(b)=((a).dim); }
50
57extern int DSDPIndexInitialize(DSDPIndex*);
58extern int DSDPIndexDestroy(DSDPIndex*);
59extern int DSDPIndexSetBasis(DSDPIndex, int);
60extern int DSDPIndexCreate(int,DSDPIndex*);
61extern int DSDPIndexView(DSDPIndex);
62#ifdef __cplusplus
63}
64#endif
65
66
67#endif
int SDPConeVecView(SDPConeVec)
Print the elements of the vector.
Definition sdpconevec.c:49
int DSDPIndexView(DSDPIndex)
Print indices.
Definition sdpconevec.c:279
int SDPConeVecNormalize(SDPConeVec)
Scale the vector to norm of 1.
Definition sdpconevec.c:84
int SDPConeVecDot(SDPConeVec, SDPConeVec, double *)
Inner product of two vectors.
Definition sdpconevec.c:125
int SDPConeVecZero(SDPConeVec)
Zero the elements of the vector.
Definition sdpconevec.c:67
int SDPConeVecSet(double, SDPConeVec)
Set each element of vector to this number.
Definition sdpconevec.c:211
int SDPConeVecAXPY(double, SDPConeVec, SDPConeVec)
Add a multiple of X to Y.
Definition sdpconevec.c:178
int SDPConeVecScale(double, SDPConeVec)
Compute the Euclidean norm.
Definition sdpconevec.c:161
int DSDPIndexInitialize(DSDPIndex *)
Identifies sparsity in SDPConeVec.
Definition sdpconevec.c:234
int DSDPIndexCreate(int, DSDPIndex *)
Allocate array for indices.
Definition sdpconevec.c:248
int DSDPIndexDestroy(DSDPIndex *)
Deallocate memory.
Definition sdpconevec.c:264
int SDPConeVecNorm2(SDPConeVec, double *)
Compute the Euclidean norm.
Definition sdpconevec.c:143
int SDPConeVecCopy(SDPConeVec, SDPConeVec)
Copy v1 to v2.
Definition sdpconevec.c:103
int SDPConeVecDuplicate(SDPConeVec, SDPConeVec *)
Allocate another vector with the same structure as the first.
Definition sdpconevec.c:195
Vector whose length corresponds to dimension of a block in a cone.
Definition sdpconevec.h:13