annotate NEWS @ 10117:b9ea485bdfdb

update NEWS
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 15 Jan 2010 12:51:07 +0100
parents a8de53a88e07
children 4de5c28733d5
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
9799
cfd0aa788ae1 remove reference blas and lapack sources
John W. Eaton <jwe@octave.org>
parents: 9745
diff changeset
4 ** BLAS and LAPACK libraries are now required to build Octave. The
cfd0aa788ae1 remove reference blas and lapack sources
John W. Eaton <jwe@octave.org>
parents: 9745
diff changeset
5 subset of the reference BLAS and LAPACK libraries has been removed
cfd0aa788ae1 remove reference blas and lapack sources
John W. Eaton <jwe@octave.org>
parents: 9745
diff changeset
6 from the Octave sources.
cfd0aa788ae1 remove reference blas and lapack sources
John W. Eaton <jwe@octave.org>
parents: 9745
diff changeset
7
9352
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
8 ** The `lookup' function was extended to be more useful for general-purpose
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
9 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
10 rewritten for significantly better performance.
9352
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
11
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
12 ** Real, integer and logical matrices, when used in indexing, will now
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
13 cache the internal index_vector value (zero-based indices) when
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
14 successfully used as indices, eliminating the conversion penalty for
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
15 subsequent indexing by the same matrix. In particular, this means it is
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
16 no longer needed to avoid repeated indexing by logical arrays using
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
17 `find' for performance reasons.
b59cc3252a51 NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9215
diff changeset
18
9888
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
19 ** Logical matrices are now treated more efficiently when used as indices.
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
20 Octave will keep the index as a logical mask unless the ratio of true
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
21 elements is small enough, using a specialized code. Previously, all logical
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
22 matrices were always first converted to index vectors. This results in
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
23 savings in both memory and computing time.
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
24
9480
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
25 ** sub2ind and ind2sub were reimplemented as compiled functions for better
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
26 performance. These functions are now faster, can deliver more economized
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
27 results for ranges, and can reuse the index cache mechanism described in
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
28 previous paragraph.
bca39c365fda update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9462
diff changeset
29
9449
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
30 ** The built-in function equivalents to associative operators (plus, times,
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
31 mtimes, and, or) have been extended to accept multiple arguments. This
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
32 is especially useful for summing (multiplying, etc.) lists of objects
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
33 (of possibly distinct types):
9408
6729708602ca NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9407
diff changeset
34
9449
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
35 matrix_sum = plus (matrix_list{:});
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
36
9880
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
37 ** An FTP object type based on libcurl has been implemented. These objects
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
38 allow ftp connections, downloads and uploads to be managed. An example of
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
39 its use might be
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
40
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
41 fp = ftp ("ftp.octave.org);
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
42 cd (fp, "gnu/octave");
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
43 mget (fp, "octave-3.2.3.tar.bz2");
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
44 close (fp);
7f77e5081e83 Add ftp objects
David Bateman <dbateman@free.fr>
parents: 9873
diff changeset
45
9449
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
46 ** The default behavior of assert (observed, expected) has been relaxed
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
47 to employ less strict checking that does not require the internals
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
48 of the values to match. This avoids previously valid tests from
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
49 breaking due to new internal classes introduced in future Octave
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
50 versions.
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
51
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
52 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
53 but false in 3.2.x due to new optimizations and improvements:
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
54
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
55 assert (2*linspace (1, 5, 5), 2*(1:5))
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
56 assert (zeros (0, 0), [])
a35d8ec8a0c4 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9408
diff changeset
57 assert (2*ones (1, 5), (2) (ones (1,5)))
9462
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
58
9873
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
59 ** The behavior of library functions ismatrix, issquare and issymmetric has
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
60 been changed for better consistency.
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
61
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
62 * ismatrix now returns true for all numeric and logical 2d or Nd matrices.
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
63 Previously, ismatrix returned false if the first or second dimension was
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
64 zero. Hence, `ismatrix ([])' was false, while `ismatrix (zeros (1,2,0))'
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
65 was true.
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
66
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
67 * issquare now returns a logical scalar, and is equivalent to the expression
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
68 `ismatrix (x) && ndims (x) == 2 && rows (x) == columns (x)'. The dimension
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
69 is no longer returned. As a result, `issquare ([])' now yields true.
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
70
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
71 * issymmetric now checks for symmetry instead of hermitianness. For the latter,
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
72 ishermitian was created. Also, logical scalar is returned rather than the
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
73 dimension, so `issymmetric ([])' is now true.
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
74
b7acf3cb5984 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9830
diff changeset
75
9462
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
76 ** Function handles are now aware of overloaded functions. If a function
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
77 is overloaded, the handle determines at the time of its reference which
44e2e568f973 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9449
diff changeset
78 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
79
10109
a8de53a88e07 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10054
diff changeset
80 ** Overloading functions for built-in classes (double, int8, cell etc) is now
a8de53a88e07 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10054
diff changeset
81 compatible with Matlab.
a8de53a88e07 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10054
diff changeset
82
10117
b9ea485bdfdb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10109
diff changeset
83 ** Performance of concatenation (using []) and the functions cat, horzcat and
b9ea485bdfdb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10109
diff changeset
84 vertcat has been improved for multidimensional arrays.
b9ea485bdfdb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10109
diff changeset
85
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
86 ** The operation-assignment operators +=, -=, *= and /= now behave more
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
87 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
88 a scalar, then the statement
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
89
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
90 m += s;
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
91
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
92 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
93 usually increasing both time and memory efficiency.
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
94
9558
8b3cee6166b8 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9552
diff changeset
95 Only selected common combinations are affected, namely:
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
96
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
97 matrix += matrix
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
98 matrix -= matrix
9558
8b3cee6166b8 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9552
diff changeset
99 matrix .*= matrix
8b3cee6166b8 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9552
diff changeset
100 matrix ./= matrix
8b3cee6166b8 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9552
diff changeset
101
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
102 matrix += scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
103 matrix -= scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
104 matrix *= scalar
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
105 matrix /= scalar
9558
8b3cee6166b8 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9552
diff changeset
106
9552
ded32956d660 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9547
diff changeset
107 logical matrix |= logical matrix
ded32956d660 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9547
diff changeset
108 logical matrix &= logical matrix
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
109
9888
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
110 where matrix and scalar belong to the same class. The left-hand side must be
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
111 a simple variable reference.
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
112
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
113 Moreover, when unary operators occur in expressions, Octave will also try to do
cee6c63cff32 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9880
diff changeset
114 the operation in-place if it's argument is a temporary expresssion.
9589
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
115
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
116 ** The effect of comparison operators (<,>,<=,>=) when applied to complex numbers
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
117 has changed to be consistent with the strict ordering defined by max, min and sort.
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
118 More specifically, complex numbers are compared by lexicographical comparison of
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
119 the pairs [abs(z), arg(z)]. Previously, only real parts were compared; this can be
8e42bb4ad34d update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9558
diff changeset
120 trivially achieved by wrapping the operands in real().
9547
588c6bb6fdcb update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9480
diff changeset
121
9826
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
122 ** The automatic simplification of complex computation results has changed. Octave will
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
123 now simplify any complex number with a zero imaginary part or any complex matrix
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
124 with all elements having zero imaginary part to a real value. Previously, this was done
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
125 only for positive zeros.
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
126 Note that the behavior of the `complex' function is unchanged and it still
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
127 produces a complex value even if the imaginary part is zero.
b2a282c37217 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9799
diff changeset
128
9595
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
129 ** As a side effect of code refactoring in liboctave, the binary logical operations
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
130 are now more easily amenable to compiler optimizations and are thus significantly
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
131 faster.
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
132
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
133 ** Octave now allows user-defined subsasgn methods to optimize out redundant copies.
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
134 For more information, see the manual.
dbd0c0f82480 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9589
diff changeset
135
9664
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
136 ** More efficient matrix division handling. Octave is now able to handle the expressions
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
137
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
138 M' \ v
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
139 M.' \ v
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
140 v / M
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
141
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
142 (M is a matrix and v is a vector) more efficiently in certain cases.
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
143 In particular, if M is triangular, all three expressions will be handled by a single call to
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
144 xTRTRS, with appropriate flags. Previously, all three expressions required a physical transpose
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
145 of M.
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
146
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
147 ** More efficient handling of certain mixed real-complex matrix operations.
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
148 For instance, if RM is a real matrix and CM a complex matrix,
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
149
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
150 RM * CM
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
151
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
152 can now be evaluated either as
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
153
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
154 complex (RM * real (CM), RM * imag (CM))
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
155
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
156 or as
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
157
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
158 complex (RM) * CM,
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
159
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
160 depending on the dimensions. The 1st form requires more temporaries and copying,
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
161 but halves the count of FLOPs, which normally brings better performance if
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
162 RM has enough rows. Previously, the 2nd form was always used.
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
163
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
164 Matrix division is similarly affected.
2c5169034035 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9609
diff changeset
165
9717
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
166 ** More efficient handling of triangular matrix factors returned from factorizations.
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
167 The functions for computing QR, LU and Cholesky factorizations will now automatically
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
168 return the triangular matrix factors with proper internal matrix_type set, so that it
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
169 won't need to be computed when the matrix is used for division.
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
170
9722
97d683d8b9ff update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9717
diff changeset
171 ** The built-in "sum" function now handles the non-native summation (i.e. double precision
97d683d8b9ff update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9717
diff changeset
172 sum of single or integer inputs) more efficiently, avoiding a temporary conversion of
97d683d8b9ff update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9717
diff changeset
173 the whole input array to doubles. Further, "sum" can now accept an "extra" option argument,
97d683d8b9ff update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9717
diff changeset
174 using a compensated summation algorithm rather than a straightforward sum, which significantly
97d683d8b9ff update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9717
diff changeset
175 improves precision if lots of cancellation occurs in the summation.
9717
4fd71e875120 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9664
diff changeset
176
9745
30d62079c493 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9722
diff changeset
177 ** The built-in "bsxfun" function now uses optimized code for certain cases where built-in
30d62079c493 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9722
diff changeset
178 operator handles are passed in. Namely, the optimizations concern the operators
9830
6748616e2f8b update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9826
diff changeset
179 plus, minus, times, ldivide, rdivide, power, and, or (for logical arrays), the relational
9745
30d62079c493 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9722
diff changeset
180 operators eq, ne, lt, le, gt, ge, and the functions min and max.
9830
6748616e2f8b update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9826
diff changeset
181 Optimizations only apply when both operands are of the same built-in class. Mixed real/complex
6748616e2f8b update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9826
diff changeset
182 and single/double operations will first convert both operands to a common type.
9745
30d62079c493 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9722
diff changeset
183
10054
8f7f325fa678 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9888
diff changeset
184 ** "strfind" and "strrep" now have compiled implementations, facilitating significantly
8f7f325fa678 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9888
diff changeset
185 more efficient searching and replacing in strings, especially with longer patterns.
8f7f325fa678 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9888
diff changeset
186 The code of "strcat" has been vectorized and is now much more efficient
10109
a8de53a88e07 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10054
diff changeset
187 when lots of strings are concatenated. "strcmpi" and "strncmpi" are now built-in functions,
a8de53a88e07 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 10054
diff changeset
188 providing better performance.
10054
8f7f325fa678 update NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 9888
diff changeset
189
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
190 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
191 ---------------------------------------------------------
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
192
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
193 ** Compatibility with Matlab graphics has been improved.
6329
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
194
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
195 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
196 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
197 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
198
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
199 x = 0:0.1:10;
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
200 y = sin (x);
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
201 plot (x, y, "ydatasource", "y");
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
202 for i = 1 : 100
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
203 pause(0.1)
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
204 y = sin (x + 0.1 * i);
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
205 refreshdata();
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
206 endfor
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
207
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
208 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
209 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
210 compatibility.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
211
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
212 ** New graphics functions:
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
213
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
214 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
215 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
216 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
217 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
218 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
219 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
220 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
221 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
222 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
223 diffuse gcbf plotmatrix
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
224
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
225 ** New experimental OpenGL/FLTK based plotting system.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
226
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
227 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
228 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
229 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
230
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
231 backend ("fltk")
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
232
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
233 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
234
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
235 backend (h, "fltk")
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
236
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
237 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
238 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
239 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
240 volunteers to help implement this missing feature.
8070
3b53b25e2550 Add data sources and line series
David Bateman <dbateman@free.fr>
parents: 8014
diff changeset
241
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
242 ** Functions providing direct access to gnuplot have been removed.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
243
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
244 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
245 __gnuplot_show__, __gnuplot_replot__, __gnuplot_splot__,
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
246 __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
247 removed from Octave. These function were incompatible with the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
248 high level graphics handle code.
6329
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
249
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
250 ** The Control, Finance and Quaternion functions have been removed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
251
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
252 These functions are now available as separate packages from
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
253
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
254 http://octave.sourceforge.net/packages.html
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
255
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
256 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
257 the pkg function).
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
258
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
259 ** Specific sparse matrix functions removed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
260
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
261 The following functions, which handled only sparse matrices have
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
262 been removed. Instead of calling these functions directly, you
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
263 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
264
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
265 spatan2 spcumsum spkron spprod
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
266 spchol spdet splchol spqr
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
267 spchol2inv spdiag splu spsum
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
268 spcholinv spfind spmax spsumsqk
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
269 spcumprod spinv spmin
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
270
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
271 ** Improvements to the debugger.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
272
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
273 The interactive debugging features have been improved. Stopping
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
274 on statements with dbstop should work correctly now. Stepping
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
275 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
276 (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
277 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
278 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
279 is available to exit the debugging mode.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
280
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
281 ** Improved traceback error messages.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
282
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
283 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
284 understand. They now display information about the function call
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
285 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
286 the point of the error.
8014
44d206ae68c9 improve fsolve compatibility
John W. Eaton <jwe@octave.org>
parents: 7990
diff changeset
287
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
288 ** Object Oriented Programming.
8405
d79dfbff2f9d document new norm features in NEWS
Jaroslav Hajek <highegg@gmail.com>
parents: 8396
diff changeset
289
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
290 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
291 class objects and overloaded functions and operators. For
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
292 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
293 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
294 versions of functions and operators take precedence over the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
295 generic versions of these functions.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
296
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
297 New functions related to OOP include
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents: 7038
diff changeset
298
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
299 class inferiorto isobject loadobj methods superiorto
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
300
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
301 See the Octave manual for more details.
7038
4482ba9814b7 [project @ 2007-10-19 16:05:48 by jwe]
jwe
parents: 6835
diff changeset
302
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
303 ** Parsing of Command-style Functions.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
304
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
305 Octave now parses command-style functions without needing to first
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
306 declare them with "mark_as_command". The rules for recognizing a
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
307 command-style function calls are
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
308
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
309 * A command must appear as the first word in a statement,
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
310 followed by a space.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
311
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
312 * The first character after the space must not be '=' or '('
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
313
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
314 * 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
315 operator.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
316
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
317 These rules should be mostly compatible with the way Matlab parses
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
318 command-style function calls and allow users to define commands in
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
319 .m files without having to mark them as commands.
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
320
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
321 Note that previous versions of Octave allowed expressions like
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
322
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
323 x = load -text foo.dat
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
324
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
325 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
326 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
327 you must use the normal function call syntax:
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
328
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
329 x = load ("-text", "foo.dat");
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
330
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
331 ** Block comments.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
332
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
333 Commented code can be between matching "#{" and "#}" or "%{" and
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
334 "%}" markers, even if the commented code spans several line. This
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
335 allows blocks code to be commented, without needing to comment
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
336 each line. For example,
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
337
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
338 function [s, t] = func (x, y)
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
339 s = 2 * x;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
340 #{
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
341 s *= y;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
342 t = y + x;
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
343 #}
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
344 endfunction
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
345
8747
86cfcf133a19 NEWS update
John W. Eaton <jwe@octave.org>
parents: 8738
diff changeset
346 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
347
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
348 ** 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
349
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
350 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
351 BLAS libraries are called with the transpose flagged,
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
352 significantly improving performance for these kinds of
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
353 operations.
8417
654bcfb937bf Add the eigs and svds functions
David Bateman <dbateman@free.fr>
parents: 8405
diff changeset
354
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
355 ** Single Precision data type.
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
356
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
357 Octave now includes a single precision data type. Single
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
358 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
359 from functions like ones, eye, etc. For example,
5995
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
360
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
361 single (1)
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
362 ones (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
363 zeros (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
364 eye (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
365 Inf (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
366 NaN (2, 2, "single")
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
367 NA (2, 2, "single")
7279
72b5e1701da2 [project @ 2007-12-10 21:01:48 by jwe]
jwe
parents: 7189
diff changeset
368
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
369 all create single precision variables. For compatibility with
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
370 Matlab, mixed double/single precision operators and functions
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
371 return single precision types.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
372
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
373 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
374 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
375 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
376 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
377
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
378 ** Improved array indexing.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
379
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
380 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
381 completely rewritten and indexing is now significantly faster.
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
382
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
383 ** Improved memory management.
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
384
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
385 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
386 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
387 conversions between cells, structs and cs-lists. This usually reduces
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
388 both time and memory consumption.
9128
c71fe7045aa0 small NEWS update
Jaroslav Hajek <highegg@gmail.com>
parents: 9110
diff changeset
389 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
390 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
391 the end of the vector.
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
392
8738
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
393 ** Improved performance for reduction operations.
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
394
8755
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
395 The performance of the sum, prod, sumsq, cumsum, cumprod, any, all,
59c0fde890a0 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8749
diff changeset
396 max and min functions has been significantly improved.
8738
c32e710407ee NEWS: another update
John W. Eaton <jwe@octave.org>
parents: 8737
diff changeset
397
9006
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
398 ** Sorting and searching.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
399
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
400 The performance of sort has been improved, especially when sorting
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
401 indices are requested. An efficient built-in issorted implementation
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
402 was added. sortrows now uses a more efficient algorithm, especially
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
403 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
404 a binary search, optimized for long runs of close elements. Lookup
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
405 also works with cell arrays of strings.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
406
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
407 ** Range arithmetics
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
408
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
409 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
410 range. These include negation, adding a scalar, subtracting a scalar, and
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
411 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
412 constructed using the built-in function `ones'.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
413
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
414 ** Various performance improvements.
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
415
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
416 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
417 improved, including:
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
418
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
419 * logical operations
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
420 * comparison operators
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
421 * element-wise power
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
422 * accumarray
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
423 * cellfun
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
424 * isnan
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
425 * isinf
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
426 * isfinite
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
427 * nchoosek
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
428 * repmat
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
429 * strcmp
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
430
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
431 ** 64-bit integer arithmetic.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
432
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
433 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
434 supported, with saturation semantics like the other integer types.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
435 Performance of most integer arithmetic operations has been
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
436 improved by using integer arithmetic directly. Previously, Octave
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
437 performed integer math with saturation semantics by converting the
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
438 operands to double precision, performing the operation, and then
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
439 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
440 necessary.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
441
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
442 ** Diagonal and permutation matrices.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
443
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
444 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
445 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
446 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
447 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
448 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
449
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
450 ** Improvements to fsolve.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
451
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
452 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
453 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
454 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
455 Additionally, fsolve is now able to solve overdetermined systems,
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
456 complex-differentiable complex systems, systems with a sparse
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
457 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
458 inputs. It can also be called recursively.
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
459
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
460 ** Improvements to the norm function.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
461
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
462 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
463 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
464
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
465 ** New functions for computing some eigenvalues or singular values.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
466
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
467 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
468 functions require the ARPACK library (now distributed under a
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
469 GPL-compatible license).
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
470
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
471 ** 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
472
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
473 choldelete cholshift qrdelete qrshift
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
474 cholinsert cholupdate qrinsert qrupdate
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
475
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
476 ** New quadrature functions.
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
477
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
478 dblquad quadgk quadv triplequad
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
479
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
480 ** New functions for reading and writing images.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
481
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
482 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
483 These functions require the GraphicsMagick library. The new
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
484 function imfinfo provides information about an image file (size,
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
485 type, colors, etc.)
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
486
9215
1500d0197484 allow multiple input event hook functions to be installed simultaneously
John W. Eaton <jwe@octave.org>
parents: 9128
diff changeset
487 ** 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
488 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
489 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
490
8737
ae51dc447bab NEWS: update for release
John W. Eaton <jwe@octave.org>
parents: 8439
diff changeset
491 ** Other miscellaneous new functions.
8370
34960ba08a81 document more new features in the NEWS file
Jaroslav Hajek <highegg@gmail.com>
parents: 8292
diff changeset
492
8932
2d0f8692a82e Add the 'histc' function
Soren Hauberg <hauberg@gmail.com>
parents: 8888
diff changeset
493 addtodate hypot reallog
2d0f8692a82e Add the 'histc' function
Soren Hauberg <hauberg@gmail.com>
parents: 8888
diff changeset
494 bicgstab idivide realpow
9006
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
495 cellslices info realsqrt
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
496 cgs interp1q rectint
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
497 command_line_path isdebugmode regexptranslate
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
498 contrast isfloat restoredefaultpath
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
499 convn isstrprop roundb
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
500 cummin log1p rundemos
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
501 cummax lsqnonneg runlength
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
502 datetick matlabroot saveobj
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
503 display namelengthmax spaugment
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
504 expm1 nargoutchk strchr
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
505 filemarker pathdef strvcat
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
506 fstat perl subspace
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
507 full prctile symvar
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
508 fzero quantile treelayout
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
509 genvarname re_read_readline_init_file validatestring
979d0492ff40 more NEWS updates
Jaroslav Hajek <highegg@gmail.com>
parents: 8932
diff changeset
510 histc
8370
34960ba08a81 document more new features in the NEWS file
Jaroslav Hajek <highegg@gmail.com>
parents: 8292
diff changeset
511
8885
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
512 ** Changes to strcat.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
513
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
514 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
515 function, which removes trailing whitespace when concatenating
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
516 character strings. For example
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
517
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
518 strcat ('foo ', 'bar')
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
519 ==> 'foobar'
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
520
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
521 The new function cstrcat provides the previous behavior of
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
522 Octave's strcat.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
523
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
524 ** Improvements to the help functions.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
525
9034
52515efc50c0 Documentation cleanup on NEWS file
Rik <rdrider0-list@yahoo.com>
parents: 9031
diff changeset
526 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
527 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
528 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
529 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
530 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
531 installed.
47fb59095191 more NEWS file edits
John W. Eaton <jwe@octave.org>
parents: 8858
diff changeset
532
8888
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
533 ** Deprecated functions.
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
534
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
535 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
536 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
537 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
538
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
539 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
540 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
541 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
542 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
543 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
544 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
545 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
546 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
547 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
548 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
549 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
550 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
551 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
552 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
553 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
554 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
555 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
556 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
557 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
558 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
559 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
560 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
561 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
562 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
563 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
564 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
565 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
566 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
567 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
568
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
569 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
570 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
571 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
572
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
573 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
574 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
575 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
576 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
577 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
578 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
579 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
580 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
581 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
582 spchol split
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
583 spchol2inv splu
0c7b0049c023 mark create_set as deprecated in 3.2, not 3.0
John W. Eaton <jwe@octave.org>
parents: 8885
diff changeset
584
7990
86dae6e5b83c Initial update of NEWS for 3.2 release
David Bateman <dbateman@free.fr>
parents: 7279
diff changeset
585 See NEWS.3 for old news.