annotate NEWS @ 9552:ded32956d660

update NEWS
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 21 Aug 2009 10:13:53 +0200
parents 588c6bb6fdcb
children 8b3cee6166b8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9352
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
1 Summary of important user-visible changes for version 3.3:
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
2 ---------------------------------------------------------
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
3
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
4 ** The `lookup' function was extended to be more useful for general-purpose
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
5 binary searching. Using this improvement, the ismember function was
9407
0951174cbb03 remove experimental stuff from lookup, simplify
Jaroslav Hajek <highegg@gmail.com>
parents: 9365
diff changeset
6 rewritten for significantly better performance.
9352
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
7
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
8 ** Real, integer and logical matrices, when used in indexing, will now
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
9 cache the internal index_vector value (zero-based indices) when
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
10 successfully used as indices, eliminating the conversion penalty for
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
11 subsequent indexing by the same matrix. In particular, this means it is
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
12 no longer needed to avoid repeated indexing by logical arrays using
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
13 `find' for performance reasons.
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
14
9480
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
15 ** sub2ind and ind2sub were reimplemented as compiled functions for better
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
16 performance. These functions are now faster, can deliver more economized
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
17 results for ranges, and can reuse the index cache mechanism described in
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
18 previous paragraph.
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
19
9449
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
20 ** The built-in function equivalents to associative operators (plus, times,
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
21 mtimes, and, or) have been extended to accept multiple arguments. This
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
22 is especially useful for summing (multiplying, etc.) lists of objects
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
23 (of possibly distinct types):
9408
6729708602ca NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9407
diff changeset
24
9449
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
25 matrix_sum = plus (matrix_list{:});
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
26
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
27 ** The default behavior of assert (observed, expected) has been relaxed
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
28 to employ less strict checking that does not require the internals
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
29 of the values to match. This avoids previously valid tests from
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
30 breaking due to new internal classes introduced in future Octave
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
31 versions.
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
32
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
33 For instance, all of these assertions were true in Octave 3.0.x
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
34 but false in 3.2.x due to new optimizations and improvements:
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
35
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
36 assert (2*linspace (1, 5, 5), 2*(1:5))
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
37 assert (zeros (0, 0), [])
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
38 assert (2*ones (1, 5), (2) (ones (1,5)))
9462
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
39
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
40 ** Function handles are now aware of overloaded functions. If a function
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
41 is overloaded, the handle determines at the time of its reference which
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
42 function to call. A non-overloaded version does not need to exist.
9408
6729708602ca NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9407
diff changeset
43
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
44 ** The operation-assignment operators +=, -=, *= and /= now behave more
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
45 efficiently in certain cases. For instance, if m is a matrix and s
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
46 a scalar, then the statement
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
47
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
48 m += s;
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
49
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
50 will operate on m's data in-place if it is not shared by another variable,
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
51 usually increasing both time and memory efficiency.
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
52
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
53 Only the most common combinations are affected, namely:
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
54
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
55 matrix += matrix
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
56 matrix -= matrix
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
57 matrix += scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
58 matrix -= scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
59 matrix *= scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
60 matrix /= scalar
9552
ded32956d660 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9547
diff changeset
61 logical matrix |= logical matrix
ded32956d660 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9547
diff changeset
62 logical matrix &= logical matrix
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
63
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
64 where matrix and scalar belong to the same class. The left-hand side must be
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
65 a simple variable reference.
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
66
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
67
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
68 Summary of important user-visible changes for version 3.2:
5913
e915287e3ef9 [project @ 2006-07-28 17:06:14 by jwe]
jwe
parents: 5814
diff changeset
69 ---------------------------------------------------------
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
70
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
71 ** Compatibility with Matlab graphics has been improved.
6329
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
72
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
73 The hggroup object and associated listener callback functions have
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
74 been added allowing the inclusion of group objects. Data sources
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
75 have been added to these group objects such that
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
76
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
77 x = 0:0.1:10;
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
78 y = sin (x);
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
79 plot (x, y, "ydatasource", "y");
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
80 for i = 1 : 100
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
81 pause(0.1)
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
82 y = sin (x + 0.1 * i);
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
83 refreshdata();
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
84 endfor
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
85
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
86 works as expected. This capability has be used to introduce
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8932
diff changeset
87 stem-series, bar-series, etc., objects for better Matlab
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
88 compatibility.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
89
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
90 ** New graphics functions:
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
91
9110
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
92 addlistener ezcontour gcbo refresh
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
93 addproperty ezcontourf ginput refreshdata
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
94 allchild ezmesh gtext specular
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
95 available_backends ezmeshc intwarning surfl
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
96 backend ezplot ishghandle trisurf
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
97 cla ezplot3 isocolors waitforbuttonpress
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
98 clabel ezpolar isonormals
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
99 comet ezsurf isosurface
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
100 dellistener findall linkprop
22ae6b3411a7 Add isocolor, isonormals and isosurface functions (For Martin Helm). Add 3D filled triangular patches and the trisurf function
David Bateman <dbateman@free.fr>
parents: 9042
diff changeset
101 diffuse gcbf plotmatrix
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
102
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
103 ** New experimental OpenGL/FLTK based plotting system.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
104
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
105 An experimental plotting system based on OpenGL and the FLTK
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
106 toolkit is now part of Octave. This backend is disabled by
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
107 default. You can switch to using it with the command
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
108
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
109 backend ("fltk")
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
110
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
111 for all future figures or for a particular figure with the command
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
112
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
113 backend (h, "fltk")
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
114
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
115 where "h" is a valid figure handle. Please note that this backend
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
116 does not yet support text objects. Obviously, this is a necessary
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
117 feature before it can be considered usable. We are looking for
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
118 volunteers to help implement this missing feature.
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
119
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
120 ** Functions providing direct access to gnuplot have been removed.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
121
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
122 The functions __gnuplot_plot__, __gnuplot_set__, __gnuplot_raw__,
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
123 __gnuplot_show__, __gnuplot_replot__, __gnuplot_splot__,
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
124 __gnuplot_save_data__ and __gnuplot_send_inline_data__ have been
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
125 removed from Octave. These function were incompatible with the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
126 high level graphics handle code.
6329
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
127
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
128 ** The Control, Finance and Quaternion functions have been removed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
129
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
130 These functions are now available as separate packages from
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
131
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
132 http://octave.sourceforge.net/packages.html
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
133
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
134 and can be reinstalled using the Octave package manager (see
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
135 the pkg function).
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
136
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
137 ** Specific sparse matrix functions removed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
138
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
139 The following functions, which handled only sparse matrices have
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
140 been removed. Instead of calling these functions directly, you
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
141 should use the corresponding function without the "sp" prefix.
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
142
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
143 spatan2 spcumsum spkron spprod
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
144 spchol spdet splchol spqr
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
145 spchol2inv spdiag splu spsum
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
146 spcholinv spfind spmax spsumsqk
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
147 spcumprod spinv spmin
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
148
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
149 ** Improvements to the debugger.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
150
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
151 The interactive debugging features have been improved. Stopping
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
152 on statements with dbstop should work correctly now. Stepping
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
153 into and over functions, and stepping one statement at a time
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
154 (with dbstep) now works. Moving up and down the call stack with
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
155 dbup and dbdown now works. The dbstack function is now available
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
156 to print the current function call stack. The new dbquit function
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
157 is available to exit the debugging mode.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
158
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
159 ** Improved traceback error messages.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
160
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
161 Traceback error messages are much more concise and easier to
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
162 understand. They now display information about the function call
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
163 stack instead of the stack of all statements that were active at
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
164 the point of the error.
8014
44d206ae68c9 improve fsolve compatibility
John W. Eaton <jwe@octave.org>
parents: 7990
diff changeset
165
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
166 ** Object Oriented Programming.
8405
d79dfbff2f9d document new norm features in NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 8396
diff changeset
167
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
168 Octave now includes OOP features and the user can create their own
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
169 class objects and overloaded functions and operators. For
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
170 example, all methods of a class called "myclass" will be found in
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
171 a directory "@myclass" on the users path. The class specific
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
172 versions of functions and operators take precedence over the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
173 generic versions of these functions.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
174
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
175 New functions related to OOP include
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents: 7038
diff changeset
176
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
177 class inferiorto isobject loadobj methods superiorto
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
178
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
179 See the Octave manual for more details.
7038
4482ba9814b7 [project @ 2007-10-19 16:05:48 by jwe]
jwe
parents: 6835
diff changeset
180
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
181 ** Parsing of Command-style Functions.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
182
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
183 Octave now parses command-style functions without needing to first
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
184 declare them with "mark_as_command". The rules for recognizing a
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
185 command-style function calls are
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
186
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
187 * A command must appear as the first word in a statement,
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
188 followed by a space.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
189
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
190 * The first character after the space must not be '=' or '('
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
191
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
192 * The next token after the space must not look like a binary
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
193 operator.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
194
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
195 These rules should be mostly compatible with the way Matlab parses
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
196 command-style function calls and allow users to define commands in
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
197 .m files without having to mark them as commands.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
198
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
199 Note that previous versions of Octave allowed expressions like
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
200
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
201 x = load -text foo.dat
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
202
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
203 but an expression like this will now generate a parse error. In
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
204 order to assign the value returned by a function to a variable,
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
205 you must use the normal function call syntax:
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
206
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
207 x = load ("-text", "foo.dat");
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
208
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
209 ** Block comments.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
210
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
211 Commented code can be between matching "#{" and "#}" or "%{" and
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
212 "%}" markers, even if the commented code spans several line. This
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
213 allows blocks code to be commented, without needing to comment
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
214 each line. For example,
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
215
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
216 function [s, t] = func (x, y)
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
217 s = 2 * x;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
218 #{
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
219 s *= y;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
220 t = y + x;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
221 #}
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
222 endfunction
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
223
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
224 the lines "s *= y;" and "t = y + x" will not be executed.
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
225
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
226 ** Special treatment in the parser of expressions like "a' * b".
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
227
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
228 In these cases the transpose is no longer explicitly formed and
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
229 BLAS libraries are called with the transpose flagged,
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
230 significantly improving performance for these kinds of
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
231 operations.
8417
654bcfb937bf Add the eigs and svds functions
David Bateman <dbateman@free.fr>
parents: 8405
diff changeset
232
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
233 ** Single Precision data type.
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
234
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
235 Octave now includes a single precision data type. Single
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
236 precision variables can be created with the "single" command, or
9034
52515efc50c0 Documentation cleanup on NEWS file
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
237 from functions like ones, eye, etc. For example,
5995
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
238
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
239 single (1)
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
240 ones (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
241 zeros (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
242 eye (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
243 Inf (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
244 NaN (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
245 NA (2, 2, "single")
7279
72b5e1701da2 [project @ 2007-12-10 21:01:48 by jwe]
jwe
parents: 7189
diff changeset
246
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
247 all create single precision variables. For compatibility with
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
248 Matlab, mixed double/single precision operators and functions
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
249 return single precision types.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
250
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
251 As a consequence of this addition to Octave the internal
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
252 representation of the double precision NA value has changed, and
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
253 so users that make use of data generated by Octave with R or
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
254 visa-versa are warned that compatibility might not be assured.
7279
72b5e1701da2 [project @ 2007-12-10 21:01:48 by jwe]
jwe
parents: 7189
diff changeset
255
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
256 ** Improved array indexing.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
257
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
258 The underlying code used for indexing of arrays has been
9034
52515efc50c0 Documentation cleanup on NEWS file
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
259 completely rewritten and indexing is now significantly faster.
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
260
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
261 ** Improved memory management.
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
262
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
263 Octave will now attempt to share data in some cases where previously
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
264 a copy would be made, such as certain array slicing operations or
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8932
diff changeset
265 conversions between cells, structs and cs-lists. This usually reduces
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
266 both time and memory consumption.
9128
c71fe7045aa0 small NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9110
diff changeset
267 Also, Octave will now attempt to detect and optimize usage of a vector
c71fe7045aa0 small NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9110
diff changeset
268 as a stack, when elements are being repeatedly inserted at/removed from
c71fe7045aa0 small NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9110
diff changeset
269 the end of the vector.
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
270
8738
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
271 ** Improved performance for reduction operations.
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
272
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
273 The performance of the sum, prod, sumsq, cumsum, cumprod, any, all,
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
274 max and min functions has been significantly improved.
8738
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
275
9006
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
276 ** Sorting and searching.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
277
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
278 The performance of sort has been improved, especially when sorting
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
279 indices are requested. An efficient built-in issorted implementation
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
280 was added. sortrows now uses a more efficient algorithm, especially
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
281 in the homegeneous case. lookup is now a built-in function performing
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
282 a binary search, optimized for long runs of close elements. Lookup
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
283 also works with cell arrays of strings.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
284
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
285 ** Range arithmetics
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
286
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
287 For some operations on ranges, Octave will attempt to keep the result as a
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
288 range. These include negation, adding a scalar, subtracting a scalar, and
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
289 multiplying by a scalar. Ranges with zero increment are allowed and can be
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
290 constructed using the built-in function `ones'.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
291
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
292 ** Various performance improvements.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
293
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
294 Performance of a number of other built-in operations and functions was
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
295 improved, including:
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
296
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
297 * logical operations
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
298 * comparison operators
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
299 * element-wise power
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
300 * accumarray
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
301 * cellfun
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
302 * isnan
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
303 * isinf
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
304 * isfinite
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
305 * nchoosek
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
306 * repmat
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
307 * strcmp
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
308
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
309 ** 64-bit integer arithmetic.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
310
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
311 Arithmetic with 64-bit integers (int64 and uint64 types) is fully
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
312 supported, with saturation semantics like the other integer types.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
313 Performance of most integer arithmetic operations has been
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
314 improved by using integer arithmetic directly. Previously, Octave
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
315 performed integer math with saturation semantics by converting the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
316 operands to double precision, performing the operation, and then
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
317 converting the result back to an integer value, truncating if
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
318 necessary.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
319
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
320 ** Diagonal and permutation matrices.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
321
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
322 The interpreter can now treat diagonal and permutation matrices as
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
323 special objects that store only the non-zero elements, rather than
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
324 general full matrices. Therefore, it is now possible to construct
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
325 and use these matrices in linear algebra without suffering a
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
326 performance penalty due to storing large numbers of zero elements.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
327
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
328 ** Improvements to fsolve.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
329
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
330 The fsolve function now accepts an option structure argument (see
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
331 also the optimset function). The INFO values returned from fsolve
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
332 have changed to be compatible with Matlab's fsolve function.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
333 Additionally, fsolve is now able to solve overdetermined systems,
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
334 complex-differentiable complex systems, systems with a sparse
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
335 jacobian and can work in single precision if given single precision
9031
1052a66078cf Documentation cleanup of top-level Octave directory (READMEs, INSTALL)
Rik <rdrider0-list@yahoo.com>
parents: 8932
diff changeset
336 inputs. It can also be called recursively.
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
337
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
338 ** Improvements to the norm function.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
339
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
340 The norm function is now able to compute row or column norms of a
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
341 matrix in a single call, as well as general matrix p-norms.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
342
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
343 ** New functions for computing some eigenvalues or singular values.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
344
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
345 The eigs and svds functions have been included in Octave. These
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
346 functions require the ARPACK library (now distributed under a
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
347 GPL-compatible license).
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
348
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
349 ** New QR and Cholesky factorization updating functions.
8370
34960ba08a81 document more new features in the NEWS file
Jaroslav Hajek <highegg@gmail.com>
parents: 8292
diff changeset
350
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
351 choldelete cholshift qrdelete qrshift
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
352 cholinsert cholupdate qrinsert qrupdate
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
353
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
354 ** New quadrature functions.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
355
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
356 dblquad quadgk quadv triplequad
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
357
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
358 ** New functions for reading and writing images.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
359
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
360 The imwrite and imread functions have been included in Octave.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
361 These functions require the GraphicsMagick library. The new
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
362 function imfinfo provides information about an image file (size,
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
363 type, colors, etc.)
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
364
9215
1500d0197484 allow multiple input event hook functions to be installed simultaneously
John W. Eaton <jwe@octave.org>
parents: 9128
diff changeset
365 ** The input_event_hook function has been replaced by the pair of
1500d0197484 allow multiple input event hook functions to be installed simultaneously
John W. Eaton <jwe@octave.org>
parents: 9128
diff changeset
366 functions add_input_event_hook and remove_input_event_hook so that
1500d0197484 allow multiple input event hook functions to be installed simultaneously
John W. Eaton <jwe@octave.org>
parents: 9128
diff changeset
367 more than one hook function may be installed at a time.
1500d0197484 allow multiple input event hook functions to be installed simultaneously
John W. Eaton <jwe@octave.org>
parents: 9128
diff changeset
368
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
369 ** Other miscellaneous new functions.
8370
34960ba08a81 document more new features in the NEWS file
Jaroslav Hajek <highegg@gmail.com>
parents: 8292
diff changeset
370
8932
2d0f8692a82e Add the 'histc' function
Soren Hauberg <hauberg@gmail.com>
parents: 8888
diff changeset
371 addtodate hypot reallog
2d0f8692a82e Add the 'histc' function
Soren Hauberg <hauberg@gmail.com>
parents: 8888
diff changeset
372 bicgstab idivide realpow
9006
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
373 cellslices info realsqrt
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
374 cgs interp1q rectint
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
375 command_line_path isdebugmode regexptranslate
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
376 contrast isfloat restoredefaultpath
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
377 convn isstrprop roundb
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
378 cummin log1p rundemos
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
379 cummax lsqnonneg runlength
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
380 datetick matlabroot saveobj
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
381 display namelengthmax spaugment
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
382 expm1 nargoutchk strchr
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
383 filemarker pathdef strvcat
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
384 fstat perl subspace
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
385 full prctile symvar
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
386 fzero quantile treelayout
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
387 genvarname re_read_readline_init_file validatestring
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
388 histc
8370
34960ba08a81 document more new features in the NEWS file
Jaroslav Hajek <highegg@gmail.com>
parents: 8292
diff changeset
389
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
390 ** Changes to strcat.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
391
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
392 The strcat function is now compatible with Matlab's strcat
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
393 function, which removes trailing whitespace when concatenating
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
394 character strings. For example
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
395
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
396 strcat ('foo ', 'bar')
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
397 ==> 'foobar'
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
398
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
399 The new function cstrcat provides the previous behavior of
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
400 Octave's strcat.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
401
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
402 ** Improvements to the help functions.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
403
9034
52515efc50c0 Documentation cleanup on NEWS file
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
404 The help system has been mostly re-implemented in .m files to make
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
405 it easier to modify. Performance of the lookfor function has been
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
406 greatly improved by caching the help text from all functions that
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
407 are distributed with Octave. The pkg function has been modified
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
408 to generate cache files for external packages when they are
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
409 installed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
410
8888
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
411 ** Deprecated functions.
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
412
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
413 The following functions were deprecated in Octave 3.0 and will be
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
414 removed in Octave 3.4 (or whatever version is the second major
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
415 release after 3.0):
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
416
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
417 beta_cdf geometric_pdf pascal_pdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
418 beta_inv geometric_rnd pascal_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
419 beta_pdf hypergeometric_cdf poisson_cdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
420 beta_rnd hypergeometric_inv poisson_inv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
421 binomial_cdf hypergeometric_pdf poisson_pdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
422 binomial_inv hypergeometric_rnd poisson_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
423 binomial_pdf intersection polyinteg
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
424 binomial_rnd is_bool setstr
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
425 chisquare_cdf is_complex struct_contains
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
426 chisquare_inv is_list struct_elements
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
427 chisquare_pdf is_matrix t_cdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
428 chisquare_rnd is_scalar t_inv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
429 clearplot is_square t_pdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
430 clg is_stream t_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
431 com2str is_struct uniform_cdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
432 exponential_cdf is_symmetric uniform_inv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
433 exponential_inv is_vector uniform_pdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
434 exponential_pdf isstr uniform_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
435 exponential_rnd lognormal_cdf weibcdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
436 f_cdf lognormal_inv weibinv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
437 f_inv lognormal_pdf weibpdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
438 f_pdf lognormal_rnd weibrnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
439 f_rnd meshdom weibull_cdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
440 gamma_cdf normal_cdf weibull_inv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
441 gamma_inv normal_inv weibull_pdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
442 gamma_pdf normal_pdf weibull_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
443 gamma_rnd normal_rnd wiener_rnd
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
444 geometric_cdf pascal_cdf
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
445 geometric_inv pascal_inv
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
446
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
447 The following functions are now deprecated in Octave 3.2 and will
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
448 be removed in Octave 3.6 (or whatever version is the second major
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
449 release after 3.2):
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
450
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
451 create_set spcholinv spmax
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
452 dmult spcumprod spmin
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
453 iscommand spcumsum spprod
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
454 israwcommand spdet spqr
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
455 lchol spdiag spsum
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
456 loadimage spfind spsumsq
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
457 mark_as_command spinv str2mat
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
458 mark_as_rawcommand spkron unmark_command
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
459 spatan2 splchol unmark_rawcommand
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
460 spchol split
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
461 spchol2inv splu
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
462
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
463 See NEWS.3 for old news.