学部・大学院区分
Undergraduate / Graduate
理・博前
時間割コード
Registration Code
2600021
科目区分
Course Category
データサイエンス科目群
Data Science Classes
科目名 【日本語】
Course Title
シミュレーション実習
科目名 【英語】
Course Title
Computer Simulation Tutorial
コースナンバリングコード
Course Numbering Code
担当教員 【日本語】
Instructor
川﨑 猛史 ○
担当教員 【英語】
Instructor
KAWASAKI Takeshi ○
単位数
Credits
1
開講期・開講時間帯
Term / Day / Period
春 月曜日 3時限
Spring Mon 3
授業形態
Course style
実験及び実習
学科・専攻
Department / Program
大学院理学研究科理学専攻
必修・選択
Required / Selected
選択


授業の目的 【日本語】
Goals of the Course(JPN)
本授業は、理学研究のあらゆる場面で必須となる計算機シミュレーションの実践的な知識および技能の修得を目的とする。目標達成の為に、C(C++)やPythonを用いた解析や作図に関する初歩的なプログラミングから、モンテカルロ法や分子動力学法に至る実践的な数値計算手法に関する、理学研究への幅広い応用を意識した講義および実習を行う。
授業の目的 【英語】
Goals of the Course
This course provides students with practical knowledge and skills in computer simulations, which are essential in all aspects of scientific research. The course includes lectures and training on practical numerical methods ranging from elementary programming using C (C++), Python, and others to a wide range of applications in scientific research, including Monte-Carlo simulations and molecular dynamics simulations.
到達目標 【日本語】
Objectives of the Course(JPN))
C(C++)やPythonなどを用いた初歩的な解析や作図に関するプログラミングから、理学研究で幅広く用いられるモンテカルロ法や分子動力学法に至る実践的な数値計算手法を身につけることを目標とする。
到達目標 【英語】
Objectives of the Course
Learning practical numerical methods, covering from elementary programming in C (C++) and Python to the Monte Carlo and molecular dynamics methods widely used in scientific research.
授業の内容や構成
Course Content / Plan
講義は全8回で構成され,以下の内容を扱う予定である。
1.導入
・数値計算の理念
・桁落ち
・科学計算における無次元化
・Pythonを用いたデータ解析と作図

2.常微分方程式の数値解法:調和振動子を例に
・微分方程式の数値積分
・オイラー法
・蛙飛び差分法(速度ベルレ法)
・軌道の安定性と保存則

3.1粒子系のブラウン運動
・ランジュバン方程式(確率微分方程式)
・正規乱数の生成法
・オイラー・丸山法
・ブラウン運動する粒子の軌跡
・拡散係数の計算
・速度相関関数の計算
・グリーン・久保公式

4.多粒子系のブラウン運動
・相互作用力の計算方法
・非平衡系のシミュレーション:相分離現象を例に

5.多粒子系の分子動力学シミュレーション
・位置ベルレ法と速度ベルレ法
・多粒子系における保存則(運動量・エネルギー・角運動量)

6.相互作用計算の高速化
・ベルレの帳簿法
・自動帳簿更新法
・(余裕があれば)領域分割法

7.モンテカルロ法
・統計力学の復習
・マルコフ連鎖モンテカルロ法
・メトロポリス判定法

8.総括
履修条件
Course Prerequisites
物理学の知識があることが望まれるが,基本的に前提知識や技能は問わない。
関連する科目
Related Courses
非平衡の科学
成績評価の方法と基準
Course Evaluation Method and Criteria
数値計算に関する中間・期末課題を出題する。課題の得点が6割以上を合格とする。
教科書・テキスト
Textbook
Python コンピュータシミュレーション入門: 人文・自然・社会科学の数理モデル
橋本宏・牧野浩二著(オーム社)
ISBN: 9784274226984
参考書
Reference Book
コンピュータ・シミュレーションの基礎
岡崎進・吉井範行著(化学同人)
ISBN: 9784759814750
課外学習等(授業時間外学習の指示)
Study Load(Self-directed Learning Outside Course Hours)
授業中の実習時間には限度があるので,毎回簡単な課題を出題する.各回の講義の冒頭で答え合わせをする。
注意事項
Notice for Students
講義の際,実習を行うので,各自PCを持参すること.OSは問わない。
他学科聴講の可否
Propriety of Other department student's attendance
他学科聴講の条件
Conditions of Other department student's attendance
該当なし。
レベル
Level
大学院レベル(物理学)
キーワード
Keyword
数値計算,分子動力学法,モンテカルロ法
履修の際のアドバイス
Advice
特になし。
授業開講形態等
Lecture format, etc.
基本対面講義とする。場合によっては,Zoom等を用いた遠隔形式を取り入れる。いずれの場合も,オンデマンド教材を用いる。
遠隔授業(オンデマンド型)で行う場合の追加措置
Additional measures for remote class (on-demand class)
NUCTを通してオンデマンド教材を配布する。また課題の出題・回収はNUCTを通しておこなう。