シミュレーション工学

科目基礎情報

学校 熊本高等専門学校 開講年度 2018
授業科目 シミュレーション工学
科目番号 AN211 科目区分 専門 / 選択
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 電子情報システム工学専攻 対象学年 専2
開設期 前期 週時間数 2
教科書/教材 W.H.Press他著「Numerical Recipes in C」(2nd Edition)
担当教員 藤本 信一郎

到達目標

1.数値計算法のアルゴリズムを理解し,説明することができる.2.数値計算における誤差を理解し,説明することができる.3.様々なアルゴリズムを活用し,具体的な課題を数値計算できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
効率的なプログラム開発を理解、説明できる。最適化手法やデバッガの使い方を理解し、効率的なプログラム開発を実践できる。最適化手法やデバッガの使い方を説明できる。最適化手法やデバッガの使い方を説明できない。
代数方程式の数値解法を理解し、説明できる。代数方程式の数値解法を収束性の観点から説明でき、プログラム言語を用いて、数値解法を実装できる。代数方程式の数値解法を収束性の観点から説明できる。代数方程式の数値解法を収束性の観点から説明できない。
数値積分法を理解し、説明できる。数値積分アルゴリズムを数値誤差、演算速度の観点から説明でき、プログラム言語を用いて、数値積分アルゴリズムを実装できる。数値積分アルゴリズムを数値誤差、演算速度の観点から説明できる。数値積分アルゴリズムを数値誤差、演算速度の観点から説明できない。
数値微分法を理解し、説明できる。数値微分アルゴリズムを数値誤差、演算速度の観点から説明でき、プログラム言語を用いて、数値微分アルゴリズムを実装できる。数値微分アルゴリズムを数値誤差、演算速度の観点から説明できる。数値微分アルゴリズムを数値誤差、演算速度の観点から説明できない。

学科の到達目標項目との関係

教育方法等

概要:
近年計算機性能の向上に伴い,コンピュータ・シミュレーションの重要性が増してきている.本講義では,シミュレーションに必要な様々な数値計算方法を学習する.数値計算を簡単化する様々なツールが開発されているが本講義ではその基礎となるC言語を用いた数値計算プログラミングを行う.
授業の進め方・方法:
補間法、数値積分法などいくつかの数値計算法に関して、個々の手法に対して複数のアルゴリズムを取り上げ、アルゴリズムの基礎だけでなく個々のアルゴリズムの計算精度・計算時間および利点・欠点を説明する.
また一部の内容に関してはセミナー形式(受講者が担当個所を事前に英訳し, かつ内容を読解し, それを残りの受講者に説明を行うという形式)で講義を進め, 受講者の英語力および内容読解力の向上を図る.
なお教科書は平易な英語で書かれている.該当範囲のPDFファイルを事前に印刷し予習しておくことが望ましい.
注意点:
本講義ではC言語の文法などについては解説しない.各自本科で行った内容を復習しておくこと.
また教科書で紹介されたプログラムの使用言語はC言語であるが、演習課題に関しては特に言語を制限しない.
参考書として下記を紹介する。
1、W.H.Press他著「ニューメリカルレシピ・イン・シー日本語版―C言語による数値計算のレシピ」技術評論社(原著第1版の日本語訳) 戸川隼人他著
2、「よくわかる数値計算―アルゴリズムと誤差解析の実際」日刊工業新聞社,高橋大輔著「数値計算」岩波書店

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス
Guidance
本講義の目的,概要,評価方法を理解する.
2週 C言語による効率的なプログラミング
Effective Programing in C
コンパイラオプションによるcodeの最適化,gdbによるデバッグの基礎,ライブラリを理解し,説明することができる.
3週 数の取扱い,誤差論
Floating Points and Errors
浮動小数点数の表現,丸め誤差、桁落ち、情報落ちを理解し,説明することができる.
4週 2,3,4次方程式の数値解法
Quadratic, Cubic, and Quartic Equations
2,3,4次方程式の解を数値的に求める手法を理解し,説明することができる.
5週 非線型代数方程式の数値解法
Root Finding of Nonlinear Sets of Equations
Newton-Raphson法,二分法などを理解し,説明することができる.
6週 非線型代数方程式の数値解法
Root Finding of Nonlinear Sets of Equations
Newton-Raphson法,二分法などを理解し,説明することができる.
7週 非線型代数方程式の数値解法
Root Finding of Nonlinear Sets of Equations
Newton-Raphson法,二分法などを理解し,説明することができる.
8週 補間法
Interpolation
Lagrange補間,スプライン補間などの補間アルゴリズムを理解し,説明することができる.
2ndQ
9週 数値積分法
Numerical Integration of Functions
台形公式,Simpsonの公式など数値積分アルゴリズムを理解し,説明することができる.
10週 数値積分法
Numerical Integration of Functions
台形公式,Simpsonの公式など数値積分アルゴリズムを理解し,説明することができる.
11週 数値積分法
Numerical Integration of Functions
台形公式,Simpsonの公式など数値積分アルゴリズムを理解し,説明することができる.
12週 モンテカルロ法
Monte Carlo Integration
乱数を用いたモンテカルロ積分法を理解し,説明することができる.
13週 常微分方程式の数値解法
Numerical Integration of Ordinary
Differential Equations
微分と差分、常微分方程式の数値解法であるEuler法、Ruge-Kutta法を理解し,説明することができる.
14週 常微分方程式の数値解法
Numerical Integration of Ordinary
Differential Equations
微分と差分、常微分方程式の数値解法であるEuler法、Ruge-Kutta法を理解し,説明することができる.
15週 常微分方程式の数値解法
Numerical Integration of Ordinary
Differential Equations
微分と差分、常微分方程式の数値解法であるEuler法、Ruge-Kutta法を理解し,説明することができる.
16週 答案返却
答案を返却する

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

試験セミナーレポート合計
総合評価割合303040000100
基礎的能力20302000070
専門的能力1002000030
分野横断的能力0000000