Mercurial > web-octave
comparison NEWS-2.html @ 94:e8fc61e077fc
Merged closed branch "kai" into default.
author | Kai T. Ohlhus <k.ohlhus@gmail.com> |
---|---|
date | Tue, 01 Nov 2016 01:06:10 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
92:7609e2a6faef | 94:e8fc61e077fc |
---|---|
1 <!doctype html public "-//IETF//DTD HTML Strict//EN"> | |
2 <html> | |
3 <head> | |
4 <title> Changes in Octave version 2 </title> | |
5 </head> | |
6 | |
7 <body> | |
8 <h1> News for Octave Version 2 </h1> | |
9 <hr> | |
10 | |
11 <h2>Summary of changes for version 2.0.17</h2> | |
12 | |
13 <p>This will probably be the last release in the 2.0.x series. There are | |
14 a few bug fixes, but the major change is to print a message saying | |
15 that Octave 2.0.x cannot be compiled with gcc 3.0.x or gcc 2.96. If | |
16 you want to build Octave 2.0.x, you will need to use gcc 2.95.x. If | |
17 you want to use gcc 3.0.x or some later version, you should be using | |
18 the Octave 2.1.35 sources or a more recent version.</p> | |
19 | |
20 <h2>Summary of changes for version 2.0.16</h2> | |
21 | |
22 <p>This is primarily a bug-fixing release.</p> | |
23 | |
24 <h2>Summary of changes for version 2.0.15</h2> | |
25 | |
26 <p>This is primarily a bug-fixing release.</p> | |
27 | |
28 <ul> | |
29 <li>If you are using GNU Emacs 19.34 or earlier, you will need to add | |
30 the following code to your ~/.emacs file in order to use Emacs | |
31 Octave mode: | |
32 <pre> | |
33 ;; Set up the custom library. | |
34 ;; taken from http://www.dina.kvl.dk/~abraham/custom/ | |
35 (eval-and-compile | |
36 (condition-case () | |
37 (require 'custom) | |
38 (error nil)) | |
39 (if (and (featurep 'custom) (fboundp 'custom-declare-variable)) | |
40 nil ;; We've got what we needed | |
41 ;; We have the old custom-library, hack around it! | |
42 (defmacro defgroup (&rest args) | |
43 nil) | |
44 (defmacro defcustom (var value doc &rest args) | |
45 (` (defvar (, var) (, value) (, doc)))))) | |
46 </pre></li> | |
47 </ul> | |
48 | |
49 <h2>Summary of changes for version 2.0.14</h2> | |
50 | |
51 This release fixes numerous bugs and adds the following new features: | |
52 | |
53 <ul> | |
54 <li>argv is now padded with blanks instead of ASCII NUL.</li> | |
55 | |
56 <li>New functions: | |
57 <dl> | |
58 <dt><b>besselh</b></dt> | |
59 Hankel functions of the first and second kind | |
60 <dt><b>airy</b></dt> | |
61 Airy functions of the first and second kind, and | |
62 their derivatives | |
63 </dl></li> | |
64 | |
65 <li>The Bessel functions now accept complex values for the argument | |
66 and any real value for the order.</li> | |
67 | |
68 <li>The value of LOADPATH set by the environment variable | |
69 OCTAVE_PATH, the -p or --path command line options, or on the | |
70 command line is no longer modified to include the default path. | |
71 Instead it is left as specified. Its default value is now ":", | |
72 which tells Octave to search the default path, and the new | |
73 built-in variable DEFAULT_LOADPATH contains the default list of | |
74 directories to search. </li> | |
75 | |
76 <li>The function file_in_path no longer does any special processing of | |
77 its PATH argument. To search LOADPATH for files, it is now | |
78 generally better to use the new function file_in_loadpath.</li> | |
79 | |
80 <li>If fread is given a skip parameter, the skip is performed after | |
81 the read instead of before (for compatibility with Matlab).</li> | |
82 | |
83 <li>The new built-in variable `crash_dumps_octave_core' controls | |
84 whether Octave writes user variables to the file `octave-core' | |
85 when it crashes or is killed by a signal. The default value is 1 | |
86 (0 if you use --traditional).</li> | |
87 | |
88 <li>If LOADPATH contains a doubled colon, the default path is inserted | |
89 in its place. This is similar to the substitution that also takes | |
90 place for leading or trailing colons in the LOADPATH.</li> | |
91 | |
92 <li>Loops of the form `for i = STRING ... endfor' are now allowed.</li> | |
93 | |
94 <li>It is now possible to set the iteration limit for lsode using | |
95 lsode_options ("step limit", N).</li> | |
96 | |
97 <li>New functions: | |
98 <dl> | |
99 <dt><b>is_complex</b></dt> | |
100 tell whether a value is complex | |
101 <dt><b>isnumeric</b></dt> | |
102 tell whether a value is a numeric object | |
103 <dt><b>isfinite</b></dt> | |
104 find finite elements of a matrix object | |
105 <dt><b>rehash</b></dt> | |
106 re-initialize the cache of directories in LOADPATH | |
107 <dt><b>graw</b></dt> | |
108 send a string to the gnuplot subprocess | |
109 </dl></li> | |
110 | |
111 <li>New functions from Kurt Hornik's Octave-ci package: | |
112 <ul> | |
113 <li>In finance (new directory): | |
114 <dl> | |
115 <dt><b>fv</b></dt> | |
116 <dd>future value of an investment</dd> | |
117 <dt><b>fvl</b></dt> | |
118 <dd>future value of an initial lump sum investment</dd> | |
119 <dt><b>irr</b></dt> | |
120 <dd>internal rate of return of an investment</dd> | |
121 <dt><b>nper</b></dt> | |
122 <dd>number of payments needed for amortizing a loan</dd> | |
123 <dt><b>npv</b></dt> | |
124 <dd>net present value of a series of payments</dd> | |
125 <dt><b>pmt</b></dt> | |
126 <dd>amount of periodic payment needed to amortize a loan</dd> | |
127 <dt><b>pv</b></dt> | |
128 <dd>present value of an investment</dd> | |
129 <dt><b>pvl</b></dt> | |
130 <dd>present value of an investment that pays off at the end</dd> | |
131 <dt><b>rate</b></dt> | |
132 <dd>rate of return of an investment</dd> | |
133 <dt><b>vol</b></dt> | |
134 <dd>volatility of financial time series data</dd> | |
135 </dl></li> | |
136 | |
137 <li>In linear-algebra: | |
138 <dl> | |
139 <dt><b>dmult</b></dt> | |
140 <dd>rescale the rows of a matrix</dd> | |
141 </dl></li> | |
142 | |
143 <li>In signal: | |
144 <dl> | |
145 <dt><b>arch_fit</b></dt> | |
146 <dd>fit an ARCH regression model</dd> | |
147 <dt><b>arch_rnd</b></dt> | |
148 <dd>simulate an ARCH process</dd> | |
149 <dt><b>arch_test</b></dt> | |
150 <dd>test for conditional heteroscedascity</dd> | |
151 <dt><b>arma_rnd</b></dt> | |
152 <dd>simulate an ARMA process</dd> | |
153 <dt><b>autocor</b></dt> | |
154 <dd>compute autocorrelations</dd> | |
155 <dt><b>autocov</b></dt> | |
156 <dd>compute autocovariances</dd> | |
157 <dt><b>autoreg_matrix</b></dt> | |
158 <dd>design matrix for autoregressions</dd> | |
159 <dt><b>bartlett</b></dt> | |
160 <dd>coefficients of the Bartlett (triangular) window</dd> | |
161 <dt><b>blackman</b></dt> | |
162 <dd>coefficients of the Blackman window</dd> | |
163 <dt><b>diffpara</b></dt> | |
164 <dd>estimate the fractional differencing parameter</dd> | |
165 <dt><b>durbinlevinson</b></dt> | |
166 <dd>perform one step of the Durbin-Levinson algorithm</dd> | |
167 <dt><b>fractdiff</b></dt> | |
168 <dd>compute fractional differences</dd> | |
169 <dt><b>hamming</b></dt> | |
170 <dd>coefficients of the Hamming window</dd> | |
171 <dt><b>hanning</b></dt> | |
172 <dd>coefficients of the Hanning window</dd> | |
173 <dt><b>hurst</b></dt> | |
174 <dd>estimate the Hurst parameter</dd> | |
175 <dt><b>periodogram</b></dt> | |
176 <dd>compute the periodogram</dd> | |
177 <dt><b>rectangle_lw</b></dt> | |
178 <dd>rectangular lag window</dd> | |
179 <dt><b>rectangle_sw</b></dt> | |
180 <dd>rectangular spectral window</dd> | |
181 <dt><b>sinetone</b></dt> | |
182 <dd>compute a sine tone</dd> | |
183 <dt><b>sinewave</b></dt> | |
184 <dd>compute a sine wave</dd> | |
185 <dt><b>spectral_adf</b></dt> | |
186 <dd>spectral density estimation</dd> | |
187 <dt><b>spectral_xdf</b></dt> | |
188 <dd>spectral density estimation</dd> | |
189 <dt><b>spencer</b></dt> | |
190 <dd>apply Spencer's 15-point MA filter</dd> | |
191 <dt><b>stft</b></dt> | |
192 <dd>short-term Fourier transform</dd> | |
193 <dt><b>synthesis</b></dt> | |
194 <dd>recover a signal from its short-term Fourier transform</dd> | |
195 <dt><b>triangle_lw</b></dt> | |
196 <dd>triangular lag window</dd> | |
197 <dt><b>triangle_sw</b></dt> | |
198 <dd>triangular spectral window</dd> | |
199 <dt><b>yulewalker</b></dt> | |
200 <dd>fit AR model by Yule-Walker method</dd> | |
201 </dl></li> | |
202 | |
203 <li>In statistics/base (new directory): | |
204 <dl> | |
205 <dt><b>center</b></dt> | |
206 <dd>center by subtracting means</dd> | |
207 <dt><b>cloglog</b></dt> | |
208 <dd>complementary log-log function</dd> | |
209 <dt><b>cor</b></dt> | |
210 <dd>compute correlations</dd> | |
211 <dt><b>cov</b></dt> | |
212 <dd>compute covariances</dd> | |
213 <dt><b>cut</b></dt> | |
214 <dd>cut data into intervals</dd> | |
215 <dt><b>iqr</b></dt> | |
216 <dd>interquartile range</dd> | |
217 <dt><b>kendall</b></dt> | |
218 <dd>kendall's rank correlation tau</dd> | |
219 <dt><b>logit</b></dt> | |
220 <dd>logit transformation</dd> | |
221 <dt><b>mean</b></dt> | |
222 <dd>compute arithmetic, geometric, and harmonic mean</dd> | |
223 <dt><b>meansq</b></dt> | |
224 <dd>compute mean square</dd> | |
225 <dt><b>moment</b></dt> | |
226 <dd>compute moments</dd> | |
227 <dt><b>ppplot</b></dt> | |
228 <dd>perform a PP-plot (probability plot)</dd> | |
229 <dt><b>probit</b></dt> | |
230 <dd>probit transformation</dd> | |
231 <dt><b>qqplot</b></dt> | |
232 <dd>perform a QQ-plot (quantile plot)</dd> | |
233 <dt><b>range</b></dt> | |
234 <dd>compute range</dd> | |
235 <dt><b>ranks</b></dt> | |
236 <dd>compute ranks</dd> | |
237 <dt><b>run_count</b></dt> | |
238 <dd>count upward runs</dd> | |
239 <dt><b>spearman</b></dt> | |
240 <dd>spearman's rank correlation rho</dd> | |
241 <dt><b>statistics</b></dt> | |
242 <dd>compute basic statistics</dd> | |
243 <dt><b>studentize</b></dt> | |
244 <dd>subtract mean and divide by standard deviation</dd> | |
245 <dt><b>table</b></dt> | |
246 <dd>cross tabulation</dd> | |
247 <dt><b>values</b></dt> | |
248 <dd>extract unique elements</dd> | |
249 <dt><b>var</b></dt> | |
250 <dd>compute variance</dd> | |
251 </dl></li> | |
252 | |
253 <li>In statistics/distributions (new directory): | |
254 <dl> | |
255 <dt><b>beta_cdf</b></dt> | |
256 <dd>CDF of the Beta distribution</dd> | |
257 <dt><b>beta_inv</b></dt> | |
258 <dd>Quantile function of the Beta distribution</dd> | |
259 <dt><b>beta_pdf</b></dt> | |
260 <dd>PDF of the Beta distribution</dd> | |
261 <dt><b>beta_rnd</b></dt> | |
262 <dd>Random deviates from the Beta distribution | |
263 </dd> | |
264 <dt><b>binomial_cdf</b></dt> | |
265 <dd>CDF of the binomial distribution</dd> | |
266 <dt><b>binomial_inv</b></dt> | |
267 <dd>Quantile function of the binomial distribution</dd> | |
268 <dt><b>binomial_pdf</b></dt> | |
269 <dd>PDF of the binomial distribution</dd> | |
270 <dt><b>binomial_rnd</b></dt> | |
271 <dd>Random deviates from the binomial distribution | |
272 </dd> | |
273 <dt><b>cauchy_cdf</b></dt> | |
274 <dd>CDF of the Cauchy distribution</dd> | |
275 <dt><b>cauchy_inv</b></dt> | |
276 <dd>Quantile function of the Cauchy distribution</dd> | |
277 <dt><b>cauchy_pdf</b></dt> | |
278 <dd>PDF of the Cauchy distribution</dd> | |
279 <dt><b>cauchy_rnd</b></dt> | |
280 <dd>Random deviates from the Cauchy distribution | |
281 </dd> | |
282 <dt><b>chisquare_cdf</b></dt> | |
283 <dd>CDF of the chi-square distribution</dd> | |
284 <dt><b>chisquare_inv</b></dt> | |
285 <dd>Quantile function of the chi-square distribution</dd> | |
286 <dt><b>chisquare_pdf</b></dt> | |
287 <dd>PDF of the chi-sqaure distribution</dd> | |
288 <dt><b>chisquare_rnd</b></dt> | |
289 <dd>Random deviates from the chi-square distribution | |
290 </dd> | |
291 <dt><b>discrete_cdf</b></dt> | |
292 <dd>CDF of a discrete distribution</dd> | |
293 <dt><b>discrete_inv</b></dt> | |
294 <dd>Quantile function of a discrete distribution</dd> | |
295 <dt><b>discrete_pdf</b></dt> | |
296 <dd>PDF of a discrete distribution</dd> | |
297 <dt><b>discrete_rnd</b></dt> | |
298 <dd>Random deviates from a discrete distribution | |
299 </dd> | |
300 <dt><b>empirical_cdf</b></dt> | |
301 <dd>CDF of the empirical distribution</dd> | |
302 <dt><b>empirical_inv</b></dt> | |
303 <dd>Quantile function of the empirical distribution</dd> | |
304 <dt><b>empirical_pdf</b></dt> | |
305 <dd>PDF of the empirical distribution</dd> | |
306 <dt><b>empirical_rnd</b></dt> | |
307 <dd>Bootstrap samples from the empirical distribution | |
308 </dd> | |
309 <dt><b>exponential_cdf</b></dt> | |
310 <dd>CDF of the exponential distribution</dd> | |
311 <dt><b>exponential_inv</b></dt> | |
312 <dd>Quantile function of the exponential distribution</dd> | |
313 <dt><b>exponential_pdf</b></dt> | |
314 <dd>PDF of the exponential distribution</dd> | |
315 <dt><b>exponential_rnd</b></dt> | |
316 <dd>Random deviates from the exponential distribution | |
317 </dd> | |
318 <dt><b>f_cdf</b></dt> | |
319 <dd>CDF of the F distribution</dd> | |
320 <dt><b>f_inv</b></dt> | |
321 <dd>Quantile function of the F distribution</dd> | |
322 <dt><b>f_pdf</b></dt> | |
323 <dd>PDF of the F distribution</dd> | |
324 <dt><b>f_rnd</b></dt> | |
325 <dd>Random deviates from the F distribution | |
326 </dd> | |
327 <dt><b>gamma_cdf</b></dt> | |
328 <dd>CDF of the Gamma distribution</dd> | |
329 <dt><b>gamma_inv</b></dt> | |
330 <dd>Quantile function of the Gamma distribution</dd> | |
331 <dt><b>gamma_pdf</b></dt> | |
332 <dd>PDF of the Gamma distribution</dd> | |
333 <dt><b>gamma_rnd</b></dt> | |
334 <dd>Random deviates from the Gamma distribution | |
335 </dd> | |
336 <dt><b>geometric_cdf</b></dt> | |
337 <dd>CDF of the geometric distribution</dd> | |
338 <dt><b>geometric_inv</b></dt> | |
339 <dd>Quantile function of the geometric distribution</dd> | |
340 <dt><b>geometric_pdf</b></dt> | |
341 <dd>PDF of the geometric distribution</dd> | |
342 <dt><b>geometric_rnd</b></dt> | |
343 <dd>Random deviates from the geometric distribution | |
344 </dd> | |
345 <dt><b>hypergeometric_cdf</b></dt> | |
346 <dd>CDF of the hypergeometric distribution</dd> | |
347 <dt><b>hypergeometric_inv</b></dt> | |
348 <dd>Random deviates from hypergeometric distribution</dd> | |
349 <dt><b>hypergeometric_pdf</b></dt> | |
350 <dd>PDF of the hypergeometric distribution</dd> | |
351 <dt><b>hypergeometric_rnd</b></dt> | |
352 <dd>Random deviates from hypergeometric distribution | |
353 </dd> | |
354 <dt><b>kolmogorov_smirnov_cdf</b></dt> | |
355 <dd>CDF of the Kolmogorov-Smirnov distribution | |
356 </dd> | |
357 <dt><b>laplace_cdf</b></dt> | |
358 <dd>CDF of the Laplace distribution</dd> | |
359 <dt><b>laplace_inv</b></dt> | |
360 <dd>Quantile function of the Laplace distribution</dd> | |
361 <dt><b>laplace_pdf</b></dt> | |
362 <dd>PDF of the Laplace distribution</dd> | |
363 <dt><b>laplace_rnd</b></dt> | |
364 <dd>Random deviates from the Laplace distribution | |
365 </dd> | |
366 <dt><b>logistic_cdf</b></dt> | |
367 <dd>CDF of the logistic distribution</dd> | |
368 <dt><b>logistic_inv</b></dt> | |
369 <dd>Quantile function of the logistic distribution</dd> | |
370 <dt><b>logistic_pdf</b></dt> | |
371 <dd>PDF of the logistic distribution</dd> | |
372 <dt><b>logistic_rnd</b></dt> | |
373 <dd>Random deviates from the logistic distribution | |
374 </dd> | |
375 <dt><b>lognormal_cdf</b></dt> | |
376 <dd>CDF of the log normal distribution</dd> | |
377 <dt><b>lognormal_inv</b></dt> | |
378 <dd>Quantile function of the log normal distribution</dd> | |
379 <dt><b>lognormal_pdf</b></dt> | |
380 <dd>PDF of the log normal distribution</dd> | |
381 <dt><b>lognormal_rnd</b></dt> | |
382 <dd>Random deviates from the log normal distribution | |
383 </dd> | |
384 <dt><b>normal_cdf</b></dt> | |
385 <dd>CDF of the normal distribution</dd> | |
386 <dt><b>normal_inv</b></dt> | |
387 <dd>Quantile function of the normal distribution</dd> | |
388 <dt><b>normal_pdf</b></dt> | |
389 <dd>PDF of the normal distribution</dd> | |
390 <dt><b>normal_rnd</b></dt> | |
391 <dd>Random deviates from the normal distribution | |
392 </dd> | |
393 <dt><b>pascal_cdf</b></dt> | |
394 <dd>CDF of the Pascal (negative binomial) distribution</dd> | |
395 <dt><b>pascal_inv</b></dt> | |
396 <dd>Quantile function of the Pascal distribution</dd> | |
397 <dt><b>pascal_pdf</b></dt> | |
398 <dd>PDF of the Pascal (negative binomial) distribution</dd> | |
399 <dt><b>pascal_rnd</b></dt> | |
400 <dd>Random deviates from the Pascal distribution | |
401 </dd> | |
402 <dt><b>poisson_cdf</b></dt> | |
403 <dd>CDF of the Poisson distribution</dd> | |
404 <dt><b>poisson_inv</b></dt> | |
405 <dd>Quantile function of the Poisson distribution</dd> | |
406 <dt><b>poisson_pdf</b></dt> | |
407 <dd>PDF of the Poisson distribution</dd> | |
408 <dt><b>poisson_rnd</b></dt> | |
409 <dd>Random deviates from the Poisson distribution | |
410 </dd> | |
411 <dt><b>stdnormal_cdf</b></dt> | |
412 <dd>CDF of the standard normal distribution</dd> | |
413 <dt><b>stdnormal_inv</b></dt> | |
414 <dd>Quantile function of standard normal distribution</dd> | |
415 <dt><b>stdnormal_pdf</b></dt> | |
416 <dd>PDF of the standard normal distribution</dd> | |
417 <dt><b>stdnormal_rnd</b></dt> | |
418 <dd>Random deviates from standard normal distribution | |
419 </dd> | |
420 <dt><b>t_cdf</b></dt> | |
421 <dd>CDF of the t distribution</dd> | |
422 <dt><b>t_inv</b></dt> | |
423 <dd>Quantile function of the t distribution</dd> | |
424 <dt><b>t_pdf</b></dt> | |
425 <dd>PDF of the t distribution</dd> | |
426 <dt><b>t_rnd</b></dt> | |
427 <dd>Random deviates from the t distribution | |
428 </dd> | |
429 <dt><b>uniform_cdf</b></dt> | |
430 <dd>CDF of the uniform distribution</dd> | |
431 <dt><b>uniform_inv</b></dt> | |
432 <dd>Quantile function of the uniform distribution</dd> | |
433 <dt><b>uniform_pdf</b></dt> | |
434 <dd>PDF of the uniform distribution</dd> | |
435 <dt><b>uniform_rnd</b></dt> | |
436 <dd>Random deviates from the uniform distribution | |
437 </dd> | |
438 <dt><b>weibull_cdf</b></dt> | |
439 <dd>CDF of the Weibull distribution</dd> | |
440 <dt><b>weibull_inv</b></dt> | |
441 <dd>Quantile function of the Weibull distribution</dd> | |
442 <dt><b>weibull_pdf</b></dt> | |
443 <dd>PDF of the Weibull distribution</dd> | |
444 <dt><b>weibull_rnd</b></dt> | |
445 <dd>Random deviates from the Weibull distribution | |
446 </dd> | |
447 <dt><b>wiener_rnd</b></dt> | |
448 <dd>Simulate a Wiener process</dd> | |
449 </dl></li> | |
450 | |
451 <li>In statistics/models (new directory): | |
452 <dl> | |
453 <dt><b>logistic_regression</b></dt> | |
454 <dd>ordinal logistic regression</dd> | |
455 <dt><b>logistic_regression_derivatives</b></dt> | |
456 <dd>derivates of log-likelihood | |
457 in logistic regression</dd> | |
458 <dt><b>logistic_regression_likelihood</b></dt> | |
459 <dd>likelihood in logistic regression</dd> | |
460 </dl></li> | |
461 | |
462 <li>In statistics/tests (new directory): | |
463 <dl> | |
464 <dt><b>anova</b></dt> | |
465 <dd>one-way analysis of variance</dd> | |
466 <dt><b>bartlett_test</b></dt> | |
467 <dd>bartlett test for homogeneity of variances</dd> | |
468 <dt><b>chisquare_test_homogeneity</b></dt> | |
469 <dd>chi-square test for homogeneity</dd> | |
470 <dt><b>chisquare_test_independence</b></dt> | |
471 <dd>chi-square test for independence</dd> | |
472 <dt><b>cor_test</b></dt> | |
473 <dd>test for zero correlation</dd> | |
474 <dt><b>f_test_regression</b></dt> | |
475 <dd>test linear hypotheses in linear | |
476 regression model</dd> | |
477 <dt><b>hotelling_test</b></dt> | |
478 <dd>test for mean of a multivariate normal</dd> | |
479 <dt><b>hotelling_test_2</b></dt> | |
480 <dd>compare means of two multivariate normals</dd> | |
481 <dt><b>kolmogorov_smirnov_test</b></dt> | |
482 <dd>one-sample Kolmogorov-Smirnov test</dd> | |
483 <dt><b>kolmogorov_smirnov_test_2</b></dt> | |
484 <dd>two-sample Kolmogorov-Smirnov test</dd> | |
485 <dt><b>kruskal_wallis_test</b></dt> | |
486 <dd>kruskal-Wallis test</dd> | |
487 <dt><b>manova</b></dt> | |
488 <dd>one-way multivariate analysis of variance</dd> | |
489 <dt><b>mcnemar_test</b></dt> | |
490 <dd>mcnemar's test for symmetry</dd> | |
491 <dt><b>prop_test_2</b></dt> | |
492 <dd>compare two proportions</dd> | |
493 <dt><b>run_test</b></dt> | |
494 <dd>run test for independence</dd> | |
495 <dt><b>sign_test</b></dt> | |
496 <dd>sign test</dd> | |
497 <dt><b>t_test</b></dt> | |
498 <dd>student's one-sample t test </dd> | |
499 <dt><b>t_test_2</b></dt> | |
500 <dd>student's two-sample t test</dd> | |
501 <dt><b>t_test_regression</b></dt> | |
502 <dd>test one linear hypothesis in linear | |
503 regression model</dd> | |
504 <dt><b>u_test</b></dt> | |
505 <dd>mann-Whitney U-test</dd> | |
506 <dt><b>var_test</b></dt> | |
507 <dd>f test to compare two variances</dd> | |
508 <dt><b>welch_test</b></dt> | |
509 <dd>welch two-sample t test</dd> | |
510 <dt><b>wilcoxon_test</b></dt> | |
511 <dd>wilcoxon signed-rank test</dd> | |
512 <dt><b>z_test</b></dt> | |
513 <dd>test for mean of a normal sample with | |
514 known variance</dd> | |
515 <dt><b>z_test_2</b></dt> | |
516 <dd>compare means of two normal samples with | |
517 known variances</dd> | |
518 </dl></li> | |
519 </ul></li> | |
520 | |
521 <li>The save command now accepts the option -append to save the | |
522 variables at the end of the file, leaving the existing contents.</li> | |
523 | |
524 <li>New command-line option --no-history (also available using the | |
525 single character option -H) inhibits saving command history.</li> | |
526 | |
527 <li>The mkoctfile script now accepts -DDEF options and passes them on | |
528 to the C and C++ compilers.</li> | |
529 </ul | |
530 > | |
531 <h2>Summary of changes for version 2.0.13</h2> | |
532 | |
533 <p>This is a bug-fixing release. There are no new user-visible features.</p> | |
534 | |
535 <h2>Summary of changes for version 2.0.12</h2> | |
536 | |
537 <ul> | |
538 <li>Tilde expansion is once again performed on the directories listed | |
539 in the LOADPATH variable.</li> | |
540 | |
541 <li>gplot now supports the `axes' qualifier that is new with gnuplot | |
542 3.6beta.</li> | |
543 | |
544 <li>Timestamps on .m and .oct files are now only checked if a prompt | |
545 has been printed since the last timestamp check.</li> | |
546 | |
547 <li>Octave now prints a warning if a .m or .oct file has a time stamp | |
548 in the future.</li> | |
549 | |
550 <li>For matrices, x(:) now works no matter what the value of | |
551 do_fortran_indexing is.</li> | |
552 | |
553 <li>New keywords __FILE__ and __LINE__ expand to the name of the file | |
554 that is being read and the current input line number, respectively.</li> | |
555 | |
556 <li>The GNU Info reader is no longer distributed with Octave because | |
557 current releases of GNU Info now support all the features needed | |
558 by Octave. If your copy of GNU Info doesn't support the | |
559 --index-search option, you should install a newer version of GNU | |
560 Info, which is distributed as part of the GNU Texinfo package.</li> | |
561 | |
562 <li>Running `make check' should work now before you run `make install', | |
563 even if you build a copy of Octave that depends on shared versions | |
564 of the Octave libraries.</li> | |
565 | |
566 <li>Octave now uses kpathsea 3.2.</li> | |
567 | |
568 <li>The new built-in variable `kluge_procbuf_delay' specifies the number | |
569 of microseconds to delay in the parent process after forking. By | |
570 default on gnu-win32 systems, it's set to 500000 (1/2 second). On | |
571 other systems, the default value is 0. Delaying for a short time | |
572 in the parent after forking seems to avoid problems in which | |
573 communicating with subprocesses via pipes would sometimes cause | |
574 Octave to hang. I doubt that the delay is really the right | |
575 solution. If anyone has a better idea, I'd love to hear it.</li> | |
576 </ul> | |
577 | |
578 <h2>Summary of changes for version 2.0.11</h2> | |
579 | |
580 <ul> | |
581 <li>There are two new built-in variables that control how global | |
582 variables are initialized. If `initialize_global_variables' is | |
583 nonzero, global variables are initialized to the value of the | |
584 variable `default_global_variable_value'. The default value of | |
585 `initialize_global_variables' is 0 (1 if you use --traditional) | |
586 and `default_global_variable_value' is undefined (the empty matrix | |
587 if you use --traditional). The default settings are compatible | |
588 with versions of Octave before 2.0.10.</li> | |
589 </ul> | |
590 | |
591 <h2>Summary of changes for version 2.0.10</h2> | |
592 | |
593 <ul> | |
594 <li>The built-in variable `PWD' has been removed. If you need to get | |
595 the value of the current working directory, use the pwd() function | |
596 instead.</li> | |
597 <li>For compatibility with Matlab, Octave's lyap function now solves | |
598 <pre> | |
599 A*X + X*A' + C = 0 | |
600 </pre> | |
601 instead of | |
602 <pre> | |
603 A'*X + X*A + C = 0 | |
604 </pre> | |
605 To try to avoid confusion for people who are used to the way | |
606 Octave behaved in previous versions, a warning is printed the | |
607 first time lyap is called in a given session. To completely | |
608 disable the warning, simply add | |
609 <pre> | |
610 global __disable_lyap_interface_change_warning__; | |
611 </pre> | |
612 to your ~/.octaverc file. The warning will eventually disappear | |
613 for good in some future version of Octave.</li> | |
614 <li>New built-in functions for computing Bessel functions: | |
615 besseli, besselj, besselk, and bessely.</li> | |
616 <li>The gammai and betai functions are now implemented as built-in | |
617 functions rather than function files.</li> | |
618 <li>The new built-in variable `implicit_num_to_str_ok' controls | |
619 whether Octave converts expressions like `[97, 98, 99, "123"]' to | |
620 strings. The default value is 0 unless you use --traditional.</li> | |
621 <li>The new built-in variable `fixed_point_format' controls whether | |
622 Octave uses a scaled fixed-point format for displaying matrices. | |
623 The default value is 0 unless you use --traditional.</li> | |
624 <li>The function sumsq now computes sum (x .* conj (x)) for complex values.</li> | |
625 <li>Dynamically linked functions can be cleared.</li> | |
626 <li>If a .oct file has a time stamp more recent than the time that it | |
627 was loaded, it is automatically reloaded. Reloading a .oct file | |
628 may cause several functions to be cleared automatically. By | |
629 default, a warning is printed that lists the names of the | |
630 functions that will be cleared. You can suppress the message by | |
631 setting the new built-in variable `warn_reload_forces_clear' to 0.</li> | |
632 <li>Global variables are now initialized to the empty matrix, for | |
633 compatibility with Matlab.</li> | |
634 <li>Explicit initialization of global variables only happens once. | |
635 For example, after the following statements are evaluated, g still | |
636 has the value 1. | |
637 <pre> | |
638 global g = 1 | |
639 global g = 2 | |
640 </pre> | |
641 This is useful for initializing global variables that are used to | |
642 maintain state information that is shared among several functions.</li> | |
643 <li>The new built-in variable max_recursion_depth allows you to | |
644 prevent Octave from attempting infinite recursion. The default | |
645 value is 256.</li> | |
646 <li>Octave now uses readline version 2.1 and kpathsea 3.0.</li> | |
647 <li>The libreadline and libkpathsea libraries are no longer installed.</li> | |
648 <li>The libcruft, liboctave, and liboctinterp libraries are now | |
649 installed in $libdir/octave instead of just $libdir.</li> | |
650 <li>It's no longer necessary to have libg++, but you do need to have | |
651 the GNU implementation of libstdc++. If you are using gcc 2.7.2, | |
652 libstdc++ is distributed as part of libg++ 2.7.2. For later | |
653 versions, libstdc++ is distributed separately. For egcs, | |
654 libstdc++ is included with the compiler distribution.</li> | |
655 </ul> | |
656 | |
657 <h2>Summary of changes for version 2.0.9</h2> | |
658 | |
659 <p>This is a bug-fixing release, but there is one new user-visible | |
660 feature:</p> | |
661 | |
662 <ul> | |
663 <li>It is now possible to specify a label for lines in the plot key | |
664 when using the plot function. For example, | |
665 <pre> | |
666 plot (x, y, "-*;sin(x);") | |
667 </pre> | |
668 plots y vs. x using the linespoints style and sets the title of | |
669 the line in the key to be `sin(x)'</li> | |
670 </ul> | |
671 | |
672 <h2>Summary of changes for version 2.0.8</h2> | |
673 | |
674 <p>This is a bug-fixing release. There are only a few new user-visible | |
675 features.</p> | |
676 | |
677 <ul> | |
678 <li>If the argument to eig() is symmetric, Octave uses the specialized | |
679 Lapack subroutine for symmetric matrices for a significant | |
680 increase in performance.</li> | |
681 <li>It is now possible to use the mkoctfile script to create .oct | |
682 files from multiple source and object files.</li> | |
683 </ul> | |
684 | |
685 <h2>Summary of changes for version 2.0.7</h2> | |
686 | |
687 <p>This is a bug-fixing release. There are no new user-visible features.</p> | |
688 | |
689 <h2>Summary of changes for version 2.0.6</h2> | |
690 | |
691 <p>This is primarily a bug-fixing release. There are only a few new | |
692 user-visilbe features.</p> | |
693 | |
694 <ul> | |
695 <li>The new built-in variable default_eval_print_flag controls whether | |
696 Octave prints the results of commands executed by eval() that do | |
697 not end with semicolons. The default is 1.</li> | |
698 <li>The new built-in constant OCTAVE_HOME specifies the top-level | |
699 directory where Octave is installed.</li> | |
700 <li>Octave no longer includes functions to work with NPSOL or QPSOL, | |
701 because they are not free software.</li> | |
702 </ul> | |
703 | |
704 <h2>Summary of changes for version 2.0.5</h2> | |
705 | |
706 <ul> | |
707 <li>A `switch' statement is now available. See the Statements chapter | |
708 in the manual for details.</li> | |
709 <li>Commands like ls, save, and cd may now also be used as formal | |
710 parameters for functions.</li> | |
711 <li>More tests.</li> | |
712 </ul> | |
713 | |
714 <h2>Summary of changes for version 2.0.4</h2> | |
715 | |
716 <ul> | |
717 <li>It is now possible to use commands like ls, save, and cd as simple | |
718 variable names. They still cannot be used as formal parameters | |
719 for functions, or as the names of structure variables. Failed | |
720 assignments leave them undefined (you can recover the orginal | |
721 function definition using clear).</li> | |
722 <li>Is is now possible to invoke commands like ls, save, and cd as | |
723 normal functions (for example, load ("foo", "x", "y", "z")).</li> | |
724 </ul> | |
725 | |
726 <h2>Summary of changes for version 2.0.3</h2> | |
727 | |
728 <ul> | |
729 <li>The manual has been completely revised and now corresponds much | |
730 more closely to the features of the current version.</li> | |
731 <li>The return value for assignment expressions is now the RHS since | |
732 that is more consistent with the way other programming languages | |
733 work. However, Octave still prints the entire LHS value so that | |
734 <pre> | |
735 x = zeros (1, 2); | |
736 x(2) = 1 | |
737 </pre> | |
738 still prints | |
739 <pre> | |
740 x = | |
741 | |
742 0 1 | |
743 | |
744 </pre> | |
745 but an assignment like | |
746 <pre> | |
747 z = x(2) = 1 | |
748 </pre> | |
749 sets z to 1 (not [ 0, 1 ] as in previous versions of Octave).</li> | |
750 <li>It is now much easier to make binary distributions. See the | |
751 Binary Distributions section of the manual for more details.</li> | |
752 </ul> | |
753 | |
754 <h2>Summary of changes for version 2.0.2</h2> | |
755 | |
756 <ul></li> | |
757 <li>Octave now stops executing commands from a script file if an error | |
758 is encountered.</li> | |
759 <li>The return, and break commands now cause Octave to quit executing | |
760 commands from script files. When used in invalid contexts, the | |
761 break, continue, and return commands are now simply ignored | |
762 instead of producing parse errors.</li> | |
763 <li>size ("") is now [0, 0].</li> | |
764 <li>New functions: | |
765 <dl> | |
766 <dt><b>sleep</b></dt> | |
767 <dd>pause execution for a specified number of seconds</dd> | |
768 <dt><b>usleep</b></dt> | |
769 <dd>pause execution for a specified number of microseconds</dd> | |
770 </dl></li> | |
771 </ul> | |
772 </pre> | |
773 | |
774 <h2>Summary of changes for version 2.0.1</h2> | |
775 | |
776 <p>Other than bug fixes, there were no user-visible changes in version | |
777 2.0.1. | |
778 | |
779 <h2>Summary of changes for version 2.0</h2> | |
780 | |
781 <p><ul> | |
782 <li>The set and show commands for setting and displaying gnuplot | |
783 parameters have been replaced by gset and gshow. This change will | |
784 probably break lots of things, but it is necessary to allow for | |
785 compatibility with the Matlab graphics and GUI commands in a | |
786 future version of Octave. (For now, the old set and show commands | |
787 do work, but they print an annoying warning message to try to get | |
788 people to switch to using gset.)</li> | |
789 <li>Octave has been mostly ported to Windows NT and Windows 95 using | |
790 the beta 17 release of the Cygnus GNU-WIN32 tools. Not everything | |
791 works, but it is usable. See the file README.WINDOWS for more | |
792 information.</li> | |
793 <li>Dynamic linking works on more systems using dlopen() and friends | |
794 (most modern Unix systems) or shl_load() and friends (HP/UX | |
795 systems). A simple example is provided in examples/hello.cc. | |
796 For this feature to work, you must configure Octave with | |
797 --enable-shared. You may also need to have a shared-library | |
798 version of libg++ and libstdc++.</li> | |
799 <li>New data types can be added to Octave by writing a C++ class. On | |
800 systems that support dynamic linking, new data types can be added | |
801 to an already running Octave binary. A simple example appears in | |
802 the file examples/make_int.cc. Other examples are the standard | |
803 Octave data types defined in the files src/ov*.{h,cc} and | |
804 src/op-*.cc.</li> | |
805 <li>The configure option --enable-bounds-check turns on bounds | |
806 checking on element references for Octave's internal array and | |
807 matrix classes. It's enabled by default. To disable this | |
808 feature, configure Octave with --disable-bounds-check.</li> | |
809 <li>The C-style I/O functions (fopen, fprintf, etc.) have been | |
810 rewritten to be more compatible with Matlab. The fputs function | |
811 has also been added. Usage of the *printf functions that was | |
812 allowed in previous versions of Octave should still work. | |
813 However, there is no way to make the new versions of the *scanf | |
814 functions compatible with Matlab *and* previous versions of | |
815 Octave. An optional argument to the *scanf functions is now | |
816 available to make them behave in a way that is compatible with | |
817 previous versions of Octave.</li> | |
818 <li>Octave can now read files that contain columns of numbers only, | |
819 with no header information. The name of the loaded variable is | |
820 constructed from the file name. Each line in the file must have | |
821 the same number of elements.</li> | |
822 <li>The interface to the pager has changed. The new built-in variable | |
823 `page_output_immediately' controls when Octave sends output to the | |
824 pager. If it is nonzero, Octave sends output to the pager as soon | |
825 as it is available. Otherwise, Octave buffers its output and | |
826 waits until just before the prompt is printed to flush it to the | |
827 pager.</li> | |
828 <li>Expressions of the form | |
829 <pre> | |
830 A(i,j) = x | |
831 </pre> | |
832 where X is a scalar and the indices i and j define a matrix of | |
833 elements now work as you would expect rather than giving an error. | |
834 I am told that this is how Matlab 5.0 will behave when it is | |
835 released.</li> | |
836 <li>Indexing of character strings now works.</li> | |
837 <li>The echo command has been implemented.</li> | |
838 <li>The document command is now a regular function.</li> | |
839 <li>New method for handling errors: | |
840 <pre> | |
841 try | |
842 BODY | |
843 catch | |
844 CLEANUP | |
845 end_try_catch | |
846 </pre> | |
847 Where BODY and CLEANUP are both optional and may contain any | |
848 Octave expressions or commands. The statements in CLEANUP are | |
849 only executed if an error occurs in BODY. | |
850 | |
851 <p> No warnings or error messages are printed while BODY is | |
852 executing. If an error does occur during the execution of BODY, | |
853 CLEANUP can access the text of the message that would have been | |
854 printed in the builtin constant __error_text__. This is the same | |
855 as eval (TRY, CATCH) (which may now also use __error_text__) but | |
856 it is more efficient since the commands do not need to be parsed | |
857 each time the TRY and CATCH statements are evaluated.</li> | |
858 <li>Octave no longer parses the help command by grabbing everything | |
859 after the keyword `help' until a newline character is read. To | |
860 get help for `;' or `,', now, you need to use the command | |
861 `help semicolon' or `help comma'.</li> | |
862 <li>Octave's parser now does some simple constant folding. This means | |
863 that expressions like 3*i are now evaluated only once, when a | |
864 function is compiled, and the right hand side of expressions like | |
865 a = [1,2;3,4] are treated as true matrix constants rather than | |
866 lists of elements which must be evaluated each time they are | |
867 needed.</li> | |
868 <li>Built-in variables that can take values of "true" and "false" can | |
869 now also be set to any nonzero scalar value to indicate "true", | |
870 and 0 to indicate "false".</li> | |
871 <li>New built-in variables `history_file', `history_size', and | |
872 `saving_history'.</li> | |
873 <li>New built-in variable `string_fill_char' specifies the character | |
874 to fill with when creating arrays of strings.</li> | |
875 <li>If the new built-in variable `gnuplot_has_frames' is nonzero, | |
876 Octave assumes that your copy of gnuplot includes support for | |
877 multiple plot windows when using X11. | |
878 | |
879 If the new built-in variable `gnuplot_has_multiplot' is nonzero, | |
880 Octave assumes that your copy of gnuplot has the multiplot support | |
881 that is included in recent 3.6beta releases. | |
882 | |
883 The initial values of these variables are determined by configure, | |
884 but can be changed in your startup script or at the command line | |
885 in case configure got it wrong, or if you upgrade your gnuplot | |
886 installation.</li> | |
887 <li>The new plot function `figure' allows multiple plot windows when | |
888 using newer versions of gnuplot with X11.</li> | |
889 <li>Octave now notices when the plotter has exited unexpectedly.</li> | |
890 <li>New built-in variable `warn_missing_semicolon'. If nonzero, Octave | |
891 will warn when statements in function definitions don't end in | |
892 semicolons. The default value is 0.</li> | |
893 <li>Octave now attempts to continue after floating point exceptions | |
894 or out-of-memory errors.</li> | |
895 <li>If Octave crashes, it now attempts to save all user-defined | |
896 variables in a file named `octave-core' in the current directory | |
897 before exiting.</li> | |
898 <li>It is now possible to get the values of individual option settings | |
899 for the dassl, fsolve, lsode, npsol, qpsol, and quad functions | |
900 using commands like | |
901 <pre> | |
902 dassl_reltol = dassl_options ("relative tolerance"); | |
903 </pre></li> | |
904 <li>The svd() function no longer computes the left and right singular | |
905 matrices unnecessarily. This can significantly improve | |
906 performance for large matrices if you are just looking for the | |
907 singular values.</li> | |
908 <li>The filter() function is now a built-in function.</li> | |
909 <li>New function randn() returns a pseudo-random number from a normal | |
910 distribution. The rand() and randn() functions have separate | |
911 seeds and generators.</li> | |
912 <li>Octave's command-line arguments are now available in the built-in | |
913 variable `argv'. The program name is also available in the | |
914 variables `program_invocation_name' and `program_name'. If | |
915 executing a script from the command line (e.g., octave foo.m) or | |
916 using the `#! /bin/octave' hack, the program name is set to the | |
917 name of the script.</li> | |
918 <li>New built-in variable `completion_append_char' used as the | |
919 character to append to successful command-line completion | |
920 attempts. The default is " " (a single space).</li> | |
921 <li>Octave now uses a modified copy of the readline library from | |
922 version 1.14.5 of GNU bash.</li> | |
923 <li>In prompt strings, `\H' expands to the whole host name.</li> | |
924 <li>New built-in variable `beep_on_error'. If nonzero, Octave will try | |
925 to ring your terminal's bell before printing an error message. | |
926 The default value is 0.</li> | |
927 <li>For functions defined from files, the type command now prints the | |
928 text of the file. You can still get the text reconstructed from | |
929 the parse tree by using the new option -t (-transformed).</li> | |
930 <li>New command-line argument --traditional sets the following | |
931 preference variables for compatibility with Matlab: | |
932 <pre> | |
933 PS1 = ">> " | |
934 PS2 = "" | |
935 beep_on_error = 1 | |
936 default_save_format = "mat-binary" | |
937 define_all_return_values = 1 | |
938 do_fortran_indexing = 1 | |
939 empty_list_elements_ok = 1 | |
940 implicit_str_to_num_ok = 1 | |
941 ok_to_lose_imaginary_part = 1 | |
942 page_screen_output = 0 | |
943 prefer_column_vectors = 0 | |
944 prefer_zero_one_indexing = 1 | |
945 print_empty_dimensions = 0 | |
946 treat_neg_dim_as_zero = 1 | |
947 warn_function_name_clash = 0 | |
948 whitespace_in_literal_matrix = "traditional" | |
949 </pre></li> | |
950 <li>New functions: | |
951 <dl> | |
952 <dt><b>readdir</b></dt> | |
953 <dd>returns names of files in directory as array of strings</dd> | |
954 <dt><b>mkdir</b></dt> | |
955 <dd>create a directory</dd> | |
956 <dt><b>rmdir</b></dt> | |
957 <dd>remove a directory</dd> | |
958 <dt><b>rename</b></dt> | |
959 <dd>rename a file</dd> | |
960 <dt><b>unlink</b></dt> | |
961 <dd>delete a file</dd> | |
962 <dt><b>umask</b></dt> | |
963 <dd>set permission mask for file creation</dd> | |
964 <dt><b>stat</b></dt> | |
965 <dd>get information about a file</dd> | |
966 <dt><b>lstat</b></dt> | |
967 <dd>get information about a symbolic link</dd> | |
968 <dt><b>glob</b></dt> | |
969 <dd>perform filename globbing</dd> | |
970 <dt><b>fnmatch</b></dt> | |
971 <dd>match strings with filename globbing patterns</dd> | |
972 <dt><b>more</b></dt> | |
973 <dd>turn the pager on or off</dd> | |
974 <dt><b>gammaln</b></dt> | |
975 <dd>alias for lgamma</dd> | |
976 </dl></li> | |
977 <li>New audio functions from Andreas Weingessel: | |
978 <dl> | |
979 <dt><b>lin2mu</b></dt> | |
980 <dd>linear to mu-law encoding</dd> | |
981 <dt><b>loadaudio</b></dt> | |
982 <dd>load an audio file to a vector</dd> | |
983 <dt><b>mu2lin</b></dt> | |
984 <dd>mu-law to linear encoding</dd> | |
985 <dt><b>playaudio</b></dt> | |
986 <dd>play an audio file</dd> | |
987 <dt><b>record</b></dt> | |
988 <dd>record sound and store in vector</dd> | |
989 <dt><b>saveaudio</b></dt> | |
990 <dd>save a vector as an audio file</dd> | |
991 <dt><b>setaudio</b></dt> | |
992 <dd>executes mixer shell command</dd> | |
993 </dl></li> | |
994 <li>New plotting functions from Vinayak Dutt. Ones dealing with | |
995 multiple plots on one page require features from gnuplot 3.6beta | |
996 (or later). | |
997 <dl> | |
998 <dt><b>bottom_title</b></dt> | |
999 <dd>put title at the bottom of the plot</dd> | |
1000 <dt><b>mplot</b></dt> | |
1001 <dd>multiplot version of plot</dd> | |
1002 <dt><b>multiplot</b></dt> | |
1003 <dd>switch multiple-plot mode on or off</dd> | |
1004 <dt><b>oneplot</b></dt> | |
1005 <dd>return to one plot per page</dd> | |
1006 <dt><b>plot_border</b></dt> | |
1007 <dd>put a border around plots</dd> | |
1008 <dt><b>subplot</b></dt> | |
1009 <dd>position multiple plots on a single page</dd> | |
1010 <dt><b>subwindow</b></dt> | |
1011 <dd>set subwindow position for next plot</dd> | |
1012 <dt><b>top_title</b></dt> | |
1013 <dd>put title at the top of the plot</dd> | |
1014 <dt><b>zlabel</b></dt> | |
1015 <dd>put a label on the z-axis</dd> | |
1016 </dl></li> | |
1017 <li>New string functions | |
1018 <dl> | |
1019 <dt><b>bin2dec</b></dt> | |
1020 <dd>convert a string of ones and zeros to an integer</dd> | |
1021 <dt><b>blanks</b></dt> | |
1022 <dd>create a string of blanks</dd> | |
1023 <dt><b>deblank</b></dt> | |
1024 <dd>delete trailing blanks</dd> | |
1025 <dt><b>dec2bin</b></dt> | |
1026 <dd>convert an integer to a string of ones and zeros</dd> | |
1027 <dt><b>dec2hex</b></dt> | |
1028 <dd>convert an integer to a hexadecimal string</dd> | |
1029 <dt><b>findstr</b></dt> | |
1030 <dd>locate occurrences of one string in another</dd> | |
1031 <dt><b>hex2dec</b></dt> | |
1032 <dd>convert a hexadecimal string to an integer</dd> | |
1033 <dt><b>index</b></dt> | |
1034 <dd>return position of first occurrence a string in another</dd> | |
1035 <dt><b>rindex</b></dt> | |
1036 <dd>return position of last occurrence a string in another</dd> | |
1037 <dt><b>split</b></dt> | |
1038 <dd>divide one string into pieces separated by another</dd> | |
1039 <dt><b>str2mat</b></dt> | |
1040 <dd>create a string matrix from a list of strings</dd> | |
1041 <dt><b>strrep</b></dt> | |
1042 <dd>replace substrings in a string</dd> | |
1043 <dt><b>substr</b></dt> | |
1044 <dd>extract a substring</dd> | |
1045 </dl> | |
1046 <p> The following functions return a matrix of ones and zeros. | |
1047 Elements that are nonzero indicate that the condition was true for | |
1048 the corresponding character in the string array. | |
1049 <dl> | |
1050 <dt><b>isalnum</b></dt> | |
1051 <dd>letter or a digit</dd> | |
1052 <dt><b>isalpha</b></dt> | |
1053 <dd>letter</dd> | |
1054 <dt><b>isascii</b></dt> | |
1055 <dd>ascii</dd> | |
1056 <dt><b>iscntrl</b></dt> | |
1057 <dd>control character</dd> | |
1058 <dt><b>isdigit</b></dt> | |
1059 <dd>digit</dd> | |
1060 <dt><b>isgraph</b></dt> | |
1061 <dd>printable (but not space character)</dd> | |
1062 <dt><b>islower</b></dt> | |
1063 <dd>lower case</dd> | |
1064 <dt><b>isprint</b></dt> | |
1065 <dd>printable (including space character)</dd> | |
1066 <dt><b>ispunct</b></dt> | |
1067 <dd>punctuation</dd> | |
1068 <dt><b>isspace</b></dt> | |
1069 <dd>whitespace</dd> | |
1070 <dt><b>isupper</b></dt> | |
1071 <dd>upper case</dd> | |
1072 <dt><b>isxdigit</b></dt> | |
1073 <dd>hexadecimal digit</dd> | |
1074 </dl> | |
1075 <p> These functions return new strings. | |
1076 <dl> | |
1077 <dt><b>tolower</b></dt> | |
1078 <dd>convert to lower case</dd> | |
1079 <dt><b>toupper</b></dt> | |
1080 <dd>convert to upper case</dd> | |
1081 </dl></li> | |
1082 <li>New function, fgetl. Both fgetl and fgets accept an optional | |
1083 second argument that specifies a maximum number of characters to | |
1084 read, and the function fgets is now compatible with Matlab.</li> | |
1085 <li>Printing in hexadecimal format now works (format hex). It is also | |
1086 possible to print the internal bit representation of a value | |
1087 (format bit). Note that these formats are only implemented for | |
1088 numeric values.</li> | |
1089 <li>Additional structure features: | |
1090 <ul> | |
1091 <li>Name completion now works for structures.</li> | |
1092 <li>Values and names of structure elements are now printed by | |
1093 default. The new built-in variable `struct_levels_to_print' | |
1094 controls the depth of nested structures to print. The default | |
1095 value is 2.</li> | |
1096 <li>New functions: | |
1097 <dl> | |
1098 <dt><b>struct_contains (S, NAME)</b></dt> | |
1099 <dd>returns 1 if S is a structure with element NAME; otherwise returns 0.</dd> | |
1100 <dt><b>struct_elements (S)</b></dt> | |
1101 <dd>returns the names of all elements of structure S in an array of | |
1102 strings.</dd> | |
1103 </dl></li> | |
1104 </ul></li> | |
1105 <li>New io/subprocess functions: | |
1106 <dl> | |
1107 <dt><b>fputs</b></dt> | |
1108 <dd>write a string to a file with no formatting</dd> | |
1109 <dt><b>popen2</b></dt> | |
1110 <dd>start a subprocess with 2-way communication</dd> | |
1111 <dt><b>mkfifo</b></dt> | |
1112 <dd>create a FIFO special file</dd> | |
1113 <dt><b>popen</b></dt> | |
1114 <dd>open a pipe to a subprocess</dd> | |
1115 <dt><b>pclose</b></dt> | |
1116 <dd>close a pipe from a subprocess</dd> | |
1117 <dt><b>waitpid</b></dt> | |
1118 <dd>check the status of or wait for subprocesses</dd> | |
1119 </dl></li> | |
1120 <li>New time functions: | |
1121 <dl> | |
1122 <dt><b>asctime</b></dt> | |
1123 <dd>format time structure according to local format</dd> | |
1124 <dt><b>ctime</b></dt> | |
1125 <dd>equivalent to `asctime (localtime (TMSTRUCT))'</dd> | |
1126 <dt><b>gmtime</b></dt> | |
1127 <dd>return time structure corresponding to UTC</dd> | |
1128 <dt><b>localtime</b></dt> | |
1129 <dd>return time structure corresponding to local time zone</dd> | |
1130 <dt><b>strftime</b></dt> | |
1131 <dd>print given time structure using specified format</dd> | |
1132 <dt><b>time</b></dt> | |
1133 <dd>return current time</dd> | |
1134 </dl> | |
1135 <p> The `clock' and `date' functions are now implemented in M-files | |
1136 using these basic functions.</li> | |
1137 <li>Access to additional Unix system calls: | |
1138 <dl> | |
1139 <dt><b>dup2</b></dt> | |
1140 <dd>duplicate a file descriptor</dd> | |
1141 <dt><b>exec</b></dt> | |
1142 <dd>replace current process with a new process</dd> | |
1143 <dt><b>fcntl</b></dt> | |
1144 <dd>control open file descriptors</dd> | |
1145 <dt><b>fork</b></dt> | |
1146 <dd>create a copy of the current process</dd> | |
1147 <dt><b>getpgrp</b></dt> | |
1148 <dd>return the process group id of the current process</dd> | |
1149 <dt><b>getpid</b></dt> | |
1150 <dd>return the process id of the current process</dd> | |
1151 <dt><b>getppid</b></dt> | |
1152 <dd>return the process id of the parent process</dd> | |
1153 <dt><b>getuid</b></dt> | |
1154 <dd>return the real user id of the current process</dd> | |
1155 <dt><b>getgid</b></dt> | |
1156 <dd>return the real group id of the current process</dd> | |
1157 <dt><b>geteuid</b></dt> | |
1158 <dd>return the effective user id of the current process</dd> | |
1159 <dt><b>getegid</b></dt> | |
1160 <dd>return the effective group id of the current process</dd> | |
1161 <dt><b>pipe</b></dt> | |
1162 <dd>create an interprocess channel</dd> | |
1163 </dl></li> | |
1164 <li>Other new functions: | |
1165 <dl> | |
1166 <dt><b>commutation_matrix</b></dt> | |
1167 <dd>compute special matrix form</dd> | |
1168 <dt><b>duplication_matrix</b></dt> | |
1169 <dd>compute special matrix form</dd> | |
1170 <dt><b>common_size.m</b></dt> | |
1171 <dd>bring arguments to a common size</dd> | |
1172 <dt><b>completion_matches</b></dt> | |
1173 <dd>perform command completion on string</dd> | |
1174 <dt><b>tilde_expand</b></dt> | |
1175 <dd>perform tilde expansion on string</dd> | |
1176 <dt><b>meshgrid</b></dt> | |
1177 <dd>compatible with Matlab's meshgrid function</dd> | |
1178 <dt><b>tmpnam</b></dt> | |
1179 <dd>replaces octave_tmp_file_name</dd> | |
1180 <dt><b>atexit</b></dt> | |
1181 <dd>register functions to be called when Octave exits</dd> | |
1182 <dt><b>putenv</b></dt> | |
1183 <dd>define an environment variable</dd> | |
1184 <dt><b>bincoeff</b></dt> | |
1185 <dd>compute binomial coefficients</dd> | |
1186 <dt><b>nextpow2</b></dt> | |
1187 <dd>compute the next power of 2 greater than a number</dd> | |
1188 <dt><b>detrend</b></dt> | |
1189 <dd>remove a best fit polynomial from data</dd> | |
1190 <dt><b>erfinv</b></dt> | |
1191 <dd>inverse error function</dd> | |
1192 <dt><b>shift</b></dt> | |
1193 <dd>perform a circular shift on the elements of a matrix</dd> | |
1194 <dt><b>pow2</b></dt> | |
1195 <dd>compute 2 .^ x</dd> | |
1196 <dt><b>log2</b></dt> | |
1197 <dd>compute base 2 logarithms</dd> | |
1198 <dt><b>diff</b></dt> | |
1199 <dd>compute differences of matrix elements</dd> | |
1200 <dt><b>vech</b></dt> | |
1201 <dd>stack columns of a matrix below the diagonal</dd> | |
1202 <dt><b>vec</b></dt> | |
1203 <dd>stack columns of a matrix to form a vector</dd> | |
1204 <dt><b>xor</b></dt> | |
1205 <dd>compute exclusive or</dd> | |
1206 </dl></li> | |
1207 <li>Functions for getting info from the password database on Unix systems: | |
1208 <dl> | |
1209 <dt><b>getpwent</b></dt> | |
1210 <dd>read entry from password-file stream, opening if necessary</dd> | |
1211 <dt><b>getpwuid</b></dt> | |
1212 <dd>search for password entry with matching user ID</dd> | |
1213 <dt><b>getpwnam</b></dt> | |
1214 <dd>search for password entry with matching username</dd> | |
1215 <dt><b>setpwent</b></dt> | |
1216 <dd>rewind the password-file stream</dd> | |
1217 <dt><b>endpwent</b></dt> | |
1218 <dd>close the password-file stream</dd> | |
1219 </dl></li> | |
1220 <li>Functions for getting info from the group database on Unix systems: | |
1221 <dl> | |
1222 <dt><b>getgrent</b></dt> | |
1223 <dd>read entry from group-file stream, opening if necessary</dd> | |
1224 <dt><b>getgrgid</b></dt> | |
1225 <dd>search for group entry with matching group ID</dd> | |
1226 <dt><b>getgrnam</b></dt> | |
1227 <dd>search for group entry with matching group name</dd> | |
1228 <dt><b>setgrent</b></dt> | |
1229 <dd>rewind the pgroup-file stream</dd> | |
1230 <dt><b>endgrent</b></dt> | |
1231 <dd>close the group-file stream</dd> | |
1232 </dl></li> | |
1233 <li>The New function octave_config_info returns a structure containing | |
1234 information about how Octave was configured and compiled.</li> | |
1235 <li>New function getrusage returns a structure containing system | |
1236 resource usage statistics. The `cputime' function is now defined | |
1237 in an M-file using getrusage.</li> | |
1238 <li>The info reader is now a separate binary that runs as a | |
1239 subprocess. You still need the info reader distributed with | |
1240 Octave though, because there are some new command-line arguments | |
1241 that are not yet available in the public release of Info.</li> | |
1242 <li>There is a new built-in variable, INFO_PROGRAM, which is used as | |
1243 the name of the info program to run. Its initial value is | |
1244 $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH/info, but that value can | |
1245 be overridden by the environment variable OCTAVE_INFO_PROGRAM, or | |
1246 the command line argument --info-program NAME, or by setting the | |
1247 value of INFO_PROGRAM in a startup script.</li> | |
1248 <li>There is a new built-in variable, EXEC_PATH, which is used as | |
1249 the list of directories to search when executing subprograms. Its | |
1250 initial value is taken from the environment variable | |
1251 OCTAVE_EXEC_PATH (if it exists) or PATH, but that value can be | |
1252 overridden by the the command line argument --exec-path PATH, or | |
1253 by setting the value of EXEC_PATH in a startup script. If the | |
1254 EXEC_PATH begins (ends) with a colon, the directories | |
1255 $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH and $OCTAVE_HOME/bin are | |
1256 prepended (appended) to EXEC_PATH (if you don't specify a value | |
1257 for EXEC_PATH explicitly, these special directories are prepended | |
1258 to your PATH).</li> | |
1259 <li>If it is present, Octave will now use an `ls-R' database file to | |
1260 speed up recursive path searching. Octave looks for a file called | |
1261 ls-R in the directory specified by the environment variable | |
1262 OCTAVE_DB_DIR. If that is not set but the environment variable | |
1263 OCTAVE_HOME is set, Octave looks in $OCTAVE_HOME/lib/octave. | |
1264 Otherwise, Octave looks in the directory $datadir/octave (normally | |
1265 /usr/local/lib/octave).</li> | |
1266 <li>New examples directory.</li> | |
1267 <li>There is a new script, mkoctfile, that can be used to create .oct | |
1268 files suitable for dynamic linking.</li> | |
1269 <li>Many more bug fixes.</li> | |
1270 <li>ChangeLogs are now kept in each subdirectory.</li></li> | |
1271 </ul> | |
1272 | |
1273 </body> | |
1274 </html> |