Software:matlab

From CAC Wiki
Jump to: navigation, search

MATLAB is a high-level technical computing language and interactive environment for algorithm development, data visualization, data analysis, and numeric computation. You can use MATLAB in a wide range of applications, including signal and image processing, communications, control design, test and measurement, financial modeling and analysis, and computational biology.

Previously, using MATLAB required a user-supplied license (and a lot of effort) to run on our systems. CAC now has an academic license for MATLAB provided by Queen's University. For a personal MATLAB license through Queen's University, see the ITS software page.

You can check for other installed versions of matlab by 
module spider matlab

Getting access

Send a signed MATLAB usage statement form to cac.admin@queensu.ca. This will add you to the matlab group that allows access to the software. To check if you have been authorized access, type groups while logged on to the system. If matlab appears in the output, you are ready to go!

Running MATLAB

To load MATLAB, use the command module load matlab. If your SSH client supports X-forwarding (and you have logged in using X-forwarding using ssh -X), you can bring up the MATLAB user interface with the command matlab. Note that this may be very slow because our nodes don't have hardware support for the graphics, so that it has to be rendered by the CPU.

To run MATLAB without the GUI use the command matlab -nodisplay

Although MATLAB often used interactively, if you are running a production job, you need to submit it through the SLURM scheduler.

An example of a MATLAB job script is shown below:

#!/bin/bash
#SBATCH --job-name=MATLAB_test
#SBATCH --mail-type=ALL
#SBATCH --mail-user=myEmail@whatever.com
#SBATCH --output=STD.out
#SBATCH --error=STD.err
#SBATCH --time=30:00
#SBATCH --mem=1000
module load matlab
matlab -nodesktop < testsys.m

Note that a time limit and a memory limit have to be supplied (in the example above 30 minutes and 1000 MByte, respectively). If either is exceeded the job will stop. Standard output and standard error are re-directed to files (STD.out and STD.err, repsectively). Email notification when the job is scheduled and ends are sent to a specified email address. This script (let's call it matlab.sh) would thhen be submitted via

sbatch matlab.sh

Toolboxes

The following toolboxes are installed / available for our MATLAB version.

MATLAB                                                Version 9.2         (R2017a)
Simulink                                              Version 8.9         (R2017a)
Bioinformatics Toolbox                                Version 4.8         (R2017a)
Communications System Toolbox                         Version 6.4         (R2017a)
Computer Vision System Toolbox                        Version 7.3         (R2017a)
Control System Toolbox                                Version 10.2        (R2017a)
Curve Fitting Toolbox                                 Version 3.5.5       (R2017a)
DSP System Toolbox                                    Version 9.4         (R2017a)
Database Toolbox                                      Version 7.1         (R2017a)
Econometrics Toolbox                                  Version 4.0         (R2017a)
Embedded Coder                                        Version 6.12        (R2017a)
Filter Design HDL Coder                               Version 3.1.1       (R2017a)
Financial Instruments Toolbox                         Version 2.5         (R2017a)
Financial Toolbox                                     Version 5.9         (R2017a)
Fixed-Point Designer                                  Version 5.4         (R2017a)
Fuzzy Logic Toolbox                                   Version 2.2.25      (R2017a)
Global Optimization Toolbox                           Version 3.4.2       (R2017a)
HDL Coder                                             Version 3.10        (R2017a)
HDL Verifier                                          Version 5.2         (R2017a)
Image Acquisition Toolbox                             Version 5.2         (R2017a)
Image Processing Toolbox                              Version 10.0        (R2017a)
Instrument Control Toolbox                            Version 3.11        (R2017a)
MATLAB Coder                                          Version 3.3         (R2017a)
MATLAB Compiler                                       Version 6.4         (R2017a)
MATLAB Compiler SDK                                   Version 6.3.1       (R2017a)
Mapping Toolbox                                       Version 4.5         (R2017a)
Neural Network Toolbox                                Version 10.0        (R2017a)
Optimization Toolbox                                  Version 7.6         (R2017a)
Parallel Computing Toolbox                            Version 6.10        (R2017a)
Partial Differential Equation Toolbox                 Version 2.4         (R2017a)
RF Toolbox                                            Version 3.2         (R2017a)
Robust Control Toolbox                                Version 6.3         (R2017a)
Signal Processing Toolbox                             Version 7.4         (R2017a)
SimEvents                                             Version 5.2         (R2017a)
Simscape                                              Version 4.2         (R2017a)
Simscape Multibody                                    Version 5.0         (R2017a)
Simulink 3D Animation                                 Version 7.7         (R2017a)
Simulink Coder                                        Version 8.12        (R2017a)
Simulink Control Design                               Version 4.5         (R2017a)
Simulink Design Verifier                              Version 3.3         (R2017a)
Simulink Verification and Validation                  Version 3.13        (R2017a)
Stateflow                                             Version 8.9         (R2017a)
Statistics and Machine Learning Toolbox               Version 11.1        (R2017a)
Symbolic Math Toolbox                                 Version 7.2         (R2017a)
System Identification Toolbox                         Version 9.6         (R2017a)
Wavelet Toolbox                                       Version 4.18        (R2017a)