MATLAB R2018a was released in March 2018. With each biannual release I try to give a brief overview of the changes in MATLAB (not the toolboxes) that are of most interest to me. These are not comprehensive summaries of what’s new and you should check the release notes for full details.

Complex empty arrays, such as that generated with `complex([])`

now have an (empty) imaginary part instead of being real.

% R2017b >> complex([]) ans = [] % R2018a >> complex([]) ans = 0×0 empty complex double matrix

This is a consequence of a change in the way MATLAB stores complex arrays. Prior to R2018a it stored the real parts together and the imaginary parts together. In R2081 it uses an interleaved format in which the real and imaginary parts of a number are stored together; this is the storage format used in the C and C++ languages. For more details see MATLAB Support for Interleaved Complex API in C MEX Functions. Unless you write MEX files or create complex empty arrays, this change should have no effect on you.

The Live Editor continues to gain improved functionality, including embedded sliders and drop-down menus.

Legends can now have multiple columns, specified with the `NumColumns`

property for Legend objects. I must admit that I had not realized that is was already possible to arrange legends in a horizontal (1-by-n) rather than vertical orientation (n-by-1) using the `Orientation`

property.

Tall arrays have several new capabilities, including the ability to compute a least squares solution to an overdetermined linear system `Ax = b`

with a tall `A`

, which is done by QR factorization.

MATLAB starts up faster and has further optimizations in the execution engine.

The GraphPlot Object has some additional options for the `'force'`

, `'force3'`

, and `'circle'`

layouts.

I noticed that the recent Windows 10 Spring Creators Update broke the Symbolic Toolbox. An update to fix this (and various other issues) is available at this page (MathWorks login required).

For a concise but wide-ranging introduction and reference to MATLAB, see MATLAB Guide (third edition, 2017)

Hi Nick,

Have you ever tried Julia?

What do you think about it?

Yes – see https://peerj.com/articles/cs-58/

Nice!

Is there a blog post about your impressions from it (As the link is about using it specifically in the context of generating matrices)?