シラバス情報

科目授業名称(和文) Name of the subject/class (in Japanese)
数値計算 A組
科目授業名称(英文) Name of the subject/class (in English)
Numerical Computation A組
授業コード Class code
991235E
科目番号 Course number
12MAISS201

教員名
小林 翔悟
Instructor
Shogo KOBAYASHI

開講年度学期
2025年度前期
Year
2025年度
Semester
①First semester
曜日時限
金曜3限、金曜4限
Class hours
from 13:00-16:00, Friday

開講学科・専攻 Department
理学部第一部 物理学科

Department of Physics, Faculty of Science Division Ⅰ
単位数 Course credit
4.0単位
授業の方法 Teaching method
演習

Seminar
外国語のみの科目(使用言語) Course in only foreign languages (languages)
-
授業の主な実施形態 Main class format
① [対面]対面授業/ [On-site] On-site class

概要 Description
python言語を学び、さらに、さまざまな数値解法の手法を実際のプログラム作成を通して学んでいく。
またコンパイラ言語(C言語)を用いた簡単なプログラミングにも触れ、、インタプリタ言語(python)との違いを理解する。

目的 Objectives
pythonによるプログラミング演習を通して、プログラムが作成できるようになるとともに、科学技術計算で利用されている基本的な数値計算のアルゴリズムを学ぶ。
さらに、数値計算が実際の問題に適用されるときの問題点、その解決法なども理解する。

なおこの科目は、物理学科カリキュラムポリシー7.「自然の各階層に対応した多様な専門科目(選択)」、
また、物理学科のルーブリックの評価軸4「問題発見・解決能力」の項目に該当する科目である。

到達目標 Outcomes
python言語を用いて自分でプログラムの作成ができるようになる。
数値誤差を注意して、数値計算を行えるようになる。
積分や常微分方程式、非線形方程式、行列などを数値的に解けるようになる。
乱数の発生について理解し、モンテカルロ・シミュレーションを行えるようになる。
行列の数値解法を最小二乗法の解法に応用できる。
コンパイラ言語(C言語)とインタプリタ言語(python)の違いを理解し、C言語を用いた簡単なプログラムの作成ができる。
卒業認定・学位授与の方針との関係(学部科目のみ)
リンク先の [評価項目と科目の対応一覧]から確認できます(学部対象)。
履修登録の際に参照ください。
​You can check this from “Correspondence table between grading items and subjects” by following the link(for departments).
https://www.tus.ac.jp/fd/ict_tusrubric/​​​
履修上の注意 Course notes prerequisites
授業はプログラム作成の演習の形態で行うため、プログラミングの基礎を理解しているのが望ましい。
特に情報科学概論2の内容を理解し、簡単なpython言語プログラムの作成と実行ができること。

BYOD形式で自分のPCを用いて演習を行う。
プログラムの編集実行はgoogle Colab (Colaboratory) を基本的に用いる。
ターミナル室での対面講義を基本とする。
毎講義で出欠を確認するので、やむを得ない理由(発熱等の病欠)で欠席した場合は診断書などの根拠資料とともに教員に連絡をすること。

説明動画を聞くためのイヤホンを持参すること。
アクティブ・ラーニング科目 Teaching type(Active Learning)
実習 Practical learning
-

準備学習・復習 Preparation and review
授業時間外にも課題やレポートの作成のために2時間程度の時間を必要とする。
成績評価方法 Performance grading policy
対面講義への出席を原則として要求し、毎講義にて出欠登録による出欠管理を実施する。
「C, B, A, S」に分類された提出課題を各議題について出題する(全体配点の50%)。
加えて期末に小テスト(全体配点の50%)を行う。
小テストの受験資格は講義出席率が60%以上の者のみとする。

<「C」判定を得る条件の一例 >
小テストで6割の点数を取得し、かつC課題をすべて提出
学修成果の評価 Evaluation of academic achievement
・S:到達目標を十分に達成し、極めて優秀な成果を収めている
・A:到達目標を十分に達成している
・B:到達目標を達成している
・C:到達目標を最低限達成している
・D:到達目標を達成していない
・-:学修成果の評価を判断する要件を欠格している

・S:Achieved outcomes, excellent result
・A:Achieved outcomes, good result
・B:Achieved outcomes
・C:Minimally achieved outcomes
・D:Did not achieve outcomes
・-:Failed to meet even the minimal requirements for evaluation

教科書 Textbooks/Readings
教科書の使用有無(有=Y , 無=N) Textbook used(Y for yes, N for no)
N
書誌情報 Bibliographic information
-
MyKiTSのURL(教科書販売サイト) URL for MyKiTS(textbook sales site)
教科書および一部の参考書は、MyKiTS (教科書販売サイト) から検索・購入可能です。
https://gomykits.kinokuniya.co.jp/tokyorika/​​​

It is possible to search for and purchase textbooks and certain reference materials at MyKiTS (online textbook store).
​​https://gomykits.kinokuniya.co.jp/tokyorika/

参考書・その他資料 Reference and other materials

python言語の文法書

授業計画 Class plan
1 基本事項である式と計算や入出力の方法を復習し、簡単なpythonプログラムが作成できるようになる。
2 プログラムの基本構造である繰り返し処理、判断と分岐を用いたプログラムを作成できるようになる。
3 リスト(配列)を使えるようになる。
4 関数とサブルーチンの概念を理解し、プログラムに組み込めるようになる。
5 数値の表現を学ぶとともに、数値計算における計算誤差(丸め誤差、累積誤差、打ち切り誤差)を理解する。
6 離散的な数値データを直線補完、ラグランジュ補完などの手法で補完する方法を学ぶ。
7 台形公式、シンプソンの公式を理解し、数値積分ができるようになる。
8 オイラー法、ルンゲクッタ法の手法により、常微分方程式の数値解法を学ぶ。
9 2分法、ニュートン法の手法を学び、非線形方程式を数値的に解けるようになる。
10 数値的な擬似乱数の発生方法を理解し、モンテカルロシミュレーションの基礎を学ぶ。
11 行列の計算方法を理解し、連立一次方程式を数値的に解けるようになる。
12, 13 連立一次方程式の数値解法を応用して、最小二乗法によるデータ解析ができるようになる。 
14 簡単なpythonプログラムをC言語に書き換えて実行できるようになる。
15 講義の総括と到達度確認

担当教員の実務経験とそれを活かした教育内容 Work experience of the instructor
-
教育用ソフトウェア Educational software
-
-

備考 Remarks

授業でのBYOD PCの利用有無 Whether or not students may use BYOD PCs in class
Y
授業での仮想PCの利用有無 Whether or not students may use a virtual PC in class
N