
The MATLAB R2018b release notes report a number of performance improvements, including faster startup and faster calls to built-in functions. I pick out here a few other highlights from the release (excluding the toolboxes) that are of interest from the numerical analysis point of view.
The new xline
and yline
functions add vertical or horizontal lines to a plot—something that I have needed from time to time and have previously had to produce with a line
or a plot
command, together with hold on
. For example, xline(pi)
plots a vertical line at x = pi
.
The stackedplot
function is mainly of interest for plotting multiple variables from a table in a single plot, but it can also plot the columns of a matrix. In this example, A
is the symmetric eigenvector matrix for the second difference matrix:
A = gallery('orthog',10,1); stackedplot(A);
The resulting plot clearly shows that the number of sign changes increases with the column index.
String arrays, introduced in R2016b, are now supported throughout MATLAB. In the previous example I could have typed A = gallery("orthog",10,1)
.
A new option 'all'
to the functions all
, any
, max
, min
, prod
, sum
(and a few others) makes them operate on all the dimensions of the array. For example:
>> A = pascal(3) A = 1 1 1 1 2 3 1 3 6 >> max(A,[],'all') ans = 6 >> [prod(A,'all'), sum(A,'all')] ans = 108 19
The empty second argument in the max
call is needed because max(x,y)
is also a supported usage. This is a useful addition. I have often written norm(A(:),inf)
to avoid max(max(abs(A)))
(which does not work for arrays with more than two dimensions), but now I can write max(abs(A),[],'all')
without incurring the overhead of forming A(:)
.
New functions sinpi
and cospi
plot the sine and cosine functions at the specified multiple of . Thus
sinpi(x)
is the same as sin(pi*x)
except that it does not explicitly compute pi*x
and so returns exact answers for integer arguments:
>> [sin(pi) sinpi(1)] ans = 1.2246e-16 0
- For earlier “What’s New in MATLAB” posts click here.
- See also MATLAB Guide, Third Edition (2017).