Octave -- a high-level language for numerical computations. Copyright (C) 1992, 1993 John W. Eaton Last updated: Sat Jul 10 14:42:50 1993 Overview -------- Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. Octave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the file COPYING for more details. Installation and Bugs --------------------- Octave requires approximately 25MB of disk storage to unpack and install (significantly less if you don't compile with debugging symbols). In order to build Octave, you will need a current version of g++, libg++, and GNU make. Octave has been compiled and tested on a SPARCstation 2 running SunOS 4.1.2, an IBM RS/6000 running AIX 3.2, a DECstation 5000/240 running Ultrix 4.2a, and an i486 system running Linux SLS 0.99-47. We have reports of it running on HP 9000/700 series systems running HP-UX 8.x, SGI systems running Irix 4.04, and NeXT systems. See the notes in the files INSTALL and INSTALL.OCTAVE for more specific installation instructions, including directions for installing Octave from a binary distribution. The file BUGS contains a recommended procedure for reporting bugs, as well as a list of known problems. Binary Distributions -------------------- Binary copies of Octave are now distributed for several popular Unix systems. To save disk space, the complete source code for Octave is no longer included with the binary distribution, but should be available in the same place as the binaries. If not, please contact bug-octave@che.utexas.edu. The file INSTALL.OCTAVE contains specific installation instructions, for installing Octave from a binary distribution. Implemenation ------------- Octave is being developed with the Free Software Foundation's make, bison (a replacement for YACC), flex (a replacement for lex), gcc/g++, and libg++ on a SPARCstation II and a DECstation 5000/240. It should be possible to install it on any machine that runs GCC/G++. It may also be possible to install it using other implementations of these tools, but it will most certainly require much more work. Do yourself a favor and get the GNU development tools, either via anonymous ftp from prep.ai.mit.edu or by writing the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. The underlying numerical solvers are currently standard Fortran ones like Lapack, Linpack, Odepack, the Blas, etc., packaged in a library of C++ classes (see the files in the libcruft and liboctave subdirectories). If possible, the Fortran subroutines are compiled with the system's Fortran compiler, and called directly from the C++ functions. If that's not possible, they are translated with f2c and compiled with a C compiler. Better performance is usually achieved if the intermediate translation to C is avoided. The library of C++ classes may also be useful by itself. -- John W. Eaton jwe@che.utexas.edu Department of Chemical Engineering The University of Texas at Austin