annotate README @ 2330:12ff450cbb1f

[project @ 1996-07-19 01:39:22 by jwe] Initial revision
author jwe
date Fri, 19 Jul 1996 01:49:31 +0000
parents
children ccaffe93c32f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2330
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
1 Octave -- a high-level language for numerical computations.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
2
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
3 Copyright (C) 1996 John W. Eaton
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
4
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
5 Last updated: Mon Feb 5 13:27:40 1996
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
6
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
7 Overview
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
8 --------
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
9
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
10 Octave is a high-level language, primarily intended for numerical
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
11 computations. It provides a convenient command line interface for
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
12 solving linear and nonlinear problems numerically.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
13
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
14 Octave is free software; you can redistribute it and/or modify it
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
15 under the terms of the GNU General Public License as published by the
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
16 Free Software Foundation; either version 2, or (at your option) any
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
17 later version.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
18
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
19 Octave is distributed in the hope that it will be useful, but WITHOUT
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
21 FITNESS FOR A PARTICULAR PURPOSE. See the file COPYING for more
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
22 details.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
23
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
24 Availability
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
25 ------------
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
26
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
27 The latest released version of Octave is always available via
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
28 anonymous ftp from ftp.che.wisc.edu in the directory /pub/octave.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
29 Complete source and binaries for several popular systems are
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
30 available.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
31
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
32 Installation and Bugs
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
33 ---------------------
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
34
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
35 Octave requires approximately 50MB of disk storage to unpack and
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
36 install (significantly less if you don't compile with debugging
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
37 symbols). In order to build Octave, you will need a current version
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
38 of g++, libg++, and GNU make.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
39
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
40 YOU MUST HAVE GNU MAKE TO COMPILE OCTAVE. Octave's Makefiles use
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
41 features of GNU Make that are not present in other versions of Make.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
42 GNU Make is very portable and easy to install.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
43
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
44 As of version 1.1.x, you must have G++ 2.6.2 or later to compile
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
45 Octave. In some cases, you may also need to install a patch for g++
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
46 that is distributed with Octave in order to successfully compile
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
47 Octave.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
48
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
49 See the notes in the files INSTALL and INSTALL.OCTAVE for more
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
50 specific installation instructions, including directions for
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
51 installing Octave from a binary distribution.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
52
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
53 The file BUGS contains a recommended procedure for reporting bugs, as
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
54 well as a list of known problems and possible fixes.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
55
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
56 Binary Distributions
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
57 --------------------
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
58
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
59 Binary copies of Octave are now distributed for several popular Unix
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
60 systems. To save disk space, the complete source code for Octave is
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
61 not included in the binary distributions, but should be available in
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
62 the same place as the binaries. If not, please contact
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
63 bug-octave@bevo.che.wisc.edu.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
64
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
65 The file INSTALL.OCTAVE contains specific installation instructions,
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
66 for installing Octave from a binary distribution.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
67
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
68 Implemenation
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
69 -------------
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
70
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
71 Octave is being developed with the Free Software Foundation's make,
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
72 bison (a replacement for YACC), flex (a replacement for lex), gcc/g++,
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
73 and libg++ on a SPARCstation II and a DECstation 5000/240. It should
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
74 be possible to install it on any machine that runs GCC/G++. It may
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
75 also be possible to install it using other implementations of these
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
76 tools, but it will most certainly require much more work. Do yourself
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
77 a favor and get the GNU development tools, either via anonymous ftp
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
78 from prep.ai.mit.edu or by writing the Free Software Foundation,
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
79 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
80
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
81 The underlying numerical solvers are currently standard Fortran ones
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
82 like Lapack, Linpack, Odepack, the Blas, etc., packaged in a library
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
83 of C++ classes (see the files in the libcruft and liboctave
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
84 subdirectories). If possible, the Fortran subroutines are compiled
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
85 with the system's Fortran compiler, and called directly from the C++
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
86 functions. If that's not possible, they are translated with f2c and
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
87 compiled with a C compiler. Better performance is usually achieved if
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
88 the intermediate translation to C is avoided.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
89
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
90 The library of C++ classes may also be useful by itself.
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
91
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
92 --
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
93 John W. Eaton
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
94 jwe@bevo.che.wisc.edu
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
95 University of Wisconsin-Madison
12ff450cbb1f [project @ 1996-07-19 01:39:22 by jwe]
jwe
parents:
diff changeset
96 Department of Chemical Engineering