Mercurial > web-octave
annotate NEWS-3.4.html @ 105:c4c45ae9d0d0
Improve responsive layout of help-mailing-list search.
author | Kai T. Ohlhus <k.ohlhus@gmail.com> |
---|---|
date | Wed, 02 Nov 2016 10:51:03 +0100 |
parents | e8fc61e077fc |
children |
rev | line source |
---|---|
94
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
1 <pre> |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
2 Summary of important user-visible changes for version 3.4.3: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
3 ----------------------------------------------------------- |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
4 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
5 ** Octave 3.4.3 is a bug fixing release. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
6 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
7 Summary of important user-visible changes for version 3.4.2: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
8 ----------------------------------------------------------- |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
9 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
10 ** Octave 3.2.4 fixes some minor installation problems that affected |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
11 version 3.4.1. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
12 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
13 Summary of important user-visible changes for version 3.4.1: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
14 ----------------------------------------------------------- |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
15 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
16 ** Octave 3.4.1 is primarily a bug fixing release. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
17 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
18 ** IMPORTANT note about binary incompatibility in this release: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
19 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
20 Binary compatibility for all 3.4.x releases was originally planned, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
21 but this is impossible for the 3.4.1 release due to a bug in the way |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
22 shared libraries were built in Octave 3.4.0. Because of this bug, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
23 .oct files built for Octave 3.4.0 must be recompiled before they |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
24 will work with Octave 3.4.1. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
25 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
26 Given that there would be binary incompatibilities with shared |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
27 libraries going from Octave 3.4.0 to 3.4.1, the following |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
28 incompatible changes were also made in this release: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
29 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
30 * The Perl Compatible Regular Expression (PCRE) library is now |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
31 required to build Octave. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
32 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
33 * Octave's libraries and .oct files are now installed in |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
34 subdirectories of $libdir instead of $libexecdir. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
35 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
36 Any future Octave 3.4.x release versions should remain binary |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
37 compatible with Octave 3.4.1 as proper library versioning is now |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
38 being used as recommended by the libtool manual. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
39 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
40 ** The following functions have been deprecated in Octave 3.4.1 and will |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
41 be removed from Octave 3.8 (or whatever version is the second major |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
42 release after 3.4): |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
43 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
44 cquad is_duplicate_entry perror strerror |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
45 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
46 ** The following functions are new in 3.4.1: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
47 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
48 colstyle gmres iscolumn isrow mgorth nproc rectangle |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
49 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
50 ** The get_forge_pkg function is now private. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
51 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
52 ** The rectangle_lw, rectangle_sw, triangle_lw, and triangle_sw |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
53 functions are now private. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
54 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
55 ** The logistic_regression_derivatives and logistic_regression_likelihood |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
56 functions are now private. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
57 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
58 ** ChangeLog files in the Octave sources are no longer maintained |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
59 by hand. Instead, there is a single ChangeLog file generated from |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
60 the Mercurial version control commit messages. Older ChangeLog |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
61 information can be found in the etc/OLD-ChangeLogs directory in the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
62 source distribution. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
63 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
64 Summary of important user-visible changes for version 3.4: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
65 --------------------------------------------------------- |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
66 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
67 ** BLAS and LAPACK libraries are now required to build Octave. The |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
68 subset of the reference BLAS and LAPACK libraries has been removed |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
69 from the Octave sources. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
70 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
71 ** The `lookup' function was extended to be more useful for |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
72 general-purpose binary searching. Using this improvement, the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
73 ismember function was rewritten for significantly better |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
74 performance. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
75 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
76 ** Real, integer and logical matrices, when used in indexing, will now |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
77 cache the internal index_vector value (zero-based indices) when |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
78 successfully used as indices, eliminating the conversion penalty for |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
79 subsequent indexing by the same matrix. In particular, this means it |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
80 is no longer needed to avoid repeated indexing by logical arrays |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
81 using find for performance reasons. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
82 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
83 ** Logical matrices are now treated more efficiently when used as |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
84 indices. Octave will keep the index as a logical mask unless the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
85 ratio of true elements is small enough, using a specialized |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
86 code. Previously, all logical matrices were always first converted |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
87 to index vectors. This results in savings in both memory and |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
88 computing time. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
89 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
90 ** The `sub2ind' and `ind2sub' functions were reimplemented as compiled |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
91 functions for better performance. These functions are now faster, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
92 can deliver more economized results for ranges, and can reuse the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
93 index cache mechanism described in previous paragraph. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
94 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
95 ** The built-in function equivalents to associative operators (`plus', |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
96 `times', `mtimes', `and', and `or') have been extended to accept |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
97 multiple arguments. This is especially useful for summing |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
98 (multiplying, etc.) lists of objects (of possibly distinct types): |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
99 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
100 matrix_sum = plus (matrix_list{:}); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
101 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
102 ** An FTP object type based on libcurl has been implemented. These |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
103 objects allow ftp connections, downloads and uploads to be |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
104 managed. For example, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
105 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
106 fp = ftp ("ftp.octave.org); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
107 cd (fp, "gnu/octave"); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
108 mget (fp, "octave-3.2.3.tar.bz2"); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
109 close (fp); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
110 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
111 ** The default behavior of `assert (observed, expected)' has been |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
112 relaxed to employ less strict checking that does not require the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
113 internals of the values to match. This avoids previously valid |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
114 tests from breaking due to new internal classes introduced in future |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
115 Octave versions. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
116 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
117 For instance, all of these assertions were true in Octave 3.0.x |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
118 but false in 3.2.x due to new optimizations and improvements: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
119 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
120 assert (2*linspace (1, 5, 5), 2*(1:5)) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
121 assert (zeros (0, 0), []) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
122 assert (2*ones (1, 5), (2) (ones (1,5))) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
123 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
124 ** The behavior of library functions `ismatrix', `issquare', and |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
125 `issymmetric' has been changed for better consistency. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
126 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
127 * The `ismatrix' function now returns true for all numeric, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
128 logical and character 2-D or N-D matrices. Previously, `ismatrix' |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
129 returned false if the first or second dimension was zero. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
130 Hence, `ismatrix ([])' was false, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
131 while `ismatrix (zeros (1,2,0))' was true. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
132 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
133 * The `issquare' function now returns a logical scalar, and is |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
134 equivalent to the expression |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
135 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
136 ismatrix (x) && ndims (x) == 2 && rows (x) == columns (x) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
137 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
138 The dimension is no longer returned. As a result, `issquare ([])' |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
139 now yields true. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
140 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
141 * The `issymmetric' function now checks for symmetry instead of |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
142 Hermitianness. For the latter, ishermitian was created. Also, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
143 logical scalar is returned rather than the dimension, so |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
144 `issymmetric ([])' is now true. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
145 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
146 ** Function handles are now aware of overloaded functions. If a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
147 function is overloaded, the handle determines at the time of its |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
148 reference which function to call. A non-overloaded version does not |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
149 need to exist. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
150 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
151 ** Overloading functions for built-in classes (double, int8, cell, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
152 etc.) is now compatible with Matlab. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
153 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
154 ** Function handles can now be compared with the == and != operators, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
155 as well as the `isequal' function. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
156 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
157 ** Performance of concatenation (using []) and the functions `cat', |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
158 `horzcat', and `vertcat' has been improved for multidimensional |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
159 arrays. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
160 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
161 ** The operation-assignment operators +=, -=, *= and /= now behave more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
162 efficiently in certain cases. For instance, if M is a matrix and S a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
163 scalar, then the statement |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
164 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
165 M += S; |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
166 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
167 will operate on M's data in-place if it is not shared by another |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
168 variable, usually increasing both time and memory efficiency. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
169 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
170 Only selected common combinations are affected, namely: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
171 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
172 matrix += matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
173 matrix -= matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
174 matrix .*= matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
175 matrix ./= matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
176 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
177 matrix += scalar |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
178 matrix -= scalar |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
179 matrix *= scalar |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
180 matrix /= scalar |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
181 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
182 logical matrix |= logical matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
183 logical matrix &= logical matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
184 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
185 where matrix and scalar belong to the same class. The left-hand |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
186 side must be a simple variable reference. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
187 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
188 Moreover, when unary operators occur in expressions, Octave will |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
189 also try to do the operation in-place if it's argument is a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
190 temporary expresssion. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
191 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
192 ** The effect of comparison operators (<, >, <=, and >=) applied to |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
193 complex numbers has changed to be consistent with the strict |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
194 ordering defined by the `max', `min', and `sort' functions. More |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
195 specifically, complex numbers are compared by lexicographical |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
196 comparison of the pairs `[abs(z), arg(z)]'. Previously, only real |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
197 parts were compared; this can be trivially achieved by wrapping the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
198 operands in real(). |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
199 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
200 ** The automatic simplification of complex computation results has |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
201 changed. Octave will now simplify any complex number with a zero |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
202 imaginary part or any complex matrix with all elements having zero |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
203 imaginary part to a real value. Previously, this was done only for |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
204 positive zeros. Note that the behavior of the complex function is |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
205 unchanged and it still produces a complex value even if the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
206 imaginary part is zero. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
207 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
208 ** As a side effect of code refactoring in liboctave, the binary |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
209 logical operations are now more easily amenable to compiler |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
210 optimizations and are thus significantly faster. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
211 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
212 ** Octave now allows user-defined `subsasgn' methods to optimize out |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
213 redundant copies. For more information, see the manual. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
214 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
215 ** More efficient matrix division handling. Octave is now able to |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
216 handle the expressions |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
217 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
218 M' \ V |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
219 M.' \ V |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
220 V / M |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
221 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
222 (M is a matrix and V is a vector) more efficiently in certain cases. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
223 In particular, if M is triangular, all three expressions will be |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
224 handled by a single call to xTRTRS (from LAPACK), with appropriate |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
225 flags. Previously, all three expressions required a physical |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
226 transpose of M. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
227 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
228 ** More efficient handling of certain mixed real-complex matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
229 operations. For instance, if RM is a real matrix and CM a complex |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
230 matrix, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
231 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
232 RM * CM |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
233 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
234 can now be evaluated either as |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
235 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
236 complex (RM * real (CM), RM * imag (CM)) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
237 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
238 or as |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
239 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
240 complex (RM) * CM, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
241 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
242 depending on the dimensions. The first form requires more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
243 temporaries and copying, but halves the FLOP count, which normally |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
244 brings better performance if RM has enough rows. Previously, the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
245 second form was always used. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
246 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
247 Matrix division is similarly affected. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
248 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
249 ** More efficient handling of triangular matrix factors returned from |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
250 factorizations. The functions for computing QR, LU and Cholesky |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
251 factorizations will now automatically return the triangular matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
252 factors with proper internal matrix_type set, so that it won't need |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
253 to be computed when the matrix is used for division. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
254 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
255 ** The built-in `sum' function now handles the non-native summation |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
256 (i.e., double precision sum of single or integer inputs) more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
257 efficiently, avoiding a temporary conversion of the whole input |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
258 array to doubles. Further, `sum' can now accept an extra option |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
259 argument, using a compensated summation algorithm rather than a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
260 straightforward sum, which significantly improves precision if lots |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
261 of cancellation occurs in the summation. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
262 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
263 ** The built-in `bsxfun' function now uses optimized code for certain |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
264 cases where built-in operator handles are passed in. Namely, the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
265 optimizations concern the operators `plus', `minus', `times', |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
266 `ldivide', `rdivide', `power', `and', `or' (for logical arrays), |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
267 the relational operators `eq', `ne', `lt', `le', `gt', `ge', and the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
268 functions `min' and `max'. Optimizations only apply when both |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
269 operands are of the same built-in class. Mixed real/complex and |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
270 single/double operations will first convert both operands to a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
271 common type. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
272 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
273 ** The `strfind' and `strrep' functions now have compiled |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
274 implementations, facilitating significantly more efficient searching |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
275 and replacing in strings, especially with longer patterns. The code |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
276 of `strcat' has been vectorized and is now much more efficient when |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
277 many strings are concatenated. The `strcmpi' and `strncmpi' |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
278 functions are now built-in functions, providing better performance. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
279 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
280 ** Matlab-style ignoring input and output function arguments using |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
281 tilde (~) is now supported. Ignored output arguments may be |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
282 detected from a function using the built-in function `isargout'. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
283 For more details, consult the manual. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
284 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
285 ** The list datatype, deprecated since the introduction of cells, has |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
286 been removed. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
287 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
288 ** The accumarray function has been optimized and is now significantly |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
289 faster in certain important cases. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
290 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
291 ** The behavior of isreal and isnumeric functions was changed to be more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
292 Matlab-compatible. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
293 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
294 ** The integer math & conversion warnings (Octave:int-convert-nan, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
295 Octave:int-convert-non-int-val, Octave:int-convert-overflow, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
296 Octave:int-math-overflow) have been removed. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
297 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
298 ** rem and mod are now built-in functions. They also handle integer |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
299 types efficiently using integer arithmetic. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
300 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
301 ** Sparse indexing and indexed assignment has been mostly rewritten. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
302 Since Octave uses compressed column storage for sparse matrices, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
303 major attention is devoted to operations manipulating whole columns. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
304 Such operations are now significantly faster, as well as some other |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
305 important cases. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
306 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
307 Further, it is now possible to pre-allocate a sparse matrix and |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
308 subsequently fill it by assignments, provided they meet certain |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
309 conditions. For more information, consult the `spalloc' function, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
310 which is no longer a mere dummy. Consequently, nzmax and nnz are no |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
311 longer always equal in Octave. Octave may also produce a matrix |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
312 with nnz < nzmax as a result of other operations, so you should |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
313 consistently use nnz unless you really want to use nzmax (i.e. the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
314 space allocated for nonzero elements). |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
315 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
316 Sparse concatenation is also affected, and concatenating sparse |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
317 matrices, especially larger collections, is now significantly more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
318 efficient. This applies to both the [] operator and the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
319 cat/vertcat/horzcat functions. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
320 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
321 ** It is now possible to optionally employ the xGESDD LAPACK drivers |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
322 for computing the singular value decomposition using svd(), instead |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
323 of the default xGESVD, using the configuration pseudo-variable |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
324 svd_driver. The xGESDD driver can be up to 6x times faster when |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
325 singular vectors are requested, but is reported to be somewhat less |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
326 robust on highly ill-conditioned matrices. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
327 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
328 ** Configuration pseudo-variables, such as page_screen_output or |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
329 confirm_recursive_rmdir (or the above mentioned svd_driver), now |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
330 accept a "local" option as second argument, requesting the change |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
331 to be undone when the current function returns: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
332 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
333 function [status, msg] = rm_rf (dir) |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
334 confirm_recursive_rmdir (false, "local"); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
335 [status, msg] = rmdir (dir, "s"); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
336 ... |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
337 endfunction |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
338 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
339 Upon return, confirm_recursive_rmdir will be restored to the value |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
340 it had on entry to the function, even if there were subsequent |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
341 changes to the variable in function rm_rf or any of the functions |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
342 it calls. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
343 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
344 ** pkg now accepts a -forge option for downloading and installing |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
345 packages from Octave Forge automatically. For example, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
346 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
347 pkg install -forge general |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
348 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
349 will automatically download the latest release of the general |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
350 package and attempt to install it. No automatic resolving of |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
351 dependencies is provided. Further, |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
352 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
353 pkg list -forge |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
354 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
355 can be used to list all available packages. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
356 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
357 ** The internal data representation of structs has been completely |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
358 rewritten to make certain optimizations feasible. The field data |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
359 can now be shared between structs with equal keys but different |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
360 dimensions or values, making operations that preserve the fields |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
361 faster. Economized storage is now used for scalar structs (just |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
362 like most other scalars), making their usage more |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
363 memory-efficient. Certain array-like operations on structs |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
364 (concatenation, uniform cellfun, num2cell) have gained a |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
365 significant speed-up. Additionally, the octave_scalar_map class |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
366 now provides a simpler interface to work with scalar structs within |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
367 a C++ DLD function. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
368 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
369 ** Two new formats are available for displaying numbers: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
370 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
371 format short eng |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
372 format long eng |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
373 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
374 Both display numbers in engineering notation, i.e., mantissa + |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
375 exponent where the exponent is a multiple of 3. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
376 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
377 ** The following functions are new in Octave 3.4: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
378 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
379 accumdim erfcx nfields pqpnonneg uigetdir |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
380 bitpack fileread nth_element quadcc uigetfile |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
381 bitunpack fminbnd onCleanup randi uiputfile |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
382 blkmm fskipl pbaspect repelems uimenu |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
383 cbrt ifelse pie3 reset whitebg |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
384 curl ishermitian powerset rsf2csf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
385 chop isindex ppder saveas |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
386 daspect luupdate ppint strread |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
387 divergence merge ppjumps textread |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
388 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
389 ** Using the image function to view images with external programs such |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
390 as display, xv, and xloadimage is no longer supported. The |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
391 image_viewer function has also been removed. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
392 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
393 ** The behavior of struct assignments to non-struct values has been |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
394 changed. Previously, it was possible to overwrite an arbitrary |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
395 value: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
396 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
397 a = 1; |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
398 a.x = 2; |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
399 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
400 This is no longer possible unless a is an empty matrix or cell |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
401 array. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
402 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
403 ** The dlmread function has been extended to allow specifying a custom |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
404 value for empty fields. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
405 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
406 ** The dlmread and dlmwrite functions have been modified to accept |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
407 file IDs (as returned by fopen) in addition to file names. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
408 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
409 ** Octave can now optimize away the interpreter overhead of an |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
410 anonymous function handle, if the function simply calls another |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
411 function or handle with some of its parameters bound to certain |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
412 values. Example: |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
413 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
414 f = @(x) sum (x, 1); |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
415 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
416 When f is called, the call is forwarded to @sum with the constant 1 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
417 appended, and the anonymous function call does not occur on the |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
418 call stack. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
419 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
420 ** Deprecated functions. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
421 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
422 The following functions were deprecated in Octave 3.0 and have been |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
423 removed from Octave 3.4. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
424 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
425 beta_cdf geometric_pdf pascal_pdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
426 beta_inv geometric_rnd pascal_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
427 beta_pdf hypergeometric_cdf poisson_cdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
428 beta_rnd hypergeometric_inv poisson_inv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
429 binomial_cdf hypergeometric_pdf poisson_pdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
430 binomial_inv hypergeometric_rnd poisson_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
431 binomial_pdf intersection polyinteg |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
432 binomial_rnd is_bool setstr |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
433 chisquare_cdf is_complex struct_contains |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
434 chisquare_inv is_list struct_elements |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
435 chisquare_pdf is_matrix t_cdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
436 chisquare_rnd is_scalar t_inv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
437 clearplot is_square t_pdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
438 clg is_stream t_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
439 com2str is_struct uniform_cdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
440 exponential_cdf is_symmetric uniform_inv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
441 exponential_inv is_vector uniform_pdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
442 exponential_pdf isstr uniform_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
443 exponential_rnd lognormal_cdf weibcdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
444 f_cdf lognormal_inv weibinv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
445 f_inv lognormal_pdf weibpdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
446 f_pdf lognormal_rnd weibrnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
447 f_rnd meshdom weibull_cdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
448 gamma_cdf normal_cdf weibull_inv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
449 gamma_inv normal_inv weibull_pdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
450 gamma_pdf normal_pdf weibull_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
451 gamma_rnd normal_rnd wiener_rnd |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
452 geometric_cdf pascal_cdf |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
453 geometric_inv pascal_inv |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
454 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
455 The following functions were deprecated in Octave 3.2 and will |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
456 be removed from Octave 3.6 (or whatever version is the second major |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
457 release after 3.2): |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
458 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
459 create_set spcholinv splu |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
460 dmult spcumprod spmax |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
461 iscommand spcumsum spmin |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
462 israwcommand spdet spprod |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
463 lchol spdiag spqr |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
464 loadimage spfind spsum |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
465 mark_as_command sphcat spsumsq |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
466 mark_as_rawcommand spinv spvcat |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
467 spatan2 spkron str2mat |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
468 spchol splchol unmark_command |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
469 spchol2inv split unmark_rawcommand |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
470 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
471 The following functions have been deprecated in Octave 3.4 and will |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
472 be removed from Octave 3.8 (or whatever version is the second major |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
473 release after 3.4): |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
474 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
475 autocor cellidx gammai krylovb values |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
476 autocov dispatch glpkmex replot |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
477 betai fstat is_global saveimage |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
478 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
479 * For compatibility with Matlab, mu2lin (x) is now equivalent to |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
480 mu2lin (x, 0). |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
481 |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
482 * The ARPACK library is now distributed with Octave so it no longer |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
483 needs to be available as an external dependency when building |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
484 Octave. |
e8fc61e077fc
Merged closed branch "kai" into default.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
485 </pre> |