The current release of SDPpack is Version 0.9 Beta
and requires Matlab Version 5.0. Users who have not yet upgraded to
Matlab 5.0 should use SDPpack Version 0.8 Beta, which requires Matlab 4.2c.1
and solves standard SDP's only, not mixed SQLP's.
Both versions of the package can be obtained from
the SDPpack home page on the World-Wide Web:
http://www.cs.nyu.edu/faculty/overton/sdppack/sdppack.html
This page contains the complete distribution of the source code, compiled binaries (mex files) for several platforms, online documentation, and information regarding forthcoming releases, submission of bug reports, several test problems, etc.
After retrieving the files, use the following instructions to install the package.
%
denotes the shell prompt)
% gunzip sdppack-v0.9.tar.gz % tar -xovf sdppack-v0.9.tar
\
toolbox). Unzip the file, making sure the directory
structure is preserved (for example, if you use WinZip, make sure
that the ``Use Folder Names'' checkbox is checked).
This will produce a directory called sdppack, which will contain the main routines of SDPpack, and the subdirectories support (support routines), special (specialized routines for certain problem classes), doc (this document), and mex (C sources to generate mex\; files for Matlab 5). Although the software does not require the use of mex\; files, it runs much faster with compiled mex\; files (binaries). There are seven mex\; files, with source file names svec.c, smat.c, evsumdiv.c, lyapsol.c, arwmul.c, arwimul.c, qcschur.c. These C source routines are in the mex subdirectory. The binaries (available separately from the SDPpack home page) have the name format filename.mex***, where *** is a string that is architecture-dependent. The table below lists the binaries currently available; see the home page for updates.
Table 1: MEX files available for SDPpack Version 0.9
Place the appropriate binary files in the main sdppack directory, so that they reside with the corresponding m-files. If you cannot find compiled MEX files for your platform, you will need to compile them yourself. A Unix make file is provided for this purpose. To compile the MEX files on a Unix platform, type
% makeafter setting the current directory to the main sdppack directory. Depending on the C compiler you use, the switches in the command line for mex (see the file Makefile) could vary; consult the manual for your C compiler. (For SGI R10000 machines running the 64 bit version of Matlab 5.0, the flags -64 -mips4 are needed to compile the mex\; files.)
After starting Matlab, type
to add all the necessary subdirectories to the Matlab path. Information about specific routines can then be obtained by typing help routine_name from within Matlab.
The following sections describe how to use the package, giving an overview of the main routines. Appendix A describes an ASCII storage format for SQLP's supported by SDPpack. Appendix B has several Matlab sessions illustrating how to use the main routines in the package. Appendix C benchmarks this release of SDPpack on a set of test problems.