到達目標
第3クオーター開講
(1) 最小二乗法の説明が出来るとともに,近似曲線を求め,データを整理できる.
(2) 代数方程式や連立方程式の数値解を計算するプログラムを構築し,その数値解を解析できる.
(3) 微分方程式や積分の数値解を計算するプログラムを構築し,その数値解を解析できる.
ルーブリック
| 優れた到達レベルの
目安 | 良好な到達レベルの
目安 | 最低限の到達レベルの
目安 | 未到達レベルの
目安 |
最小二乗法の計算ができる | 最小二乗法の各係数を導出でき,近似曲線を求め,データを整理できる | 最小二乗法により得られた近似曲線をグラフに図示できる | 最小二乗法の意味を理解し,係数の計算ができる | 最小二乗法の係数を求めることができない |
代数方程式や連立方程式,積分,微分方程式を数値的に計算できる | これらのアルゴリズムを手計算によって解析できる. | これらのアルゴリズムの内,3つを手計算によって解析できる. | これらのアルゴリズムの内,2つを手計算によって解析できる. | アルゴリズムが理解できておらず,手計算によっても数値解を求めることが出来ない |
アルゴリズムをプログラミングすることができる | これらのアルゴリズムを,プログラムとして構築し,数値解を解析でき,誤差について検討できる | これらのアルゴリズムを,プログラムとして構築し,数値解を解析できる | プログラミングのフローチャートなどを示すことで,プログラムを構築することができる | アルゴリズムが理解できておらず,プログラミングができない |
学科の到達目標項目との関係
JABEE (C)
説明
閉じる
教育目標 (B)①
説明
閉じる
教育方法等
概要:
近年ではパソコンに代表されるコンピューターが大きな発展を遂げており,簡単な数値計算はノートパソコンでも可能になってきている.そこで,パソコンによる微分方程式などの数値解を求めるためのアルゴリズムを説明するとともに,C言語やFortranを使用したプログラミング演習を行う.
授業の進め方・方法:
授業では数値計算のアルゴリズムについて解説します.また,それを基にプログラムを作成し,実際に数値計算を行います.試験ではアルゴリズムを確認する内容を出題します.
注意点:
プログラミングの知識が必要です.十分に復習をしてください.また,数値計算はコンピューターを使って結果を求めるものですが,”何を”,”なぜ”解くのかという知識,結果の正誤は人間が判断する必要があります.物理学,数学の理解を深めておくことが必要不可欠です.
これまでに,学生のみんなは“数学的に求めることが可能”な問題について考えてきていると思います(収束しないや解が存在しないという例外もあるが).例えば,積分では積分の公式が与えられ,その公式を使えば問題を解くことができます.置換積分法や部分積分法などを使えば複雑な問題もある程度は解くことが出来るでしょう.しかし,これらの公式が使えないような問題と対峙した時,みんなはどうやってその問題にアプローチすればよいでしょうか?例えば,みんなが世界で初めてある現象を発見したとしましょう.それが5次の方程式だったとします.2次方程式までは解の公式で解けますがそれ以上では解析的にとくことが難しくなり,5次方程式は解くことができません.では解くことを諦めますか?実は数値計算を利用すれば,5次方程式の解を求めることができるようになります(厳密に言えば近似解ですが).他にも偏微分方程式の支配方程式も数値計算によって解くことができます.
この授業は,みんなの解法の武器を増やすことが目的です.微分方程式を解くことができれば,卒業研究も色々なアプローチが出来るかもしれません.プログラムを嫌がらずに積極的に取り組んでください.
学期内に成績を再評価する場合がある。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
数値計算の概要 最小二乗法 |
数値計算の必要性を説明できる 数値計算における誤差について説明できる 最小二乗法の意味を説明でき,計算できる
|
2週 |
代数方程式の数値解法
|
ニュートン法,二分法のアルゴリズムを説明できる
|
3週 |
連立方程式の数値解法 |
ガウスの消去法,LU分解のアルゴリズムを説明できる 反復解法のアルゴリズムを説明できる
|
4週 |
数値積分法 |
台形則,シンプソン則のアルゴリズムを説明できる
|
5週 |
常微分方程式の数値解法 偏微分方程式の数値解法 |
オイラー法,ルンゲクッタ法のアルゴリズムを説明できる 簡単な差分式を立てることができる
|
6週 |
プログラミング演習 |
授業で学んだアルゴリズムの内一つをプログラムとして構築することができる.
|
7週 |
プログラミング演習 |
授業で学んだアルゴリズムの内一つをプログラムとして構築することができる.
|
8週 |
期末試験 |
期末試験を行う
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | 後2,後3,後4,後5,後6,後7 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | 後2,後3,後4,後5,後6,後7 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | 後2,後3,後4,後5,後6,後7 |
専門的能力 | 分野別の専門工学 | 機械系分野 | 情報処理 | プログラムを実行するための手順を理解し、操作できる。 | 4 | 後4,後7 |
定数と変数を説明できる。 | 4 | 後4,後7 |
整数型、実数型、文字型などのデータ型を説明できる。 | 4 | 後4,後7 |
演算子の種類と優先順位を理解し、適用できる。 | 4 | 後4,後7 |
算術演算および比較演算のプログラムを作成できる。 | 4 | 後4,後7 |
データを入力し、結果を出力するプログラムを作成できる。 | 4 | 後4,後7 |
条件判断プログラムを作成できる。 | 4 | 後4,後7 |
繰り返し処理プログラムを作成できる。 | 4 | 後4,後7 |
一次元配列を使ったプログラムを作成できる。 | 4 | 後4,後7 |
評価割合
| 試験 | レポート | 合計 |
総合評価割合 | 50 | 50 | 100 |
知識の基本的な理解 | 50 | 0 | 50 |
思考・推論・創造への適用力 | 0 | 50 | 50 |