{"id":2152,"date":"2024-03-26T11:30:29","date_gmt":"2024-03-26T15:30:29","guid":{"rendered":"https:\/\/blogs.mathworks.com\/matlab\/?p=2152"},"modified":"2024-09-13T12:36:56","modified_gmt":"2024-09-13T16:36:56","slug":"matlab-r2024a-has-been-released-here-are-my-favourite-updates","status":"publish","type":"post","link":"https:\/\/blogs.mathworks.com\/matlab\/2024\/03\/26\/matlab-r2024a-has-been-released-here-are-my-favourite-updates\/","title":{"rendered":"MATLAB R2024a has been released: Here are my favourite updates"},"content":{"rendered":"<div class = rtcContent><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>The latest version of MATLAB is now available for download and it's our biggest update yet. I have to tell you, I'm really excited by this one! It has got some features that I've been wanting for for a long long time. I'll be doing deeper dives into some of my favourite things over the next few weeks but, for now, here's an overview of <\/span><span style=' font-weight: bold;'>some<\/span><span> of the features that got me excited for R2024a.<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>These are just a few of my personal highlights out of thousands of updates. The official <\/span><a href = \"https:\/\/uk.mathworks.com\/products\/new_products\/latest_features.html\"><span style=' font-weight: bold;'>release highlights page is here<\/span><\/a><span style=' font-weight: bold;'> but even that is just a subset of <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/relnotes\/index.html\"><span style=' font-weight: bold;'>the full release notes<\/span><\/a><span style=' font-weight: bold;'>.<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>MATLAB<\/span><\/div><ul  style = 'margin: 10px 0px 20px; padding-left: 0px; font-family: Helvetica, Arial, sans-serif; font-size: 14px; '><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>New ODE Solvers: <\/span><span>Last release, we brought you a <\/span><a href = \"https:\/\/blogs.mathworks.com\/matlab\/2023\/10\/03\/the-new-solution-framework-for-ordinary-differential-equations-odes-in-matlab-r2023b\/\"><span>toally new and improved interface to the traditional MATLAB ODE solvers<\/span><\/a><span>. Now we bring you the first of the algorithmic updates with <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_9b6b9c48-3836-497c-ae68-48a106be290e\"><span>new solvers from the SUNDIALS suite<\/span><\/a><span> which also brings the ability to perform sensitivity analysis. <\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>Better Backslash<\/span><span>: The iconic MATLAB operator has been <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_ccef9bd7-9911-461e-b513-e6f6f6750ab0\"><span>improved for full tridiagonal matrices<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_2ebb391a-d41f-4392-b96a-4589ce81bba6\"><span style=' font-weight: bold;'>REST function service<\/span><\/a><span style=' font-weight: bold;'>: <\/span><span>You can call custom MATLAB functions from any programming language or application that can make a REST call.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>Local functions (almost) anywhere: <\/span><span>They used to have to be at the end of a script. <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_694e8a08-77b2-4046-99a2-cf5a0f63cbb1\"><span>Now they can be added anywhere in the script<\/span><\/a><span> except within conditional contexts, such as if statements or for loops.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>MATLAB and Python: <\/span><span>Automatic <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_7ad2f7e1-43a2-4121-8b53-88a9a0660554\"><span>conversion between pandas dataframes and MATLAB tables<\/span><\/a><span>. It's easier than ever to mix Python and MATLAB code thanks to the <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_d0dad183-c293-4fcc-9bd7-70de34f35429\"><span>new Python Live Task<\/span><\/a><span>. You can also now convert between <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_83630296-6685-43a5-8b70-6ae56ae6436a\"><span>Python dictionaries and MATLAB dictionaries<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>MATLAB and Fortran: <\/span><span>Fortran has been part of my life since I was an undergraduate! Now MATLAB <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_0e099dcf-0efe-44c6-b896-dd235ac00abb\"><span>supports the free MinGW64 Compiler on Windows<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>Easier import of HDF5 data: <\/span><span>MATLAB has supported HDF5 data for a long time. Now it's easier than ever thanks to <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/release-notes.html#mw_9d958a7c-909f-4093-a92e-70765751e8c8\"><span>new GUI import tools that can also generate code<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>Spellcheck in Live Scripts: <\/span><span>One of the most requested live script features has finally dropped!<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><span style=' font-weight: bold;'>Fastest MATLAB yet: <\/span><span>Dozens of functions have been made faster. New algorithms, new libraries, more GPU support and more parallelisation.  <\/span><\/li><\/ul><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>My favourite toolbox updates<\/span><\/div><ul  style = 'margin: 10px 0px 20px; padding-left: 0px; font-family: Helvetica, Arial, sans-serif; font-size: 14px; '><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/deeplearning\/release-notes.html\"><span style=' font-weight: bold;'>Deep Learning Toolbox<\/span><\/a><span>: Starting in R2024a, there is a new recommended workflow to build, train, and make predictions with neural networks that uses the<\/span><span> <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/deeplearning\/ref\/trainnet.html\"><span style=' font-family: monospace;'>trainnet<\/span><\/a><span> <\/span><span>function (introduced in R2023b) and<\/span><span> <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/deeplearning\/ref\/dlnetwork.html\"><span style=' font-family: monospace;'>dlnetwork<\/span><\/a><span> <\/span><span>objects. You can also <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/deeplearning\/release-notes.html#mw_68655cb1-4de2-4042-8d8d-dd507b8c15f2\"><span>run pretrained TensorFlow, PyTorch and ONNX models in Simulink<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/optim\/release-notes.html\"><span style=' font-weight: bold;'>Optimization Toolbox<\/span><\/a><span style=' font-weight: bold;'>: <\/span><span>The HiGHS library is now the default <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/optim\/release-notes.html#mw_50eb7002-9c85-43d5-9600-a0663839c98b\"><span>Linear Programming (<\/span><span style=' font-family: monospace;'>linprog)<\/span><\/a><span> and <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/optim\/release-notes.html#mw_9157d35b-bfc0-4a18-a541-f41060e5170a\"><span>Mixed Integer Programming <\/span><span style=' font-family: monospace;'>(intlinprog)<\/span><span> solver<\/span><\/a><span> making these functions faster than before. See <\/span><a href = \"https:\/\/www.linkedin.com\/feed\/update\/urn:li:activity:7176990446894632961\/\"><span>HiGHS' announcement here<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/parallel-computing\/release-notes.html\"><span style=' font-weight: bold;'>Parallel Computing Toolbox<\/span><\/a><span>: New <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/parallel-computing\/release-notes.html#mw_ca3beecd-374f-4480-b09b-349eea595a30\"><span>GPU support in functions from MATLAB, Statistics and Machine Learning Toolbox, Communications Toolbox, 5G Toolbox, Audio Toolbox and Wavelet Toolbox<\/span><\/a><span>.  There's now well over 1,000 functions with GPU support across all of MATLAB and the various toolboxes.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/stats\/release-notes.html\"><span style=' font-weight: bold;'>Statistics and Machine Learning Toolbox<\/span><\/a><span>: You can now <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/stats\/release-notes.html#mw_54db87a3-dfe0-4943-96e9-087d6816e46c\"><span>run pretrained models from Scikit-learn in Simulink<\/span><\/a><span>. There's also a <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/stats\/release-notes.html#mw_9b9081a6-88bc-4ede-83dd-6a121024683a\"><span>new function to perform incremental principal component analysis: <\/span><span style=' font-family: monospace;'>incrementalPCA<\/span><\/a><span>.<\/span><\/li><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/simscape\/release-notes.html\"><span style=' font-weight: bold;'>Simscape<\/span><\/a><span>: <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/simscape\/release-notes.html#mw_fc52ff3b-14ce-4d02-a845-1b877dde416d\"><span style=' font-family: monospace;'>graphImporter<\/span><span> which allows you you to extract data points from graph images<\/span><\/a><span>, drag the picked points, interpolate multiple data lines on common x-axis, and export them as a table. Utilize it to digitize datasheets and seamlessly integrate data into MATLAB. <\/span><\/li><\/ul><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/03\/R2024a_1.gif\" width = \"621\" height = \"330\" alt = \"1711362016359.gif\" style = \"vertical-align: baseline; width: 621px; height: 330px;\"><\/img><\/div><ul  style = 'margin: 10px 0px 20px; padding-left: 0px; font-family: Helvetica, Arial, sans-serif; font-size: 14px; '><li  style = 'margin-left: 56px; line-height: 21px; min-height: 0px; text-align: left; white-space: pre-wrap; '><a href = \"https:\/\/uk.mathworks.com\/help\/sl3d\/index.html\"><span>Simulink 3D animation<\/span><\/a><span>: This isn't a product I'd used before but just a glance at the video below made me reach out to the team and ask \"Tell me everything!\"<\/span><\/li><\/ul><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/03\/R2024a_2.gif\" width = \"626\" height = \"352\" alt = \"Simulink3D_2024a.gif\" style = \"vertical-align: baseline; width: 626px; height: 352px;\"><\/img><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span><\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>Official release video for R2024a<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><a href = \"https:\/\/www.youtube.com\/watch?v=PD9nAKpQsIA&amp;t=2s\"><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/03\/R2024a_3.gif\" width = \"661\" height = \"375\" alt = \"Untitled Project.gif\" style = \"vertical-align: baseline; width: 661px; height: 375px;\"><\/img><\/a><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span><\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><\/div>\r\n<\/div><script type=\"text\/javascript\">var css = ''; var head = document.head || document.getElementsByTagName('head')[0], style = document.createElement('style'); head.appendChild(style); style.type = 'text\/css'; if (style.styleSheet){ style.styleSheet.cssText = css; } else { style.appendChild(document.createTextNode(css)); }<\/script>","protected":false},"excerpt":{"rendered":"<div class=\"overview-image\"><img src=\"https:\/\/blogs.mathworks.com\/matlab\/files\/2024\/03\/R2024a_2.gif\" class=\"img-responsive attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"\" decoding=\"async\" loading=\"lazy\" \/><\/div><p>The latest version of MATLAB is now available for download and it's our biggest update yet. I have to tell you, I'm really excited by this one! It has got some features that I've been wanting for for... <a class=\"read-more\" href=\"https:\/\/blogs.mathworks.com\/matlab\/2024\/03\/26\/matlab-r2024a-has-been-released-here-are-my-favourite-updates\/\">read more >><\/a><\/p>","protected":false},"author":176,"featured_media":2143,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[20,101],"tags":[],"_links":{"self":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2152"}],"collection":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/users\/176"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/comments?post=2152"}],"version-history":[{"count":2,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2152\/revisions"}],"predecessor-version":[{"id":2158,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2152\/revisions\/2158"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/media\/2143"}],"wp:attachment":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/media?parent=2152"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/categories?post=2152"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/tags?post=2152"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}