情報処理Ⅱ

科目基礎情報

学校 長岡工業高等専門学校 開講年度 令和03年度 (2021年度)
授業科目 情報処理Ⅱ
科目番号 0085 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 1
開設学科 物質工学科 対象学年 4
開設期 後期 週時間数 2
教科書/教材 教科書:Bill Lubanovic・入門Python3(オライリージャパン)、適宜必要な資料を配布する。
担当教員 熱海 良輔

到達目標

(科目コード:41510、英語名:Inorganic Materials Engineering)
この科目は長岡高専の教育目標の(D)と主体的に関わる。この科目の到達目標と、各到達目標と長岡高専の学習・教育到達目標との関連を、到達目標、評価の重み、学習・教育目標との関連の順に示す。①工学的問題に対する数値計算の重要性を理解し、適切な方法・実行環境により数値計算を実行することができる(d1)20%。②表計算ソフトウェアを用いた数値計算により、最適値問題および常微分方程式の初期値問題を解くことができる。(d1)20%。③Pythonの基本的な文法を理解し、最適値問題および常微分方程式の初期値問題を解くことができ、さらに繰り返し処理を実行することができる。(d2)20%。④回分反応器の設計において、表計算ソフトまたはPythonにより設計方程式を解くことができる。(d1)40%。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安最低限の到達レベルの目安未到達レベルの目安
評価項目1数値計算において適切な手法を選択することができ、繰り返し処理や誤差の適切な取り扱いができる。数値計算において適切な手法を選択することができる。基本的な数値計算手法を表計算ソフトで実行することができる。左記に達していない。
評価項目2表計算ソフトを用いた最適値計算および常微分方程式の初期値問題を解くことができる。表計算ソフトを用いた最適値計算を実行することができる。表計算ソフトを用いたデータの取り扱いができる。左記に達していない。
評価項目3Python実行環境により、最適値計算、常微分方程式の初期値問題等を解くことができ、繰り返し処理ができる。Python実行環境により、最適値計算および常微分方程式の初期値問題を解くことができる。Pythonの基本的な文法を理解することができる。左記に達していない。
評価項目4Python実行環境および表計算ソフトにおいて、反応器の設計方程式を解き、反応器設計ができる。Python実行環境または表計算ソフトのどちらかにおいて、反応器の設計方程式を解くことができる。反応器の設計方程式を熱・物質収支から導くことができる。左記に達していない。

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

教育方法等

概要:
工学の基本的な問題について、Pythonまたは表計算ソフトにより数値計算手法を用いて、基本的な工学設計について学習する。
○ 関連する科目:情報処理Ⅰ(2学年後期履修)、化学システム制御(5学年前期履修)
授業の進め方・方法:
授業資料に基づいて、工学的問題をPythonまたは表計算ソフトにより計算する方法について講義を行うが、実際に自分でコーディングしたり表計算シートを組むことが重要である。表計算ソフトにより、いわゆる「ホワイトボックス」として計算問題を解くため、必ず表計算ソフトのセルを1つずつ吟味して、どのように計算が進行しているのか理解してほしい。また、数値計算の例題として反応プロセスの設計方程式問題を解き、実際の設計または研究の現場で数値計算を使用するつもりで学習してほしい。
注意点:
本講義で解説するコードを「写経」してもプログラムを動かすことができるが、実行環境や実際の問題で使用するパラメータに対して必ずしも適切に動作するわけではない。プログラムをどのように構築するか解説するが、自分でPythonの文法や数値計算の手法について積極的に調査し、理解することが重要である。また、本講義で解説するプログラムを適宜書き換えながら、動作確認し(単体テスト)、プログラムの特性を理解することが重要である。

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 Pythonの基本文法(1) データ型、Pythonにおける四則演算について解説する。
2週 Pythonの基本文法(2) 標準ライブラリについて解説する。また、化学工学計算におけるリスト、タプルの実用的な使い方についても解説する。
3週 If文による条件分岐 If文の構文およびコード構造について解説する。
4週 for文・while文による繰り返し処理 for文、while文の構文について解説する。また、for文(while文)とif文を組み合わせたコードについて解説する。
5週 関数の使い方 関数の定義について解説する。
6週 各物理量を計算する関数のコーディング 平均定圧モル熱容量、反応速度など、反応工学で利用する関数を定義する方法を解説する。
7週 NumPy・SciPyの基礎 NumPyおよびSciPyについて解説する。また、ndarrayの基本的な使い方について解説する。
8週 微分方程式の数値解法(1) 微分方程式の数値解法について、基本的な概念を解説する。
4thQ
9週 微分方程式の数値解法(2) オイラー法およびRunge-Kutta法について解説する。
10週 回分反応器の設計方法(1) 回分反応器の数理モデルについて、Excelシミュレータを用いて作成する。
11週 回分反応器の設計方法(2) 回分反応器の数理モデルを用いて、オイラー法を使ったPythonシミュレータを作成する。
12週 回分反応器の設計方法(3) SciPyの常微分方程式ソルバーを使ったPythonシミュレータを作成する。
13週 Matplotlibによるグラフ作成方法 Matplotlibの基本的な使い方について解説する。
14週 Pythonによる反応器シミュレーション技術の解説 連続攪拌槽および管型反応器の数理モデルおよびPythonシミュレータについて解説する。
15週 Pythonにおける機械学習の紹介 Pythonにおける機械学習ライブラリScikit learnを紹介する。
16週 これからPythonistaになるために 本授業の課題について解説する。また、これからPythonプログラミングの学習を継続するためのアドバイスを与える。

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3

評価割合

レポート合計
総合評価割合100100
基礎的能力6060
専門的能力2020
分野横断的能力2020