SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
@dc1394
Arに対する古典分子動力学シミュレー
ション
自己紹介
 Twitter: @dc1394
 C++, C#, F#そしてRubyが好きです。
 量子力学の数値計算とかやってます。
 最も興味のある分野
 ・第一原理計算
 ・密度汎関数理論(Density Functional Theory, DFT)
 第一原理計算やDFTについては、よろしければ拙作の
スライドをご覧ください
( http://www.slideshare.net/dc1394/ss-26378208 )。
概要
 分子動力学シミュレーションとは
 第一原理分子動力学計算
 モデルポテンシャル法
 Lennard-Jones (LJ)ポテンシャルと無次元化
 ArのNVT分子動力学シミュレーション
使用するプログラム言語、ライブラリ
等
 プログラム言語はC++11を使用する。
 Boost C++ Librariesを使用する。
 三次元可視化のために、Microsoft DirectX 10を使
用する。
 コンパイラには、Microsoft Visual C++ 2013
(VC12)を使用する。
 さらに、並列計算のために、Intel Threading
Building Blocks (Intel TBB)を使用する。
分子動力学シミュレーションとは
 分子や原子の運動をNewtonの運動方程式で記
述し、その時間発展を数値的にシミュレーション
する方法。
 原子や分子の相互作用の記述
 (1)第一原理的手法
 量子力学的に電子・原子の系のエネルギーを計算し、
原子に働く力を求める方法。
 (2)モデルポテンシャル法
 実験や第一原理計算の結果を再現するように、経験
的なポテンシャル関数をあらかじめ作成しておく方法。
第一原理分子動力学法
 上式のように、系のHamiltonianは明示的に書くこ
とができる。
 このHamiltonianに対応するSchrödinger (Dirac)
方程式を数値的に解けば、原理的には系の
全エネルギーが計算できる。
 さらに、これを原子座標に対して微分すれば、各
原子に働く力が計算できる。
第一原理分子動力学法
 しかし、現実的な系に対しては、Schrödinger
(Dirac)方程式を数値的に直接解くことは、現在で
も容易なことではない。
 また、原子核を厳密に量子力学的に扱うことは、
極めて複雑で、また計算コストを要求するので、
原子核の運動については、Newtonの運動方程式
を用いるのが普通である(cf. 第一原理経路積分
分子動力学法)。
 現在、最も汎用的に用いられる方法は、密度汎関
数理論(DFT)に基づく第一原理分子動力学法で
ある。
モデルポテンシャル法
 実験や第一原理計算の結果を再現するように、経験的
なモデルポテンシャル関数を予め作成しておき、これを
用いてNewtonの運動方程式を数値的に解く方法。
 よく使用されるモデルポテンシャル
 希ガス系
 Lennard-Jones (LJ)ポテンシャル
 生体系
 AMBER, CHARMmポテンシャル
Lennard-Jones (LJ)ポテンシャル
 Van der Waals (vdW)相互作用をモデル化するモ
デルポテンシャルの一つ。
力の計算
平衡点r0を求める
r0を用いてUを書き直せば、
従って、εは平衡点r0におけるポテ
ンシャルの深さを表す。
r0
ε
LJポテンシャルの無次元化
 LJポテンシャルを無次元化し、単純化する。
 上式を次のように変形する。
 ここで、以下の読み替えを行う。
 次式の無次元化したLJポテンシャルが得られる。
温度の無次元化
 温度の定義は、以下となる。
 ここで、換算温度を次式で定義する。
 このとき、温度と換算温度は以下の関係を持つ。
 ここでArの場合において、実験的に決定された値
を用いると、換算温度の一単位は、絶対温度では、
 T = 119.8 (K)
 となる。
時間の無次元化
 時間の単位を次式で定義する。
 ここで、Arの場合において、実験的に決定された
値を用いると、換算時間の一単位は、
 τ = 2.156×10-12 (sec) = 2.156 (psec)
 となる。
シミュレーションの設計
 1. 基本方程式は何か?
 Newtonの運動方程式(ma = F)
 打ち切りLJポテンシャル
 N(粒子数)、V(体積)、T(温度)を一定とするNVTアン
サンブル→温度を制御する必要がある
 2. 方程式をいかに解くか?
 Verlet法を用いてNewton方程式を数値的に解く。
 Woodcockの速度スケーリング法を用いて温度を制
御する。
 周期境界条件の導入
周期境界条件の導入
 セルの端の影響を軽減するために、ユニットセル
が周期的に配置されているとする→周期境界条
件
 さらに、原子がセルの外側に出た場合には、周期
性を考慮し、ユニットセル内に戻す。
周期境界条件
 CMSI配信講義B 第10回 大規模MD並列化の技術
1 ( http://www.cms-initiative.jp/ja/events/school-
event/B/0619-andoh ) の図を引用・改変
1K, 10KにおけるMDの比較
1K 10K
100K, 1000KにおけるMDの比較
100K 1000K
ソースコードとバイナリへのリンク
 このプログラムのソースコードは、GitHub上で公
開しています。
 https://github.com/dc1394/LJ_Argon_MD
 また、バイナリも以下で公開しています。
 https://github.com/dc1394/LJ_Argon_MD/release
s/tag/v0.12
 ライセンスは2条項BSDライセンスとします。
まとめ
 経験的なLJポテンシャルを用いて、Arについて
Newtonの運動方程式を導いた。
 上記の方程式をVerlet法を用いて数値的に解くこ
とにより、リアルタイム分子動力学シミュレーショ
ンを行った。
 Woodcockの速度スケーリング法を用いて温度を
制御した(NVTアンサンブル)。
 計算負荷が非常に大きいため、Intel Threading
Building Blocks (Intel TBB)を用いて並列化を行い、
計算の高速化を図った。

Contenu connexe

Tendances

Tendances (20)

猫でも分かりたい線形回帰の自由度
猫でも分かりたい線形回帰の自由度猫でも分かりたい線形回帰の自由度
猫でも分かりたい線形回帰の自由度
 
Network weight saving_20190123
Network weight saving_20190123Network weight saving_20190123
Network weight saving_20190123
 
日本一やさしい マテリアルズ・インフォマティクスへの導き_柴田_nanotech2023
日本一やさしい マテリアルズ・インフォマティクスへの導き_柴田_nanotech2023日本一やさしい マテリアルズ・インフォマティクスへの導き_柴田_nanotech2023
日本一やさしい マテリアルズ・インフォマティクスへの導き_柴田_nanotech2023
 
Deep forest
Deep forestDeep forest
Deep forest
 
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
 
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)
 
