MATLAB

Mac OSX USERS click here to view any outstanding issues with installing MATLAB on OSX

MATLAB (matrix laboratory) is a numerical computing environment and fourth-generation programming language. Developed by Mathworks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, and Fortran. An additional package, Simulink, adds graphical multi-domain simulation and Model-Based Design for dynamic and embedded systems.

MATLAB can be used on personal computers and powerful server systems, including the Cheaha compute cluster. With the addition of the Parallel Computing Toolbox, the language can be extended with parallel implementations for common computational functions, including for-loop unrolling. Additionally this toolbox supports offloading computationally intensive workloads to Cheaha the campus compute cluster.

In January 2011, UAB acquired a site license for MATLAB that allows faculty, staff, post-docs, and graduate students to use MATLAB, Simulink, and 42 toolboxes (including the parallel toolbox) for research activities on campus and personal systems. Additionally, from January 2012 MATLAB is available to students on campus and personal computer systems.

MATLAB Versions
Mathworks has two annual releases of Matlab: the "a" release in the spring and the "b" release in the fall. Each release gets tagged with the current year and "a" or "b". For example, "Matlab 2013a" is the spring release for 2013.

If you are using Matlab in an isolated environment like on your laptop or desktop, you can generally install the most recent release available from Mathworks.

If you plan to uses specific features of Matlab, however, like running computations on the Cheaha cluster or using a network install. You should install our recommended release of Matlab that we know works with our services.

The current recommended release is Matlab 2013a.

In UAB IT Research Computing, we update our services to work with the latest Matlab release a month or so after the general release of that product. This gives us time to try out the latest release, get feedback from other early adopters, and update services like the Distributed Computing Toolbox, license server and our documentation.

Note: you can always install whichever Matlab release you need and that is still available from Mathworks. Different versions of Matlab are always installed side-by side. Depending on your science domain, you may need to select certain releases in order to access specific features. However, not all of these releases may be supported by our compute cluster or network license manager.

MATLAB on the Desktop
Using Mathworks software available under the UAB campus license on your computer involves download and install steps common to all software packages and an authorization step that grants you the rights to use the software under the campus agreement.

Download and Installation Steps
NOTE:These steps are common to all installation and activation scenarios and are detailed in Downloading and Installing MATLAB.


 * 1) Create an account at the Mathworks site using your campus @uab.edu email address. Please do not share your mathworks account username or password with anyone as this account will be associated with the UAB TAH license. An end user must choose one of these values when creating a MathWorks Account.  Students should choose Student use. Faculty, researchers, and grad students should choose Teaching or research in school.
 * 2) Request an activation key from the UAB software library page for faculty/staff and from UAB on the Hub for students. Please make sure to request the appropriate key (Faculty/staff or student) as the software are on different licenses.
 * 3) Associate your Mathworks account with the campus-wide MATLAB license using your activation key.
 * 4) Download the software from the mathworks download site and install MATLAB
 * 5) Activate the software using the activation scenario that best suits your particular needs.

Updating MATLAB on Desktop
If you have been running MATLAB on your desktop during 2011, one can click 'Help', then 'Licensing', and finally 'Update Current Licenses'. This will remedy the license expiration message without having to update to a new copy of MATLAB.

Installation Help
MATLAB is a self-supported application at UAB. A UAB MATLAB users peer support forum is available. Subscription options are described below in MATLAB Support.

MATLAB on Cheaha (compute cluster)
MATLAB is pre-installed on the Cheaha research computing system. This allows users to run MATLAB directly on the cluster without any need to install software. MATLAB jobs can also be submitted to Cheaha directly from your desktop, however, this requires additional configuration described in MatLab DCS.

Integration with Desktop MATLAB
Accessing the additional compute power of Cheaha from your desktop MATLAB install is recommended for most users because it combines the familiar MATLAB user experience with cluster computing power. However, additional steps are required to configure a desktop MATLAB installation to access worker nodes on the Cheaha cluster via the Distributed Computing Server (DCS) platform. Please see MatLab DCS for configuration information.

Using Batch Submit from the Desktop Instead of matlabpool Jobs
It is not possible to use matlabpool jobs on the cluster from your desktop due to firewall restrictions. Instead, desktop MATLAB users should use the batch submit options described in the MatLab DCS configuration to submit their jobs to the cluster. Matlabpool jobs are possible when running MATLAB directly on the cluster as described in  matlabpool from the head node.

Direct Use on the Cluster
Using MATLAB directly on the cluster is recommended only for people comfortable accessing systems via a command line environment (eg. secure shell SSH). SSH access to Cheaha supports X Windows and VNC sessions for displaying a full graphical MATLAB development environment on client desktops with an X Windows servers or VNC client applications installed. For more information please see MatLab CLI. Matlabpool jobs are possible when running MATLAB directly in this environment as described in  matlabpool from the head node.

