トップページへ

2023 Faculty Courses School of Environment and Society Undergraduate major in Civil and Environmental Engineering

Computers and Fundamental Programming

Academic unit or major
Undergraduate major in Civil and Environmental Engineering
Instructor(s)
Hitoshi Morikawa / Ayako Akutsu / Haruka Tomobe
Class Format
Lecture/Exercise (Face-to-face)
Media-enhanced courses
-
Day of week/Period
(Classrooms)
1-2 Tue (学術国際情報センター3階第1演習室)
Class
-
Course Code
CVE.M301
Number of credits
110
Course offered
2023
Offered quarter
1-2Q
Syllabus updated
Jul 8, 2025
Language
Japanese

Syllabus

Course overview and goals

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.

Course description and aims

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.

Keywords

numerical analysis, algorithm, Fortran, programming

Competencies

  • 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/Objectives

Course schedule Objectives
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.

Study advice (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.

Textbook(s)

Nothing

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

Evaluation methods and criteria

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

Nothing