1 Introduction to MATLAB 1
1.1 Access to MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Using MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 A few simple examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Running MATLAB scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Sending output to a file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.6 MATLAB help facility and lookfor command . . . . . . . . . . . . . . . . . . . 8
1.7 Functions in MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.8 Functions in MATLAB – vector input . . . . . . . . . . . . . . . . . . . . . . . 10
1.9 Passing function names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.10 An Introduction to solving DEs numerically . . . . . . . . . . . . . . . . . . . . 13
1.11 Some Elementary MATLAB Commands . . . . . . . . . . . . . . . . . . . . . . 16
2 Initial Value Problems 19
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Numerical approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 Euler’s method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.1 Graphically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.2 Errors and order of the method . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.3 Adjusting the step size . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4 Improvements to Euler’s method - midpoint method . . . . . . . . . . . . . . . . 28
2.5 Second order Runge-Kutta method . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6 Fourth order Runge-Kutta method . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.7 ode45 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.8 Projectile example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3 Phase Plane Analysis 41
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.1 Quiver plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2 Predator-Prey model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3 Competition model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.4 SIR disease model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4 Boundary Value Problems 57
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.2 Shooting method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2.1 Shooting method using guesses . . . . . . . . . . . . . . . . . . . . . . 58
4.2.2 MATLAB finding zeros . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2.3 Shooting method using fzero . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3 Relaxation methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3.1 Finite differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3.2 Using finite differenes to solve a BVP . . . . . . . . . . . . . . . . . . . 64
4.3.3 Comments on solving matrix equations . . . . . . . . . . . . . . . . . . 71
4.3.4 Finite elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.3.5 Symbolic form of a BVP . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.6 Finite element theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.7 Finite element example . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.3.8 Finite element summary . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.4 Differential eigenvalue equations . . . . . . . . . . . . . . . . . . . . . . . . . . 80
|