PLALGO (Software written in 1980 and updated in 1985. Not supported. Reasonable in-line comments, and very limited documentation* available. See the users' manual, scanned into the two files Usersmanual1.pdf and Usersmanual2.pdf.) The files in this directory contain the program PLALGO for solving zero-finding problems, using a piecewise-linear homotopy method. The program is in the files mpsa.for, endcyc.for, endcyc2.for, basis.for, linalg.for, and subdiv.for. mpsa.for contains the main program and subroutines plalgo, setup, and accel. Comments in the main program and in plalgo and setup describe the input required; see also the sample .dat files included. Only one of endcyc.for and endcyc2.for should be used. Endcyc is used for standard zero-finding problems, while endcyc2 is appropriate when the point-to-set mapping has special structure (it's the convex union of smooth functions), as described in section 12 of the documentation. Also included are three subroutines FNEVAL: s1020.for, for the example of section 10 of the documentation with dimension 20, post2.for, for the post office problem, and econ.for for economic equilibrium problems. Econ includes its own version of subroutine endcyc, so this should be omitted. The program is written in "vanilla" fortran, and few changes should be necessary for any compiler. The code has been verified to conform to PFORT, a portable subset of American National Standard Fortran, with the exception of the following features. The main program has open statements which may be unnecessary or undesirable in your environment. It also has character variables, which should be changed to integer for FORTRAN 66 compilers; character variables are also used in subroutine PRTPCE in subdiv.for. In addition, the intrinsic function DBLE is used instead of DFLOAT to convert integer variables to double precision, in subroutines PLALGO and ACCEL in mpsa.for, in subroutines FSTBAS, NEWBAS, and MINRAT in basis.for, in subroutines NEWPCE and LSTPCE in subdiv.for and in subroutine ECON in econ.for. There are also data files: s1020.dat for s1020, post1.dat for post2, and e3.dat, ep19.dat and ep29.dat for econ. Good luck and happy computing! For more information, contact me at the address below. -- M.J. Todd School of Operations Research (607)255-9135 Rhodes Hall Cornell University Ithaca, NY 14853-3801 FAX: (607)255-9129 e-mail: mjt7@cornell.edu miketodd@orie.cornell.edu URL: http://www.people.orie.cornell.edu/~miketodd/todd.html * The documentation cited is the following technical report: ``PLALGO: A FORTRAN implementation of a piecewise-linear homotopy algorithm for solving systems of nonlinear equations,'' Technical Report No. 452, School of Operations Research and Industrial Engineering, Cornell University (April 1980, revised Nov. 1981 and July 1985). Very limited quantities are available, and there is no electronic version. There is a rather poor-quality scanned version, in this directory as Usersmanual1.pdf and Usersmanual2.pdf. If you wish to experiment with the software, I hope you will be able to use the examples provided and the comments in the programs. If you are planning more extensive testing and you need more details, please contact me by e-mail at the address above.