Computers and programming language introduction
- Interpretation vs compilation
- Numerical representation and its limitation
- Rounding
- Limited precision
- Discretization
Matlab key concepts
- variable types
- integer
- real/float
- complex
- containers
- vector
- multi dimensional arrays
- cell array
- structures
- Graphical data presentation
Matlab program flow control
- boolean operators
- conditional statements
- cycles for/while
Matlab program flow control (cont)
- functions
- function files
- recursion
- global/local variables
- saving/loading data files
- script files
Root finding algorithm
- Bisection
- False position method
Root finding algorithm (cont)
- Newton's method
- Secant method
Solving system of linear equation
- Exact
- Inverse matrix method
- Gaussian Elimination
Solving system of linear equation (cont)
Interpolation
Numerical integration 1D case
- rectangle rule
- trapezoidal rule
- Simpson's rule
Random processes
- probability
- distributions
- probability distribution conversion from box to something else
Random processes (cont)
- random walk
- diffusion
- annealing
Numerical integration multi-D case
Optimization problem
- find minimum/maximum
- brute force
- permutations
- example: traveler problem
- back pack problem
Optimization with genetic algorithms
Data analysis
- loading/saving
- running averages
- signal detection/covariance
Least square fitting
- linear regression
- parameter estimation
- residuals
Nonlinear curve fitting
Fourier transform introduction
- time domain to frequency domain
Discrete Fourier transform introduction
- FFT
- filtering
- wave files as examples of filters and scrambles
Ordinary Differential Equations (ODEs)
- introduction
- solving methods
- simple 1st derivative
- Runge-Kutta method
ODE (cont)
- applications
- planetary motion
- ballistic
- air drag
Cellular automata
- Game of Life
- application to biology and chemistry
Scientific report preparation with Latex
High performance computing ideas
- parallel CPU
- sequenced CPU
- streams
- MPI
Fractals (if time permits)
Computer security (if time permits)