第2回シミュレーションスクール - 第2日: 熱拡散方程式のプログラムをつくろう
|
|
|
- えりか よしくに
- 7 years ago
- Views:
Transcription
1 第 2 回シミュレーションスクール 第 2 日 : 熱拡散方程式のプログラムをつくろう陰山聡 政田洋平 神戸大学大学院システム情報学研究科計算科学専攻
2 具体的な例題を一つに絞る 2 次元熱伝導問題 実習中心 各自自分のコードを 1 から作る そのコードを少しづつ改良していく 最後は並列化されたコードをスーパーコンピュータに
3 初歩から ゆっくり 丁寧に 網羅的な紹介よりも 基礎的な手法と考え方の習得を 具体的な例を通じてシミュレーションプログラムの作り方を体験的に学ぶ
4 実習中心 各自がプログラムを書く C/C++ 言語で書いてもOK file 名のつけ方は例題に習って ( 例 :001.f c )
5 今日と明日の講義ではMakefileは使わない使ったほうが便利 実用的 毎回 コンパイルコマンドを自分で打つほうが教育的 Makefileの文法の問題にとらわれがち
6 コード プログラム時間発展 2 次元 2-D 2D ディレクトリ フォルダ解析的に 解析解
7 マシン scalar にログイン cd mkdir Tue mkdir Wed cd Tue mkdir data cp -r /tmp/ss2/tue/src-work.
8 実習用 ( スケルトンコードあり 一部空白 ) 各自のデータを出力する場所 実習用コードのファイル名 : 数字.f95 実習問題の解答例
9 シミュレーション研究の流れ & 1 # ! " # $ % & ' ( ) * +, -.! & " / % & ' ( 9 : -.! ; ( < = -
10 シミュレーション研究の流れ今日の目標 & 1 # ! " # $ % & ' ( ) * +, -.! & " / % & ' ( 9 : -.! ; ( < = -
11 シミュレーション研究の流れ今日の目標 & 1 # ! " # $ % & ' ( ) * +, -.! & " / % & ' ( 9 : -.! ; ( < = -
12 シミュレーション研究の流れ今日の目標 & 1 # ! " # $ % & ' ( ) * +, -.! & " / % & ' ( 9 : -.! ; ( < = -
13 シミュレーション研究の流れ今日の目標 & 1 # ! " # $ % & ' ( ) * +, -.! & " / % & ' ( 9 : -.! ; ( < = -
14 例題 ( 熱伝導問題 ) の設定 差分法の基礎 シミュレーションプログラミングの基礎
15
16 0
17 0
18 0
19 一様な加熱 0
20 " # Ly $ Lx #!
21 L x L y 平方メートルの長方形領域辺上の温度は常に0 ( 固定 ) 面内に熱源が分布面の熱拡散率 k 面内の温度分布は?
22
23 T (x, t) x
24
25
26
27 T x = 2 T 2 = 0 x 2 T 2 x > 0 2 T 2 x < 0 T t = 0 T t > 0 T t < 0
28 温度 T (x, t) に対する基本方程式 k: 熱拡散係数 T t = k 2 T x 2
29 T t = s s : 熱源 (heat source) ろうそくで温度計を熱している図
30 1D 2D T (x, y, t) t T (x, t) t = k = k 2 T (x, t) x 2 + s(x) { 2 } T (x, y, t) x T (x, y, t) y 2 + s(x, y)
31 T (x, y, t) t 2 : ラプラシアン ( 2 = k x y 2 ) T (x, y, t) + s(x, y) T (x, y, t) = k 2 T (x, y, t) + s(x, y) t T t = k 2 T + s
32 (0, 0) (x, y) (L x, L y ) の長方形領域で T (0, y) = T (L x, y) = T (x, 0) = T (x, L y ) = 0 という境界条件のもと T (x, y, t) t という熱拡散方程式を解き = k 2 T (x, y, t) + s(x, y) 定常状態 ( T t T (x, y) を求めよ = 0) の温度分布
33 離散化とはなにか? なぜ離散化が必要か? 解くべき方程式が分かっているのなら 計算機に放りこめばそれを解いてくれるのではないか? そういう時もある
34 解ける? du dx = x2 + u 2
35 解ける
36 数式処理ソフトウェア
37 解析的に ( 紙とペンで ) 解けないか? 数式処理ソフトで解けないか? 数値的に解く あるいは計算機シミュレーションをする
38 計算機の 計算力 を活かして熱拡散方程式を数値的に解く T (x, y, t) t = k 2 T (x, y, t) + s(x, y)
39 スーパーコンピュータ 何が スーパー か? 計算機のスピード競争 Top500 リスト
40
41 単位はFLOPS Floating Point Operations Per Second 1 秒あたりの倍精度浮動小数点数演算の演算回数倍精度浮動小数点数 : 15 桁ほどの小数どんな演算? 四則演算 (* + / )
42 計算機の速度を活かす計算機の四則演算の速度を活かす対象問題を四則演算の問題に焼き直す 離散化
43 T (x, y, t) t = k 2 T (x, y, t) + s(x, y) をどう四則演算の問題として表現するか?
44 T t を四則演算で表現する ( 一階の微分 ) 2 T x 2 ( 二階の微分 )
45 微分は接線の傾き T (t) t
46 T (t +Δt) T (t) T (t) t t +Δt t 傾き T (t+ t) T (t) t
47 引き算 1 回 割り算 1 回で微分を近似 T t T (t + t) T (t) t 1/ t をあらかじめ計算しておけば 割り算の代わりに掛け算
48 関数 の x = 2 における微分 f(x) = 1 + x 1 + x2 2 + x3 3 + x4 4 df dx を差分で近似的に計算するコードを書く
49 src-work/001.f95 を編集 自分で一から書いても可 正解例は /tmp/ss2/tue/src/001.f95
50 ポイント df(x) dx (f(x + x) f(x)) / x
51 コンパイル pgf95 -o 001.exe 001.f95 実行./001.exe
52 001.f95
53 x = 2 での微分の値を求めているがこれを他の x に変更して試してみる x を小さくするとごさが小さくなることを確認せよ
54 t t
55 Ny 3 2 Δy Δx Nx
56 T (x, t) T (x8) T (x7) T (x6) x6 x7 x8 x
57 T (x, t) T (x8) T (x7) T (x6) Δx x6 x7 x8 x
58 [ ] d 2 dx 2 T (x) x 7 = = [ ( )] d dt dx dx x ( 7 dt ) dx 7.5 ( ) dt dx x ( T (x8 ) T (x 7 ) x ) 6.5 ( T (x7 ) T (x 6 ) 7.5 x = x = T (x 8) 2 T (x 7 ) + T (x 6 ) ( x) 2 ) 6.5
59 d 2 T (x) dx 2 T (x + x) 2 T (x) + T (x x) x 2
60 001.f95 にならい 同じ関数 のx = 2における2 階微分グラムを作れ f(x) = 1 + x 1 + x2 2 + x3 3 + x4 4 df dx (x = 2) の値を差分で計算するプロ ファイル名は 002.f95 とすること コンパイルは pgf95 -o 002.exe 002.f95 実行は./002.exe x を小さくすると誤差が小さくなることを確認せよ
61 d 2 T (x) dx 2 T (x + x) 2 T (x) + T (x x) x 2 d 2 T (x i ) dx 2 T (x i+1) 2 T (x i ) + T (x i 1 ) x 2 2 T (x i, y j ) x 2 T (x i+1, y j ) 2 T (x i, y j ) + T (x i 1, y j ) x 2 2 T (x i, y j ) y 2 T (x i, y j+1 ) 2 T (x i, y j ) + T (x i, y j 1 ) y 2
62 (xi, yj+1) (xi-1, yj) (xi, yj) (xi+1, yj) (xi, yj-1)
63 T (x, y, t) t ( 2 = k x y 2 ) T (x, y, t) + s(x, y) T (x i, y j, t) T i,j (t) と略記 ( T i,j (t + t) T i,j (t) Ti+1,j (t) 2 T i,j (t) + T i 1,j (t) = k t x 2 + T ) i,j+1(t) 2 T i,j (t) + T i,j 1 (t) y 2 +s i,j
64 T (x i+1,y j ) 2 T (x i,y j )+T (x i 1,y j ) x 2, T (x i,y j+1 ) 2 T (x i,y j )+T (x i,y j 1 ) y 2 Ti,j+1 Ti-1,j Ti,j Ti+1,j Ti,j-1
65 T i,j (t + t) = T i,j (t) + k t x 2 {T i+1,j(t) 2 T i,j (t) + T i 1,j (t)} + k t y 2 {T i,j+1(t) 2 T i,j (t) + T i,j 1 (t)} +s i,j t この式は t だけ未来の温度 = 現在の温度分布の四則演算 という形をしている
66 格子系の上に定義された温度分布の時間変化 t = t0 t = t0 + Δt t = t0 + 2Δt
67 格子系 具体的な実体 ( モノ ) として考える カプセル化 格子系 以外のモノは 格子系 にメッセージを送る 他のモノは 格子系 の中身を直接操作することも ( 見ることも ) できないようにするのが基本 バグ防止 コード開発 メンテナンスの容易さ 大規模なシミュレーションコード開発には必須
68 $HOME/Tue/src-work/003.f95 エディタで 003.f95 を確認 実行 pgf95 -o 003.exe 003.f95 &&./003.exe
69 003.f95
70 003.f95 を自由に編集し コンパイル 実行せよ nx=-2 など 負の値を入れてみよ
71 assert 前提条件 ( 絶対に正しいはずの条件 ) を念の為に確認する 万が一条件違反 プログラム停止 走り続けておかしな結果に悩むよりも 潔く止まってくれた方がマシ
72 ut モジュール ( ユーティリティ ) どんどん充実させる ut assert
73 module ut use constants implicit none contains subroutine ut assert(condition, message) logical, intent(in) :: condition character(len=*), intent(in) :: message if (.not.condition ) then stop message! print out the message and die. end if end subroutine ut assert end module ut
74 そのモジュールの public なルーチン ルーチン名にアンダースコア二つ ( ) をつける モジュール名 名前 アンダースコア二つ ( ) がないルーチンは いま見ているモジュール内部の private なルーチンとわかる ファイルを見つけやすい
75 解答例 : $HOME/Tue/src-work/004.f95 自由に編集 コンパイル 実行 Ny 3 2 Δy Δx Nx
76 004.f95
77 T i,j (t + t) = T i,j (t) + k t x 2 {T i+1,j(t) 2 T i,j (t) + T i 1,j (t)} + k t y 2 {T i,j+1(t) 2 T i,j (t) + T i,j 1 (t)} +s i,j t Ti,j+1 Si,j+1 Ti-1,j Ti,j Ti+1,j Si-1,j Si,j Si+1,j Ti,j-1 Si,j-1
78 温度場 tmp 熱源場 src 解答例 : $HOME/src-work/005.f95
79 005.f95
80 ルーチン名 iset_tmp T (x, y) = sin (xπ/l x ) sin (yπ/l y ) T(x, t) y x
81 t = t0 t = t0 + Δt t = t0 + 2Δt
82 T i,j (t + t) = T i,j (t) + k t x 2 {T i+1,j(t) 2 T i,j (t) + T i 1,j (t)} + k t y 2 {T i,j+1(t) 2 T i,j (t) + T i,j 1 (t)} +s i,j t
83 T i,j (t + t) = T i,j (t) + k t x 2 {T i+1,j(t) 2 T i,j (t) + T i 1,j (t)} + k t y 2 {T i,j+1(t) 2 T i,j (t) + T i,j 1 (t)} +s i,j t { k = t x 2 (T i+1,j + T i 1,j ) + k } y 2 (T i,j+1 + T i,j 1 ) + s i,j { ( k + 1 t 2 x 2 + k )} y 2 T i,j
84 とする α x = α y = k x 2 k y 2 β = 2(α x + α y )
85 T i,j (t + t) = t {α x (T i+1,j (t) + T i 1,j (t)) +α y (T i,j+1 (t) + T i,j 1 (t)) +s i,j } + (1 β t) T i,j (t) = ( 重み1)x( 周囲の温度 ) +( 重み2)x( 自分の温度 ) +( 加熱の効果 )
86 重みつき平均値 f = (1 w)f(a) + wf(b) 0 w 1ならば f は f(a) と f(b) の間それ以外だと ギザギザの関数の場合 振動しながら発散
87 拡散 ( ラプラシアン ) の効果 = 周囲の値の平均値に近づこうとする効果 Ti,j+1 Ti-1,j Ti,j Ti+1,j Ti,j-1
88 t 時間刻み幅 tは大きいほうが望ましい必要な計算ステップ数 ( 計算時間 ) が小さくなるのでだがむやみに大きくとれるはずはない限界値 t critical がある CFL 条件 クーラン条件 今の場合 1 β t > 0
89 解いている基本方程式に依存 用いている計算手法 ( 今の場合は差分法 ) に依存
90 差分法で熱拡散方程式を解くコードを作る解答例 : src-work/006.f95 今 熱源分布はなし ; src(:,:) = 0 最終的には温度は全ての点でゼロ T(:,:) = 0 になるはず
91 pgf95 -Mbounds 006.f95 配列の境界違反をチェック tmp(i,j) で i>nx のときなど
92 006.f95
93 熱源分布を 0 以外にする 時間刻み幅 t を変える t critical よりも大きくしたらどうなるか? コンパイル & 実行 : pgf95 -o 006.exe 006.f95 &&./006.exe
解析力学B - 第11回: 正準変換
解析力学 B 第 11 回 : 正準変換 神戸大 : 陰山聡 ホームページ ( 第 6 回から今回までの講義ノート ) http://tinyurl.com/kage2010 2011.01.27 正準変換 バネ問題 ( あえて下手に座標をとった ) ハミルトニアンを考える q 正準方程式は H = p2 2m + k 2 (q l 0) 2 q = H p = p m ṗ = H q = k(q
演習2
神戸市立工業高等専門学校電気工学科 / 電子工学科専門科目 数値解析 2017.6.2 演習 2 山浦剛 ([email protected]) 講義資料ページ h t t p://clim ate.aic s. riken. jp/m embers/yamaura/num erical_analysis. html 曲線の推定 N 次多項式ラグランジュ補間 y = p N x = σ N x x
計算機シミュレーション
. 運動方程式の数値解法.. ニュートン方程式の近似速度は, 位置座標 の時間微分で, d と定義されます. これを成分で書くと, d d li li とかけます. 本来は が の極限をとらなければいけませんが, 有限の小さな値とすると 秒後の位置座標は速度を用いて, と近似できます. 同様にして, 加速度は, 速度 の時間微分で, d と定義されます. これを成分で書くと, d d li li とかけます.
Microsoft PowerPoint - 演習1:並列化と評価.pptx
講義 2& 演習 1 プログラム並列化と性能評価 神戸大学大学院システム情報学研究科横川三津夫 [email protected] 2014/3/5 RIKEN AICS HPC Spring School 2014: プログラム並列化と性能評価 1 2014/3/5 RIKEN AICS HPC Spring School 2014: プログラム並列化と性能評価 2 2 次元温度分布の計算
OpenFOAM(R) ソースコード入門 pt1 熱伝導方程式の解法から有限体積法の実装について考える 前編 : 有限体積法の基礎確認 2013/11/17 オープンCAE 富山富山県立大学中川慎二
OpenFOAM(R) ソースコード入門 pt1 熱伝導方程式の解法から有限体積法の実装について考える 前編 : 有限体積法の基礎確認 2013/11/17 オープンCAE 勉強会 @ 富山富山県立大学中川慎二 * OpenFOAM のソースコードでは, 基礎式を偏微分方程式の形で記述する.OpenFOAM 内部では, 有限体積法を使ってこの微分方程式を解いている. どのようにして, 有限体積法に基づく離散化が実現されているのか,
Microsoft Word - NumericalComputation.docx
数値計算入門 武尾英哉. 離散数学と数値計算 数学的解法の中には理論計算では求められないものもある. 例えば, 定積分は, まずは積分 ( 被積分関数の原始関数をみつけること できなければ値を得ることはできない. また, ある関数の所定の値における微分値を得るには, まずその関数の微分ができなければならない. さらに代数方程式の解を得るためには, 解析的に代数方程式を解く必要がある. ところが, これらは必ずしも解析的に導けるとは限らない.
3 数値解の特性 3.1 CFL 条件 を 前の章では 波動方程式 f x= x0 = f x= x0 t f c x f =0 [1] c f 0 x= x 0 x 0 f x= x0 x 2 x 2 t [2] のように差分化して数値解を求めた ここでは このようにして得られた数値解の性質を 考
3 数値解の特性 3.1 CFL 条件 を 前の章では 波動方程式 f x= x = f x= x t f c x f = [1] c f x= x f x= x 2 2 t [2] のように差分化して数値解を求めた ここでは このようにして得られた数値解の性質を 考える まず 初期時刻 t=t に f =R f exp [ik x ] [3] のような波動を与えたとき どのように時間変化するか調べる
Fortran 勉強会 第 5 回 辻野智紀
Fortran 勉強会 第 5 回 辻野智紀 今回のお品書き サブルーチンの分割コンパイル ライブラリ 静的ライブラリ 動的ライブラリ モジュール その前に 以下の URL から STPK ライブラリをインストールしておいて下さい. http://www.gfd-dennou.org/library/davis/stpk 前回参加された方はインストール済みのはず. サブルーチンの分割コンパイル サブルーチンの独立化
PowerPoint プレゼンテーション
計算機実習 Ⅰ FORTRAN 担当 2018.05.29 本日の課題 プログラムの基本ルールを理解し 以下が含まれるプログラムを作成する (1) 文法の基礎 ( フローチャートなど ) (2) 変数宣言 (3) 入出力 (4) 四則演算 (5) 組込関数 (6) 判定文 (7) リダイレクション PROGRAM MAIN INTEGER I, J, K REAL A, B, C CHARACTER
モデリングとは
コンピュータグラフィックス基礎 第 5 回曲線 曲面の表現 ベジェ曲線 金森由博 学習の目標 滑らかな曲線を扱う方法を学習する パラメトリック曲線について理解する 広く一般的に使われているベジェ曲線を理解する 制御点を入力することで ベジェ曲線を描画するアプリケーションの開発を行えるようになる C++ 言語の便利な機能を使えるようになる 要素数が可変な配列としての std::vector の活用 計算機による曲線の表現
メソッドのまとめ
メソッド (4) 擬似コードテスト技法 http://java.cis.k.hosei.ac.jp/ 授業の前に自己点検以下のことがらを友達に説明できますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか
1 1 sin cos P (primary) S (secondly) 2 P S A sin(ω2πt + α) A ω 1 ω α V T m T m 1 100Hz m 2 36km 500Hz. 36km 1
sin cos P (primary) S (secondly) 2 P S A sin(ω2πt + α) A ω ω α 3 3 2 2V 3 33+.6T m T 5 34m Hz. 34 3.4m 2 36km 5Hz. 36km m 34 m 5 34 + m 5 33 5 =.66m 34m 34 x =.66 55Hz, 35 5 =.7 485.7Hz 2 V 5Hz.5V.5V V
(Microsoft PowerPoint \211\211\217K3_4\201i\216R\226{_\211\272\215\342\201j.ppt [\214\335\212\267\203\202\201[\203h])
RIKEN AICS Summer School 演習 3 4 MPI による並列計算 2012 年 8 月 8 日 神戸大学大学院システム情報学研究科山本有作理化学研究所計算科学研究機構下坂健則 1 演習の目標 講義 6 並列アルゴリズム基礎 で学んだアルゴリズムのいくつかを,MPI を用いて並列化してみる これを通じて, 基本的な並列化手法と,MPI 通信関数の使い方を身に付ける 2 取り上げる例題と学習項目
パソコンシミュレータの現状
第 2 章微分 偏微分, 写像 豊橋技術科学大学森謙一郎 2. 連続関数と微分 工学において物理現象を支配する方程式は微分方程式で表されていることが多く, 有限要素法も微分方程式を解く数値解析法であり, 定式化においては微分 積分が一般的に用いられており. 数学の基礎知識が必要になる. 図 2. に示すように, 微分は連続な関数 f() の傾きを求めることであり, 微小な に対して傾きを表し, を無限に
Microsoft PowerPoint - 講義10改.pptx
計算機プログラミング ( 後半組 ) Computer Programming (2nd half group) 担当 : 城﨑知至 Instructor: Tomoyuki JOHZAKI 第 9 回ファイルの入出力 Lesson 9 input/output statements 教科書 7.3 章 1 ファイル入出力 : サンプル 1 下記プログラムを outin1.f90 として作成し コンパイル実
微分方程式 モデリングとシミュレーション
1 微分方程式モデリングとシミュレーション 2018 年度 2 質点の運動のモデル化 粒子と粒子に働く力 粒子の運動 粒子の位置の時間変化 粒子の位置の変化の割合 速度 速度の変化の割合 加速度 力と加速度の結び付け Newtonの運動方程式 : 微分方程式 解は 時間の関数としての位置 3 Newton の運動方程式 質点の運動は Newton の運動方程式で記述される 加速度は力に比例する 2
PowerPoint プレゼンテーション
プログラミング応用演習 第 2 回文字列とポインタ 先週のパズルの解説 答え : 全部 p a 1 図の書き方 : p+1 は式であって その値を格納する記憶場所を考えないので 四角で囲まない 2 p+1 同じものを表すいろいろな書き方をしてみましたが パズル以上の意味はありません プログラム中に書くときは p+1 が短くていいんじゃないかな p+1 は 2 の記憶場所 p[1] は 2 に格納されている値
Microsoft PowerPoint - comprog11.pptx
Outline プログラミング演習第 回エッジを検出する on 3..4 電気通信大学情報理工学部知能機械工学科長井隆行 画像の本質 輝度の境目に情報あり! 画像の微分と 階微分 エッジ検出 画像をぼかす 本日の課題 画像の本質 エッジ抽出 画像の情報は境目にあり! エッジ 輝度が大きく変化しているところ ( 境界 ) 画像の情報はエッジにあり 輝度 人間の視覚系でも特定のエッジの方向に発火するニューロンが見つかっている
情報処理概論(第二日目)
情報処理概論 工学部物質科学工学科応用化学コース機能物質化学クラス 第 8 回 2005 年 6 月 9 日 前回の演習の解答例 多項式の計算 ( 前半 ): program poly implicit none integer, parameter :: number = 5 real(8), dimension(0:number) :: a real(8) :: x, total integer
( ) ( ) ( ) i (i = 1, 2,, n) x( ) log(a i x + 1) a i > 0 t i (> 0) T i x i z n z = log(a i x i + 1) i=1 i t i ( ) x i t i (i = 1, 2, n) T n x i T i=1 z = n log(a i x i + 1) i=1 x i t i (i = 1, 2,, n) n
模擬試験問題(第1章~第3章)
基本情報技術者試験の練習問題 - 第 10 回 この問題は平成 19 年度春期の問題から抜粋しています 問 1 次のプログラムの説明及びプログラムを読んで, 設問 1~3 に答えよ プログラムの説明 整数型の 1 次元配列の要素 A[0],,A[N](N>0) を, 挿入ソートで昇順に整列する副プログラム InsertSort である (1) 挿入ソートの手順は, 次のとおりである (i) まず,A[0]
Microsoft PowerPoint - InfPro_I6.pptx
今日の学習内容 ファイルとディレクトリ ( 続 )(pp.34-36) 色々なUNIXのコマンド (pp.203-209) 今日の基礎教養セミナ講演会 Yahooの坂本さん 3コマ (13:10~) A204 ディレクトリ ( 復習 ) UNIXファイルシステムにはファイルとディレクトリがあり ツリー状の階層型構造をしている ツリー構造の頂点 ( ツリー構造の根の部分 ) 一番上の唯一のディレクトリをルートディレクトリと呼ぶ
書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf
情報処理基礎 C 言語についてプログラミング言語は 1950 年以前の機械語 アセンブリ言語 ( アセンブラ ) の開発を始めとして 現在までに非常に多くの言語が開発 発表された 情報処理基礎で習う C 言語は 1972 年にアメリカの AT&T ベル研究所でオペレーションシステムである UNIX を作成するために開発された C 言語は現在使われている多数のプログラミング言語に大きな影響を与えている
120802_MPI.ppt
CPU CPU CPU CPU CPU SMP Symmetric MultiProcessing CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CP OpenMP MPI MPI CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU MPI MPI+OpenMP CPU CPU CPU CPU CPU CPU CPU CP
3. :, c, ν. 4. Burgers : u t + c u x = ν 2 u x 2, (3), ν. 5. : u t + u u x = ν 2 u x 2, (4), c. 2 u t 2 = c2 2 u x 2, (5) (1) (4), (1 Navier Stokes,.,
B:,, 2017 12 1, 8, 15, 22 1,.,,,,.,.,,,., 1,. 1. :, ν. 2. : u t = ν 2 u x 2, (1), c. u t + c u x = 0, (2), ( ). 1 3. :, c, ν. 4. Burgers : u t + c u x = ν 2 u x 2, (3), ν. 5. : u t + u u x = ν 2 u x 2,
Microsoft PowerPoint - 夏の学校(CFD).pptx
/9/5 FD( 計算流体力学 ) の基礎理論 性能 運動分野 夏の学校 神戸大学大学院海事科学研究科勝井辰博 流体の質量保存 流体要素内の質量の増加率 [ 単位時間当たりの増加量 ] 単位時間に流体要素に流入する質量 流体要素 Fl lm (orol olm) v ( ) ガウスの定理 v( ) /9/5 = =( ) b=b =(b b b ) b= b = b + b + b アインシュタイン表記
PowerPoint プレゼンテーション
講座を行う前に 自己紹介 僕と上回生について 1 年生同士で少しお話しよう! オリエンテーションの宿題 アルゴロジック http://home.jeita.or.jp/is/highschool/algo/index3.html どこまでできましたか? あまりできなかった人はこれから全部クリアしよう! 2016 年度 C 言語講座 第一回目 2016/6/11 fumi 今回の目標 プログラムを書いて実行するやり方を覚える
0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生
0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生まれ, コンピューテーショナルフォトグラフィ ( 計算フォトグラフィ ) と呼ばれている.3 次元画像認識技術の計算フォトグラフィへの応用として,
3. :, c, ν. 4. Burgers : t + c x = ν 2 u x 2, (3), ν. 5. : t + u x = ν 2 u x 2, (4), c. 2 u t 2 = c2 2 u x 2, (5) (1) (4), (1 Navier Stokes,., ν. t +
B: 2016 12 2, 9, 16, 2017 1 6 1,.,,,,.,.,,,., 1,. 1. :, ν. 2. : t = ν 2 u x 2, (1), c. t + c x = 0, (2). e-mail: [email protected],. 1 3. :, c, ν. 4. Burgers : t + c x = ν 2 u x 2, (3), ν. 5. : t +
C 言語の式と文 C 言語の文 ( 関数の呼び出し ) printf("hello, n"); 式 a a+4 a++ a = 7 関数名関数の引数セミコロン 3 < a "hello" printf("hello") 関数の引数は () で囲み, 中に式を書く. 文 ( 式文 ) は
C 言語復習 C 言語の基礎 来週もこの資料を持参してください C 言語, ソースファイルの作成, コンパイル, 実行 1 C 言語 C 言語プログラミングの手順 とは, 計算機を動かす手順を記述したもの. 計算機に命令を与えて動かすには を作成する ことになる. C 言語はプログラミング言語の 1 個 手続き型言語に分類される. C/C++ は非常に多くの場面で使われる言語 C++ は C 言語をオブジェクト指向に拡張したもの
x () g(x) = f(t) dt f(x), F (x) 3x () g(x) g (x) f(x), F (x) (3) h(x) = x 3x tf(t) dt.9 = {(x, y) ; x, y, x + y } f(x, y) = xy( x y). h (x) f(x), F (x
[ ] IC. f(x) = e x () f(x) f (x) () lim f(x) lim f(x) x + x (3) lim f(x) lim f(x) x + x (4) y = f(x) ( ) ( s46). < a < () a () lim a log xdx a log xdx ( ) n (3) lim log k log n n n k=.3 z = log(x + y ),
memo
数理情報工学演習第一 C プログラミング演習 ( 第 5 回 ) 2015/05/11 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 課題 : 疎行列 2 プロトタイプ宣言 3 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int
<4D F736F F F696E74202D208D E9197BF288CF68A4A B8CDD8AB B83685D>
離散化手法とスキームの基礎 と選択法 007//6 宇宙航空研究開発機構情報 計算工学センター嶋英志 本講習の目的 基礎的な計算法の性質を述べ 各手法の持つ長所短所を理解することによって 手法の背景を理解した正しい選択に近づくこと クーラン数 風上差分 等の広い範囲の CFD 技術に共通の概念について その意味とイメージを把握すること 本講習の方針 様々な流体方程式の基礎となる移流方程式を用いて色々な計算法の特徴を計算例を示しながら解説する
演習1: 演習準備
演習 1: 演習準備 2013 年 8 月 6 日神戸大学大学院システム情報学研究科森下浩二 1 演習 1 の内容 神戸大 X10(π-omputer) について システム概要 ログイン方法 コンパイルとジョブ実行方法 OpenMP の演習 ( 入門編 ) 1. parallel 構文 実行時ライブラリ関数 2. ループ構文 3. shared 節 private 節 4. reduction 節
インテル(R) Visual Fortran コンパイラ 10.0
インテル (R) Visual Fortran コンパイラー 10.0 日本語版スペシャル エディション 入門ガイド 目次 概要インテル (R) Visual Fortran コンパイラーの設定はじめに検証用ソースファイル適切なインストールの確認コンパイラーの起動 ( コマンドライン ) コンパイル ( 最適化オプションなし ) 実行 / プログラムの検証コンパイル ( 最適化オプションあり ) 実行
untitled
熱対流現象 山中透 2005 年 3 月 概要 流体を熱源に接触させ, 流体に温度傾度を与えたときを考える. 流体の温度傾度が小さいときは, 熱拡散のみが起こるが, 流体の温度傾度が閾値を越えると, 熱拡散だけでは温度傾度を解消できなくなって不安定となり, 対流が生じる. これをベナール対流とよぶ. ここでは, ベナール対流を記述する非線型方程式の線型安定性の解析によって, 流体が不安定化する条件を求め,
応力とひずみ.ppt
in [email protected] 2 3 4 5 x 2 6 Continuum) 7 8 9 F F 10 F L L F L 1 L F L F L F 11 F L F F L F L L L 1 L 2 12 F L F! A A! S! = F S 13 F L L F F n = F " cos# F t = F " sin# S $ = S cos# S S
<4D F736F F F696E74202D20906C8D488AC28BAB90DD8C7689F090CD8D488A D91E F1>
人工環境設計解析工学構造力学と有限要素法 ( 第 回 ) 東京大学新領域創成科学研究科 鈴木克幸 固体力学の基礎方程式 変位 - ひずみの関係 適合条件式 ひずみ - 応力の関係 構成方程式 応力 - 外力の関係 平衡方程式 境界条件 変位規定境界 反力規定境界 境界条件 荷重応力ひずみ変形 場の方程式 Γ t Γ t 平衡方程式構成方程式適合条件式 構造力学の基礎式 ひずみ 一軸 荷重応力ひずみ変形
C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ
C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 次のステップによって 徐々に難易度の高いプログラムを作成する ( 参照用の番号は よくわかる C 言語 のページ番号 ) 1. キーボード入力された整数 10 個の中から最大のものを答える 2. 整数を要素とする配列 (p.57-59) に初期値を与えておき
Microsoft Word - CygwinでPython.docx
Cygwin でプログラミング 2018/4/9 千葉 数値計算は計算プログラムを書いて行うわけですが プログラムには様々な 言語 があるので そのうちどれかを選択する必要があります プログラム言語には 人間が書いたプログラムを一度計算機用に翻訳したのち計算を実行するものと 人間が書いたプログラムを計算機が読んでそのまま実行するものとがあります ( 若干不正確な説明ですが ) 前者を システム言語
Microsoft Word - 1B2011.doc
第 14 回モールの定理 ( 単純梁の場合 ) ( モールの定理とは何か?p.11) 例題 下記に示す単純梁の C 点のたわみ角 θ C と, たわみ δ C を求めよ ただし, 部材の曲げ 剛性は材軸に沿って一様で とする C D kn B 1.5m 0.5m 1.0m 解答 1 曲げモーメント図を描く,B 点の反力を求める kn kn 4 kn 曲げモーメント図を描く knm 先に得られた曲げモーメントの値を
C#の基本
C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない
1 911 9001030 9:00 A B C D E F G H I J K L M 1A0900 1B0900 1C0900 1D0900 1E0900 1F0900 1G0900 1H0900 1I0900 1J0900 1K0900 1L0900 1M0900 9:15 1A0915 1B0915 1C0915 1D0915 1E0915 1F0915 1G0915 1H0915 1I0915
Microsoft PowerPoint - 6.PID制御.pptx
プロセス制御工学 6.PID 制御 京都大学 加納学 Division of Process Control & Process Systems Engineering Department of Chemical Engineering, Kyoto University [email protected] http://www-pse.cheme.kyoto-u.ac.jp/~kano/
Section1_入力用テンプレートの作成
入力用テンプレートの作成 1 Excel には 効率よく かつ正確にデータを入力するための機能が用意されています このセクションでは ユーザー設定リストや入力規則 関数を利用した入力用テンプレートの作成やワークシート操作について学習します STEP 1 ユーザー設定リスト 支店名や商品名など 頻繁に利用するユーザー独自の連続データがある場合には ユーザー設定リスト に登録しておけば オートフィル機能で入力することができ便利です
Microsoft PowerPoint - ロボットの運動学forUpload'C5Q [互換モード]
ロボットの運動学 順運動学とは 座標系の回転と並進 同次座標変換行列 Denavit-Hartenberg の表記法 多関節ロボットの順運動学 レポート課題 & 中間試験について 逆運動学とは ヤコビアン行列 運動方程式 ( 微分方程式 ) ロボットの運動学 動力学 Equation of motion f ( ( t), ( t), ( t)) τ( t) 姿勢 ( 関節角の組合せ ) Posture
基本的な利用法
(R で ) 塩基配列解析 基本的な利用法 Macintosh 版 到達目標 : このスライドに書かれている程度のことは自在にできるようにしてエラーへの対処法を身につける 1. 必要なパッケージのインストールが正しくできているかどうかの自力での判定 および個別のパッケージのインストール 2. 作業ディレクトリの変更 3. テキストエディタで自在に入出力ファイル名の変更 ( どんなファイル名のものがどこに生成されるかという全体像の把握
分割コンパイル (2018 年度 ) 担当 : 笹倉 佐藤 分割コンパイルとは 一つのプログラムのソースを複数のソースファイルに分けてコンパイルすること ある程度大きなプログラムの場合ソースファイルをいくつかに分割して開発するのが普通 1
分割コンパイル (2018 年度 ) 担当 : 笹倉 佐藤 2018.12.20 分割コンパイルとは 一つのプログラムのソースを複数のソースファイルに分けてコンパイルすること ある程度大きなプログラムの場合ソースファイルをいくつかに分割して開発するのが普通 1 なぜ分割コンパイルするのか 1. コンパイル時間を短縮するため 2. ソースコードを見やすくするため 3. ソースコードを再利用しやすくするため
公式集 数学 Ⅱ B 頭に入っていますか? 8 和積の公式 A + B A B si A + si B si os A + B A B si A si B os si A + B A B os A + os B os os A + B A B os A os B si si 9 三角関数の合成 si
公式集 数学 Ⅱ B 頭に入っていますか? < 図形と方程式 > 点間の距離 A x, B x, のとき x x + : に分ける点 A x, B x, のとき 線分 AB を:に分ける点 æ x + x + ö は ç, è + + ø 注 < のとき外分点 直線の方程式 傾き で 点 x, を通る : x 点 x, x, を通る : x 注 分母が のとき は座標軸と平行な直線 x x 4 直線の位置関係
工業数学F2-04(ウェブ用).pptx
工業数学 F2 #4 フーリエ級数を極める 京都大学加納学 京都大学大学院情報学研究科システム科学専攻 Human Systems Lab., Dept. of Systems Science Graduate School of Informatics, Kyoto University 復習 1: 複素フーリエ級数 2 周期 2π の周期関数 f(x) の複素フーリエ級数展開 複素フーリエ係数
混沌系工学特論 #5
混沌系工学特論 #5 情報科学研究科井上純一 URL : htt://chaosweb.comlex.eng.hokudai.ac.j/~j_inoue/ Mirror : htt://www5.u.so-net.ne.j/j_inoue/index.html 平成 17 年 11 月 14 日第 5 回講義 デジタルデータの転送と復元再考 P ({ σ} ) = ex σ ( σσ ) < ij>
今週の内容 後半全体のおさらい ラグランジュの運動方程式の導出 リンク機構のラグランジュの運動方程式 慣性行列 リンク機構のエネルギー保存則 エネルギー パワー 速度 力の関係 外力が作用する場合の運動方程式 粘性 粘性によるエネルギーの消散 慣性 粘性 剛性と微分方程式 拘束条件 ラグランジュの未
力学 III GA 工業力学演習 X5 解析力学 5X 5 週目 立命館大学機械システム系 8 年度後期 今週の内容 後半全体のおさらい ラグランジュの運動方程式の導出 リンク機構のラグランジュの運動方程式 慣性行列 リンク機構のエネルギー保存則 エネルギー パワー 速度 力の関係 外力が作用する場合の運動方程式 粘性 粘性によるエネルギーの消散 慣性 粘性 剛性と微分方程式 拘束条件 ラグランジュの未定乗数法
II ( ) (7/31) II ( [ (3.4)] Navier Stokes [ (6/29)] Navier Stokes 3 [ (6/19)] Re
II 29 7 29-7-27 ( ) (7/31) II (http://www.damp.tottori-u.ac.jp/~ooshida/edu/fluid/) [ (3.4)] Navier Stokes [ (6/29)] Navier Stokes 3 [ (6/19)] Reynolds [ (4.6), (45.8)] [ p.186] Navier Stokes I Euler Navier
Microsoft PowerPoint - シミュレーション工学-2010-第1回.ppt
シミュレーション工学 ( 後半 ) 東京大学人工物工学研究センター 鈴木克幸 CA( Compter Aded geerg ) r. Jaso Lemo (SC, 98) 設計者が解析ツールを使いこなすことにより 設計の評価 設計の質の向上を図る geerg の本質の 計算機による支援 (CA CAM などより広い名前 ) 様々な汎用ソフトの登場 工業製品の設計に不可欠のツール 構造解析 流体解析
Text
1 / 10 2014/03/23 10:26 今回の講習の目的は,OpenFOAM をカスタマイズ ソースコードを変更する ) ための手順の全体像を学ぶことである 時間 に制約があるため, ソースコードの詳細には触れない http://openfoamwiki.net/index.php/how_to_add_temperature_to_icofoam この資料は,OpenFOAM 2.3.0
1 1.1 ( ). z = a + bi, a, b R 0 a, b 0 a 2 + b 2 0 z = a + bi = ( ) a 2 + b 2 a a 2 + b + b 2 a 2 + b i 2 r = a 2 + b 2 θ cos θ = a a 2 + b 2, sin θ =
1 1.1 ( ). z = + bi,, b R 0, b 0 2 + b 2 0 z = + bi = ( ) 2 + b 2 2 + b + b 2 2 + b i 2 r = 2 + b 2 θ cos θ = 2 + b 2, sin θ = b 2 + b 2 2π z = r(cos θ + i sin θ) 1.2 (, ). 1. < 2. > 3. ±,, 1.3 ( ). A
