 examples | |
  color.c | Second Basic Example: Read graph from file, formulate the SDP relaxation of k-coloring problem, solve using DSDP, and apply randomized algorithm to generate approximate solutions |
  dsdp.c | Call DSDP from the Matlab environment |
  maxcut.c | Most Basic Example: read graph from file, formulate the SDP relaxation of maximum cut problem, solve using DSDP, and apply randomized algorithm to generate approximate solutions |
  readsdpa.c | Read SDPA data files, pass data into DSDP solver, and print solution |
  stable.c | Read graph from file, formulate the Maximum Stable Set problem, and solve using DSDP |
  theta.c | Read graph complement from file, formulate the Lovasz theta problem, and solve using DSDP |
 include | |
  dsdp5.h | The API to DSDP for those applications using DSDP as a subroutine library |
  dsdpbasictypes.h | Solver, solution types, termination codes, |
  dsdplapack.h | DSDP uses BLAS and LAPACK for many of its operations |
  dsdpmem.h | Memory allocation in DSDP |
  dsdpsys.h | Error handling, printing, and profiling |
 src | |
  bounds | |
   allbounds.c | Bound all the variables y in (D) and implement DSDPCone operations |
   dbounds.c | Individually bound variables y |
  lp | |
   dsdplp.c | Set linear inequalities in (D) and implement the DSDPCone operations |
  sdp | |
   dsdpadddata.c | Set block sizes, sparsity, format, and data matrices |
   dsdpadddatamat.c | Set sparse or dense matrices into the cone |
   dsdpblock.c | Operations on a single SDP block |
   dsdpdatamat.c | Call an implementation of the data matrix operations |
   dsdpdatamat.h | The interface between the SDPCone and the data matrices |
   dsdpdatamat_impl.h | Structure of function pointers that each SDP data matrix type (sparse, dense, constant, identity, ...) must implement |
   dsdpdsmat.c | Call an implmentation of the Delta S matrix operation |
   dsdpdsmat.h | The interface between the SDPCone and the Delta S matrix |
   dsdpdsmat_impl.h | Structure of function pointers that each SDP Delta S matrix type (sparse, dense, diagonal, ...) must implement |
   dsdpdualmat.c | Call an implementation of the S matrix operations |
   dsdpdualmat.h | The interface between the SDPCone and the matrix S |
   dsdpdualmat_impl.h | Structure of function pointers that each symmetric positive definite matrix type (dense, sparse) must implement |
   dsdplanczos.h | Lanczos procedure determines the maximum step length |
   dsdpsdp.h | Internal SDPCone data structures and routines |
   dsdpstep.c | Lanczos procedure determines the maximum step length |
   dsdpxmat.c | Call an implementation of the basic dense matrix array operations |
   dsdpxmat.h | The interface between the SDPCone and the dense matrix array |
   dsdpxmat_impl.h | Structure of function pointers that each dense matrix array type (upper full, packed symmetric, ...) must implement |
   printsdpa.c | Print data or solution in SDPA format |
   sdpcompute.c | Compute the gradient vector and Hessian matrix. Also compute X matrices |
   sdpcone.c | Implement operations on the SDPCone object |
   sdpconesetup.c | Setup the internal data structures needed by the SDPCone object |
   sdpconevec.c | Implementation of the SDPCone vector operations |
   sdpconevec.h | Each block of the SDPCone has two vectors of appropriate size |
   sdpkcone.c | Implement the DSDPCone operations using the SDPCone subroutines |
   sdpsss.c | Determine the sparsity of each block, and choose suitable dual, Delta S, and X matrix structures |
  solver | |
   dsdp.h | Internal data structure for the DSDP solver |
   dsdpcg.c | Apply Conjugate Gradient method to solve the Schur matrix |
   dsdpcg.h | Internal data structure for CG method |
   dsdpcone.c | Methods of a cone |
   dsdpcone.h | The public interface between the cones and the solver |
   dsdpcone_impl.h | Implementations of a cone (SDP,LP,...) must provide a structure of function pointers |
   dsdpconverge.c | Monitor convergence |
   dsdpconverge.h | Detect convergence of the solver from the duality gap and step sizes |
   dsdpcops.c | Applies conic operations to each cone in the solver |
   dsdpobjcone.c | Apply a constraint that the objective solution (D) is greater than some lower bound |
   dsdpprintout.c | Print iteration statistics |
   dsdprescone.c | Variable r must be nonnegative |
   dsdpschurmat.c | Solve the Schur matrix for a step direction |
   dsdpschurmat.h | Methods of a Schur Matrix |
   dsdpschurmat_impl.h | Function pointers that a Schur complement matrix (dense, sparse, parallel dense) must provide |
   dsdpschurmatadd.c | Cones to assemble the Schur matrix with these routines |
   dsdpsetdata.c | Set parameters for the solver and retrieve statistics about the current solution |
   dsdpsetoptions.c | Set DSDP options from file or command line arguments |
   dsdpsetup.c | Create DSDP solver and its data strucutures |
   dsdpvec.h | Vector operations used by the solver |
   dsdpx.c | X variables, tolerances, errors, and feasibility |
   dualalg.c | Implements the dual-scaling algorithm |
   dualimpl.c | Dual-scaling operations needed in the solver |
  sys | |
   dsdperror.c | Error codes returned for most subroutines |
   dsdplog.c | Profile the performance of DSDP |
   dsdploginfo.c | Print the progress of the DSDP solver |
   dsdptime.c | Timing routines for GNU and Microsoft compilers |
  vecmat | |
   cholmat.c | Sparse Cholesky for Schur complement matrix |
   cholmat2.c | Sparse Cholesky for dual S matrix |
   diag.c | DSDPDualMat, DSDPDSMat, and the DSDPSchurMat implentations for diagonal matrices |
   dlpack.c | DSDPDataMat, DSDPDualMat, DSDPDSMat, DSDPSchurMat, DSDPXMat, objects implemented in dense upper packed symmetric format |
   drowcol.c | DSDPDataMat object such that A(i,j) is nonzero only if i or j equals some integer k. Not completed |
   dufull.c | DSDPDataMat, DSDPDualMat, DSDPDSMat, DSDPSchurMat, DSDPXMat objects implemented in symmetric upper full symmetric format |
   identity.c | DSDPDataMat object representing a multiple of the identity matrix |
   onemat.c | DSDPDataMat object such that all elements are the same value |
   rmmat.c | DSDPDataMat object of rank one outer product |
   sdpvec.c | DSDPVec operations |
   spds.c | DSDPDualMat object with sparse data structures |
   vech.c | DSDPDataMat for sparse matrices in upper packed symmetric format |
   vechu.c | DSDPDataMat for sparse matrices in upper full symmetric format |
   zeromat.c | DSDPDataMat object with all zero entries |