Advanced Install Scenarios
This information is helpful for people interested in the many ways in which MATLAB can be installed. A normal end-user installing MATLAB for themselves on a desktop of laptop computer should follow the instructions above. The following information is of most interest to IT or computer lab administrators who maintain MATLAB installs for many people on many computers.

User Installation and Activation Scenarios

 * 1)  Installation and activation with Designated Computer License  - This option is recommended for mobile computing systems which may or may not be on the UAB network when MATLAB is being used.  This install type authorizes an individual computer to run MATLAB, allowing MATLAB to run regardless of where the computer is located. (This is the only option available if you want to use your MATLAB on your computer when you are not physically present at UAB)
 * 2)  Installation and Activation with Network License - This is the recommended install when MATLAB will be used on computers that remain connected to the campus network. This installation requires MatLab software to be installed on your computer and provides a simple 2-line file to activate the software.   This option is highly recommend for UAB desktops.

NOTE: Most on-campus users are encouraged to use the  Installation and Activation with Network License option for activation unless there are special circumstances that require the alternative activation scenarios.

Network Concurrent/Lab admin Installation and Activation Scenarios

 * 1) Matlab Network Concurrent User Install - This installation is only recommended for system administrators who already manage a lab or departmental installation of MATLAB and who would like to continue to provide this service for their user community.  This install type may also be practical if there are special additional license needs that will apply to multiple computers running MATLAB.  Note, all MATLAB toolboxes actively used at UAB are currently covered under the UAB campus license.

On-line Tutorials and Learning Resources

 * Getting Started
 * Recorded Webinars, select a topic and complete the request form.
 * Interactive Tutorials for Students and Faculty
 * MATLAB
 * Simulink
 * Example Code, News, Blogs, Teaching Materials
 * Matlab Central
 * Classroom resources

UAB Mathworks Site License
UAB has acquired a university wide site license for MATLAB and Simulink software. This license includes all Mathworks Inc. products in use at UAB, with the exception of the Distributed Computing Server (DCS) which must be licensed separately. This new site license also makes available several new toolboxes and blocksets not previously licensed by UAB.

This site license is known as the Mathworks Inc. Total Academic Headcount (TAH) license or Mathworks TAH. As of January 1, 2012, UAB has two TAH licenses. First, the TAH campus with license number 678600 is the same TAH license which was in operations during 2011 and is for use by all UAB full-time faculty and staff. Second, the TAH student with license number 731720 is for use by UAB students, where graduate and professional students at UAB with funding or working on UAB research projects should use the TAH campus license.

Mathworks TAH license -- either campus or student -- will make it easier for everyone in the UAB community to use MATLAB, MATLAB Toolboxes (extensions) and Simulink software. Specifically, it authorizes use of MATLAB on university owned machines for all faculty, staff and students. Faculty and staff are also entitled to install the software (TAH campus - 678600) on personally owned computers. Students are authorized to install TAH student (TAH student - 731730) are authorized to install this software on their personal computer. It is important each authorized user of either TAH license to use the the authentication key corresponding to their authorized TAH license. That is, authorized users of TAH campus (678600) should use the authentication key obtained from http://www.uab.edu/it/software/, after selecting Mathworks/Mathlab, corresponding to the Faculty/staff group. Similarly, authorized users for TAH student (731730) should use the authentication key for the Students group. For questions on which authentication key to use or with help on installing MATHLAB software on your computer, please contact askit@uab.edu or post a question the list serve matlab-user@vo.uabgrid.uab.edu.

The TAH allows unlimited use MATLAB, Simlink and the 48 MATLAB Toolboxes, block sets and complier in both research and teaching activities. Faculty, staff and students can install the software on computers located off-campus, however, students may only use Mathworks software on UAB owned computers computers located on-campus.

UAB was the first university in Alabama to implement a Mathworks TAH license.

Parallel Computing Extensions
MATLAB language extensions to support parallel processing are available via the Parallel Computing Toolbox. This is one of the 42 toolboxes available under the UAB TAH license. The Parallel Computing Toolbox enables MATLAB to make use of the multi-core processors found on many computers in order to speed the execution of code sections that can execute in parallel. This toolbox supports the use of up to 8 cores on a single computer systems through the use of worker threads the spread the execution of code across multiple cores.

Additional parallelism can be supported by adding more worker threads via a secondary software platform known as the Distributed Computing Server (DCS). The DCS runs on a compute cluster and can provide many more worker threads to increase parallelism. UAB IT Research Computing has licensed a 128 worker DCS installation for the Cheaha compute cluster. The Parallel Computing Toolbox can be configured to access this license from desktop MATLAB installations. Please see MatLab DCS for configuration details.