【DL輪読会】Patches Are All You Need? (ConvMixer)
【DL輪読会】Patches Are All You Need? (ConvMixer)【DL輪読会】Patches Are All You Need? (ConvMixer)
【DL輪読会】Patches Are All You Need? (ConvMixer)
 
[DL輪読会]Hindsight Experience Replay
[DL輪読会]Hindsight Experience Replay[DL輪読会]Hindsight Experience Replay
[DL輪読会]Hindsight Experience Replay
 
卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイント卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイント
 
Juliaで並列計算
Juliaで並列計算Juliaで並列計算
Juliaで並列計算
 
[DL輪読会]The Neuro-Symbolic Concept Learner: Interpreting Scenes, Words, and Se...
[DL輪読会]The Neuro-Symbolic Concept Learner: Interpreting Scenes, Words, and Se...[DL輪読会]The Neuro-Symbolic Concept Learner: Interpreting Scenes, Words, and Se...
[DL輪読会]The Neuro-Symbolic Concept Learner: Interpreting Scenes, Words, and Se...
 
Dynamic Routing Between Capsules
Dynamic Routing Between CapsulesDynamic Routing Between Capsules
Dynamic Routing Between Capsules
 
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
 
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
 
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
 
機械学習ゴリゴリ派のための数学とPython
機械学習ゴリゴリ派のための数学とPython機械学習ゴリゴリ派のための数学とPython
機械学習ゴリゴリ派のための数学とPython
 
ベイズ統計学の概論的紹介-old
ベイズ統計学の概論的紹介-oldベイズ統計学の概論的紹介-old
ベイズ統計学の概論的紹介-old
 
第126回 ロボット工学セミナー 三次元点群と深層学習
第126回 ロボット工学セミナー 三次元点群と深層学習第126回 ロボット工学セミナー 三次元点群と深層学習
第126回 ロボット工学セミナー 三次元点群と深層学習
 
30th コンピュータビジョン勉強会@関東 DynamicFusion
30th コンピュータビジョン勉強会@関東 DynamicFusion30th コンピュータビジョン勉強会@関東 DynamicFusion
30th コンピュータビジョン勉強会@関東 DynamicFusion
 
正準相関分析
正準相関分析正準相関分析
正準相関分析
 

Similaire à Arに対する古典分子動力学シミュレーション

Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Yuya Unno
 
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
Takahiro Kubo
 
Define and expansion of cpp macro
Define and expansion of cpp macroDefine and expansion of cpp macro
Define and expansion of cpp macro
digitalghost
 

Similaire à Arに対する古典分子動力学シミュレーション (20)

SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化
 
水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法
 
単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーション単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーション
 
ソフトウェアエンジニアのための「機械学習理論」入門・ハンズオン演習ガイド
 ソフトウェアエンジニアのための「機械学習理論」入門・ハンズオン演習ガイド ソフトウェアエンジニアのための「機械学習理論」入門・ハンズオン演習ガイド
ソフトウェアエンジニアのための「機械学習理論」入門・ハンズオン演習ガイド
 
Paper: seq2seq 20190320
Paper: seq2seq 20190320Paper: seq2seq 20190320
Paper: seq2seq 20190320
 
WSDM2018 読み会 Latent cross making use of context in recurrent recommender syst...
WSDM2018 読み会 Latent cross making use of context in recurrent recommender syst...WSDM2018 読み会 Latent cross making use of context in recurrent recommender syst...
WSDM2018 読み会 Latent cross making use of context in recurrent recommender syst...
 
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
 
