シラバス情報

授業科目名
計算機プログラミング
(英語名)
Computer Programming
科目区分
専門基礎科目(専門関連科目)/教職課程科目

対象学生
理学部
学年
3年
ナンバリングコード
HSSBA3MCA1
単位数
2.0単位
ナンバリングコードは授業科目を管理する部局、学科、教養専門の別を表します。詳細は右上の?から別途マニュアルをダウンロードしてご確認ください。
授業の形態
講義 (Lecture)
開講時期
2024年度後期
担当教員
草部 浩一
所属
理学部
授業での使用言語
日本語
関連するSDGs目標
目標9
オフィスアワー・場所
曜限:火曜、水曜、木曜の1限
場所:播磨理学キャンパス研究棟708室
その他の日程でも調整するので、必要な場合にはkusakabe@sci.u-hyogo.ac.jpまで事前に連絡すること。
連絡先


草部への連絡は、kusakabe@sci.u-hyogo.ac.jpへメールを送ることで行える。
ユニパの授業Q&Aでも連絡を受け付ける。

対応するディプロマ・ポリシー(DP)・教職課程の学修目標
二重丸は最も関連するDP番号を、丸は関連するDPを示します。
学部DP
1◎/5◎/7◎
研究科DP
全学DP
1-1◎/1-2〇
教職課程の学修目標
目標2:教え、寄り添う力

講義目的・到達目標

【講義目的】コンピュータプログラムを作成、改良しながら、数値計算を行い、結果を可視化しながら、データの整理とその解析を進めるデータサイエンスの基礎的な能力をもつことを目的にする。数値計算に現れる数理も理解する。
【到達目標】数値計算の分野で用いられるアルゴリズムを用いて、プログラムを作成し、簡単な数値シミュレーションを行うことができ、自然科学におけるデータサイエンスの位置づけと価値を判断して説明できる。

授業のサブタイトル・キーワード
キーワード:計算科学、コンピュータプログラム、数値計算
講義内容・授業計画
【講義内容】数値計算の方法を学びながら、コンピュータシステム上で簡単なプログラムを作成する。その動作を理解しながら、数値計算の方法を習得する。プログラムのコンパイルにはGNUコンパイラとIntelコンパイラを用いて比較を行う。Pythonの実行時にはjupyter notebookを用いる。簡単な並列計算の実習では並列実行が可能な計算機システム上でMPIとopenMPの動作確認を行って、ハイブリッド並列の概要を理解する。
【授業計画】
取り扱う内容と授業計画は以下の通りである。
1.Linuxシステムの復習
2.コンピュータ言語の基礎、Fortran90とC++
3.コンピュータで扱う数の表現と誤差、桁落ち
4.方程式の数値解法、ニュートン法
5.方程式の数値解法、二分法
6.数値積分、台形則とシンプソン則
7.Pythonを用いた各種のグラフの表示
8.微分方程式の数値解法、オイラー法
9.微分方程式の数値解法、ルンゲ・クッタ法
10.Pythonを用いたデータ可視化の基礎
11.数列計算の加速法
12.乱数とモンテカルロ法
13.疑似乱数とその数理
14.数値計算ライブラリの利用と大規模計算技術の紹介
15.簡単なニューラルネットワークと機械学習応用例の紹介
期末試験

生成系AIの利用:
生成系AIの利用については教員の指示に従うこと。生成系AIによる出力結果をそのまま課題レポートとして提出してはいけない。
生成系AIによる出力をそのまま提出したことが判明した場合は単位を認定しない、又は認定を取り消すことがある。
教科書
テキストを講義中に配布する。
参考文献
数値計算(宮下精二著、朝倉書店(2002))、数値計算の常識(伊理正夫・藤野和建著、共立出版(1985))。
事前・事後学習(予習・復習)の内容・時間の目安
【予習】毎回の授業・演習(初回を除く)で用いるテキストを事前読み込み。(15h)
【復習】演習の時間中に提示されたプログラムを動作させて課題を解く。それをレポートとしてまとめる。(30h) 講義内容の理解を深め定着させるためにテキスト、教材を読み直しする。(15h)
アクティブ・ラーニングの内容
提供された課題を解く計算機プログラムを受講者自らで動作させて、改変しながら応用課題を解く。授業内に参加する受講者間でプログラムの動作状況を共有して議論し、お互いのプログラムの適否をディスカッションする。
成績評価の基準・方法
【成績評価の基準】プログラミングに関する課題を解いて行う実習とそのレポート、及び期末試験の結果から、知識・技能、思考力、判断力、表現力を考慮し、講義目的・到達目標に記載した能力の到達度に応じてS(90点以上)、A(80点以上)、B(70点以上)、C(60点以上)による成績評価のうえ、単位を付与する。
【成績評価の方法】定期試験50%、演習課題への取り組みと毎回のレポート50%を基準として総合的に評価を行う。
課題・試験結果の開示方法
提出されたレポートについて、担当教員が評価し、コメントを併せて記載する。
履修上の注意・履修要件
「情報処理基礎」「情報科学I」「情報科学IIAまたはIIB」「コンピューターリテラシー」の単位を取得していることは履修要件ではないが、単位を取得していることが望ましい。授業中に指示した課題は、授業時間中にプログラミング等に関して演習を行うものが含まれるため、「講義内容・授業計画」で記した事項について授業外学習として充分な予習・復習を行ってから授業に出席すること。
BYODを基本とするため、pythonが動作しているノートパソコンを持参することを推奨する。
情報処理室にある端末装置を用いても実習を行うことができる。
実践的教育
該当しない
備考
英語版と日本語版との間に内容の相違が生じた場合は、日本語版を優先するものとします。