Numerical analysis using computer is now important and essential skill for various fields. In this class, computer language Fortran 90/95, which is especially used in large-scale numerical computing, is used. By understanding basic grammar of the computer language and algorithms of major numerical-analysis methods, which are commonly used in research fields, basic programing skill will be acquired.
Through this course, students who don’t have any programming experience are expected to understand algorithms of major numerical-analysis methods and to be able to make basic program for numerical analysis.
By the end of this class, students will be able to:
(1) understand basic grammar of the computer language,
(2) understand algorithms of major numerical-analysis methods, which are commonly used in research fields,
(3) acquire basic skills for applying the numerical analysis techniques to their own problems in their fields.
numerical analysis, algorithm, Fortran, programming
|✔ Specialist skills||Intercultural skills||Communication skills||Critical thinking skills||Practical and/or problem-solving skills|
Basics of programming and algorithms is trained through both lectures and exercises with using terminal of GSIC.
|Course schedule||Required learning|
|Class 1||Exercise: Guidance, introduction to numerical analysis, instruction on usage and programing environment||Guidance of the class understanding about broad range application of numerical analysis explanations on the rule of practical room, configuration of programming environments, short exercise of Fortran programming|
|Class 2||Exercise: Basics of programming (1): Loop, conditional statement and visualization.||Understanding loop and conditional statement, and learning how to visualize computed results.|
|Class 3||Exercise: Basics of programming (2): Data type, built-in functions, array, Subroutine||Understanding data type, built-in functions and array, and usage of them through the exercise. Usage of subroutine, and its applications.|
|Class 4||Exercise: Matrix operation||How to express matrix using array, programming of basic matrix operation.|
|Class 5||Lecture: Gaussian elimination (1): Algorithm||Understanding an algorithm of Gaussian elimination, and programming essential part.|
|Class 6||Lecture: Gaussian elimination (2): Programming||Programming of Gaussian elimination including partial pivoting.|
|Class 7||Lecture: Numerical integration||Understanding and implementation for algorithms of numerical integration method. e.g. rectangle rule, trapezoidal rule, Simpson's rule|
|Class 8||Lecture: Least-square method, optimization||Understanding and implementation for algorithms of linear and non-linear least-square method.|
|Class 9||Exercise: Newton's method||Understanding an algorithm of Newton's method, and programming and demonstration of the application.|
|Class 10||Lecture: Ordinary differential equation||Understanding and implementation for algorithms of numerical solution techniques for ordinary differential equation. e.g. Euler's method, Runge-Kutta method Understanding some applications of numerical simulation by ordinary differential equations to actual physical phenomena|
|Class 11||Lecture: Partial differential equation||Understanding and implementation for algorithms of numerical solution techniques for partial differential equation by finite difference method, and visualization of the results.|
|Class 12||Exercise: Algebraic calculation by 'Mathematica'||Understanding basic usage of 'Mathematica'.|
|Class 13||Lecture: Examples of numerical analysis||Understanding of numerical analysis through some examples|
|Class 14||Final Examination||Final Examination|
To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.
Handout will be distributed before beginning of class via OCW-i.
Following textbook is recommended but will not be used in the course:
Ushijima, Satoru. "Introduction to Fortran90/95 programming for numerical computation" Morikita Publishing, ISBN-13: 978-4-627-84721-7 (in Japanese, original title translated)
Learning achievement is evaluated by combining results from reports 60 %, and final exam 40 %. Please note that you will be disqualified from the final exam if your absences is more than 6 classes.