数値計算のシラバス情報

科目名称
Course title(Japanese)
数値計算 科目番号
Course number
46CSCOS302
科目名称(英語)
Course title(English)
Numerical Calculations
授業名称
Class name
数値計算
教員名 藤井 孝藏,松尾 裕一
Instructor Kozo Fujii
開講年度学期 2022年度 前期
Year/Semester 1st Semester
曜日時限 水曜3限
Class hours Wednesday 12:50-14:10
開講学科
Department
工学部 情報工学科
Department of Information and Computer Technology
外国語のみの科目
(使用言語)
Course in only foreign
languages (languages)
-
単位
Course credit
2.0 授業の主な実施形態
Main class format
 現時点では,ブレンド型,すなわちzoomを利用したハイブリッドの講義とオンライン授業(非同期)/Online (asynchronized remote) を組み合わせた形で進める予定です.
 オンライン授業(非同期)/Online (asynchronized remote) の方が高い理解度が得られていたこと,また毎年受講生が多いことから,パンデミックが大きく改善されない限り安心のためオンラインが中心となるかもしれません.
 詳細は初回講義時に受講生と相談の上決定しますが,受講生全員が一度は教室での講義参加の機会を持てるように考えます.
 また,(昨年同様に)非同期オンライン講義の回でも(例えば30分程度)一定数の受講生に参加してもらい,質問や課題回答説明などを実施することで意思疎通を図る予定です.
 
概要
Descriptions
(背景)
 企業活動においては,手元にある膨大なデータを分析し,本質を捉え,それを経営に活かすことが重要なのは言うまでもありません.一方で,そのようなデータがどのように生み出されるのかなどを学ぶことも大切です.
 現在,企業においてはコンピュータを利用したさまざまな数値シミュレーションが利用されています.自動車や航空機,ロケットから,パソコンやスマホまで,数値シミュレーション技術を利用していない「ものづくり」分野はないでしょう.また,社会生活で重要な,気象,防災,社会経済や災害避難なども今やシミュレーションに頼っていることは周知の事実です.このような分野は「計算工学」(応用によっては計算科学や計算化学)と呼ばれ,製品開発や社会生活においても,有用な大規模なデータを提供する不可欠な手段になっています.

(Background)
Computer simulations are now widely used and are now inevitable for both in research activities and product design process in academia and industries. These simulations sometimes (or often?) require large-scale computers. These simulations also produce incredible size of the data both in time and space. We should learn why such simulations require large-scale computes, how these data are created, reliability of these data, size and importance of data and else.
 
(講義内容)
この講義では,このようなデータを生み出す自然現象や工学の実問題を対象とした数値シミュレーション(数値解析)と現実問題にその知識を応用する「計算工学」の基礎を修得します

数値シミュレーションの適用先は,流体力学,材料力学,物質科学など多岐にわたります.共通の基盤となる数値シミュレーション手法自体も大切ですが,実応用には,数値解析手法を単に数学的に捉えるだけではなく,現象をイメージしながら適切な手法を選択する必要があります.この講義では,直感的に理解しやすい流れ現象(流体力学)をイメージしながら,特に,差分法,有限体積法,有限要素法といった「離散化」手法を中心に数値シミュレーション手法の基礎的な考え方をを学びます.一般的な物理学の基本知識は必要ですが,講義の中で補足しますので,特に流体力学に関する予備知識は要求しません.

基礎を知ると同時に多様な知識習得も重要です.数値シミュレーションを実際の開発に利用しているJAXA研究者による講義,また海外の大学教授によるビデオ視聴(英語,前年録画のもの)による話題提供の機会も設けることにします.

This class will give an opportunity to learn basic knowledge of computer simulations. Simulations methods are common in many application areas. When learning suchi methods, it is very important to consider physics (real image) of such simulations. Therefore, fluid dynamics which are easiest to understand through images and movies are considered in this class. Classed are also given by the researchers in JAXA for space applications and a professor in UCLA for advanced simulations. The latter will be given in English (using the video previously recorded).
目的
Objectives
コンピュータによる数値シミュレーションの基礎となる数値解析手法に関して,基礎的な知識を習得することを目的とします.実際の物理現象をイメージして手法を学び,さらにその応用例なども知ることによって,数値シミュレーションの基本的な性質,その利点,欠点,課題なども学ぶことを目指します.産業界におけるシミュレーションが必要とする計算機資源やシステムなどを考える際に必要となる知識の習得にもつながります.

