comparison NEWS @ 14250:14d602c4f6e8 gui

Merge default onto gui
author Jordi Gutiérrez Hermoso <jordigh@octave.org>
date Sun, 22 Jan 2012 15:13:22 -0500
parents c72ad9f5fa2e 053404893d02
children d738c29a2528
comparison
equal deleted inserted replaced
14079:995c69c217e5 14250:14d602c4f6e8
4 ** A new GUI is now available with Octave. 4 ** A new GUI is now available with Octave.
5 5
6 Summary of important user-visible changes for version 3.6: 6 Summary of important user-visible changes for version 3.6:
7 --------------------------------------------------------- 7 ---------------------------------------------------------
8 8
9 ** The PCRE library is now required to build Octave. 9 ** The PCRE library is now required to build Octave. If a pre-compiled
10 10 package does not exist for your system, you can find PCRE sources
11 ** The following binary elementwise operators and functions now perform 11 at http://www.pcre.org
12 Numpy-like broadcasting (a.k.a. binary singleton expansion): 12
13 13 ** The ARPACK library is no longer distributed with Octave.
14 plus ldivide rem eq gt xor 14 If you need the eigs or svds functions you must provide an
15 minus power mod ne ge 15 external ARPACK through a package manager or by compiling it
16 times max atan2 lt and 16 yourself. If a pre-compiled package does not exist for your system,
17 rdivide min hypot le or 17 you can find the current ARPACK sources at
18 18 http://forge.scilab.org/index.php/p/arpack-ng
19 + .* & 19
20 - ./ | 20 ** Many of Octave's binary operators (.*, .^, +, -, ...) now perform
21 .+ .\ 21 automatic broadcasting for array operations that allows you to use
22 .- .^ 22 operator notation instead of calling bsxfun or expanding arrays (and
23 23 unnecessarily wasting memory) with repmat or similar idioms. For
24 += .*= &= 24 example, to scale the columns of a matrix by the elements of a row
25 -= ./= |= 25 vector, you may now write
26 .+= .\= 26
27 .-= .^= 27 rv .* M
28 28
29 This makes the bsxfun function mostly redundant except for 29 In this expression, the number of elements of rv must match the
30 user-defined functions. A new section in the manual has been written 30 number of columns of M. The following operators are affected:
31 to explain and clarify this change. 31
32 plus + .+
33 minus - .-
34 times .*
35 rdivide ./
36 ldivide .\
37 power .^ .**
38 lt <
39 le <=
40 eq ==
41 gt >
42 ge >=
43 ne != ~=
44 and &
45 or |
46 atan2
47 hypot
48 max
49 min
50 mod
51 rem
52 xor
53
54 additionally, since the A op= B assginment operators are equivalent
55 to A = A op B, the following operators are also affected:
56
57 += -= .+= .-= .*= ./= .\= .^= .**= &= |=
58
59 See the "Broadcasting" section in the new "Vectorization and Faster
60 Code Execution" chapter of the manual for more details.
32 61
33 ** Octave now features a profiler, thanks to the work of Daniel Kraft 62 ** Octave now features a profiler, thanks to the work of Daniel Kraft
34 under the Google Summer of Code mentorship program. The manual has 63 under the Google Summer of Code mentorship program. The manual has
35 been updated to reflect this addition. The new user-visible 64 been updated to reflect this addition. The new user-visible
36 functions are profexplore, profile, and profshow. 65 functions are profile, profshow, and profexplore.
37 66
38 ** Overhaul of statistical distribution functions 67 ** Overhaul of statistical distribution functions
39 68
40 Functions now return "single" outputs for inputs of class "single". 69 Functions now return "single" outputs for inputs of class "single".
41 70
42 75% reduction in memory usage through use of logical indexing. 71 75% reduction in memory usage through use of logical indexing.
43 72
44 Random sample functions now use the same syntax as rand() and accept 73 Random sample functions now use the same syntax as rand and accept
45 a comma separated list of dimensions or a dimension vector. 74 a comma separated list of dimensions or a dimension vector.
46 75
47 Functions have been made Matlab-compatible with regard to special 76 Functions have been made Matlab-compatible with regard to special
48 cases (probability on boundaries, probabilities for values outside 77 cases (probability on boundaries, probabilities for values outside
49 distribution, etc.). This may cause subtle changes to existing 78 distribution, etc.). This may cause subtle changes to existing
50 scripts. 79 scripts.
51 80
52 negative binomial function has been extended to real, non-integer inputs. 81 negative binomial function has been extended to real, non-integer
53 discrete_inv() now returns v(1) for 0 instead of NaN. 82 inputs. The discrete_inv fucntion now returns v(1) for 0 instead of
54 nbincdf() recoded to use closed form solution with betainc(). 83 NaN. The nbincdf fucntion has bbeen recoded to use a closed form
84 solution with betainc.
55 85
56 ** strread, textscan, and textread have been completely revamped. 86 ** strread, textscan, and textread have been completely revamped.
57 87
58 They now support nearly all Matlab functionality including: 88 They now support nearly all Matlab functionality including:
59 89
60 * ML-compatible whitespace and delimiter defaults 90 * Matlab-compatible whitespace and delimiter defaults
61 91
62 * ML-compatible options: 'whitespace', treatasempty', 92 * Matlab-compatible options: 'whitespace', treatasempty', format
63 format string repeat count, user-specified comment style, uneven-length 93 string repeat count, user-specified comment style, uneven-length
64 output arrays, %n and %u conversion specifiers (provisionally) 94 output arrays, %n and %u conversion specifiers (provisionally)
65 95
66 ** All .m string functions have been modified for better performance or greater 96 ** All .m string functions have been modified for better performance or
67 Matlab compatibility. Performance gains of 15X-30X have been demonstrated. 97 greater Matlab compatibility. Performance gains of 15X-30X have
68 Operations on cell array of strings no longer pay quite as high a penalty 98 been demonstrated. Operations on cell array of strings no longer pay
69 as those on 2-D character arrays. 99 quite as high a penalty as those on 2-D character arrays.
70 100
71 deblank: Now requires character or cellstr input. 101 deblank: Now requires character or cellstr input.
72 strtrim: Now requires character or cellstr input. 102
73 No longer trims nulls ("\0") from string for ML compatibility. 103 strtrim: Now requires character or cellstr input.
74 strmatch: Follows documentation precisely and ignores trailing spaces 104 No longer trims nulls ("\0") from string for Matlab
75 in pattern and in string. Note that Matlab documents this 105 compatibility.
76 behavior but the implementation does *not* always follow it. 106
77 substr: Now possible to specify a negative LEN option which extracts 107 strmatch: Follows documentation precisely and ignores trailing spaces
78 to within LEN of the end of the string. 108 in pattern and in string. Note that this is documented
79 strtok: Now accepts cellstr input. 109 Matlab behavior but the implementation apparently does
80 base2dec, bin2dec, hex2dec: Now accept cellstr inputs. 110 not always follow it.
81 dec2base, dec2bin, dec2hex: Now accept cellstr inputs. 111
82 index, rindex: Now accept 2-D character array input. 112 substr: Now possible to specify a negative LEN option which
83 strsplit: Now accepts 2-D character array input. 113 extracts to within LEN of the end of the string.
114
115 strtok: Now accepts cellstr input.
116
117 base2dec, bin2dec, hex2dec:
118 Now accept cellstr inputs.
119
120 dec2base, dec2bin, dec2hex:
121 Now accept cellstr inputs.
122
123 index, rindex:
124 Now accept 2-D character array input.
125
126 strsplit: Now accepts 2-D character array input.
84 127
85 ** Geometry functions derived from Qhull (convhull, delaunay, voronoi) 128 ** Geometry functions derived from Qhull (convhull, delaunay, voronoi)
86 have been revamped. The options passed to the underlying qhull command 129 have been revamped. The options passed to the underlying qhull
87 have been changed for better results or for Matlab compatibility. 130 command have been changed for better results or for Matlab
88 131 compatibility.
89 convhull : Default options are "Qt" for 2D, 3D, 4D inputs 132
90 Default options are "Qt Qx" for 5D and higher 133 convhull: Default options are "Qt" for 2D, 3D, 4D inputs
91 delaunay : Default options are "Qt Qbb Qc Qz" for 2D and 3D inputs 134 Default options are "Qt Qx" for 5D and higher
92 Default options are "Qt Qbb Qc Qx" for 4D and higher 135
93 voronoi : No default arguments 136 delaunay: Default options are "Qt Qbb Qc Qz" for 2D and 3D inputs
94 137 Default options are "Qt Qbb Qc Qx" for 4D and higher
95 ** Date/Time functions updated. 138
96 Millisecond support with FFF format string now supported. 139 voronoi: No default arguments
97 140
98 datestr : Numerical formats 21, 22, 29 changed to match Matlab. 141 ** Date/Time functions updated. Millisecond support with FFF format
99 Now accepts cellstr inputs. 142 string now supported.
100 143
101 ** Octave warning IDs updated 144 datestr: Numerical formats 21, 22, 29 changed to match Matlab.
102 "associativity-change": removed 145 Now accepts cellstr inputs.
103 "complex-cmp-ops" : removed 146
104 "empty-list-elements" : removed 147 ** The following warning IDs have been removed:
105 "fortran-indexing" : removed 148
106 "precedence-change" : removed 149 Octave:associativity-change
107 "string-concat" : renamed to "mixed-string-concat" 150 Octave:complex-cmp-ops
108 151 Octave:empty-list-elements
109 ** Matlab-compatible preference functions added: 152 Octave:fortran-indexing
110 153 Octave:precedence-change
111 addpref getpref ispref rmpref setpref 154
112 155 ** The warning ID Octave:string-concat has been renamed to
113 ** Matlab-compatible handle graphics functions added: 156 Octave:mixed-string-concat.
114 157
115 guidata uipanel uitoolbar 158 ** Octave now includes the following Matlab-compatible preference
116 guihandles uipushtool uiwait 159 functions:
117 uicontextmenu uiresume waitfor 160
118 uicontrol uitoggletool 161 addpref getpref ispref rmpref setpref
162
163 ** The following Matlab-compatible handle graphics functions have been
164 added:
165
166 guidata uipanel uitoolbar
167 guihandles uipushtool uiwait
168 uicontextmenu uiresume waitfor
169 uicontrol uitoggletool
119 170
120 The uiXXX functions above are experimental. 171 The uiXXX functions above are experimental.
121 172
122 Except for uiwait and uiresume, the uiXXX functions are not supported on 173 Except for uiwait and uiresume, the uiXXX functions are not
123 the FLTK backend. 174 supported with the the FLTK+OpenGL graphics toolkit.
124 175
125 The gnuplot backend does not support any of the uiXXX functions nor 176 The gnuplot graphics toolkit does not support any of the uiXXX
126 the waitfor function. 177 functions nor the waitfor function.
127 178
128 ** New keyword parfor 179 ** New keyword parfor (parallel for loop) is now recognized as a valid
129 180 keyword. Implementation, however, is still mapped to an ordinary
130 parfor (parallel for loop) is now recognized as a valid keyword. 181 for loop.
131 Implementation, however, is still mapped to an ordinary for loop.
132 182
133 ** Other new functions added in 3.6.0: 183 ** Other new functions added in 3.6.0:
134 184
135 is_dq_string nthargout usejava 185 bicg nthargout usejava
136 is_sq_string python waitbar 186 is_dq_string narginchk waitbar
137 narginchk recycle zscore 187 is_sq_string python zscore
138 188 is_function_handle register_graphics_toolkit
189 loaded_graphics_toolkits recycle
190
139 ** Deprecated functions. 191 ** Deprecated functions.
140 192
141 The following functions were deprecated in Octave 3.2 and have been 193 The following functions were deprecated in Octave 3.2 and have been
142 removed from Octave 3.6. 194 removed from Octave 3.6.
143 195
157 be removed from Octave 3.10 (or whatever version is the second major 209 be removed from Octave 3.10 (or whatever version is the second major
158 release after 3.6): 210 release after 3.6):
159 211
160 cut is_duplicate_entry 212 cut is_duplicate_entry
161 cor polyderiv 213 cor polyderiv
162 corrcoef studentize 214 corrcoef shell_cmd
163 __error_text__ sylvester_matrix 215 __error_text__ studentize
164 error_text 216 error_text sylvester_matrix
165 217
166 Summary of important user-visible changes for version 3.4.3: 218 Summary of important user-visible changes for version 3.4.3:
167 ----------------------------------------------------------- 219 -----------------------------------------------------------
168 220
169 ** Octave 3.4.3 is a bug fixing release. 221 ** Octave 3.4.3 is a bug fixing release.
360 ** The effect of comparison operators (<, >, <=, and >=) applied to 412 ** The effect of comparison operators (<, >, <=, and >=) applied to
361 complex numbers has changed to be consistent with the strict 413 complex numbers has changed to be consistent with the strict
362 ordering defined by the `max', `min', and `sort' functions. More 414 ordering defined by the `max', `min', and `sort' functions. More
363 specifically, complex numbers are compared by lexicographical 415 specifically, complex numbers are compared by lexicographical
364 comparison of the pairs `[abs(z), arg(z)]'. Previously, only real 416 comparison of the pairs `[abs(z), arg(z)]'. Previously, only real
365 parts were compared; this can be trivially achieved by wrapping the 417 parts were compared; this can be trivially achieved by converting
366 operands in real(). 418 the operands to real values with the `real' function.
367 419
368 ** The automatic simplification of complex computation results has 420 ** The automatic simplification of complex computation results has
369 changed. Octave will now simplify any complex number with a zero 421 changed. Octave will now simplify any complex number with a zero
370 imaginary part or any complex matrix with all elements having zero 422 imaginary part or any complex matrix with all elements having zero
371 imaginary part to a real value. Previously, this was done only for 423 imaginary part to a real value. Previously, this was done only for
481 subsequently fill it by assignments, provided they meet certain 533 subsequently fill it by assignments, provided they meet certain
482 conditions. For more information, consult the `spalloc' function, 534 conditions. For more information, consult the `spalloc' function,
483 which is no longer a mere dummy. Consequently, nzmax and nnz are no 535 which is no longer a mere dummy. Consequently, nzmax and nnz are no
484 longer always equal in Octave. Octave may also produce a matrix 536 longer always equal in Octave. Octave may also produce a matrix
485 with nnz < nzmax as a result of other operations, so you should 537 with nnz < nzmax as a result of other operations, so you should
486 consistently use nnz unless you really want to use nzmax (i.e. the 538 consistently use nnz unless you really want to use nzmax (i.e., the
487 space allocated for nonzero elements). 539 space allocated for nonzero elements).
488 540
489 Sparse concatenation is also affected, and concatenating sparse 541 Sparse concatenation is also affected, and concatenating sparse
490 matrices, especially larger collections, is now significantly more 542 matrices, especially larger collections, is now significantly more
491 efficient. This applies to both the [] operator and the 543 efficient. This applies to both the [] operator and the
492 cat/vertcat/horzcat functions. 544 cat/vertcat/horzcat functions.
493 545
494 ** It is now possible to optionally employ the xGESDD LAPACK drivers 546 ** It is now possible to optionally employ the xGESDD LAPACK drivers
495 for computing the singular value decomposition using svd(), instead 547 for computing the singular value decomposition using svd, instead
496 of the default xGESVD, using the configuration pseudo-variable 548 of the default xGESVD, using the configuration pseudo-variable
497 svd_driver. The xGESDD driver can be up to 6x times faster when 549 svd_driver. The xGESDD driver can be up to 6x times faster when
498 singular vectors are requested, but is reported to be somewhat less 550 singular vectors are requested, but is reported to be somewhat less
499 robust on highly ill-conditioned matrices. 551 robust on highly ill-conditioned matrices.
500 552
518 packages from Octave Forge automatically. For example, 570 packages from Octave Forge automatically. For example,
519 571
520 pkg install -forge general 572 pkg install -forge general
521 573
522 will automatically download the latest release of the general 574 will automatically download the latest release of the general
523 package and attempt to install it. No automatic resolving of 575 package and attempt to install it. No automatic resolving of
524 dependencies is provided. Further, 576 dependencies is provided. Further,
525 577
526 pkg list -forge 578 pkg list -forge
527 579
528 can be used to list all available packages. 580 can be used to list all available packages.
675 y = sin (x); 727 y = sin (x);
676 plot (x, y, "ydatasource", "y"); 728 plot (x, y, "ydatasource", "y");
677 for i = 1 : 100 729 for i = 1 : 100
678 pause(0.1) 730 pause(0.1)
679 y = sin (x + 0.1 * i); 731 y = sin (x + 0.1 * i);
680 refreshdata(); 732 refreshdata ();
681 endfor 733 endfor
682 734
683 works as expected. This capability has be used to introduce 735 works as expected. This capability has be used to introduce
684 stem-series, bar-series, etc., objects for better Matlab 736 stem-series, bar-series, etc., objects for better Matlab
685 compatibility. 737 compatibility.
891 943
892 ** Range arithmetics 944 ** Range arithmetics
893 945
894 For some operations on ranges, Octave will attempt to keep the 946 For some operations on ranges, Octave will attempt to keep the
895 result as a range. These include negation, adding a scalar, 947 result as a range. These include negation, adding a scalar,
896 subtracting a scalar, and multiplying by a scalar. Ranges with zero 948 subtracting a scalar, and multiplying by a scalar. Ranges with zero
897 increment are allowed and can be constructed using the built-in 949 increment are allowed and can be constructed using the built-in
898 function `ones'. 950 function `ones'.
899 951
900 ** Various performance improvements. 952 ** Various performance improvements.
901 953