20170806 Discriminative Optimization
20170806 Discriminative Optimization20170806 Discriminative Optimization
20170806 Discriminative Optimization
 
Chainerの使い方と 自然言語処理への応用
Chainerの使い方と自然言語処理への応用Chainerの使い方と自然言語処理への応用
Chainerの使い方と 自然言語処理への応用
 
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
 
TensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecTensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vec
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理について
 
Deep Learningの基礎と応用
Deep Learningの基礎と応用Deep Learningの基礎と応用
Deep Learningの基礎と応用
 
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
画像認識モデルを自動的に作る。1日以内に。~Simple And Efficient Architecture Search for Convolutio...
 
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
 
20171015 mosa machine learning
20171015 mosa machine learning20171015 mosa machine learning
20171015 mosa machine learning
 
短距離ハイブリッド並列分子動力学コードの設計思想と説明のようなもの
短距離ハイブリッド並列分子動力学コードの設計思想と説明のようなもの短距離ハイブリッド並列分子動力学コードの設計思想と説明のようなもの
短距離ハイブリッド並列分子動力学コードの設計思想と説明のようなもの
 
深層学習とTensorFlow入門
深層学習とTensorFlow入門深層学習とTensorFlow入門
深層学習とTensorFlow入門
 
Convolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をするConvolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をする
 
Define and expansion of cpp macro
Define and expansion of cpp macroDefine and expansion of cpp macro
Define and expansion of cpp macro
 

Plus de dc1394

Vanderbiltの擬ポテンシャル
Vanderbiltの擬ポテンシャルVanderbiltの擬ポテンシャル
Vanderbiltの擬ポテンシャル
dc1394
 
Troullier and Martinsの擬ポテンシャルの作成法
Troullier and Martinsの擬ポテンシャルの作成法Troullier and Martinsの擬ポテンシャルの作成法
Troullier and Martinsの擬ポテンシャルの作成法
dc1394
 
有限要素によるHybrid汎関数の実装
有限要素によるHybrid汎関数の実装有限要素によるHybrid汎関数の実装
有限要素によるHybrid汎関数の実装
dc1394
 
Thomas-Fermi方程式のFEMによる解法
Thomas-Fermi方程式のFEMによる解法Thomas-Fermi方程式のFEMによる解法
Thomas-Fermi方程式のFEMによる解法
dc1394
 
A lda+u study of selected iron compounds 第二章
A lda+u study of selected iron compounds 第二章A lda+u study of selected iron compounds 第二章
A lda+u study of selected iron compounds 第二章
dc1394
 
A lda+u study of selected iron compounds 第一章
A lda+u study of selected iron compounds 第一章A lda+u study of selected iron compounds 第一章
A lda+u study of selected iron compounds 第一章
dc1394
 

Plus de dc1394 (12)

C++による数値解析の並列化手法
C++による数値解析の並列化手法C++による数値解析の並列化手法
C++による数値解析の並列化手法
 
Pseudopotential of vanderbilt
Pseudopotential of vanderbiltPseudopotential of vanderbilt
Pseudopotential of vanderbilt
 
MBK擬ポテンシャルの作成法
MBK擬ポテンシャルの作成法MBK擬ポテンシャルの作成法
MBK擬ポテンシャルの作成法
 
高精度擬ポテンシャル法の開発と表面系への応用
高精度擬ポテンシャル法の開発と表面系への応用高精度擬ポテンシャル法の開発と表面系への応用
高精度擬ポテンシャル法の開発と表面系への応用
 
Development of highly accurate pseudopotential method and its application to ...
Development of highly accurate pseudopotential method and its application to ...Development of highly accurate pseudopotential method and its application to ...
Development of highly accurate pseudopotential method and its application to ...
 
Blochの定理の証明
Blochの定理の証明Blochの定理の証明
Blochの定理の証明
 
Vanderbiltの擬ポテンシャル
Vanderbiltの擬ポテンシャルVanderbiltの擬ポテンシャル
Vanderbiltの擬ポテンシャル
 
Troullier and Martinsの擬ポテンシャルの作成法
Troullier and Martinsの擬ポテンシャルの作成法Troullier and Martinsの擬ポテンシャルの作成法
Troullier and Martinsの擬ポテンシャルの作成法
 
有限要素によるHybrid汎関数の実装
有限要素によるHybrid汎関数の実装有限要素によるHybrid汎関数の実装
有限要素によるHybrid汎関数の実装
 
Thomas-Fermi方程式のFEMによる解法
Thomas-Fermi方程式のFEMによる解法Thomas-Fermi方程式のFEMによる解法
Thomas-Fermi方程式のFEMによる解法
 
A lda+u study of selected iron compounds 第二章
A lda+u study of selected iron compounds 第二章A lda+u study of selected iron compounds 第二章
A lda+u study of selected iron compounds 第二章
 
A lda+u study of selected iron compounds 第一章
A lda+u study of selected iron compounds 第一章A lda+u study of selected iron compounds 第一章
A lda+u study of selected iron compounds 第一章
 

Dernier

The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
 

Dernier (8)

東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
 
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 

Arに対する古典分子動力学シミュレーション