2023 Computers and Fundamental Programming

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Undergraduate major in Civil and Environmental Engineering
Morikawa Hitoshi  Akutsu Ayako  Tomobe Haruka 
Class Format
Lecture / Exercise    (Face-to-face)
Media-enhanced courses
Day/Period(Room No.)
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

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.

Student learning outcomes

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

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

Basics of programming and algorithms is trained through both lectures and exercises with using terminal of GSIC.

Course schedule/Required learning

  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): data type, loop, conditional statement, built-in functions Understanding loop and conditional statement, and learning how to visualize computed results.
Class 3 Exercise: Basics of programming (2): user defined type, 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 & Tayler's expansion How to express matrix using array, programming of basic matrix operation.
Class 5 Lecture & Exercise: Gaussian elimination Understanding an algorithm of Gaussian elimination, and programming essential part.
Class 6 Lecture & Exercise: Fourier transform Programming of Fourier transform using discrete Fourier transform (DFT)
Class 7 Lecture & Exercise: numerical integration using trapezoidal rule and Gauss-Legendre rule Understanding and implementation for algorithms of numerical integration method. e.g. rapezoidal rule and Gauss-Legendre rule
Class 8 Lecture & Exercise: optimization using grid search & PSO Understanding and implementation for algorithms of numerical optimization
Class 9 Lecture: Newton's method Understanding an algorithm of Newton's method
Class 10 Exercise: Newton's method Implementation of Newton's method
Class 11 Lecture: 1- & 2-degree-of-freedom system without damping Theory of dynamic response of 1&2DOF system
Class 12 Exercise: 1- & 2-degree-of-freedom system without damping numerical analysis for dynamic response of 1&2DOF system
Class 13 Lecture: Theory of 1D wave equation Theory of 1D wave equation
Class 14 Exercise: 1D wave equation numerical analysis for 1D wave equation
Class 15 project and Q&A Q&A etc.

Out-of-Class Study Time (Preparation and Review)

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.



Reference books, course materials, etc.

Handout will be distributed before beginning of class via T2SCHOLA.
Following textbook is recommended but will not be used in the course:
MAtsumoto, T. and Tokoroyama, T.: Fortran for everyone, Nagoya univ. press, 2022, ISBN978-8158-1087-0 (in Japanese, original title translated)
Ushijima, S.: Introduction to Fortran90/95 programming for numerical computation, 2nd ed., Morikita Publishing, 2020, ISBN978-4-627-84722-74 (in Japanese, original title translated)
Metcalf, M., Reid, J., and Chen, M.: Modern Fortran explained -- Incorporating Fortran 2018, Oxford university press, 2018, ISBN978-0-19-881188-6

Assessment criteria and methods

Learning achievement is evaluated by combining results from reports.

Related courses

  • CVE.M302 : Computers and Applied Programming
  • CVE.A210 : Structural Dynamics in Civil Engineering

Prerequisites (i.e., required knowledge, skills, courses, etc.)


Page Top