-
Notifications
You must be signed in to change notification settings - Fork 0
MATLAB
Reproduced from http://web.khu.ac.kr/~tskim/PM_2_3_Introduction%20to%20Matlab%202.pdf
MATLAB is a high-performance programming environment for numerical and technical applications. The first version was written at the University of New Mexico in the 1970s. The “MATrix LABoratory” program was invented by Cleve Moler to provide a simple and interactive way to write programs using the Linpack and Eispack libraries of FORTRAN subroutines for matrix manipulation. MATLAB has since evolved to become an effective and powerful tool for programming, data visualisation and analysis, education, engineering and research.
The strengths of MATLAB include extensive data handling and graphics capabilities, powerful programming tools and highly advanced algorithms. Although it specialises in numerical computation, MATLAB is also capable of performing symbolic computation by having an interface with Maple (a leading symbolic mathematics computing environment). Besides fast numerics for linear algebra and the availability of a large number of domainspecific built-in functions and libraries (e.g., for statistics, optimization, image processing, neural networks), another useful feature of MATLAB is its capability to easily generate various kinds of visualisations of your data and/or simulation results.
For every MATLAB feature in general, and for graphics in particular, the usefulness of MATLAB is mainly based on the large number of built-in functions and libraries. The intention of this tutorial is not to provide a comprehensive coverage of all MATLAB features but rather to prepare you for your own exploration of its functionality.
Option 1: via GUI
- Login to MASSIVE desktop
- Go To Applications > General Scientific > MATLAB
Option 2: via command line
- Login to MASSIVE desktop
- Right click > Open in terminal
- Type
module load matlab/r2022b
- Type
matlab &
Follow the Monash Uni instructions here: https://www.monash.edu/esolutions/software/mathworks-register
Get Started with MATLAB (~30-60mins)
This tutorial from MathWorks provides an introduction to the graphical user interface (GUI), matrices and arrays, text and characters, generating plots, and making functions and scripts - all the basics you need to get started reading and writing code. You should be very familiar with all the content covered in this short course.
The Basics of Plotting in MATLAB (~10-20 mins)
A super short and concise tutorial to provide some introductions to plotting in 2-D and 3-D. Highly recommend! You can have a look at the MathWorks Graphics Intro page for some further details if you want.
This tutorial from our labs provides an introduction to visualisaing data in MATLAB, including graphs, heatmaps, and 3-D interactive brain visualisations. It also shows how to install libraries from GitHub and NITRC and use of the MATLAB path. You can follow the course through the instructions in the README and the comments in MATLAB_connectome_intro.m
. You should be very familiar with all the content covered in this short course.
- BMH_utils_matlab : Useful functions from the lab, including for brain data visualisation
- plotSurfaceRoiBoundary: For visualisation of data on the brain surface
-
cifti-matlab: For reading CIFTI data like
XXX.dscalar.nii
files. -
gifti: For reading GIFTI data like
XXX.gii
files. -
toolbox-graph: which contains the hekpful files
compute_mesh_laplacian.m
(related to eigenmodes) andread_vtk.m
(for reading in surface files). -
FreeSurfer runtime in MATLAB: for reading many FreeSurfer file formats like
.annot
files (read_annotation.m
),.curv
(read_curv.m
), etc.
- You'll find some more advanced techniques on the MathWorks help pages, e.g. data importing and analysis, debugging and testing.
- 0.0 Home
- 0.1 Neuroscience fundamentals
- 0.2 Reproducible Science
- 0.3 MRI Physics, BIDS, DICOM, and data formats
- 0.4 Introduction to Diffusion MRI
- 0.5 Introduction to Functional MRI
- 0.6 Measuring functional and effective connectivity
- 0.7 Connectomics, graph theory, and complexity
- 0.8 Statistical and Mathematical Tidbits
- 0.9 Introduction to Psychopathology
- 0.10 Introduction to Genetics and Bioinformatics
- 0.11 Introduction to Programming
- 1.0 Working on the Cluster
- 2.0 Programming Languages
- 2.1 Python
- 2.2 MATLAB
- 2.3 R and RStudio
- 2.4 Programming Intro Exercises
- 2.5 git and GitHub
- 2.6 SLURM and Job Submission
- 3.0 Neuroimaging Tools and Packages
- 3.1 BIDS
- 3.2 FreeSurfer
- 3.2.1 Qdec
- 3.3 FSL
- 3.3.1 ICA-FIX
- 3.4 Connectome Workbench/wb_command
- 3.5 fMRIPrep
- 3.6 QSIPrep
- 3.7 HCP Pipeline
- 3.8 tedana
- 4.0 Quality control
- 4.1 MRIQC
- 4.2 Common Artefacts
- 4.3 T1w
- 4.4 rs-fMRI
- 5.0 Specialist Tools
- 6.0 Putting it all together