Mercurial > web-octave
annotate pages/NEWS-3.6.md @ 271:3ce19581b946
LICENSE: Add "GPL-3.0-or-later" for code
author | Kai Torben Ohlhus <k.ohlhus@gmail.com> |
---|---|
date | Mon, 21 Feb 2022 17:32:38 +0900 |
parents | e69093ab4992 |
children |
rev | line source |
---|---|
215 | 1 --- |
2 layout: page | |
3 title: GNU Octave Version 3.6 | |
4 permalink: NEWS-3.6.html | |
5 --- | |
6 | |
7 ## Summary of important user-visible changes | |
8 | |
9 January 15, 2012 | |
10 | |
11 {% include release_news_select.md %} | |
12 | |
224
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
13 {::options parse_block_html="true" /} |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
14 <div class="panel callout"> |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
15 * TOC |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
16 {:toc} |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
17 </div> |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
18 {::options parse_block_html="false" /} |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
19 |
e69093ab4992
Improve Release Notes display.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
216
diff
changeset
|
20 |
215 | 21 <pre> |
22 ** The PCRE library is now required to build Octave. If a pre-compiled | |
23 package does not exist for your system, you can find PCRE sources | |
24 at http://www.pcre.org | |
25 | |
26 ** The ARPACK library is no longer distributed with Octave. | |
27 If you need the eigs or svds functions you must provide an | |
28 external ARPACK through a package manager or by compiling it | |
29 yourself. If a pre-compiled package does not exist for your system, | |
30 you can find the current ARPACK sources at | |
31 http://forge.scilab.org/index.php/p/arpack-ng | |
32 | |
33 ** Many of Octave's binary operators (.*, .^, +, -, ...) now perform | |
34 automatic broadcasting for array operations which allows you to use | |
35 operator notation instead of calling bsxfun or expanding arrays (and | |
36 unnecessarily wasting memory) with repmat or similar idioms. For | |
37 example, to scale the columns of a matrix by the elements of a row | |
38 vector, you may now write | |
39 | |
40 rv .* M | |
41 | |
42 In this expression, the number of elements of rv must match the | |
43 number of columns of M. The following operators are affected: | |
44 | |
45 plus + .+ | |
46 minus - .- | |
47 times .* | |
48 rdivide ./ | |
49 ldivide .\ | |
50 power .^ .** | |
51 lt < | |
52 le <= | |
53 eq == | |
54 gt > | |
55 ge >= | |
56 ne != ~= | |
57 and & | |
58 or | | |
59 atan2 | |
60 hypot | |
61 max | |
62 min | |
63 mod | |
64 rem | |
65 xor | |
66 | |
67 additionally, since the A op= B assignment operators are equivalent | |
68 to A = A op B, the following operators are also affected: | |
69 | |
70 += -= .+= .-= .*= ./= .\= .^= .**= &= |= | |
71 | |
72 See the "Broadcasting" section in the new "Vectorization and Faster | |
73 Code Execution" chapter of the manual for more details. | |
74 | |
75 ** Octave now features a profiler, thanks to the work of Daniel Kraft | |
76 under the Google Summer of Code mentorship program. The manual has | |
77 been updated to reflect this addition. The new user-visible | |
78 functions are profile, profshow, and profexplore. | |
79 | |
80 ** Overhaul of statistical distribution functions | |
81 | |
82 Functions now return "single" outputs for inputs of class "single". | |
83 | |
84 75% reduction in memory usage through use of logical indexing. | |
85 | |
86 Random sample functions now use the same syntax as rand and accept | |
87 a comma separated list of dimensions or a dimension vector. | |
88 | |
89 Functions have been made Matlab-compatible with regard to special | |
90 cases (probability on boundaries, probabilities for values outside | |
91 distribution, etc.). This may cause subtle changes to existing | |
92 scripts. | |
93 | |
94 negative binomial function has been extended to real, non-integer | |
95 inputs. The discrete_inv function now returns v(1) for 0 instead of | |
96 NaN. The nbincdf function has been recoded to use a closed form | |
97 solution with betainc. | |
98 | |
99 ** strread, textscan, and textread have been completely revamped. | |
100 | |
101 They now support nearly all Matlab functionality including: | |
102 | |
103 * Matlab-compatible whitespace and delimiter defaults | |
104 | |
105 * Matlab-compatible options: 'whitespace', treatasempty', format | |
106 string repeat count, user-specified comment style, uneven-length | |
107 output arrays, %n and %u conversion specifiers (provisionally) | |
108 | |
109 ** All .m string functions have been modified for better performance or | |
110 greater Matlab compatibility. Performance gains of 15X-30X have | |
111 been demonstrated. Operations on cell array of strings no longer pay | |
112 quite as high a penalty as those on 2-D character arrays. | |
113 | |
114 deblank: Now requires character or cellstr input. | |
115 | |
116 strtrim: Now requires character or cellstr input. | |
117 No longer trims nulls ("\0") from string for Matlab | |
118 compatibility. | |
119 | |
120 strmatch: Follows documentation precisely and ignores trailing spaces | |
121 in pattern and in string. Note that this is documented | |
122 Matlab behavior but the implementation apparently does | |
123 not always follow it. | |
124 | |
125 substr: Now possible to specify a negative LEN option which | |
126 extracts to within LEN of the end of the string. | |
127 | |
128 strtok: Now accepts cellstr input. | |
129 | |
130 base2dec, bin2dec, hex2dec: | |
131 Now accept cellstr inputs. | |
132 | |
133 dec2base, dec2bin, dec2hex: | |
134 Now accept cellstr inputs. | |
135 | |
136 index, rindex: | |
137 Now accept 2-D character array input. | |
138 | |
139 strsplit: Now accepts 2-D character array input. | |
140 | |
141 ** Geometry functions derived from Qhull (convhull, delaunay, voronoi) | |
142 have been revamped. The options passed to the underlying qhull | |
143 command have been changed for better results or for Matlab | |
144 compatibility. | |
145 | |
146 convhull: Default options are "Qt" for 2D, 3D, 4D inputs | |
147 Default options are "Qt Qx" for 5D and higher | |
148 | |
149 delaunay: Default options are "Qt Qbb Qc Qz" for 2D and 3D inputs | |
150 Default options are "Qt Qbb Qc Qx" for 4D and higher | |
151 | |
152 voronoi: No default arguments | |
153 | |
154 ** Date/Time functions updated. Millisecond support with FFF format | |
155 string now supported. | |
156 | |
157 datestr: Numerical formats 21, 22, 29 changed to match Matlab. | |
158 Now accepts cellstr input. | |
159 | |
160 ** The following warning IDs have been removed: | |
161 | |
162 Octave:associativity-change | |
163 Octave:complex-cmp-ops | |
164 Octave:empty-list-elements | |
165 Octave:fortran-indexing | |
166 Octave:precedence-change | |
167 | |
168 ** The warning ID Octave:string-concat has been renamed to | |
169 Octave:mixed-string-concat. | |
170 | |
171 ** Octave now includes the following Matlab-compatible preference | |
172 functions: | |
173 | |
174 addpref getpref ispref rmpref setpref | |
175 | |
176 ** The following Matlab-compatible handle graphics functions have been | |
177 added: | |
178 | |
179 guidata uipanel uitoolbar | |
180 guihandles uipushtool uiwait | |
181 uicontextmenu uiresume waitfor | |
182 uicontrol uitoggletool | |
183 | |
184 The uiXXX functions above are experimental. | |
185 | |
186 Except for uiwait and uiresume, the uiXXX functions are not | |
187 supported with the FLTK+OpenGL graphics toolkit. | |
188 | |
189 The gnuplot graphics toolkit does not support any of the uiXXX | |
190 functions nor the waitfor function. | |
191 | |
192 ** New keyword parfor (parallel for loop) is now recognized as a valid | |
193 keyword. Implementation, however, is still mapped to an ordinary | |
194 for loop. | |
195 | |
196 ** Other new functions added in 3.6.0: | |
197 | |
198 bicg nthargout usejava | |
199 is_dq_string narginchk waitbar | |
200 is_sq_string python zscore | |
201 is_function_handle register_graphics_toolkit | |
202 loaded_graphics_toolkits recycle | |
203 | |
204 ** Deprecated functions. | |
205 | |
206 The following functions were deprecated in Octave 3.2 and have been | |
207 removed from Octave 3.6. | |
208 | |
209 create_set spcholinv splu | |
210 dmult spcumprod spmax | |
211 iscommand spcumsum spmin | |
212 israwcommand spdet spprod | |
213 lchol spdiag spqr | |
214 loadimage spfind spsum | |
215 mark_as_command sphcat spsumsq | |
216 mark_as_rawcommand spinv spvcat | |
217 spatan2 spkron str2mat | |
218 spchol splchol unmark_command | |
219 spchol2inv split unmark_rawcommand | |
220 | |
221 The following functions have been deprecated in Octave 3.6 and will | |
222 be removed from Octave 3.10 (or whatever version is the second major | |
223 release after 3.6): | |
224 | |
225 cut is_duplicate_entry | |
226 cor polyderiv | |
227 corrcoef shell_cmd | |
228 __error_text__ studentize | |
229 error_text sylvester_matrix | |
230 </pre> |