概要:
今日,土木分野では,汎用解析プログラムや設計プログラムの普及により,技術者自らがプログラムを作成する機会は大幅に減少している.しかし,それらのプログラムでは対応できない問題を取り扱う場合には,技術者自らがプログラムを作成する,あるいはユーザーサブルーチンとしてそれらのプログラムに新たな機能を組み込む必要がある.
Fortranは理工学分野の数値計算に適したプログラミング言語として開発され,現在でも有限要素法による構造解析プログラムなど,多くのプログラムの記述に用いられている.よって,それらのプログラムにユーザーサブルーチンを組み込む場合や,既存の数値解析プログラムに手を加える際には,Fortranに関する知識が求められるケースも多いと考えられる.
本科目では,企業で鋼構造物や鋼橋の設計業務に従事してきた教員が,その経験を活かし,Fortran言語の文法,数値解析の処理手順やFortranでのコーディング方法を習得させるため,講義と演習を行う.
授業の進め方・方法:
この授業では,サンプルプログラムを用いて,Fortranの文法,数値計算のアルゴリズムに関する基礎事項を説明する.その後,課題を提示し,学生各自にプログラムを作成,実行させる.いくつかの課題についてはレポートとして提出を求める.
注意点:
本講義では,学生は計算の流れを自ら積極的に組み立て,Fortranの文法に則してプログラムを作成する姿勢が重要である.プログラムがコンパイルできない,実行できない,妥当な計算結果が得られない場合には,その原因を自ら根気よく調べる姿勢が重要である.
本科目は,授業で保証する学習時間と,予習・復習および課題レポート作成に必要な標準的な自己学習時間の総計が90時間に相当する学習内容である.
合格の対象としない欠席条件(割合) 1/3以上の欠課
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
序説 情報の適切な収集,処理,発信方法とインターネットの基本的な仕組み,Fortranの特徴と実行手順について学ぶ |
情報の適切な収集,処理,発信方法とインターネットの基本的な仕組み,Fortranの特徴と実行手順について説明できる.
|
2週 |
入出力と簡単な計算 (1) プログラムの基本形,入出力,四則演算,変数名のつけ方について学ぶ |
プログラムの基本形,入出力,四則演算,変数名のつけ方について説明できる.
|
3週 |
入出力と簡単な計算 (2) 変数の型と型宣言,組み込み関数について学ぶ |
変数の型と型宣言,組み込み関数について説明できる.組み込み関数を用いて簡単な計算とその結果を出力するプログラムが作成できる.
|
4週 |
入出力と簡単な計算 (3) 入出力の書式設定と,外部ファイルからのデータ入力,外部ファイルへのデータ出力について学ぶ. |
入出力の書式設定について説明できる.外部ファイルからのデータを読み込んで計算した結果を外部ファイルへ出力するプログラムが作成できる.
|
5週 |
繰り返し処理 (1) 繰り返し処理に用いられるDO文について学ぶ |
DO文を用いて,繰り返し処理を含む簡単なプログラムを作ることができる.
|
6週 |
繰り返し処理 (2) DO文を用いた合計の計算方法について学ぶ |
DO文を用いて合計を求める簡単なプログラムが作成できる
|
7週 |
配列 (1) 1次元配列と簡単なベクトルの計算について学ぶ. |
1次元配列について説明できる.また,1次元配列を用いたベクトルの内積計算などのプログラムが作成できる
|
8週 |
中間試験
|
|
4thQ |
9週 |
配列 (2) 2次元配列と簡単なマトリクスの計算について学ぶ |
2次元配列について説明できる.また,2次元配列を用いたマトリクスの和,転置などの計算プログラムが作成できる
|
10週 |
配列 (3) ベクトルやマトリクスの計算について学ぶ |
マトリクスの積,ベクトルとマトリクスの積の計算プログラムが作成できる
|
11週 |
判断と分岐 (1) フローチャートや,判断や分岐に用いられるIF文やWHILE文について学ぶ. |
フローチャートについて説明できる.IF文やWHILE文を用いて,判断や分岐処理を含む簡単なプログラムを作ることができる.
|
12週 |
判断と分岐 (2) 条件を満たした場合の飛び越しに用いられるGOTO文やEXIT文について学ぶ. |
GOTO文やEXIT文を用いて,分岐や繰り返しを含む簡単なプログラムを作ることができる.
|
13週 |
副プログラム (1) 主プログラムと副プログラムの概念,サブルーチンとその呼び出しとデータの受け渡しについて学ぶ |
主プログラムと副プログラムの概念が説明できる,サブルーチンを有する簡単なプログラムを作ることができる.
|
14週 |
副プログラム (2) サブルーチンと外部関数の違い,関数とその呼び出しとデータの受け渡しについて学ぶ |
サブルーチンと外部関数の違いが説明できる,関数を使用した簡単なプログラムを作ることができる.
|
15週 |
データの型 整数型,実数型以外の文字型などについて学ぶ. |
データの型について説明できる.実数や整数以外の型を用いた簡単なプログラムが作成できる.
|
16週 |
期末試験
|
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 | 3 | 後1 |
論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 3 | 後2,後3,後4,後5,後6,後7,後9,後10,後11,後12,後13,後14,後15 |
コンピュータのハードウェアに関する基礎的な知識を活用できる。 | 3 | 後2,後3,後4,後5,後6,後7,後9,後10,後11,後12,後13,後14,後15 |
情報伝達システムやインターネットの基本的な仕組みを把握している。 | 3 | 後1 |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | 後5,後6,後7,後9,後10,後11,後12,後13,後14 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | 後5,後6,後7,後9,後10,後11,後12,後13,後14 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | 後5,後6,後7,後9,後10,後11,後12,後13,後14 |
分野横断的能力 | 汎用的技能 | 汎用的技能 | 汎用的技能 | 書籍、インターネット、アンケート等により必要な情報を適切に収集することができる。 | 3 | 後1 |
収集した情報の取捨選択・整理・分類などにより、活用すべき情報を選択できる。 | 3 | 後1 |
収集した情報源や引用元などの信頼性・正確性に配慮する必要があることを知っている。 | 3 | 後1 |
どのような過程で結論を導いたか思考の過程を他者に説明できる。 | 3 | 後2,後3,後4,後5,後6,後7,後9,後10,後11,後12,後13,後14,後15 |