Difference between revisions of "Software:matlab"
(→Running MATLAB) |
|||
(8 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[http://www.mathworks.com/products/matlab/ 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. | [http://www.mathworks.com/products/matlab/ 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 [http://www.queensu.ca/its/software/enterprise-licenced-software/matlab the ITS software page]. | + | 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 [http://www.queensu.ca/its/software/enterprise-licenced-software/matlab the ITS software page]. |
* '''Version''': R2017a | * '''Version''': R2017a | ||
* '''List of installed toolboxes and products''': [https://www.mathworks.com/academia/tah-portal/queens-university-products.html?s_tid=tah_po_list_queensu] | * '''List of installed toolboxes and products''': [https://www.mathworks.com/academia/tah-portal/queens-university-products.html?s_tid=tah_po_list_queensu] | ||
− | * '''Statement''': [ | + | * '''Statement''': [https://info.cac.queensu.ca/wiki/files/2017/05/cac-matlab-statement.pdf Necessary for accessing the software] |
+ | You can check for other installed versions of matlab by | ||
+ | module spider matlab | ||
== Getting access == | == Getting access == | ||
− | Send a signed [ | + | Send a signed [https://info.cac.queensu.ca/wiki/files/2017/05/cac-matlab-statement.pdf MATLAB usage statement] form to [mailto:cac.admin@queensu.ca cac.admin@queensu.ca]. This will add you to the <code>matlab</code> group that allows access to the software. To check if you have been authorized access, type <code>groups</code> while logged on to the system. If <code>matlab</code> appears in the output, you are ready to go! |
== Running MATLAB == | == Running MATLAB == | ||
− | To load MATLAB | + | To load MATLAB, use the command <code>module load matlab</code>. If your SSH client supports X-forwarding (and you have logged in using X-forwarding using <code>ssh -X</code>), you can bring up the MATLAB user interface with the command <code>matlab</code>. 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 | + | To run MATLAB without the GUI use the command <code>matlab -nodisplay</code> |
− | An example of a MATLAB job is shown below: | + | 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: | ||
<pre> | <pre> | ||
#!/bin/bash | #!/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 | ||
+ | </pre> | ||
− | + | 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 | |
− | + | ||
− | + | ||
− | + | ||
− | + | <pre>sbatch matlab.sh</pre> | |
− | + | ||
− | </pre> | + | |
== Toolboxes == | == Toolboxes == |
Latest revision as of 16:13, 2 February 2024
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.
- Version: R2017a
- List of installed toolboxes and products: [1]
- Statement: Necessary for accessing the software
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)