<
Next version of Ox>
<
Previous version of Ox>
Ox 5: new features and fixes
Fixed problems in version 5.1
New features and enhancements in version 5.0
Fixed problems in version 5.0
Fixed problems in version 5.1
New features and enhancements in version 5.0
- Multithreaded version (Ox Professional only)
New command line option -rp to specify number of parallel threads.
The default is to use the same as the number of cores/processors.
Use -rp1 to force running on just one (serial instead of parallel).
- Can now have enum inside class declaration (behaving as
static const decl member variables).
- Can now declare the same class twice (e.g. by accidentally
including a header file twice, provided the declarations are identical)
- Modelbase::ForceYlag changed all types to Y_VAR for lagged
Y variables. Now argument can be array of two values to specify which type
to change (first is value to change to, second to change from).
Modelbase::ReceiveModel() now only changes X_VAR
to Y_VAR for lagged dep.vars using
ForceYlag( {Y_VAR, X_VAR} );
- ismember and classname functions.
- improved invertgen documentation.
- Database::Grow and Modelbase::Grow now accept a negative
argument to add observations at the beginning. Improved the created dates
when extending a dated (weekly or 5 days per week) database.
- Database::Remove and Database::Rename now accept arrays of strings
as arguments.
- dropr and insertr now also work on arrays.
- getfiles function
- OxPack:
- Added "OxPackGetData"("DbFullPath")
- Can now specify multiple extensions in OP_FILE_OPEN, e.g.
"OxPackSpecialDialog"("OP_FILE_OPEN", 0, "*.in7;*.xls"
- Added OP_VARIABLE (OxPackSpecialDialog) and CTL_VARIABLE
(dialog control). This allows editing any Ox variable, including
arrays and objects of classes. The type of components cannot be changed.
- Now can take the reference (address) of const variables
(previously this would be a compile-time error).
This allows using fscan("%v", &this) to read an object from disk. Also
allowed is &this in OP_VARIABLE or CTL_VARIABLE.
- Faster sorting functions
- exclusion function with 3 arguments now sets idx to <>
if the input is empty
- improvements for quanbeta and quanf, probf, tailf
now allows n,m>0
instead of n,m>1.
Fixed problems in version 5.0:
- "%v" format: don't read/write static const members.
- public static data members were not directly accessible.
- In Ox 4 ranseed returns the 256 seeds. However, the
generator has an additional state and carry integer, so this is not
enough to get the exact state of the generator. Now ranseed will
return 258 numbers: the 256 seeds followed by state and carry.
This allows for the exact state to be replicated (defaults are
used for seeds, state or carry that are missing).
- raninvgaussian could generate negative draws for very large mu,
e.g. raninvgaussian(1,1,1e10,0.53).
This was a problem with the original algorithm (Michael et al. 1976).
- Parser recognizes << and >>, however they could cause
stack overflow (and subsequent crash). Now solved stack problem.
Currently, it is a no-op: doesn't do anything.
- The following code
Get() { return {"AA"}; }
main(){ println(Get()[<0,0>]); }
prints
[0] = AA
[1] = 0
instead of
[0] = AA
[1] = AA
- modelforc crashed after error message: Some lagged variables
are not given at lag 0.
Now better at taking zero coefficients in account.
- gammafact(.NaN) results in crash (infinite recursion) on Linux.
- The spline function with specified X and missing value(s)
would crash. To fix this, the return value of the spline function
when an X variable is specified is different: previously it was the
sorted smooth values. Now the values are in the original position
(i.e. corresponding to the input Y data).
Spline against time was unaffected and is unchanged.
- OxPack:
- SaveOptions did not get called when closing OxMetrics.
- CTL_LABEL should not affect the column partitioning.
- DrawTMatrix with dates for X axis did not work in Ox Console
(but worked with OxMetrics).
Ox version 5.00.
©
JA Doornik
This file last changed .