LunchBytes: Better MATLAB, Better Research

Date
13 October 2021 - 12:00-13:00
Location
Google Meet
Speaker
Gemma Ives (host, University of Sheffield), Mike Croucher (Mathworks), Tim Rogers (University of Sheffield), Fred Sonnenwald (University of Sheffield)

All of our events may be recorded and shared via the University of Sheffield Kaltura platform so those who cannot attend may still benefit. We will consider your attendance implict consent to this.

Short talks on how University of Sheffield researchers are using Matlab features old and new, straightforward and complex. A chance to get perspectives from researchers and from MathWorks, and to discuss Matlab in the research software ecosystem.

This session will take place on Google Meet and participants can join 15 minutes before the start of the session. Add to your calendar.

We also have a Google Jam Board where you can note down any questions or comments before or during the event.


What’s neat about using the MATLAB IDE for research (and teaching)

Fred Sonnenwald

MATLAB tightly integrates its command window, editor, debugger, profiler, and live scripts into an Integrated Development Environment (IDE) in a way uncommon for interpreted languages. This short talk will go over these features and provide some examples of how I’ve used them to aid in research (and teaching).

Slides


MATLAB Live Editor Tasks: The art of programming without programming

Mike Croucher

Some researchers prefer to analyse their data using easy to use Graphical User Interfaces while others insist that coding is the only way to ensure reproducible, reusable and correct computational research.

Why choose when you can have both with MATLAB Live Editor tasks?

Slides and code


Writing Object Oriented MATLAB For Parallel Compute: Challenges and Successes

Tim Rogers

For a large number of algorithms the computation can be broken down into independent blocks which have a self-contained set of attributes and methods, for example, it may be necessary to run multiple instances of an algorithm with different parameters. To improve modularity, reusability and reproducibility it can be beneficial to define an ‘object’ which packages these blocks. Formally, this is called an OOP approach to writing code (although the brief definition here is not complete). Despite being a popular approach in other languages, most notably Python, it is not widely employed within MATLAB where more commonly a functional programming model is used. This talk will show an example of one algorithm where an OOP model greatly improves the readability and useability of the code base by defining objects which can be used as building blocks of more complicated algorithms. The task of system identification using an Iterated Batch Importance Sampling algorithm will be used as a demonstration. A particular focus of the talk will be on how MATLAB objects can be written such that they are amenable for use within parallel compute structures provided by MATLAB, such as ‘parfor’ loops, for which there are some specific challenges.

Slides

Contact Us

For queries relating to collaborating with the RSE team on projects: rse@sheffield.ac.uk

Information and access to JADE II and Bede.

Join our mailing list so as to be notified when we advertise talks and workshops by subscribing to this Google Group.

Queries regarding free research computing support/guidance should be raised via our Code clinic or directed to the University IT helpdesk.