Introduction to Matlab Programming with Applications

Location: Room 223A, 德田館
Time: 1900 ~ 2200, Wednesday and Saturday


``All science is dominated by the idea of approximation.''
-- Bertrand Russell (1872-1970)

Goal

This short course is designed for the students who want to learn Matlab programming without any experiences before. The students will be introduced to Matlab features and syntaxes. Besides, the fundamentals of programming concepts are delivered with elegant algorithms. You are expected to be capable to implement programs with Matlab independently after this class. Moreover, I expect that you could feel more confident of learning more programming languages and dealing with advanced topics in the future.

Prerequisites

Text

References

Matlab

Linear algebra

Numerical methods and analysis

Data mining and machine learning with Matlab

Optimization

Simulink

Related courses

Misc

Additional reading

Overview

The major topics covered in the short course, if time permitting, are listed below for your reference.

Essentials

Applications

Schedule [ 236, 237, 238, 242, 244, 245, 247, 249, 251, 252, 253, 254, 256, 258, 260, 261, 262, 263, 264, 265, 266, 268, 272, 273, 275 ]

Date Key points and memo
2016.10.19 program, cpu, memory, memory hierarchy, programming languages (machine code, high-levele language), computational solution, algorithm, binary system, data types(integers/floating points), numerical errors, variables, scalars, arrays, cells, structures, rational operators, logical operators;
2016.10.22 selection (if-elseif-else, switch-case-otherwise), error and error handling (try-catch);
2016.10.26 (no class);
2016.10.29 (no class);
2016.11.2 while loops, for loops, nested loops, analysis of algorithm;
2016.11.5 vectorization, profiling, functions, call stack, scope of variable;
2016.11.9 primary/subfunction, anonymous funtion, recursion, 2D plots, PROJECT: European call option prices (BlackScholesModel.m, EuroCall_MonteCarloSimulation.m, http://www.math.columbia.edu/~smirnov/options13.html, Black–Scholes formula);
2016.11.12 graphics objects, get/set methods, 3D plots, interpolations, matrix computation, system of linear equations;
2016.11.16 Gauss elimination, 2D Laplace PDE boundary value problem by finite difference, least square error method, polynomials, PROJECT: Internal rate of return (IRR), polynomial fitting, overfitting, eigenvalue problems (see The World’s Largest Eigenvalue Problem);
2016.11.19 singular value decomposition, PROJECT: Low-rank approximation for image compression (Image compression by SVD, svd_image_compression.m, Applications of the SVD), file I/O, PROJECT: Momentum strategy in Taiwan Stock Market (tai2000_2016_all.xls);
2016.11.23 (@ Room 106) gui design, Simulink tutorial, PROJECT: Blurring and edge detection by using FFT (Lecture 10: Discrete Fourier Transform, imageProcessing_LowHighPass.m);
2016.11.26 (@ Room 106) final project demo, Artificial neural networks, Neural networks, Neural Network Zoo, Convolutional Neural Networks (CNNs), PROJECT: Support Vector Machine (SVM) (LIBSVM, The SVM classifier), PROJECT: Implied volatility from the market data (TXO.xlsx, Newton's method, ImpliedVolatilityCalculator.m); feedback;

Gradebook

TBA