dsdpschurmat_impl.h
Go to the documentation of this file.
#include "dsdpbasictypes.h"
#if !defined(__DSDP_SCHURMATRICES_H)
#define __DSDP_SCHURMATRICES_H
struct DSDPSchurMat_Ops{
int id;
int (*matzero)(void*);
int (*matrownonzeros)(void*,int,double*,int*,int);
int (*mataddrow)(void*,int,double,double[],int);
int (*mataddelement)(void*,int,double);
int (*matadddiagonal)(void*,double[],int);
int (*matshiftdiagonal)(void*,double);
int (*matassemble)(void*);
int (*matscaledmultiply)(void*,double[],double[],int);
int (*matmultr)(void*,double[],double[],int);
int (*matfactor)(void*,int*);
int (*matsolve)(void*,double[],double[],int);
int (*matsetup)(void*,int);
int (*pmatwhichdiag)(void*,double[],int);
int (*pmatonprocessor)(void*,int,int*);
int (*pmatlocalvariables)(void*,double[],int);
int (*pmatreduction)(void*,double[],int);
int (*pmatdistributed)(void*,int*);
int (*matdestroy)(void*);
int (*matview)(void*);
const char *matname;
};
extern int DSDPSetSchurMatOps(DSDP,struct DSDPSchurMat_Ops*,void*);
extern int DSDPSchurMatOpsInitialize(struct DSDPSchurMat_Ops*);
extern int DSDPSparsityInSchurMat(DSDP,int,int[],int);
#endif
dsdpbasictypes.h
Solver, solution types, termination codes,.
DSDPSchurMatOpsInitialize
int DSDPSchurMatOpsInitialize(struct DSDPSchurMat_Ops *)
Initialize function pointers to 0.
Definition dsdpschurmat.c:44
DSDPSparsityInSchurMat
int DSDPSparsityInSchurMat(DSDP, int, int[], int)
Identify nonzero elements in a row of the Schur complement.
Definition dsdpschurmat.c:649
DSDPSetSchurMatOps
int DSDPSetSchurMatOps(DSDP, struct DSDPSchurMat_Ops *, void *)
Set the Schur complement matrix.
Definition dsdpcops.c:602
DSDP_C
Internal structures for the DSDP solver.
Definition dsdp.h:65