annotate pages/NEWS-1.md @ 215:dedb85c54245

Reorganize homepage.
author Kai T. Ohlhus <k.ohlhus@gmail.com>
date Thu, 10 Sep 2020 17:47:36 +0900
parents
children c8126c010d67
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
215
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1 ---
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
2 layout: page
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
3 title: GNU Octave Version 1
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
4 menu: false
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
5 permalink: NEWS-1.html
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
6 ---
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
7
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
8 ## Summary of important user-visible changes
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
9
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
10 {% include release_news_select.md %}
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
11
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
12 <h2>Summary of changes for version 1.1.1</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
13
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
14 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
15 * New built-in variables, default_return_value and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
16 define_all_return_values.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
17
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
18 If define_all_return_values is set to "false", Octave does not do
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
19 anything special for return values that are left undefined, and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
20 you will get an error message if you try to use them. For
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
21 example, if the function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
22
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
23 function [x, y] = f ()
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
24 y = 1;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
25 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
26
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
27 is called as
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
28
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
29 octave:13> [a, b] = f ()
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
30
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
31 Octave will print an error message for the attempt to assign an
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
32 undefined value to `a'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
33
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
34 This is incompatible with Matlab, which will define the return
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
35 variable `x' to be the empty matrix. To get the Matlab-like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
36 behavior, you can set the variable define_all_return_values to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
37 "true" (the default is "false") and default_return_value to `[]'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
38 (the default). Then, any return values that remain undefined when
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
39 the function returns will be initialized to `[]'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
40
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
41 If the function is called without explicitly asking for an output,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
42 it will succeed. This behavior is compatible and unchanged from
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
43 previous versions of Octave.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
44
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
45 * New built-in variable suppress_verbose_help_message. If set to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
46 "true", Octave will not add additional help information to the end
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
47 of the output from the help command and usage messages for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
48 built-in commands. The default value is "false".
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
49
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
50 * New built-in variable PS4 is used as the prefix of echoed input
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
51 (enabled with the --echo-input (-x) option).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
52
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
53 * The function size() now accepts an optional second argument.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
54
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
55 * Output from `save - ...' now goes through the pager.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
56
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
57 * The break statement may also be used to exit a function, for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
58 compatibility with Matlab.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
59
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
60 * The directory tree for installing Octave is now closer to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
61 conforming with the current GNU standards.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
62
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
63 * More bug fixes.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
64 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
65
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
66 <h2>Summary of changes for version 1.1.0</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
67
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
68 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
69 * Octave now requires g++ 2.6.3 or later. This change is necessary
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
70 to make template instantiations cleaner, and to avoid having to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
71 have special cases in the code for earlier versions of gcc.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
72
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
73 * A new data structure type has been added. The implementation uses
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
74 an associative array with indices limited to strings, but the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
75 syntax is more like C-style structures. here are some examples of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
76 using it.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
77
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
78 Elements of structures can be of any type, including structures:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
79
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
80 octave:1> x.a = 1;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
81 octave:2> x.b = [1, 2; 3, 4];
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
82 octave:3> x.c = "string";
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
83 octave:4> x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
84 x =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
85
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
86 <structure: a b c>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
87
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
88 octave:5> x.a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
89 x.a = 1
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
90 octave:6> x.b
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
91 x.b =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
92
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
93 1 2
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
94 3 4
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
95
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
96 octave:7> x.c
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
97 x.c = string
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
98 octave:8> x.b.d = 3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
99 x.b.d = 3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
100 octave:9> x.b
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
101 x.b =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
102
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
103 <structure: d>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
104
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
105 octave:10> x.b.d
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
106 x.b.d = 3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
107
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
108 Functions can return structures:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
109
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
110 octave:1> a = rand (3) + rand (3) * I;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
111 octave:2> function y = f (x)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
112 > y.re = real (x);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
113 > y.im = imag (x);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
114 > endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
115 octave:3> f (a)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
116 ans =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
117
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
118 <structure: im re>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
119
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
120 octave:4> ans.im
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
121 ans.im =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
122
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
123 0.093411 0.229690 0.627585
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
124 0.415128 0.221706 0.850341
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
125 0.894990 0.343265 0.384018
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
126
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
127 octave:5> ans.re
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
128 ans.re =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
129
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
130 0.56234 0.14797 0.26416
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
131 0.72120 0.62691 0.20910
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
132 0.89211 0.25175 0.21081
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
133
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
134 Return lists can include structure elements:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
135
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
136 octave:1> [x.u, x.s, x.v] = svd ([1, 2; 3, 4])
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
137 x.u =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
138
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
139 -0.40455 -0.91451
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
140 -0.91451 0.40455
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
141
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
142 x.s =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
143
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
144 5.46499 0.00000
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
145 0.00000 0.36597
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
146
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
147 x.v =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
148
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
149 -0.57605 0.81742
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
150 -0.81742 -0.57605
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
151
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
152 octave:8> x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
153 x =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
154
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
155 <structure: s u v>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
156
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
157 This feature should be considered experimental, but it seems to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
158 work ok. Suggestions for ways to improve it are welcome.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
159
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
160 * Octave now supports a limited form of exception handling modelled
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
161 after the unwind-protect form of Lisp:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
162
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
163 unwind_protect
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
164 BODY
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
165 unwind_protect_cleanup
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
166 CLEANUP
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
167 end_unwind_protect
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
168
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
169 Where BODY and CLEANUP are both optional and may contain any
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
170 Octave expressions or commands. The statements in CLEANUP are
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
171 guaranteed to be executed regardless of how control exits BODY.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
172
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
173 This is useful to protect temporary changes to global variables
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
174 from possible errors. For example, the following code will always
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
175 restore the original value of the built-in variable
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
176 do_fortran_indexing even if an error occurs while performing the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
177 indexing operation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
178
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
179 save_do_fortran_indexing = do_fortran_indexing;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
180 unwind_protect
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
181 do_fortran_indexing = "true";
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
182 elt = a (idx)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
183 unwind_protect_cleanup
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
184 do_fortran_indexing = save_do_fortran_indexing;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
185 end_unwind_protect
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
186
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
187 Without unwind_protect, the value of do_fortran_indexing would not
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
188 be restored if an error occurs while performing the indexing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
189 operation because evaluation would stop at the point of the error
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
190 and the statement to restore the value would not be executed.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
191
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
192 * Recursive directory searching has been implemented using Karl
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
193 Berry's kpathsea library. Directories below path elements that
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
194 end in // are searched recursively for .m files.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
195
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
196 * Octave now waits for additional input when a pair of parentheses
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
197 is `open' instead of giving an error. This allows one to write
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
198 statements like this
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
199
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
200 if (big_long_variable_name == other_long_variable_name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
201 || not_so_short_variable_name > 4
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
202 && y > x)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
203 some (code, here);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
204
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
205 without having to clutter up the if statement with continuation
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
206 characters.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
207
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
208 * Continuation lines are now allowed in string constants and are
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
209 handled correctly inside matrix constants.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
210
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
211 * Both `...{whitespace}\n' and `\{whitespace}\n' can be used to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
212 introduce continuation lines, where {whitespace} may include
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
213 spaces, tabs and comemnts.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
214
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
215 * The script directory has been split up by topic.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
216
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
217 * Dynamic linking mostly works with dld. The following limitations
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
218 are known problems:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
219
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
220 -- Clearing dynamically linked functions doesn't work.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
221
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
222 -- Dynamic linking only works with dld, which has not been ported
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
223 to very many systems yet.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
224
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
225 -- Configuring with --enable-lite-kernel seems to mostly work to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
226 make nonessential built-in functions dynamically loaded, but
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
227 there also seem to be some problems. For example, fsolve seems
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
228 to always return info == 3. This is difficult to debug since
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
229 gdb won't seem to allow breakpoints to be set inside
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
230 dynamically loaded functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
231
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
232 -- Octave uses a lot of memory if the dynamically linked functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
233 are compiled with -g. This appears to be a limitation with
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
234 dld, and can be avoided by not using -g to compile functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
235 that will be linked dynamically.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
236
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
237 * fft2 and ifft2 are now built-in functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
238
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
239 * The `&&' and `||' logical operators are now evaluated in a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
240 short-circuit fashion and work differently than the element by
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
241 element operators `&' and `|'. See the Octave manual for more
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
242 details.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
243
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
244 * Expressions like 1./m are now parsed as 1 ./ m, not 1. / m.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
245
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
246 * The replot command now takes the same arguments as gplot or
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
247 gsplot (except ranges, which cannot be respecified with replot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
248 (yet)) so you can add additional lines to existing plots.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
249
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
250 * The hold command has been implemented.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
251
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
252 * New function `clearplot' clears the plot window. The name `clg'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
253 is aliased to `clearplot' for compatibility with Matlab.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
254
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
255 * The commands `gplot clear' and `gsplot clear' are equivalent to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
256 `clearplot'. (Previously, `gplot clear' would evaluate `clear' as
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
257 an ordinary expression and clear all the visible variables.)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
258
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
259 * The Matlab-style plotting commands have been improved. They now
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
260 accept line-style arguments, multiple x-y pairs, and other plot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
261 option flags. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
262
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
263 plot (x, y, "@12", x, y2, x, y3, "4", x, y4, "+")
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
264
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
265 results in a plot with
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
266
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
267 y plotted with points of type 2 ("+") and color 1 (red).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
268 y2 plotted with lines.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
269 y3 plotted with lines of color 4.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
270 y4 plotted with points which are "+"s.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
271
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
272 the help message for `plot' and `plot_opt' provide full
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
273 descriptions of the options.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
274
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
275 * NaN is now dropped from plot data, and Inf is converted to a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
276 very large value before calling gnuplot.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
277
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
278 * Improved load and save commands:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
279
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
280 -- The save and load commands can now read and write a new binary
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
281 file format. Conversion to and from IEEE big and little endian
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
282 formats is handled automatically. Conversion for other formats
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
283 has not yet been implemented.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
284
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
285 -- The load command can now read Matlab .mat files, though it is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
286 not yet able to read sparse matrices or handle conversion for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
287 all data formats.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
288
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
289 -- The save command can write Matlab .mat files.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
290
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
291 -- The load command automatically determines the save format
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
292 (binary, ascii, or Matlab binary).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
293
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
294 -- The default format for the save command is taken from the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
295 built-in variable `default_save_format'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
296
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
297 -- The save and load commands now both accept a list of globbing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
298 patterns so you can easily load a list of variables from a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
299 file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
300
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
301 -- The load command now accepts the option -list, for listing the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
302 variable names without actually loading the data. With
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
303 -verbose, it prints a long listing.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
304
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
305 -- The load command now accepts the option -float-binary, for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
306 saving floating point data in binary files in single precision.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
307
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
308 * who and whos now accept a list of globbing patterns so you can
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
309 limit the lists of variables and functions to those that match a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
310 given set of patterns.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
311
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
312 * New functions for manipulating polynomials
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
313
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
314 compan -- companion matrix corresponding to polynomial coefficients
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
315 conv -- convolve two vectors
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
316 deconv -- deconvolve two vectors
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
317 roots -- find the roots of a polynomial
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
318 poly -- characteristic polynomial of a matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
319 polyderiv -- differentiate a polynomial
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
320 polyinteg -- integrate a polynomial
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
321 polyreduce -- reduce a polynomial to minimum number of terms
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
322 polyval -- evaluate a polynomial at a point
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
323 polyvalm -- evaluate a polynomial in the matrix sense
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
324 residue -- partial fraction expansion corresponding to the ratio
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
325 of two polynomials
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
326
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
327 * New functions for manipulating sets
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
328
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
329 create_set -- create a set of unique values
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
330 complement -- find the complement of two sets
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
331 intersection -- find the intersection of two sets
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
332 union -- find the union of two sets
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
333
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
334 * New elementary functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
335
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
336 acot acoth acsc acsch
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
337 asec asech cot coth
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
338 csc csch log2 sec
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
339 sech
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
340
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
341 * New special functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
342
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
343 beta -- beta function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
344 betai -- incomplete beta function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
345 gammai -- incomplete gamma function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
346
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
347 * New image processing functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
348
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
349 colormap -- set and return current colormap
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
350 gray -- set a gray colormap
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
351 gray2ind -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
352 image -- display an image
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
353 imagesc -- scale and display an image
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
354 imshow -- display images
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
355 ind2gray -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
356 ind2rgb -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
357 loadimage -- load an image from a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
358 ntsc2rgb -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
359 ocean -- set a color colormap
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
360 rgb2ind -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
361 rgb2ntsc -- image format conversion
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
362 saveimage -- save an image to a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
363
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
364 * New time and date funcitons:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
365
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
366 tic -- set wall-clock timer
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
367 toc -- get elapsed wall-clock time, since timer last set
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
368 etime -- another way to get elapsed wall-clock time
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
369 cputime -- get CPU time used since Octave started
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
370 is_leap_year -- is the given year a leap year?
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
371
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
372 * Other new functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
373
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
374 bug_report -- submit a bug report to the bug-octave mailing list
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
375
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
376 toascii -- convert a string to a matrix of ASCII character codes
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
377
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
378 octave_tmp_file -- generate a unique temporary file name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
379
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
380 undo_string_escapes -- replace special characters in a string by
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
381 their backslash forms
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
382
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
383 is_struct -- determine whether something is a structure data type
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
384
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
385 feof -- check EOF condition for a specified file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
386 ferror -- check error state for a specified file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
387 fread -- read binary data from a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
388 fwrite -- write binary data to a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
389
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
390 file_in_path -- check to see if named file exists in given path
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
391
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
392 kbhit -- get a single character from the terminal
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
393
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
394 axis -- change plot ranges
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
395 hist -- plot histograms
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
396
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
397 diary -- save commands and output to a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
398
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
399 type -- show the definition of a function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
400 which -- print the type of an identifier or the location of a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
401 function file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
402
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
403 isieee -- Returns 1 if host uses IEEE floating point
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
404 realmax -- Returns largest floating point number
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
405 realmin -- Returns smallest floating point number
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
406
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
407 gcd -- greatest common divisor
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
408 lcm -- least common multiple
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
409
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
410 null -- orthonormal basis of the null space of a matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
411 orth -- orthonormal basis of the range space of a matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
412
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
413 fft2 -- two-dimensional fast fourier transform
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
414 ifft2 -- two-dimensional inverse fast fourier transform
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
415 filter -- digital filter
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
416 fftfilt -- filter using fft
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
417 fftconv -- convolve to vectors using fft
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
418 sinc -- returns sin(pi*x)/(pi*x)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
419 freqz -- compute the frequency response of a filter
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
420
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
421 * The meaning of nargin (== args.length ()) in built-in functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
422 has been changed to match the meaning of nargin in user-defined
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
423 functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
424
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
425 * Variable return lists. Octave now has a real mechanism for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
426 handling functions that return an unspecified number of values,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
427 so it is no longer necessary to place an upper bound on the number
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
428 of outputs that a function can produce.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
429
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
430 Here is an example of a function that uses the new syntax to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
431 produce n values:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
432
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
433 function [...] = foo (n)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
434 for i = 1:n
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
435 vr_val (i * x);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
436 endfor
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
437 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
438
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
439 * New keyword, all_va_args, that allows the entire list of va_args
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
440 to be passed to another function. For example, given the functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
441
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
442 function f (...)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
443 while (nargin--)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
444 disp (va_arg ())
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
445 endwhile
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
446 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
447 function g (...)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
448 f ("begin", all_va_args, "end")
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
449 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
450
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
451 the statement
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
452
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
453 g (1, 2, 3)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
454
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
455 prints
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
456
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
457 begin
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
458 1
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
459 2
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
460 3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
461 end
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
462
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
463 all_va_args may be used more than once, but can only be used
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
464 within functions that take a variable number of arguments.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
465
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
466 * If given a second argument, svd now returns an economy-sized
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
467 decomposition, eliminating the unecessary rows or columns of U or
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
468 V.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
469
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
470 * The max and min functions correctly handle complex matrices in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
471 which some columns contain real values only.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
472
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
473 * The find function now handles 2 and 3 output arguments.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
474
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
475 * The qr function now allows computation of QR with pivoting.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
476
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
477 * hilb() is much faster for large matrices.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
478
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
479 * computer() is now a built-in function.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
480
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
481 * pinv() is now a built-in function.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
482
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
483 * The output from the history command now goes through the pager.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
484
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
485 * If a function is called without assigning the result, nargout is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
486 now correctly set to 0.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
487
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
488 * It is now possible to write functions that only set some return
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
489 values. For example, calling the function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
490
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
491 function [x, y, z] = f () x = 1; z = 2; endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
492
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
493 as
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
494
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
495 [a, b, c] = f ()
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
496
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
497 produces:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
498
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
499 a = 1
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
500
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
501 b = [](0x0)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
502
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
503 c = 2
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
504
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
505 * The shell_cmd function has been renamed to system (the name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
506 shell_cmd remains for compatibility). It now returns [output, status].
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
507
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
508 * New built-in variable `OCTAVE_VERSION'. Also a new function,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
509 version, for compatibility with Matlab.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
510
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
511 * New built-in variable `automatic_replot'. If it is "true", Octave
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
512 will automatically send a replot command to gnuplot each time the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
513 plot changes. Since this is fairly inefficient, the default value
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
514 is "false".
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
515
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
516 * New built-in variable `whitespace_in_literal_matrix' allows some
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
517 control over how Octave decides to convert spaces to commas in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
518 matrix expressions like `[m (1)]'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
519
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
520 If the value of `whitespace_in_literal_matrix' is "ignore", Octave
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
521 will never insert a comma or a semicolon in a literal matrix list.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
522 For example, the expression `[1 2]' will result in an error
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
523 instead of being treated the same as `[1, 2]', and the expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
524
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
525 [ 1, 2,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
526 3, 4 ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
527
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
528 will result in the vector [1 2 3 4] instead of a matrix.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
529
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
530 If the value of `whitespace_in_literal_matrix' is "traditional",
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
531 Octave will convert spaces to a comma between identifiers and `('.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
532 For example, given the matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
533
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
534 m = [3 2]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
535
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
536 the expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
537
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
538 [m (1)]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
539
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
540 will be parsed as
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
541
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
542 [m, (1)]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
543
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
544 and will result in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
545
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
546 [3 2 1]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
547
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
548 and the expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
549
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
550 [ 1, 2,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
551 3, 4 ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
552
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
553 will result in a matrix because the newline character is converted
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
554 to a semicolon (row separator) even though there is a comma at the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
555 end of the first line (trailing commas or semicolons are ignored).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
556 This is apparently how Matlab behaves.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
557
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
558 Any other value for `whitespace_in_literal_matrix' results in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
559 behavior that is the same as traditional, except that Octave does
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
560 not convert spaces to a comma between identifiers and `('.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
561 For example, the expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
562
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
563 [m (1)]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
564
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
565 will produce 3. This is the way Octave has always behaved.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
566
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
567 * Line numbers in error messages for functions defined in files and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
568 for script files now correspond to the file line number, not the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
569 number of lines after the function keyword appeared.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
570
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
571 * Octave now extracts help from script files. The comments must
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
572 come before any other statements in the file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
573
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
574 * In function files, the first block of comments in the file will
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
575 now be interpreted as the help text if it doesn't look like the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
576 Octave copyright notice. Otherwise, Octave extracts the first set
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
577 of comments after the function keyword.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
578
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
579 * The function clock is more accurate on systems that have the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
580 gettimeofday() function.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
581
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
582 * The standard output stream is now automatically flushed before
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
583 reading from stdin with any of the *scanf() functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
584
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
585 * Expanded reference card.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
586
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
587 * The Octave distribution now includes a frequently asked questions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
588 file, with answers. Better answers and more questions (with
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
589 answers!) are welcome.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
590
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
591 * New option --verbose. If Octave is invoked with --verbose and not
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
592 --silent, a message is printed if an octaverc file is read while
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
593 Octave is starting.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
594
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
595 * An improved configure script generated by Autoconf 2.0.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
596
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
597 * Lots of bug fixes.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
598 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
599
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
600 <h2>Summary of changes for version 1.0</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
601
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
602 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
603 * C-style I/O functions now handle files referenced by name or by
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
604 number more consistently.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
605 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
606
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
607 <h2>Summary of changes for version 0.83</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
608
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
609 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
610 * Loading global symbols should work now.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
611
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
612 * Clearing the screen doesn't reprint the prompt unnecessarily.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
613
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
614 * The operations <complex scalar> OP <real matrix> for OP == +, -,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
615 *, or ./ no longer crash Octave.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
616
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
617 * More portability and configuration fixes.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
618 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
619
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
620 <h2>Summary of changes for version 0.82</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
621
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
622 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
623 * Octave now comes with a reference card.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
624
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
625 * The manual has been improved, but more work remains to be done.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
626
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
627 * The atanh function now works for complex arguments.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
628
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
629 * The asin, acos, acosh, and atanh functions now work properly when
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
630 given real-valued arguments that produce complex results.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
631
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
632 * SEEK_SET, SEEK_CUR, and SEEK_END are now constants.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
633
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
634 * The `using' qualifier now works with gplot and gsplot when the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
635 data to plot is coming directly from a file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
636
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
637 * The strcmp function now works correctly for empty strings.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
638
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
639 * Eliminated bogus parse error for M-files that don't end with `end'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
640 or `endfunction'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
641
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
642 * For empty matrices with one nonzero dimension, the +, -, .*, and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
643 ./ operators now correctly preserve the dimension.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
644
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
645 * Octave no longer crashes if you type ^D at the beginning of a line
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
646 in the middle of defining a loop or if statement.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
647
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
648 * On AIX systems, Back off on indexing DiagArray via Proxy class to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
649 avoid gcc (or possibly AIX assembler?) bug.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
650
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
651 * Various other bug and portability fixes.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
652 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
653
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
654 <h2>Summary of changes for version 0.81</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
655
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
656 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
657 * Octave no longer dumps core if you try to define a function in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
658 your .octaverc file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
659
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
660 * Fixed bug in Array class that resulted in bogus off-diagonal
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
661 elements when computing eigenvalue and singular value
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
662 decompositions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
663
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
664 * Fixed bug that prevented lsode from working on the SPARCstation,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
665 at least with some versions of Sun's f77. This bug was introduced
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
666 in 0.80, when I changed LSODE to allow the user to abort the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
667 integration from within the RHS function.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
668
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
669 * Fixed bug that prevented global attribute of variables from being
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
670 saved with save(), and another that prevented load() from working
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
671 at all.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
672 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
673
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
674 <h2>Summary of changes for version 0.80</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
675
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
676 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
677 * I have started working on a manual for the C++ classes. At this
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
678 point, it is little more than a list of function names. If you
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
679 would like to volunteer to help work on this, please contact
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
680 bug-octave@bevo.che.wisc.edu.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
681
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
682 * The patterns accepted by the save and clear commands now work like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
683 file name globbing patterns instead of regular expressions. I
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
684 apologize for any inconvenience this change may cause, but file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
685 name globbing seems like a more reasonable style of pattern
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
686 matching for this purpose.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
687
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
688 * It is now possible to specify tolerances and other optional inputs
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
689 for dassl, fsolve, lsode, npsol, qpsol, and quad. For each of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
690 these functions, there is a corresponding function X_options,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
691 which takes a keyword and value arguments. If invoked without any
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
692 arguments, the X_options functions print a list of possible
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
693 keywords and current values. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
694
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
695 npsol_options ()
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
696
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
697 prints a list of possible options with values, and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
698
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
699 npsol_options ("major print level", 10)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
700
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
701 sets the major print level to 10.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
702
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
703 The keyword match is not case sensitive, and the keywords may be
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
704 abbreviated to the shortest unique match. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
705
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
706 npsol_options ("ma p", 10)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
707
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
708 is equivalent to the statement shown above.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
709
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
710 * The new built-in variable save_precision can be used to set the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
711 number of digits preserved by the ASCII save command.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
712
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
713 * Assignment of [] now works in most cases to allow you to delete
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
714 rows or columns of matrices and vectors. For example, given a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
715 4x5 matrix A, the assignment
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
716
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
717 A (3, :) = []
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
718
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
719 deletes the third row of A, and the assignment
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
720
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
721 A (:, 1:2:5) = []
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
722
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
723 deletes the first, third, and fifth columns.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
724
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
725 * Variable argument lists. Octave now has a real mechanism for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
726 handling functions that take an unspecified number of arguments,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
727 so it is no longer necessary to place an upper bound on the number
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
728 of optional arguments that a function can accept.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
729
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
730 Here is an example of a function that uses the new syntax to print
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
731 a header followed by an unspecified number of values:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
732
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
733 function foo (heading, ...)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
734 disp (heading);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
735 va_start ();
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
736 while (--nargin)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
737 disp (va_arg ());
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
738 endwhile
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
739 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
740
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
741 Note that the argument list must contain at least one named
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
742 argument (this restriction may eventually be removed), and the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
743 ellipsis must appear as the last element of the argument list.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
744
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
745 Calling va_start() positions an internal pointer to the first
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
746 unnamed argument and allows you to cycle through the arguments
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
747 more than once. It is not necessary to call va_start() if you
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
748 do not plan to cycle through the arguments more than once.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
749
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
750 * Recursive functions should work now.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
751
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
752 * The environment variable OCTAVE_PATH is now handled in the same
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
753 way as TeX handles TEXINPUTS. If the path starts with `:', the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
754 standard path is prepended to the value obtained from the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
755 environment. If it ends with `:' the standard path is appended to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
756 the value obtained from the environment.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
757
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
758 * New functions, from Kurt Hornik (hornik@neuro.tuwien.ac.at) and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
759 the Department of Probability Theory and Statistics TU Wien,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
760 Austria:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
761
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
762 corrcoef -- corrcoef (X, Y) is the correlation between the i-th
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
763 variable in X and the j-th variable in Y
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
764 corrcoef (X) is corrcoef (X, X)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
765 cov -- cov (X, Y) is the covariance between the i-th
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
766 variable in X and the j-th variable in Y
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
767 cov (X) is cov (X, X)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
768 gls -- generalized least squares estimation
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
769 kurtosis -- kurtosis(x) = N^(-1) std(x)^(-4) SUM_i (x(i)-mean(x))^4 - 3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
770 If x is a matrix, return the row vector containing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
771 the kurtosis of each column
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
772 mahalanobis -- returns Mahalanobis' D-square distance between the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
773 multivariate samples X and Y, which must have the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
774 same number of components (columns), but may have
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
775 a different number of observations (rows)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
776 ols -- ordinary least squares estimation
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
777 pinv -- returns the pseudoinverse of X; singular values
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
778 less than tol are ignored
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
779 skewness -- skewness (x) = N^(-1) std(x)^(-3) SUM_i (x(i)-mean(x))^3
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
780 if x is a matrix, return the row vector containing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
781 the skewness of each column
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
782
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
783 * Errors in user-supplied functions called from dassl, fsolve,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
784 lsode, npsol, and quad are handled more gracefully.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
785
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
786 * Programming errors in the use of the C++ classes within Octave
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
787 should no longer cause Octave to abort. Instead, Octave's error
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
788 handler function is called and execution continues as best as is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
789 possible. This should result in eventually returning control to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
790 the top-level Octave prompt. (It would be nice to have a real
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
791 exception handling mechanism...)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
792
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
793 * A number of memory leaks have been eliminated. Thanks to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
794 Fong Kin Fui <fui@ee.nus.sg> for reporting them.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
795
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
796 * The C++ matrix classes are now derived from a generic
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
797 template-based array class.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
798
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
799 * The readline function operate-and-get-next (from bash) is now
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
800 available and bound to C-O by default.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
801
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
802 * Octave now uses the version of readline currently distributed with
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
803 bash-1.13. On some systems, interactive invocations of Octave
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
804 will now blink the cursor to show matching parens.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
805
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
806 * By default, include files are now installed in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
807 $prefix/include/octave instead of $prefix/include.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
808
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
809 * Octave now uses a config.h file instead of putting all defines on
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
810 the compiler command line.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
811 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
812
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
813 <h2>Summary of changes for version 0.79</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
814
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
815 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
816 * New control systems functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
817
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
818 dgram -- Returns the discrete controllability and observability gramian.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
819 dlqr -- Discrete linear quadratic regulator design.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
820 dlqe -- Discrete linear quadratic estimator (Kalman Filter) design.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
821 c2d -- Convert continuous system description to discrete time
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
822 description assuming zero-order hold and given sample time.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
823
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
824 * The max (min) functions can now return the index of the max (min)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
825 value as a second return value.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
826 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
827
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
828 <h2>Summary of changes for version 0.78</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
829
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
830 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
831 * Octave's handling of global variables has been completely
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
832 rewritten. To access global variables inside a function, you must
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
833 now declare them to be global within the function body. Likewise,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
834 if you do not declare a variable as global at the command line,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
835 you will not have access to it within a function, even if it is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
836 declared global there. For example, given the function
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
837
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
838 function f ()
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
839 global x = 1;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
840 y = 2;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
841 endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
842
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
843 the global variable `x' is not visible at the top level until the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
844 command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
845
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
846 octave:13> global x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
847
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
848 has been evaluated, and the variable `y' remains local to the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
849 function f() even if it is declared global at the top level.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
850
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
851 Clearing a global variable at the top level will remove its global
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
852 scope and leave it undefined. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
853
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
854 octave:1> function f () # Define a function that accesses
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
855 > global x; # the global variable `x'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
856 > x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
857 > endfunction
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
858 octave:2> global x = 1 # Give the variable `x' a value.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
859 octave:3> f () # Evaluating the function accesses the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
860 x = 1 # global `x'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
861 octave:4> clear x # Remove `x' from global scope, clear value.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
862 octave:5> x = 2 # Define new local `x' at the top level
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
863 x = 2
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
864 octave:6> f # The global `x' is no longer defined.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
865 error: `x' undefined near line 1 column 25
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
866 error: evaluating expression near line 1, column 25
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
867 error: called from `f'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
868 octave:7> x # But the local one is.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
869 x = 2
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
870
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
871 * The new function, `is_global (string)' returns 1 if the variable
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
872 named by string is globally visible. Otherwise, returns 0.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
873
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
874 * The implementation of `who' has changed. It now accepts the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
875 following options:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
876
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
877 -b -builtins -- display info for built-in variables and functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
878 -f -functions -- display info for currently compiled functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
879 -v -variables -- display info for user variables
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
880 -l -long -- display long info
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
881
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
882 The long output looks like this:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
883
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
884 octave:5> who -l
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
885
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
886 *** currently compiled functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
887
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
888 prot type rows cols name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
889 ==== ==== ==== ==== ====
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
890 wd user function - - f
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
891
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
892 *** local user variables:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
893
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
894 prot type rows cols name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
895 ==== ==== ==== ==== ====
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
896 wd real scalar 1 1 y
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
897
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
898 *** globally visible user variables:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
899
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
900 prot type rows cols name
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
901 ==== ==== ==== ==== ====
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
902 wd complex matrix 13 13 x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
903
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
904 where the first character of the `protection' field is `w' if the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
905 symbol can be redefined, and `-' if it has read-only access. The
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
906 second character may be `d' if the symbol can be deleted, or `-'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
907 if the symbol cannot be cleared.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
908
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
909 * The new built-in variable ignore_function_time_stamp can be used
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
910 to prevent Octave from calling stat() each time it looks up
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
911 functions defined in M-files. If set to "system", Octave will not
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
912 automatically recompile M-files in subdirectories of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
913 $OCTAVE_HOME/lib/VERSION if they have changed since they were last
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
914 compiled, but will recompile other M-files in the LOADPATH if they
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
915 change. If set to "all", Octave will not recompile any M-files
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
916 unless their definitions are removed with clear. For any other
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
917 value of ignore_function_time_stamp, Octave will always check to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
918 see if functions defined in M-files need to recompiled. The
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
919 default value of ignore_function_time_stamp is "system".
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
920
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
921 * The new built-in variable EDITOR can be used to specify the editor
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
922 for the edit_history command. It is set to the value of the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
923 environment variable EDITOR, or `vi' if EDITOR is not set, or is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
924 empty.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
925
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
926 * There is a new built-in variable, INFO_FILE, which is used as the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
927 location of the info file. Its initial value is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
928 $OCTAVE_HOME/info/octave.info, so `help -i' should now work
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
929 provided that OCTAVE_HOME is set correctly, even if Octave is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
930 installed in a directory different from that specified at compile
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
931 time.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
932
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
933 * There is a new command line option, --info-file FILE, that may be
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
934 used to set Octave's idea of the location of the info file. It
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
935 will override any value of OCTAVE_INFO_FILE found in the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
936 environment, but not any INFO_FILE="filename" commands found in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
937 the system or user startup files.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
938
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
939 * Octave's Info reader will now recognize gzipped files that have
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
940 names ending in `.gz'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
941
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
942 * The save command now accepts regular expressions as arguments.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
943 Note that these patterns are regular expressions, and do not work
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
944 like filename globbing. For example, given the variables `a',
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
945 `aa', and `a1', the command `save a*' saves `a' and `aa' but not
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
946 `a1'. To match all variables beginning with `a', you must use an
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
947 expression like `a.*' (match all sequences beginning with `a'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
948 followed by zero or more characters).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
949
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
950 * Line and column information is included in more error messages.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
951 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
952
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
953 <h2>Summary of changes for version 0.77</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
954
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
955 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
956 * Improved help. The command `help -i topic' now uses the GNU Info
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
957 browser to display help for the given topic directly from the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
958 Texinfo documenation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
959
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
960 * New function: chol -- Cholesky factorization.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
961 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
962
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
963 <h2>Summary of changes for version 0.76</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
964
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
965 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
966 * Better run-time error messages. Many now include line and column
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
967 information indicating where the error occurred. Octave will also
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
968 print a traceback for errors occurring inside functions. If you
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
969 find error messages that could use improvement, or errors that
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
970 Octave fails to catch, please send a bug report to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
971 bug-octave@bevo.che.wisc.edu.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
972
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
973 * If gplot (or gsplot) is given a string to plot, and the string
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
974 does not name a file, Octave will pass the string along to gnuplot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
975 directly. This allows commands like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
976
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
977 gplot "sin (x)" w l, data w p
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
978
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
979 to work (assuming that data is a variable containing a matrix of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
980 values).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
981
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
982 * Long options (--help, --version, etc.) are supported.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
983 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
984
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
985 <h2>Summary of changes for version 0.75</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
986
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
987 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
988 * The documentation is much more complete, but still could use a lot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
989 of work.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
990
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
991 * The history function now prints line numbers by default. The
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
992 command `history -q' will omit them.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
993
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
994 * The clear function now accepts regular expressions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
995
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
996 * If gplot (or gsplot) is given a string to plot, and the string
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
997 names a file, Octave attempts to plot the contents of the file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
998
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
999 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1000
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1001 history:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1002
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1003 run_history -- run commands from the history list.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1004 edit_history -- edit commands from the history list with your
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1005 favorite editor.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1006
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1007 linear algebra:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1008
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1009 balance -- Balancing for algebraic and generalized
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1010 eigenvalue problems.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1011 givens -- Givens rotation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1012 is_square -- Check to see if a matrix is square.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1013 qzhess -- QZ decomposition of the matrix pencil (a - lambda b).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1014 qzval -- Generalized eigenvalues for real matrices.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1015 syl -- Sylvester equation solver.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1016
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1017 control systems:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1018
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1019 is_symmetric -- Check to see if a matrix is symmetric.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1020 abcddim -- Check dimensions of linear dynamic system [A,B,C,D].
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1021 is_controllable -- Check to see if [A,B,C,D] is controllable.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1022 is_observable -- Check to see if [A,B,C,D] is observable.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1023 are -- Solve algebraic Ricatti equation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1024 dare -- Solve discrete-time algebraic Ricatti equation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1025 lqe -- Kalman filter design for continuous linear system.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1026 lqr -- Linear Quadratic Regulator design.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1027 lyap -- Solve Lyapunov equation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1028 dlyap -- Solve discrete Lyapunov equation.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1029 tzero -- Compute the transmission zeros of [A,B,C,D].
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1030 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1031
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1032 <h2>Summary of changes for version 0.74</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1033
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1034 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1035 * Formal parameters to functions are now always considered to be
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1036 local variables, so things like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1037
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1038 global x = 0
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1039 global y = 0
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1040 function y = f (x) x = 1; y = x; end
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1041 f (x)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1042
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1043 result in the function returning 1, with the global values of x
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1044 and y unchanged.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1045
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1046 * Multiple assignment expressions are now allowed to take indices,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1047 so things like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1048
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1049 octave:13> [a([1,2],[3,4]), b([5,6],[7,8])] = lu ([1,2;3,4])
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1050
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1051 will work correctly.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1052 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1053
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1054 <h2>Summary of changes for version 0.73</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1055
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1056 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1057 * Saving and loading global variables works correctly now.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1058
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1059 * The save command no longer saves built-in variables.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1060
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1061 * Global variables are more reliable.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1062
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1063 * Matrices may now have one or both dimensions zero, so that
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1064 operations on empty matrices are now handled more consistently.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1065
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1066 By default, dimensions of the empty matrix are now printed along
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1067 with the empty matrix symbol, `[]'. For example:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1068
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1069 octave:13> zeros (3, 0)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1070 ans =
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1071
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1072 [](3x0)
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1073
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1074 The new variable `print_empty_dimensions' controls this behavior.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1075
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1076 See also Carl de Boor, An Empty Exercise, SIGNUM, Volume 25,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1077 pages 2--6, 1990, or C. N. Nett and W. M. Haddad, A
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1078 System-Theoretic Appropriate Realization of the Empty Matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1079 Concept, IEEE Transactions on Automatic Control, Volume 38,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1080 Number 5, May 1993.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1081
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1082 * The right and left division operators `/' and `\' will now find a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1083 minimum norm solution if the system is not square, or if the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1084 coefficient matrix is singular.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1085
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1086 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1087
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1088 hess -- Hessenberg decomposition
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1089 schur -- Ordered Schur factorization
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1090 perror -- print error messages corresponding to error codes
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1091 returned from the functions fsolve, npsol, and qpsol
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1092 (with others to possibly be added later).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1093
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1094 * Octave now prints a warning if it finds anything other than
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1095 whitespace or comments after the final `end' or `endfunction'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1096 statement.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1097
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1098 * The bodies of functions, and the for, while, and if commands are
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1099 now allowed to be empty.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1100
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1101 * Support for Gill and Murray's QPSOL has been added. Like NPSOL,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1102 QPSOL is not freely redistributable either, so you must obtain
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1103 your own copy to be able to use this feature. More information
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1104 about where to find QPSOL and NPSOL are in the file README.NLP.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1105 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1106
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1107 <h2>Summary of changes for version 0.72</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1108
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1109 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1110 * For numeric output, columns are now lined up on the decimal point.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1111 (This requires libg++-2.3.1 or later to work correctly).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1112
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1113 * If octave is running interactively and the output intended for the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1114 screen is longer than one page and a pager is available, it is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1115 sent to the pager through a pipe. You may specify the program to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1116 use as the pager by setting the variable PAGER. PAGER may also
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1117 specify a command pipeline.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1118
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1119 * Spaces are not always significant inside square brackets now, so
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1120 commands like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1121
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1122 [ linspace (1, 2) ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1123
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1124 will work. However, some possible sources of confusion remain
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1125 because Octave tries (possibly too hard) to determine exactly what
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1126 operation is intended from the context surrounding an operator.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1127 For example:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1128
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1129 -- In the command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1130
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1131 [ 1 - 1 ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1132
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1133 the `-' is treated as a binary operator and the result is the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1134 scalar 0, but in the command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1135
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1136 [ 1 -1 ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1137
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1138 the `-' is treated as a unary operator and the result is the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1139 vector [ 1 -1 ].
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1140
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1141 -- In the command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1142
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1143 a = 1; [ 1 a' ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1144
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1145 the single quote character `'' is treated as a transpose operator
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1146 and the result is the vector [ 1 1 ], but in the command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1147
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1148 a = 1; [ 1 a ' ]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1149
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1150 an error message indicating an unterminated string constant is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1151 printed.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1152
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1153 * Assignments are just expressions now, so they are valid anywhere
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1154 other expressions are. This means that things like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1155
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1156 if (a = n < m) ... endif
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1157
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1158 are valid. This is parsed as: compare `n < m', assign the result
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1159 to the variable `a', and use it as the test expression in the if
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1160 statement.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1161
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1162 To help avoid errors where `=' has been used but `==' was
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1163 intended, Octave issues a warning suggesting parenthesis around
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1164 assignments used as truth values. You can suppress this warning
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1165 by adding parenthesis, or by setting the value of the new built-in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1166 variable `warn_assign_as_truth_value' to 'false' (the default
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1167 value is 'true').
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1168
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1169 This is also true for multiple assignments, so expressions like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1170
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1171 [a, b, c] = [u, s, v] = expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1172
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1173 are now possible. If the expression is a function, nargout is set
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1174 to the number of arguments for the right-most assignment. The
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1175 other assignments need not contain the same number of elements.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1176 Extra left hand side variables in an assignment become undefined.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1177
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1178 * The default line style for plots is now `lines' instead of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1179 `points'. To change it, use the `set data style STYLE' command.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1180
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1181 * New file handling and I/O functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1182
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1183 fopen -- open a file for reading or writing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1184 fclose -- close a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1185 fflush -- flush output to a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1186 fgets -- read characters from a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1187 frewind -- set file position to the beginning of a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1188 fseek -- set file position
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1189 ftell -- tell file position
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1190 freport -- print a report for all open files
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1191 fscanf -- read from a file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1192 sscanf -- read from a string
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1193 scanf -- read from the standard input
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1194
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1195 * New built-in variables for file and I/O functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1196
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1197 stdin -- file number corresponding to the standard input stream.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1198 stdout -- file number corresponding to the standard output stream.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1199 stderr -- file number corresponding to the standard error stream.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1200
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1201 The following may be used as the final (optional) argument for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1202 fseek:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1203
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1204 SEEK_SET -- set position relative to the beginning of the file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1205 SEEK_CUR -- set position relative to the current position.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1206 SEEK_END -- set position relative to the end of the file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1207
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1208 * New function: setstr -- convert vectors or scalars to strings
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1209 (doesn't work for matrices yet).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1210
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1211 * If possible, computer now prints the system type instead of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1212 always printing `Hi Dave, I'm a HAL-9000'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1213
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1214 * Octave now properly saves and restores its internal state
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1215 correctly in more places. Interrupting Octave while it is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1216 executing a script file no longer causes it to exit.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1217
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1218 * Octave now does tilde expansion on each element of the LOADPATH.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1219
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1220 * A number of memory leaks have been plugged.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1221
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1222 * Dependencies for C++ source files are now generated automatically
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1223 by g++.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1224
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1225 * There is a new command line option, -p PATH, that may be used to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1226 set Octave's loadpath from the command line. It will override any
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1227 value of OCTAVE_PATH found in the environment, but not any
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1228 LOADPATH="path" commands found in the system or user startup files.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1229
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1230 * It is now possible to override Octave's default idea of the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1231 location of the system-wide startup file (usually stored in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1232 $(prefix)/lib/octave/octaverc) using the environment variable
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1233 OCTAVE_HOME. If OCTAVE_HOME has a value, Octave will look for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1234 octaverc and its M-files in the directory $OCTAVE_HOME/lib/octave.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1235
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1236 This allows people who are using binary distributions (as is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1237 common with systems like Linux) to install the real octave binary
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1238 in any directory (using a name like octave.bin) and then install
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1239 a simple script like this
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1240
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1241 #!/bin/sh
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1242 OCTAVE_HOME=/foo/bar/baz
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1243 export OCTAVE_HOME
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1244 exec octave.bin
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1245
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1246 to be invoked as octave.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1247
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1248 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1249
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1250 <h2>Summary of changes for version 0.71</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1251
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1252 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1253 * Much improved plotting facility. With this release, Octave does
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1254 not require a specially modified version of gnuplot, so gnuplot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1255 sources are no longer distributed with Octave. For a more
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1256 detailed description of the new plotting features, see the file
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1257 PLOTTING.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1258
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1259 * New plotting commands:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1260
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1261 plot -- 2D plots
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1262 semilogx -- 2D semilog plot with logscale on the x axis
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1263 semilogy -- 2D semilog plot with logscale on the y axis
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1264 loglog -- 2D log-log plot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1265 mesh -- 3D mesh plot
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1266 meshdom -- create matrices for 3D plotting from two vectors
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1267 contour -- contour plots of 3D data
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1268 bar -- create bar graphs
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1269 stairs -- create stairstep plots
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1270 polar -- 2D plots from theta-R data
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1271 grid -- turn plot grid lines on or off
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1272 xlabel, ylabel -- place labels on the x and y axes of 2D plots
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1273 sombrero -- demonstrate 3D plotting
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1274 gplot -- 2D plot command with gnuplot-like syntax
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1275 gsplot -- 3D plot command with gnuplot-like syntax
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1276 set -- set plot options with gnuplot syntax
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1277 show -- show plot options with gnuplot syntax
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1278 closeplot -- close stream to gnuplot process
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1279 purge_tmp_files -- delete temporary files created by plot command
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1280
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1281 * Other new commands:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1282
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1283 ls, dir -- print a directory listing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1284 shell_cmd -- execute shell commands
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1285 keyboard -- get input from keyboard, useful for debugging
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1286 menu -- display a menu of options and ask for input
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1287 fft -- fast fourier transform
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1288 ifft -- inverse fast fourier transform
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1289
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1290 * Strings may be enclosed in either single or double quote
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1291 characters. Double quote characters are not special within single
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1292 quote strings, and single quotes are not special within double
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1293 quote strings.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1294
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1295 * Command name completion now works for M-file names too.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1296
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1297 * Better help and usage messages for many functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1298
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1299 * Help is now available for functions defined in M-files. The first
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1300 block of comments is taken as the text of the help message.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1301
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1302 * Numerous changes in preparation to support dynamic loading of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1303 object files with dld.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1304
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1305 * Bug fixes to make solving DAEs with dassl actually work.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1306
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1307 * The command `save file' now saves all variables in the named file.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1308
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1309 * If do_fortran_indexing is 'true', indexing a scalar with
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1310 [1,1,1,...] (n times) replicates its value n times. The
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1311 orientation of the resulting vector depends on the value of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1312 prefer_column_vectors.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1313
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1314 * Things like [[1,2][3,4]] no longer cause core dumps, and invalid
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1315 input like [1,2;3,4,[5,6]] now produces a diagnositic message.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1316
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1317 * The cd, save, and load commands now do tilde expansion.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1318
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1319 * It's now possible to clear global variables and functions by name.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1320
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1321 * Use of clear inside functions is now a parse error.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1322 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1323
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1324 <h2>Summary of changes for version 0.70</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1325
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1326 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1327 * Better parse error diagnostics. For interactive input, you get
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1328 messages like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1329
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1330 octave:1> a = 3 + * 4;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1331
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1332 parse error:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1333
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1334 a = 3 + * 4;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1335 ^
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1336
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1337 and for script files, the message includes the file name and input
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1338 line number:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1339
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1340 octave:1> foo
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1341
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1342 parse error near line 4 of file foo.m:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1343
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1344 a = 3 + * 4;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1345 ^
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1346
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1347 * New built-in variable PS2 which is used as the secondary prompt.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1348 The default value is '> '.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1349
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1350 * New file, octave-mode.el, for editing Octave code with GNU Emacs.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1351 This is a modified version of Matthew R. Wette's matlab-mode.el.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1352
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1353 * Better support for missing math functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1354
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1355 * User preferences are now cached in a global struct so we don't
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1356 have to do a symbol table lookup each time we need to know what
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1357 they are. This should mean slightly improved performance for
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1358 evaluating expressions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1359 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1360
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1361 <h2>Summary of changes for version 0.69</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1362
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1363 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1364 * Multiple assignments are now possible, so statements like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1365
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1366 a = b = c = 3;
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1367 a = b = c = [1,2;3,4];
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1368
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1369 or
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1370
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1371 c = (a = (b = 2) * 3 + 4) * 5
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1372
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1373 are legal, as are things that have even more bizarre effects, like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1374
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1375 a(4:6,4:6) = b(2:3,2:3) = [1,2;3,4];
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1376
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1377 (try it).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1378
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1379 * Improved parsing of strings (but they still don't work as matrix
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1380 elements).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1381
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1382 * An M-file may now either define a function or be a list of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1383 commands to execute.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1384
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1385 * Better detection and conditional compilation of IEEE functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1386 isinf, finite, and isnan.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1387
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1388 * Replacements for acosh, asinh, atanh, and gamma from the BSD math
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1389 library for those systems that don't have them.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1390 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1391
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1392 <h2>Summary of changes for version 0.68</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1393
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1394 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1395 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1396
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1397 eval -- evaluate a string as a sequence of Octave commands.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1398 input -- print a prompt and get user input.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1399 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1400
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1401 <h2>Summary of changes for version 0.67</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1402
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1403 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1404 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1405
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1406 find -- return the indices of nonzero elements.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1407
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1408 * Zero-one style indexing now works. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1409
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1410 a = [1,2,3,4];
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1411 b = a([1,0,0,1])
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1412
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1413 sets b to the first and fourth elememnts of a.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1414
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1415 Zero-one style indexing also works for indexing the left hand side
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1416 of an assignment. For example,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1417
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1418 a = rand (1,2;3,4);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1419 a([0,1],:) = [-1,-2]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1420
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1421 sets the second row of a to [-1 -2]
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1422
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1423 The behavior for the ambiguous case
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1424
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1425 a = [1,2,3,4];
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1426 b = a([1,1,1,1]);
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1427
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1428 is controlled by the new global variable `prefer_zero_one_indexing'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1429 If this variable is equal to 'true', b will be set to [1 2 3 4].
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1430 If it is false, b will be set to [1 1 1 1]. The default value is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1431 'false'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1432
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1433 * Using the new global variable `propagate_empty_matrices', it is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1434 possible to have unary andy binary operations on empty matrices
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1435 return an empty matrix. The default value of this variable is
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1436 'warn', so that empty matrices are propagated but you get a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1437 warning. Some functions, like eig and svd have also been changed
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1438 to handle this.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1439
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1440 * Empty matrices can be used in conditionals, but they always
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1441 evaluate to `false'. With propagate_empty_matrices = 'true', both
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1442 of the following expressions print 0:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1443
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1444 if [], 1, else 0, end
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1445 if ~[], 1, else 0, end
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1446
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1447 * Octave no longer converts input like `3.2 i' or `3 I' to complex
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1448 constants directly because that causes problems inside square
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1449 brackets, where spaces are important. This abbreviated notation
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1450 *does* work if there isn't a space between the number and the i,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1451 I, j, or J.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1452 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1453
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1454 <h2>Summary of changes for version 0.66</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1455
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1456 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1457 * Logical unary not operator (~ or !) now works for complex.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1458
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1459 * Left division works.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1460
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1461 * Right and left element by element division should work correctly
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1462 now.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1463
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1464 * Numbers like .3e+2 are no longer errors.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1465
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1466 * Indexing a matrix with a complex value doesn't cause a core dump.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1467
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1468 * The min and max functions should work correctly for two arguments.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1469
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1470 * Improved (I hope!) configuration checks.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1471
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1472 * Octave is now installed as octave-M.N, where M and N are version
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1473 numbers, and octave is a link to that file. This makes it
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1474 possible to have more than one version of the interpreter installed.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1475 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1476
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1477 <h2>Summary of changes for version 0.63</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1478
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1479 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1480 * The reshape function works again.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1481
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1482 * Octave now converts input like `3.2i' or `3 I' or `2.3e5 j' to be
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1483 complex constants directly, rather than requiring an expression
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1484 like `3.3 * i' to be evaluated.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1485 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1486
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1487 <h2>Summary of changes for version 0.61</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1488
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1489 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1490 * Octave has been successfully compiled using gcc 2.3.3 and libg++ 2.3.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1491 on a 486 system running Linux.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1492
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1493 * The win_texas_lotto function is now called texas_lotto (it's a
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1494 script file, and win_texas_lotto.m is too long for some Linux and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1495 System V systems).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1496 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1497
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1498 <h2>Summary of changes for version 0.57</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1499
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1500 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1501 * The C-like formatted print functions printf, fprintf, and sprintf
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1502 finally work.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1503 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1504
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1505 <h2>Summary of changes for version 0.56</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1506
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1507 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1508 * By default, octave prints a short disclaimer when it starts.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1509 (You can suppress it by invoking octave with -q).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1510
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1511 * You can keep octave from reading your ~/.octaverc and .octaverc
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1512 files by invoking it with -f.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1513
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1514 * When returning two values, eig now returns [v, d] instead of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1515 [lambda, v], where d is a diagonal matrix made from lambda.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1516
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1517 * The win_texas_lotto function now produces a sorted list.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1518
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1519 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1520
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1521 expm -- matrix exponential.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1522 logm -- matrix logarithm.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1523 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1524
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1525 <h2>Summary of changes for version 0.55</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1526
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1527 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1528 * The following (C-style) backslash escape sequences work in quoted
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1529 strings (useful(?) with printf()):
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1530
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1531 \a bell \r carriage return
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1532 \b backspace \t horizontal tab
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1533 \f formfeed \v vertical tab
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1534 \n newline \\ backslash
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1535
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1536 * Use of `...' at the end of a line will allow a statement to
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1537 continue over more than one line.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1538
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1539 * The names `inf' and `nan' are now aliases for `Inf' and `NaN',
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1540 respectively.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1541
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1542 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1543
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1544 casesen -- print a warning if the luser tries to turn off case
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1545 sensitivity.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1546 median -- find median value.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1547 norm -- compute the norm of a matrix.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1548 sort -- sort columns.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1549
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1550 * New variable, `silent_functions'. If silent_functions == 'true',
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1551 the results of expressions are not printed even if they are not
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1552 followed by a semicolon. The disp() and printf() functions still
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1553 result in output. The default value for this variable is 'false'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1554
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1555 * New variable `return_last_value_computed'. If it is 'true',
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1556 functions defined in script files return the last value computed
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1557 if a return value has not been explicitly declared. The default
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1558 value for this variable is 'false'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1559 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1560
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1561 <h2>Summary of changes for version 0.52</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1562
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1563 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1564 * Name completion works for function and variable names currently in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1565 the symbol tables. Coming soon: completion for names of functions
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1566 defined in script files but not yet compiled.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1567
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1568 * The initial value of do_fortran_indexing is now false, and the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1569 initial value of prefer_column_vectors is now true. Swap the
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1570 values of these variables if you want behavior that is more like
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1571 Matlab.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1572
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1573 * All script files check the number of input arguments before doing
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1574 much real work.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1575
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1576 * The identifiers `i' and `j' are now also names for sqrt(-1).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1577 These symbols may be used for other purposes, but their original
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1578 definition will reappear if they are cleared.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1579
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1580 * The symbol tables are now implemented with hash tables for faster
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1581 searching.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1582
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1583 * A small amount of help is now available for most built-in
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1584 operators, keywords and functions. Coming soon: help for script
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1585 files.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1586
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1587 * Without any arguments, the help command now lists all known
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1588 built-in operators, keywords and functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1589
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1590 * Generic parse errors are now signalled by `Eh, what's up doc?',
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1591 which is closer to what Bugs actually says.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1592
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1593 * The who command now only prints variable names by default.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1594 Use the -fcn (or -fcns, or -functions) switch to print the names of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1595 built-in or currently compiled functions.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1596 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1597
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1598 <h2>Summary of changes for version 0.51</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1599
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1600 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1601 * Major overhaul of array indexing.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1602
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1603 * The colloc function actually works now.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1604 </pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1605
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1606 <h2>Summary of changes for version 0.50</h2>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1607
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1608 <pre>
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1609 * The lsode and dassl functions now return the states only,
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1610 instead of the time and the states, so you must keep track of
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1611 the corresponding times (this is easy though, because you have
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1612 to specify a vector of desired output times anyway).
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1613
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1614 * Solution of NLPs with NPSOL now works on the SPARC.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1615
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1616 * New keywords `endif', `endfor', `endfunction', `endif', and
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1617 `endwhile', which allow for better diagnostics. The `end' keyword
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1618 is still recognized. All script files have been changed to use
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1619 these new keywords in place of `end'.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1620
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1621 * It is now possible to uninstall Octave by doing a `make uninstall'
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1622 in the top level directory.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1623
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1624 * The Makefiles are much closer to conforming with GNU coding standards.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1625
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1626 * New functions:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1627
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1628 win_texas_lotto -- produce six unique random numbers between 1 and 50.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1629 quad -- numerical integration.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1630 lu -- LU factorization
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1631 qr -- QR factorization
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1632 dassl -- Solution of DAEs using DASSL.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1633
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1634 * New files:
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1635
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1636 THANKS -- A list of people and organazations who have supported
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1637 the development of Octave.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1638
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1639 NEWS -- This file, listing recent changes.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1640
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1641 * Help is now available at the gnuplot prompt.
dedb85c54245 Reorganize homepage.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff changeset
1642 </pre>