<Next version of Ox
<Previous version of Ox
Ox 3.20: new features and fixes
New features and enhancements
- Made Num1Derivative and Num2Derivative
marginally more accurate. This can have minor impact on the
paths taken by optimizers such as MaxBFGS and MaxNewton
when using numerical derivatives.
- decschur: real Schur decomposition,
decschurgen: generalized real Schur decomposition, and
decqrupdate: update a QR decomposition via Givens rotations.
- eigen: now using lapack implementation
- moments: function to compute mean, std.dev.,
skewness, kurtosis, or the central moments.
entirely rewritten, to use recursive updating
of the QR decomposition (using the new decqrupdate function).
This makes SolveQP more reliable (when starting from an infeasible
point, the old version occasionally stopped at an infeasible solution
without signalling this),
and much faster. Using the new SolveQP, there are now also
constrained maximizers: MaxSQP and MaxSQPF. SQP stands for sequential
quadratic programming, and the F for feasible: starting from
a feasible point, all subsequent iterates will be feasible.
- strtrim: removes leading and trailing white space from a string.
- Almost all distributions that have a random number generator,
now also have a dist, prob and quan version.
- min and max now ignore missing values
- SolveNLE to solve systems of nonlinear equations
- New Bessel I, IE function implementation
for nu != 0 or 1. This is will evaluate the function for
more extreme arguments, and allow negative nu.
- Created warning for using extension in #import
- aa' and a'a 3 times faster for 500x500 matrix.
Problems in version 3.10 which have been fixed in version 3.20:
- fixed problem with complex eigenvectors of
a general matrix which could occur in certain circumstances.
- range with infeasible arguments often returned 0
when it should return <>. For example: range(3,1,1) now
- exclusion(x,<>) returned <>, instead of
row vector with sorted unique values of x.
- If an include-file finishes with a compiler
directive (e.g. #endif) without a new line, this gives an
unexpected end of file error message.
- created warning for using extension in #import
- <-1^2> was evaluated as <(-1)^2> instead of
<-(1^2)> (only affecting terms inside matrix constants)
- norm on empty matrix could lead to crash.
- import path-only (e.g. #import "mypath/data/")
would give a warning message.
-  *  gave undefined contents, now
filled with missing values.
- decqr, decsvd: give Runtime error: arguments must be different
for empty matrix arguments
OxGauss (thanks to Sébastien Laurent)
- saved(y,dataset,vname) where y is one column uses name X1 instead of Y
- coreleft now returns 2^15 instead of 2^31 (note that OxGauss this concept
has no meaning in Ox Gauss).
- readr limits the number of rows arguments to the no of rows in the file
- gradp now uses NumJacobianEx
- indnv was wrong
- fixed bug in multiple returns that could gradually lead to stack overflow
- $+ didn't work when left-hand side is matrix (e.g. y = 0 $+ "beta")
Ox version 3.20.
This file last changed .