Provides fundamental numerical algorithms including linear computations, Fourier transform, ordinary differential equations, finite element method, random numbers, digital filtering, and digital image processing. Students will write programs on these topics to understand and to use practically the alogorithms. (Dept. Mechanical Eng. / Robotics / Micro System Tech., B3)
1st | Introduction: Analytical solution, Numerical solution | |
2nd | ODE: Canonical forms of ordinary differential equations (ODEs) | |
3rd | ODE: Euler method, Heun method, and Runge-Kutta method | |
4th | ODE: Runge-Kutta-Fehlberg method | |
5th | ODE: Constraint stabilization method (CSM) (1st quiz) | |
6th | Linear equations: Gaussian elimination, LU decomposition | |
7th | Linear equations: Pivot selection, Redundant equations | |
8th | Projection: Minimum error solution, Projection matrix | |
9th | Projection: Gram-Schmidt orthogonalization, QR decomposition | |
10th | Approximation: Piecewise linear approx., Spline approx. | |
11th | FEM: Variational principle in statics, system with constraints (2nd quiz) | |
12th | FEM: 1D finite element method (FEM), 2D finite element method (FEM) | |
13th | Fourier Transform: Discrete fourier transform(DFT) | |
14th | Fourier Transform: Fast fourier transform (FFT) | |
15th | Fourier Transform: Matched filter, Phase-only correlation method |
Evaluation: | Final Exam. 60% and Quiz 40% |
Textbook: | Numerical Methods for Mechanical Systems |
ISBN 978-4-339-06094-2 | |
References: | Linear Algebra and Its Applications |
Gilbert Strang Thomson Learning ISBN 0-15-551005-3 |
Readme | Readme | |
Makefile | Makefile | |
Header file | opt.h | |
Linear computation | mat.c mat-t0.c | |
Numerical integral | int.c int-t0.c int-t1.c | |
Solution of equation | eqs.c eqs-t0.c |
Readme | Readme | |
Header file | RK.h | |
Runge-Kutta method | rungekutta.c | |
Makefile | Makefile |
Free vibration | freevibration.c  freevibration.plt | |
Forced vibration | twoorder.c      twoorder.plt | |
ODF of the first order | oneorder.c      oneorder.plt | |
sample | rungekutta-t0.c  rungekutta-t0.plt | |
sample (simple vibration) | rungekutta-t1.c  rungekutta-t1.plt | |
sample (vibration of multiple mass particles) | rungekutta-t2.c  rungekutta-t2.plt |
Readme | Readme | |
Makefile | Makefile | |
Header file | opt.h | |
Quasi-Newton method | bfgs.c bfgs-t0.c bfgs-t1.c | |
Nelder-Mead method | neldermead.c neldermead-t0.c neldermead-t1.c | |
Multiplier method with quasi-Newton | multi.c multi-t0.c multi-t1.c | |
Multiplier method with Nelder-Mead | multisimp.c multisimp-t0.c |
Makefile | Makefile | |
Header file | vision.h | |
File I/O | pgmio.c imagewrite-t.c | |
Digital image filter | imagefilter.c imagefilter-t.c photo0.pgm | |
Geometric transformation | geometry.c imagemove-t.c object.pgm |
Random Numbers | (HP) | |
Mersenne Twister | (HP) | |
Readme | Readme | |
Header file | filter.h | |
Random numbers | random.c | |
Digital fintering | filter.c | |
Gnuplot | pva.plt | |
Makefile | Makefile |
Readme | Readme | |
Makefile | Makefile | |
Header file | opt.h | |
Simplex method | lp.c | |
lp-t0.c   lp-t1.c   lp-t-0.dat   lp-t-1.dat | ||
Two-phase method | feas.c | |
feas-t0.c   feas-t1.c   feas-t1-0.dat   feas-t1-2.dat | ||
feas-t2.c   feas-t3.c   feas-t3-0.dat   feas-t3-1.dat   feas-t3-2.dat |