To learn and master basic knowledge of numerical simulations. The knowledge includes how to conduct simulations, nature of equations to be solved, how to extend knowledge of one-dimensional scalar equations to complicated system of equations and other as well as reliability. Knowledge necessary for constructing computer system as well as application software would be also obtained.
到達目標
Outcomes
数値解析手法の基礎についての正確な理解が第一の到達目標です.そして,それらの工学応用の実際を知ることで,産業や学術分野における数値シミュレーション利用の利点,欠点などの知識を得ることを目標とします.これらを通じて論理的な思考力や創造力を養うこともあわせて修得することで,到達目標の達成となります.

Maste basic skills for numerical simulations. Also accumulate knowledge of nature of numerical simulations, pros and cones. Through learning process of numerical simulations, the class improves rational considetaions, creativity, understanding physics (fluid dynamics and others).
履修上の注意
Course notes prerequisites
授業内での課題やレポートを通じて簡単な数値計算を体験してもらいます.手元にPCを所持していることを前提とします..講義にPC持ち込みは予定しませんが,講義後の課題実施には必要になります.

C,C++,Pythonなどどれでもよいですが,計算機言語の関する最低限の知識は必要です.実際には,授業内でPythonを利用した簡単な数値シミュレーションプログラムを利用します.シミュレーションプログラムは提供しますので,高度なプログラミング技術や知識は必要ありませんが,プログラムコードを見て内容が理解できる程度であることは前提です.

Each student will experience basic numerical simulations using Python programs which will be delivered. It is not mandatory, but students are expected to have low level of knowledge for Python programing. Those who understand Japanese may refer to a book (shown above) published in October 2020. You do not have to buy it since all the materials are given in advance on the LETUS or BOX website.
アクティブ・ラーニング科目
Teaching type(Active Learning)
課題に対する作文
Essay
- 小テストの実施
Quiz type test
-
ディベート・ディスカッション
Debate/Discussion
- グループワーク
Group work
-
プレゼンテーション
Presentation
- 反転授業
Flipped classroom
-
その他(自由記述)
Other(Describe)
-
準備学習・復習
Preparation and review
特段の準備学習は不要です.最初の回を除き,講義前に講義資料をLETUSもしくはBOX上に置きます.印刷するか,PC等にダウンロードして講義時に参照できるようにしてください.

The class is given with the presentation materials on the screen. Most of the materials to be used in this lecture are stored in the TUS Centis or BOX website. They can be downloaded in advance to the class. You may show the materials on your own PC or print them in advance when attending the class.
成績評価方法
Performance grading
policy
授業内での課題の提出,期中に実施するレポートにより評価します.返却はしませんが,授業の中で回答のポイントを解説します.

Scores are based on the problems in each class or reports to be announced in the class. Your report will not be returned but there will be explanations about correct solutions given in the class.
学修成果の評価
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
・教科書を使用する場合は、MyKiTS(教科書販売サイト)から検索・購入可能ですので以下のURLにアクセスしてください。
https://gomykits.kinokuniya.co.jp/tokyorika/
 
・Search and purchase the necessary textbooks from MyKiTS (textbook sales site) with the link below.
https://gomykits.kinokuniya.co.jp/tokyorika/
参考書・その他資料
Reference and other materials
本授業はおよそ下記にある書籍の内容に沿って進みます.ただ,授業で利用する資料は毎回予めBOXにアップしますので,受講に向けて購入の必要はありません.

授業で利用する具体的な Pythonプログラム例や結果なども書かれていますので,授業内容をより理解したい受講生には有意義かもしれません.

(1)「Pythonで学ぶ数値流体力学(藤井孝藏,立川智章)」 オーム社

