Size: 2558
Comment:
|
Size: 5615
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 14: | Line 14: |
* {{{maxNumCompThreads}}} now issues a warning, and will be removed in a future version |
|
Line 15: | Line 17: |
* New function: {{{quad2d}}} * Changed functions: {{{conv}}}, {{{conv2}}}, {{{convn}}} * On 64-bit platforms, BLAS and LAPACK now internally use 64-bit integers |
|
Line 18: | Line 24: |
* Changed functions: {{{randn}}}, {{{randi}}} |
|
Line 19: | Line 27: |
* Multithreading enabled by default * New functions: {{{clearvars}}}, {{{memory}}}, {{{onCleanup}}} |
|
Line 22: | Line 33: |
* New functions: {{{quadgk}}}, {{{bvp5c}}}, {{{maxNumCompThreads}}} * Changed functions: {{{dmperm}}} * On 64-bit platforms, MATLAB arrays are no longer limited to 2^31^ elements. The limit in MATLAB 7.5 is 2^48^-1. * BLAS and LAPACK now in separate DLLs |
|
Line 23: | Line 39: |
* New functions: {{{bsxfun}}}, {{{ilu}}}, {{{assert}}}, {{{ismac}}}, {{{verLessThan}}} * Changed functions: {{{rand}}}, {{{dir}}} * Divide By Zero and Log Of Zero Warnings Off By Default * Multithreading implemented, but not activated by default (but function {{{maxNumCompThreads}}} not yet implemented) * Introduction of MATLAB for Macintosh (Intel) * Default MEX extension changed for Macintosh (PowerPC) |
|
Line 26: | Line 49: |
* New functions: {{{amd}}}, {{{bvpxtend}}}, {{{ldl}}} * Changed functions: {{{lu}}}, {{{chol}}}, {{{unique}}} * In MEX files, the following types are introduced: * {{{mwSize}}}: represents size values, such as array dimensions and number of elements * {{{mwIndex}}}: represents index values, such as indices into arrays On 32-bit machines, these types are simply aliases for {{{int}}}. On 64-bit machines, it depends on whether one gives the {{{-largeArrayDims}}} for the MEX command: * without {{{-largeArrayDims}}}, these types are {{{int}}} (and therefore 32 bits) * with {{{-largeArrayDims}}}, these types are {{{size_t}}}, which is an alias for {{{unsigned long}}} (and therefore 64 bits); this option is mandatory when using sparse arrays On 64-bit machines, it is therefore necessary to recompile MEX files which use sparse arrays. |
|
Line 28: | Line 66: |
* New function: {{{idivide}}} * On Linux, MATLAB now built with gcc 3.4: MEX files need to be rebuilt * Introduction of MATLAB for Windows 64-bit |
|
Line 29: | Line 71: |
* New functions: {{{hypot}}}, {{{mode}}}, {{{arrayfun}}}, {{{exifread}}}, {{{structfun}}}, {{{swapbytes}}}, {{{typecast}}} * Modified functions: {{{accumarray}}}, {{{odeset}}}, {{{rand}}}, {{{svd}}}, {{{cellfun}}}, {{{datestr}}}, {{{error}}}, {{{isfield}}}, {{{lasterror}}}, {{{rethrow}}}, {{{who}}}, {{{whos}}} * On Windows, the MEX command supports {{{-l}}} and {{{-L}}} options * On Windows, {{{.mexw32}}} is now the default extension for MEX files (instead of {{{.dll}}}) * New {{{mexext}}} shell script to recover the MEX extension in Makefiles * The import libraries for the MATLAB DLL files have been moved up a directory level and are no longer specific to the compiler version. The new location for these files is: $matlab/extern/lib/$arch/$vendor |
|
Line 33: | Line 82: |
* New function: {{{ordeig}}} * Under Windows, this release cannot be used to compile the MEX files (BLAS/LAPACK developer libraries missing) |
This page documents incompatibilities accross MATLAB versions. For each MATLAB release, it gives the main changes appearing in that release and that Dynare needs to handle.
Note that all changes are not documented, please refer to the official release notes for a full list: for releases up to 6.5.1 (R13SP1), and for releases since 7.0 (R14).
Dynare deals with these incompatibilities at three places:
- in the configure script, via the various m4 macros for MATLAB
in the M-files, mainly through matlab/dynare_config.m
in the C++ source for MEX files, mainly through dynmex.h, dynblas.h and dynlapack.h in mex/sources
Contents
- MATLAB 7.9 (R2009b)
- MATLAB 7.8 (R2009a)
- MATLAB 7.7 (R2008b)
- MATLAB 7.6 (R2008a)
- MATLAB 7.5 (R2007b)
- MATLAB 7.4 (R2007a)
- MATLAB 7.3 (R2006b)
- MATLAB 7.2 (R2006a)
- MATLAB 7.1 (R14SP3)
- MATLAB 7.0.4 (R14SP2)
- MATLAB 7.0.1 (R14SP1)
- MATLAB 7.0 (R14)
- MATLAB 6.5.2 (R13SP2)
- MATLAB 6.5.1 (R13SP1)
- MATLAB 6.5 (R13)
MATLAB 7.9 (R2009b)
maxNumCompThreads now issues a warning, and will be removed in a future version
MATLAB 7.8 (R2009a)
New function: quad2d
Changed functions: conv, conv2, convn
- On 64-bit platforms, BLAS and LAPACK now internally use 64-bit integers
MATLAB 7.7 (R2008b)
Changed functions: randn, randi
MATLAB 7.6 (R2008a)
- Multithreading enabled by default
New functions: clearvars, memory, onCleanup
MATLAB 7.5 (R2007b)
New functions: quadgk, bvp5c, maxNumCompThreads
Changed functions: dmperm
On 64-bit platforms, MATLAB arrays are no longer limited to 231 elements. The limit in MATLAB 7.5 is 248-1.
- BLAS and LAPACK now in separate DLLs
MATLAB 7.4 (R2007a)
New functions: bsxfun, ilu, assert, ismac, verLessThan
Changed functions: rand, dir
- Divide By Zero and Log Of Zero Warnings Off By Default
Multithreading implemented, but not activated by default (but function maxNumCompThreads not yet implemented)
- Introduction of MATLAB for Macintosh (Intel)
- Default MEX extension changed for Macintosh (PowerPC)
MATLAB 7.3 (R2006b)
New functions: amd, bvpxtend, ldl
Changed functions: lu, chol, unique
- In MEX files, the following types are introduced:
mwSize: represents size values, such as array dimensions and number of elements
mwIndex: represents index values, such as indices into arrays
On 32-bit machines, these types are simply aliases for int.
On 64-bit machines, it depends on whether one gives the -largeArrayDims for the MEX command:
without -largeArrayDims, these types are int (and therefore 32 bits)
with -largeArrayDims, these types are size_t, which is an alias for unsigned long (and therefore 64 bits); this option is mandatory when using sparse arrays
MATLAB 7.2 (R2006a)
New function: idivide
- On Linux, MATLAB now built with gcc 3.4: MEX files need to be rebuilt
- Introduction of MATLAB for Windows 64-bit
MATLAB 7.1 (R14SP3)
New functions: hypot, mode, arrayfun, exifread, structfun, swapbytes, typecast
Modified functions: accumarray, odeset, rand, svd, cellfun, datestr, error, isfield, lasterror, rethrow, who, whos
On Windows, the MEX command supports -l and -L options
On Windows, .mexw32 is now the default extension for MEX files (instead of .dll)
New mexext shell script to recover the MEX extension in Makefiles
- The import libraries for the MATLAB DLL files have been moved up a directory level and are no longer specific to the compiler version. The new location for these files is: $matlab/extern/lib/$arch/$vendor
MATLAB 7.0.4 (R14SP2)
MATLAB 7.0.1 (R14SP1)
New function: ordeig
- Under Windows, this release cannot be used to compile the MEX files (BLAS/LAPACK developer libraries missing)
MATLAB 7.0 (R14)
- New format (v7) for MAT files
Inf and NaN accept dimension arguments for creating matrices
eps accepts an argument for computing relative precision
New functions: addtodate, genvarname, intmax, intmin, intwarning, isfloat, isinteger, isscalar, isstrprop, isvector, mmfileinfo, recycle, restoredefaultpath, strtrim, textscan, xlswrite
Changed functions: xlsread, dlmwrite, xlsinfo
- Added nested functions
Functions handles can be called directly without feval
- On Linux and Macintosh systems, all MEX-files that can throw errors need to be recompiled
- Shared libraries previously residing in directory $MATLAB/extern/lib/$ARCH are now in $MATLAB/bin/$ARCH
MATLAB 6.5.2 (R13SP2)
MATLAB 6.5.1 (R13SP1)
MATLAB 6.5 (R13)
- First MATLAB release supported by Dynare.
New functions: rmdir, movefile. Changed functions: mkdir, copyfile
- Left and right divide operators behave differently for singular matrices
New function: regexp
Possibility of using dynamic field names in structures (with the S.(field) syntax)
New logical and/or operators with short-circuiting: && and ||
Added a second output argument to ismember