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