11 extern int DSDPGetConstantMat(
int,
double,
char,
struct DSDPDataMat_Ops**,
void**);
19 extern int DSDPGetDMat(
int,
double,
double[],
struct DSDPDataMat_Ops**,
void**);
29 #define __FUNCT__ "SDPConeAddASparseVecMat"
50 double alpha,
int ishift,
51 const int ind[],
const double val[],
int nnz){
60 DSDPLogInfo(0,20,
"Set sparse matrix: Block: %d, Variable %d, size: %d, Nonzeros: %d .\n",blockj,vari,n,nnz);
63 info=
DSDPGetVechMat(n,ishift,alpha,ind,val,nnz,&dmatops,&dmat); DSDPCHKERR(info);
66 info=
DSDPGetVecUMat(n,ishift,alpha,ind,val,nnz,&dmatops,&dmat); DSDPCHKERR(info);
70 DSDPFunctionReturn(0);
74 #define __FUNCT__ "SDPConeAddSparseVecMat"
76 int SDPConeAddSparseVecMat(
SDPCone sdpcone,
int blockj,
int vari,
int n,
77 int ishift,
const int ind[],
const double val[],
int nnz){
83 1.0,ishift,ind,val,nnz);DSDPCHKERR(info);
84 DSDPFunctionReturn(0);
88 #define __FUNCT__ "SDPConeSetASparseVecMat"
153 double alpha,
int ishift,
154 const int ind[],
const double val[],
int nnz){
160 DSDPFunctionReturn(0);
164 #define __FUNCT__ "SDPConeSetSparseVecMat"
166 int SDPConeSetSparseVecMat(
SDPCone sdpcone,
int blockj,
int vari,
int n,
167 int ishift,
const int ind[],
const double val[],
int nnz){
172 DSDPFunctionReturn(0);
177 #define __FUNCT__ "SDPConeAddADenseVecMat"
204 double alpha,
double val[],
int nnz){
212 DSDPLogInfo(0,20,
"Set dense matrix: Block: %d, Variable %d, size: %d, Nonzeros: %d .\n",blockj,vari,n,nnz);
215 info=DSDPGetDMat(n,alpha,val,&dmatops,&dmat); DSDPCHKERR(info);
218 DSDPSETERR(1,
"Dense U Mat type does not exist.\n");
222 DSDPFunctionReturn(0);
226 #define __FUNCT__ "SDPConeAddDenseVecMat"
228 int SDPConeAddDenseVecMat(
SDPCone sdpcone,
int blockj,
int vari,
int n,
229 double val[],
int nnz){
233 DSDPFunctionReturn(0);
238 #define __FUNCT__ "SDPConeSetADenseVecMat"
266 double alpha,
double val[],
int nnz){
271 DSDPFunctionReturn(0);
275 #define __FUNCT__ "SDPConeSetDenseVecMat"
277 int SDPConeSetDenseVecMat(
SDPCone sdpcone,
int blockj,
int vari,
int n,
278 double val[],
int nnz){
282 DSDPFunctionReturn(0);
287 #define __FUNCT__ "SDPConeAddIdentity"
307 DSDPLogInfo(0,20,
"Set identity matrix: Block: %d, Variable %d, size: %d, Multiple: %4.4e .\n",blockj,vari,n,val);
318 DSDPFunctionReturn(0);
322 #define __FUNCT__ "SDPConeSetIdentity"
340 DSDPFunctionReturn(0);
344 #define __FUNCT__ "SDPConeAddConstantMat"
364 DSDPLogInfo(0,20,
"Add allsame matrix: Block: %d, Variable %d, size: %d, Elements: %4.4e .\n",blockj,vari,n,value);
368 info=DSDPGetConstantMat(n,value,UPLQ,&constantmatops,&smat);DSDPCHKERR(info);
371 info=DSDPGetConstantMat(n,value,UPLQ,&constantmatops,&smat);DSDPCHKERR(info);
375 DSDPFunctionReturn(0);
379 #define __FUNCT__ "SDPConeSetConstantMat"
397 DSDPFunctionReturn(0);
402 #define __FUNCT__ "SDPConeSetZeroMat"
419 DSDPLogInfo(0,20,
"Add zero matrix: Block: %d, Variable %d, size: %d .\n",blockj,vari,n);
420 info=DSDPGetZeroDataMatOps(&zeromatops); DSDPCHKERR(info);
424 DSDPFunctionReturn(0);
428 #define __FUNCT__ "SDPConeSetRIdentity"
453 info=
SDPConeSetRMatrix(sdpcone,blockj,n,UPLQ,identitymatops,imat); DSDPCHKERR(info);
455 DSDPFunctionReturn(0);
459 #define __FUNCT__ "SDPConeAddARankOneMat"
479 double alpha,
int ishift,
const int ind[],
const double val[],
int nnz){
488 DSDPLogInfo(0,20,
"Set sparse matrix: Block: %d, Variable %d, size: %d, Nonzeros: %d .\n",blockj,vari,n,nnz);
491 info=
DSDPGetR1PMat(n,alpha,ishift,ind,val,nnz,&dmatops,&dmat); DSDPCHKERR(info);
494 info=
DSDPGetR1UMat(n,alpha,ishift,ind,val,nnz,&dmatops,&dmat); DSDPCHKERR(info);
498 DSDPFunctionReturn(0);
501 #define __FUNCT__ "SDPConeSetARankOneMat"
520 double alpha,
int ishift,
const int ind[],
const double val[],
int nnz){
527 DSDPFunctionReturn(0);
531 #define __FUNCT__ "DSDPSetDataMatZero"
541 info=DSDPGetZeroDataMatOps(&zeromatops); DSDPCHKERR(info);
543 DSDPFunctionReturn(0);