This class follows the contents of the book above and it may be useful to read the contents since python program and examples of the results are included as well as the explanation of the numerical algorithms. Note that you do not have to buy it as all the materials are uploaded before each lecture.

それ以外の参考書は以下です.

Here are other books.

(2)より高度な内容を理解したい人へ
藤井孝藏「流体力学の数値計算法」(東大出版会)

(3)一般的な数値計算法の理解を深めたい人へ
水島二郎・柳瀬眞一郎,「理工学のための数値計算法」(数理工学社),
戸川隼人,「計算機のための数値計算」(サイエンス社). 

Three books that may be useful are presented here, but they are all in Japanese.
授業計画
Class plan
以下の授業計画について.
それぞれが各回に対応するかは進捗に応じます.
各項目が必ずしも一回の授業に対応するとは限りません.
講義の進捗次第で13以降に至らない可能性があります.
本年度より松尾先生と共同講義としますので,後半の内容が例年と少し変わる可能性があります.

どこかの講義1回分はJAXSでロケット開発に関わるシミュレーションを担当している研究者に実践的な応用事例の解説をお願いすることにしました.こういった現場利用を知ることも有意義でしょう.
同様に,どこかの1回で昨年度実施したUCLA (University of California Los Angels) のProf. Kunihiko Tairaによる英語の講義の録画視聴を計画します.英語の講義,海外の大学教員の講義を受けることもよい体験になるでしょう.

以下が,これらの応用2件を除いた講義の全体構成です.

1.授業計画のガイダンス, コンピュータシミュレーション実利用の歴史と現状を知る.
Introduction and guidance: History of CFD simulations and its current status

2. 解きたい問題と微分方程式との関係を知る.
Problems to be solved and their relation with partial differential equations

3. 離散化の考え方,シミュレーションの精度の理解
Consider discretization methods and errors -

4. 現象論と離散化の関係の理解
Relation between physical phenomena and discretization

5.線形偏微分方程式を考える ー移流問題に対する離散化の手法の考え方その1.
   線形問題を対象に流れの基本現象の物理と数値計算法との関係を知る.
Consider linear scalar partial differential equations for advection -1

6.線形偏微分方程式を考える 移流問題に対する離散化の手法の考え方その2.
   線形問題の高度化と非線形問題への対処方法を知る.
   数値計算法と安定性を学ぶ.
Consider linear scalar partial differential equations for advection -2
 
7. 線形偏微分方程式を考える 移流問題に対する離散化の手法の考え方その3.  
   離散化における課題解決と実問題との関係を学ぶ.
Consider linear scalar partial differential equations for advection -3
 

8. ここまでの復習と整理
summary of the studies so far

9. 空間2階微分(熱伝導・拡散問題)に帯する離散化の手法と考え方.
Consider linear scalar partial differential equations for diffusion -3
 

10. 2次元ポテンシャル問題を利用した実践シミュレーション
Real simple applications of numerical simulation of diffusion (heat) equations

11. 収束加速法の考え方
      固有値と固有ベクトルを理解する.
Eigenvalues and eigenvectors -method of characteristics

12 .実形状を対象としたシミュレーションを行うために必要な技術−1.
     複雑形状と座標変換
Practical tools for complex configurations and coordinate transformation

13. 線形偏微分方程式を考える 
      時間積分法
Time integration methods for scalar partial differential equations

14. システム方程式への拡張
Extension to system of equations

15. .シミュレーション結果の活用法
Applications and summary
教職課程
Teacher-training course
実務経験
Practical experience
-
教育用ソフトウェア
Educational software
-
備考
Remarks
 * 講義の曜日と時間帯が一昨年度から変更,水曜午後となりました.注意ください.

*現実問題から学ぶことも大切です.進捗にもよりますが, 可能な範囲で,講義の一部時間を割いて,航空宇宙・機械工学分野におけるシミュレーション利用実例を紹介します.

It is important to learn numerical methods through real applications in industries. Examples of the applications of numerical simulations for industrial products are shown in this class.
994623K
CLOSE