2003/12/16 偏微分方程式の二回目 == 偏微分方程式のおさらい 偏微分方程式が利用される状況 事前に物の動きを予測する # 壊れた後に、なぜ、壊れたかを調べる.. 解法 (有限) 差分法 有限要素法 境界要素法 # 代表的な解法 [有限要素法] 対象を、メッシュで区切る 微分 : 差分で近似 事象(連続なもの) : 点の集まり ( 行列 ) で近似 一次元の場合 自分自身と前後の三つの要素 連立方程式の形にして、係数行列を求めると.. 対角部分のみに現れる三重対角行列になる 二次元の場合 更に、少し離れた場所に、対角要素が現れる 三次元の場合 同様 一次元 1 \pm 1 : 3 二次元 1 \pm 1 \pm 1 : 5 三次元 1 \pm 1 \pm 1 \pm 1 : 7 係数行列が、スパース(疎行列)になる。 [境界要素法] # 例、電荷ちょう乗法 境界の値が決定されており、更に、外から中へと計算(推定)する。 行列が、密行列になる ( サイズは小くなる.. ) もっと、ラフに解く方法もある。 大気のガスが拡散してゆく様子を考える 微粒子拡散方程式 : まともに、解くと大変 「モデル化」して解く 0 次近似 ( 一次近似にも満たない.. ) 気を付ける必要がある ( 本当に現象を表現している ? ) うまくゆけば、計算量が少くてすむので、嬉しい 例 : モンテカルロ法 原子論等で、粒子が発生した後、どこに影響するか.. ? 現象を、統計的なモデル化を行う 例 : 天気予報 ( 偏微分方程式の結果.. ) ただし、モデルそのものが既に、難しいので簡単ではない.. 相変化があるものは難しい 相 : 気相、液相、個相 相変化があると、そこで、微分できなくなる?? == 並列処理の話 良い答 ( 細かい答 ) を知るには、メッシュを細かく取る必要がある 例 : デジカメ 画素数が 30 万から 300 万 画素数が多い ( 粒子が細かい ) 方が写真が綺麗 情報を正しく取るためには、あるていどの精度が必要 例 : sin 波 周波数と同じ 0 の点しかとれない 周波数の 1/2 やはり 0 の点しかとれない 周波数の 1/4 三角波 周波数の 1/8 なんとなく.. 天気予報 100km のメッシュだと 台風ならなんとか 天気予報 : 全然、予報 竜巻 : みることもできない 現象を捉えるには、あるていどの細かさ (メッシュの多さ) 必要 どの程度の精度が欲しいか ? 後々の処理を考えると 3 桁は欲しい 10^3 のメッシュで初めて 3 桁になる ( 最も上手くいって..) 三次元の問題だと (10^3)^3 = 10^9 = 10 億 になる これは大変 現状 10^7 なんとか 10^8 研究の対像 10^9 未踏 みんなの PC : 10^9 には百年位.. # 計算を速くするには、どうすればよいか ? o 単独の計算の計算速度そのものを速くする (計算機における..) 速度を決める要因 ゲート遅延速度 現在は 50 ピコ秒程度 ピコ = 10^{-12} ミリ = 10^{-3} マイクロ = 10^{-6} ナノ = 10^{-9} これが速くなれば、計算速度も速くなる。 # クロックはあてにならない。 # 一つとの計算をするのに、複数の段階がある # 例 : 浮動少数点数の和 # 指数あわせ # 仮数部の和 # 正規化 # パイプラインを利用して、複数の計算を同時に # 行うことができる。 # 「クロック速度」が表すのは、パイプラインの一段部分 # (原理的に..) 段数を増やせば、クロックを速くなる。 # パイプライン構造が違えばクロックを比較しても意味がない # cf. P3 v.s. P4 ゲート遅延速度はどこまで速くなるか ? 本質的に、光の速度という壁がある 1G : 1 n sec : 光でも 30cm しか移動できない 半導体の速度向上には、限界がある ( と十年前から言われている ) 実際の性能の向上も、グラフが寝てきている 結局は、計算を並列に行うしかない 一人でできなければ二人でやる 並列の計算は、まえから行われていた 戦前のカメラ会社 多くの計算が必要 ガウスタイプのカメラ 6 枚 12 面 光軸計算が大変だった 計算室 複数の人間での、並列に計算していた 原爆の計算も同様だったらしい 並列処理の問題点 n 台あれば 1/n になるか ? なるとは限らない 個々の計算が独立に行うことができればよいのだが.. 通常は、互いに依存しあう部分が生じる プロセッサ間での情報交換が必要 情報交換が必要だと、その分遅くなる 下手をすれば、その情報交換に時間が かかり並列化しな場合より遅くなる 場合もありうる。 # n 倍に速くならないなら並列化は無駄か ? # コスト的に意味があることはある # 2 CPU してもコストは二倍にならない # コストが 30% up なら速度も 30% up で Okey # 特別な場合 # 地震処理 # 地震 : P 波と S 波 で差がある # 対策をその間で判断 # その差の間で計算をする必要がある # 天気予報 # 現象より遅い計算には意味がない # # 絶対性能 / 実時間性が必要な場合は意味がある == [数値計算の実用例(シミュレーション)] 筑波、防災研究所の video 地震研究 膨大な観測点 実地実験と計算結果の比較 より良い予想 波のシミュレーション 飛沫があると大変 深さによって、波の速度が変化する 海底の構造により、波が曲る 波の曲り具合で、海底の構造が予測できる == 後 2 回 ( 1月の予定 ) 01/13 (9:30-) 一回目は、並列処理の話 01/20 二回目は、数式処理の話 数値計算で不得意な部分を数式処理で.. == ASCI 様々なシミュレーションを行う # 核実験をせずに、シミュレーションで、原爆を開発する.. 計算結果をどう可視化するかも大きな問題 プレゼンテーション資料の作成