Advanced MATLAB for Scientific Computing
CME292 Advanced MATLAB for Scientific Computing
The goal of this 8-lecture short course is to introduce advanced MATLAB features, syntaxes, and toolboxes not traditionally found in introductory courses; applications will be drawn from various topics from scientific computing. Material will be reinforced with in-class examples and demos involving topics from scientific computing. Students will be practicing the knowledge learned through a mini course project, which will be based on either the suggested topics or a topic of their own choice. MATLAB topics to be covered will be drawn from: advanced graphics and animation, MATLAB tools, data management, code optimization, object-oriented programming, and a variety of toolboxes, including optimization, statistical and machine learning, deep learning, parallel computing, and symbolic math. Students should expect to gain exposure to the tools available in the MATLAB software, knowledge of and experience with advanced MATLAB features, and independence as a MATLAB user. Successful completion of the course requires completion of a mini project.
CME 192 (Introduction to MATLAB) or equivalent programming background in other languages is highly recommended prior to taking this course. Basic knowledge of numerical methods, linear algebra, and machine learning is recommended, but not required.
The course syllabus for winter 2022 is available here.
The course syllabus for winter 2023 is available here.
- Course Introduction, MATLAB Fundamentals
- Graphics and Data Visualization
- File Manipulation, Big Data Handling, Integration with Other Languages
- Machine Learning with MATLAB
- Applied Math with MATLAB
- Object Oriented Programming, Efficient Code Writing
- Advanced Tools for Images and Signals
- Wrap-Up & Additional Topics
The course materials are adapted from a previous version of the course offered by ICME alum Matthew J. Zahr (https://mjzahr.github.io/teach-stanford-cme292-spr15.html), and the online resources provided by MathWorks, including the online courses (https://matlabacademy.mathworks.com/) and examples (https://www.mathworks.com/help/examples.html). A more detailed list of sources consulted for the preparation of course materials can be found below.
The materials are reformatted by Xiran Liu (ICME PhD). Special thanks to Dr. Hung Le from ICME and Dr. Reza Fazel-Rezai from MathWorks for guiding the reformation of course materials.
Resources from MathWorks
- MATLAB for Data Processing and Visualization (https://matlabacademy.mathworks.com/details/matlab-for-data-processing-and-visualization/mlvi)
- Machine Learning with MATLAB (https://matlabacademy.mathworks.com/details/machine-learning-with-matlab/mlml)
- Deep Learning with MATLAB (https://matlabacademy.mathworks.com/details/deep-learning-with-matlab/mldl)
- Signal Processing Onramp (https://matlabacademy.mathworks.com/details/signal-processing-onramp/signalprocessing）
- Documentation - Volume Visualization (https://www.mathworks.com/help/matlab/volume-visualization.html)
- Documentation - Strategies for Efficient Use of Memory (https://www.mathworks.com/help/matlab/matlab_prog/strategies-for-efficient-use-of-memory.html)
- Documentation - Resolve “Out of Memory” Errors (https://www.mathworks.com/help/matlab/matlab_prog/resolving-out-of-memory-errors.html)
- Documentation - Getting Started with MapReduce (https://www.mathworks.com/help/matlab/import_export/getting-started-with-mapreduce.html)
- Documentation - Solving Partial Differential Equations (https://www.mathworks.com/help/matlab/math/partial-differential-equations.html)
- Documentation - Calling Python from MATLAB (https://www.mathworks.com/help/matlab/call-python-libraries.html)
- Example - Time Series Forecasting Using Deep Learning (https://www.mathworks.com/help/deeplearning/ug/time-series-forecasting-using-deep-learning.html)
- Example - Semantic Segmentation Using Dilated Convolutions (https://www.mathworks.com/help/vision/ug/semantic-segmentation-using-dilated-convolutions.html)
- Example - Speaker Identification Using Pitch and MFCC (https://www.mathworks.com/help/audio/ug/speaker-identification-using-pitch-and-mfcc.html)
- Example - Signal Visualization and Measurements in MATLAB (https://www.mathworks.com/help/dsp/ug/signal-visualization-and-measurements-in-matlab.html)
Xiran Liu (2023). Advanced MATLAB for Scientific Computing (https://github.com/xr-cc/CME292/releases/tag/2.0), GitHub. 检索来源 .
See release notes for this release on GitHub: https://github.com/xr-cc/CME292/releases/tag/2.0
See release notes for this release on GitHub: https://github.com/xr-cc/CME292_WI22/releases/tag/1.1