Readmeを修正

This commit is contained in:
2023-05-26 20:17:15 +09:00
parent ce85e3907f
commit 6300a46119
+60 -64
View File
@@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
<head> <head>
<!-- 2023-05-26 金 20:10 --> <!-- 2023-05-26 金 20:14 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>dump2analysis</title> <title>dump2analysis</title>
@@ -228,21 +228,21 @@
<h2>&#30446;&#27425;</h2> <h2>&#30446;&#27425;</h2>
<div id="text-table-of-contents" role="doc-toc"> <div id="text-table-of-contents" role="doc-toc">
<ul> <ul>
<li><a href="#orgf2c2963">はじめに</a></li> <li><a href="#org467a079">はじめに</a></li>
<li><a href="#org109dfe0">動径分布関数の計算</a></li> <li><a href="#org4bdc489">動径分布関数の計算</a></li>
<li><a href="#orga060af0">MSDの計算</a></li> <li><a href="#org89b01b9">MSDの計算</a></li>
<li><a href="#orgbc1d0cb">角度分布の計算</a></li> <li><a href="#org6c810e8">角度分布の計算</a></li>
<li><a href="#org123cbfd">速度相関関数の計算</a> <li><a href="#orgfb576ab">速度相関関数の計算</a>
<ul> <ul>
<li><a href="#orgd072999">回転相関関数の計算</a></li> <li><a href="#org8954f07">回転相関関数の計算</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org782a9aa">空間分布の計算</a></li> <li><a href="#org3e245dc">空間分布の計算</a></li>
<li><a href="#org9354bba">有限サイズでの空間分布の計算</a></li> <li><a href="#orgbc7b754">有限サイズでの空間分布の計算</a></li>
<li><a href="#orgced6bb5">jumpの計算</a></li> <li><a href="#org1264cd8">jumpの計算</a></li>
<li><a href="#orga9934d7">van Hove関数の計算</a> <li><a href="#org98d92ce">van Hove関数の計算</a>
<ul> <ul>
<li><a href="#org577bd52">cube2slice.py</a></li> <li><a href="#orgac4ff98">cube2slice.py</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
@@ -250,23 +250,23 @@
</div> </div>
<div id="outline-container-orgf2c2963" class="outline-2"> <div id="outline-container-org467a079" class="outline-2">
<h2 id="orgf2c2963">はじめに</h2> <h2 id="org467a079">はじめに</h2>
<div class="outline-text-2" id="text-orgf2c2963"> <div class="outline-text-2" id="text-org467a079">
<p> <p>
lammpsのdump commandで生成したtrajectryファイルを解析できます。ただし lammpsのdump commandで生成したtrajectryファイルを解析できます。ただし
以下のdumpコマンドでlammpstrjを出力する必要があります。 以下のdumpコマンドでlammpstrjを出力する必要があります。
</p> </p>
<pre class="example" id="orgfdf2260"> <pre class="example" id="org6deec96">
dump 1 all custom 1 hoge.lammpstrj id type element x y z vx vy vz dump 1 all custom 1 hoge.lammpstrj id type element x y z vx vy vz
dump_modify 1 element Ar sort id dump_modify 1 element Ar sort id
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org109dfe0" class="outline-2"> <div id="outline-container-org4bdc489" class="outline-2">
<h2 id="org109dfe0">動径分布関数の計算</h2> <h2 id="org4bdc489">動径分布関数の計算</h2>
<div class="outline-text-2" id="text-org109dfe0"> <div class="outline-text-2" id="text-org4bdc489">
<p> <p>
配位数や原子間距離等の局所構造を表す動径分布関数の計算を計算します。動径分布関数\(g(r)\) は平均数密度\(\rho_0\) からのずれとして定義されます。 配位数や原子間距離等の局所構造を表す動径分布関数の計算を計算します。動径分布関数\(g(r)\) は平均数密度\(\rho_0\) からのずれとして定義されます。
\[ \[
@@ -289,14 +289,14 @@ g(r) = \frac{\left< n(r+\Delta r) \right>}{4\pi r^2 \Delta r}\cdot \frac{1}{\rho
<p> <p>
ID=0,1,2,3とID=8,9,10,11の(r)を計算する場合(IDは0からスタートすることに注意)) ID=0,1,2,3とID=8,9,10,11の(r)を計算する場合(IDは0からスタートすることに注意))
</p> </p>
<pre class="example" id="org00d2ced"> <pre class="example" id="org777c354">
dump2analysis -m gr -a 0,1,2,3 -b 8,9,10,11 -i hoge.lammpstrj -o hoge.gr dump2analysis -m gr -a 0,1,2,3 -b 8,9,10,11 -i hoge.lammpstrj -o hoge.gr
</pre> </pre>
<p> <p>
PとLiのG(r)を計算する場合 PとLiのG(r)を計算する場合
</p> </p>
<pre class="example" id="org278bda1"> <pre class="example" id="org88a56fe">
dump2analysis -m gr -x P -y Li -i hoge.lammpstrj -o hoge.gr dump2analysis -m gr -x P -y Li -i hoge.lammpstrj -o hoge.gr
</pre> </pre>
@@ -306,9 +306,9 @@ dump2analysis -m gr -x P -y Li -i hoge.lammpstrj -o hoge.gr
</div> </div>
</div> </div>
<div id="outline-container-orga060af0" class="outline-2"> <div id="outline-container-org89b01b9" class="outline-2">
<h2 id="orga060af0">MSDの計算</h2> <h2 id="org89b01b9">MSDの計算</h2>
<div class="outline-text-2" id="text-orga060af0"> <div class="outline-text-2" id="text-org89b01b9">
<p> <p>
原子の平均二乗変位\(MSD(t)\) の計算をします。 原子の平均二乗変位\(MSD(t)\) の計算をします。
\[ \[
@@ -321,10 +321,6 @@ D = \frac{1}{6t} MSD(t)
よって\(MSD(t)\) が直線になったところの傾きから\(D\) を求めることができます。 よって\(MSD(t)\) が直線になったところの傾きから\(D\) を求めることができます。
</p> </p>
<p>
「コンピュータシミュレーションによる物質化学」 p.50参照
</p>
<p> <p>
計算対象する原子は、元素名、原子タイプ、IDで選択します。&#x2013;dtで1ステッ 計算対象する原子は、元素名、原子タイプ、IDで選択します。&#x2013;dtで1ステッ
@@ -336,29 +332,29 @@ D = \frac{1}{6t} MSD(t)
<p> <p>
LiのMSDを1ステップ2fsで計算する場合は以下のとおりです。 LiのMSDを1ステップ2fsで計算する場合は以下のとおりです。
</p> </p>
<pre class="example" id="org26ceb88"> <pre class="example" id="org4ac3712">
dump2analysis -m msd -x Li --dt 2 -i hoge.lammpstrj -o hoge.msd dump2analysis -m msd -x Li --dt 2 -i hoge.lammpstrj -o hoge.msd
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-orgbc1d0cb" class="outline-2"> <div id="outline-container-org6c810e8" class="outline-2">
<h2 id="orgbc1d0cb">角度分布の計算</h2> <h2 id="org6c810e8">角度分布の計算</h2>
<div class="outline-text-2" id="text-orgbc1d0cb"> <div class="outline-text-2" id="text-org6c810e8">
<p> <p>
S-P-S結合の角度分布は、以下のように計算します。&#x2013;rcut_abと&#x2013;rcut_bcで S-P-S結合の角度分布は、以下のように計算します。&#x2013;rcut_abと&#x2013;rcut_bcで
結合の有無を判断する距離を指定する必要があります。結合原子を逐次、検索 結合の有無を判断する距離を指定する必要があります。結合原子を逐次、検索
するので遅い。結合の組み換えがない場合は、自作した方が良いでしょう。 するので遅い。結合の組み換えがない場合は、自作した方が良いでしょう。
</p> </p>
<pre class="example" id="org7de011f"> <pre class="example" id="org8d05bd6">
dump2analysis -m angle -x S -y P -z S --rcut 3.0 -i hoge.lammpstrj -o huga.angle dump2analysis -m angle -x S -y P -z S --rcut 3.0 -i hoge.lammpstrj -o huga.angle
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org123cbfd" class="outline-2"> <div id="outline-container-orgfb576ab" class="outline-2">
<h2 id="org123cbfd">速度相関関数の計算</h2> <h2 id="orgfb576ab">速度相関関数の計算</h2>
<div class="outline-text-2" id="text-org123cbfd"> <div class="outline-text-2" id="text-orgfb576ab">
<p> <p>
次の式にしたがって指定した原子の速度関数を計算します。 次の式にしたがって指定した原子の速度関数を計算します。
\[ \[
@@ -389,14 +385,14 @@ dump2analysis -m angle -x S -y P -z S --rcut 3.0 -i hoge.lammpstrj -o huga.angl
1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場 1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場
合。 合。
</p> </p>
<pre class="example" id="org3064bbe"> <pre class="example" id="org84bcac2">
dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100 dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100
</pre> </pre>
</div> </div>
<div id="outline-container-orgd072999" class="outline-3"> <div id="outline-container-org8954f07" class="outline-3">
<h3 id="orgd072999">回転相関関数の計算</h3> <h3 id="org8954f07">回転相関関数の計算</h3>
<div class="outline-text-3" id="text-orgd072999"> <div class="outline-text-3" id="text-org8954f07">
<p> <p>
次の式にしたがって指定した水分子の回転相関関数を計算します。 次の式にしたがって指定した水分子の回転相関関数を計算します。
\[ \[
@@ -422,22 +418,22 @@ dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 -
1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場 1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場
合。 合。
</p> </p>
<pre class="example" id="org6b9af46"> <pre class="example" id="org23ea9b0">
dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100 dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100
</pre> </pre>
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org782a9aa" class="outline-2"> <div id="outline-container-org3e245dc" class="outline-2">
<h2 id="org782a9aa">空間分布の計算</h2> <h2 id="org3e245dc">空間分布の計算</h2>
<div class="outline-text-2" id="text-org782a9aa"> <div class="outline-text-2" id="text-org3e245dc">
<p> <p>
空間をvoxcelで分割し、voxcel毎に指定した原子が存在する存在頻度、速 空間をvoxcelで分割し、voxcel毎に指定した原子が存在する存在頻度、速
度、力のいずれかでcubeファイルを作成します。cubeファイルのパラメー 度、力のいずれかでcubeファイルを作成します。cubeファイルのパラメー
タは、&#x2013;cube_typeで指定します。 タは、&#x2013;cube_typeで指定します。
</p> </p>
<pre class="example" id="org2c8740c"> <pre class="example" id="org2888d46">
--cube_type 1 (指定原子の頻度) --cube_type 1 (指定原子の頻度)
--cube_type 2 (指定原子の速度ノルム) --cube_type 2 (指定原子の速度ノルム)
--cube_type 3 (指定原子の力ノルム) --cube_type 3 (指定原子の力ノルム)
@@ -459,7 +455,7 @@ isovalueとRangeを調整します。色を変えたい場合は、Coloring meth
Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。 Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。
</p> </p>
<pre class="example" id="org1b9a78e"> <pre class="example" id="org7c449a7">
dump2analysis -m cube -x Li --cube_type 1 -i hoge.lammpstrj -o hoge.cube dump2analysis -m cube -x Li --cube_type 1 -i hoge.lammpstrj -o hoge.cube
</pre> </pre>
@@ -471,9 +467,9 @@ offsetの値(1,2,3列のデータ)を調整してください。
</div> </div>
</div> </div>
<div id="outline-container-org9354bba" class="outline-2"> <div id="outline-container-orgbc7b754" class="outline-2">
<h2 id="org9354bba">有限サイズでの空間分布の計算</h2> <h2 id="orgbc7b754">有限サイズでの空間分布の計算</h2>
<div class="outline-text-2" id="text-org9354bba"> <div class="outline-text-2" id="text-orgbc7b754">
<p> <p>
空間をvoxcelで分割し、指定した有限サイズの原子が占めるvoxelの密度分 空間をvoxcelで分割し、指定した有限サイズの原子が占めるvoxelの密度分
布を求めます。半径は&#x2013;radiusで与えます。radiusのデフォルト値は0.68 布を求めます。半径は&#x2013;radiusで与えます。radiusのデフォルト値は0.68
@@ -498,7 +494,7 @@ isovalueとRangeを調整します。色を変えたい場合は、Coloring meth
Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。 Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。
</p> </p>
<pre class="example" id="org28ae93f"> <pre class="example" id="orgaaf9b53">
dump2analysis -m cube_radius --radius 0.68 -x Li -i hoge.lammpstrj -o hoge.cube dump2analysis -m cube_radius --radius 0.68 -x Li -i hoge.lammpstrj -o hoge.cube
</pre> </pre>
@@ -510,29 +506,29 @@ offsetの値(1,2,3列のデータ)を調整してください。
</div> </div>
</div> </div>
<div id="outline-container-orgced6bb5" class="outline-2"> <div id="outline-container-org1264cd8" class="outline-2">
<h2 id="orgced6bb5">jumpの計算</h2> <h2 id="org1264cd8">jumpの計算</h2>
<div class="outline-text-2" id="text-orgced6bb5"> <div class="outline-text-2" id="text-org1264cd8">
<p> <p>
空間をvoxcelで分割し、voxcel毎に指定した原子が指定したステップの間 空間をvoxcelで分割し、voxcel毎に指定した原子が指定したステップの間
に移動する距離でcubeファイルを作成します。移動する距離は&#x2013;tauで指 に移動する距離でcubeファイルを作成します。移動する距離は&#x2013;tauで指
定します。他は&#x2013;nx, &#x2013;ny, &#x2013;nzはcubeファイルの計算と同じです。 定します。他は&#x2013;nx, &#x2013;ny, &#x2013;nzはcubeファイルの計算と同じです。
</p> </p>
<pre class="example" id="orgd123e33"> <pre class="example" id="org23b7b6c">
--tau 1 (jumpの時間ステップ) --tau 1 (jumpの時間ステップ)
</pre> </pre>
<pre class="example" id="org01c0523"> <pre class="example" id="org24acfbf">
dump2analysis -m cube_jump -x Li --tau 1 -i hoge.lammpstrj -o hoge.cube dump2analysis -m cube_jump -x Li --tau 1 -i hoge.lammpstrj -o hoge.cube
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-orga9934d7" class="outline-2"> <div id="outline-container-org98d92ce" class="outline-2">
<h2 id="orga9934d7">van Hove関数の計算</h2> <h2 id="org98d92ce">van Hove関数の計算</h2>
<div class="outline-text-2" id="text-orga9934d7"> <div class="outline-text-2" id="text-org98d92ce">
<p> <p>
\(N\) 粒子の jump時間\(t\) と移動距離の分布であるvan Hove関数を計算します。\(t\) は&#x2013;tauで指定します。&#x2013;shiftで統計を稼ぎくことができます。 \(N\) 粒子の jump時間\(t\) と移動距離の分布であるvan Hove関数を計算します。\(t\) は&#x2013;tauで指定します。&#x2013;shiftで統計を稼ぎくことができます。
\[ \[
@@ -547,18 +543,18 @@ dump2analysis -m cube_jump -x Li --tau 1 -i hoge.lammpstrj -o hoge.cube
5fsでのvan Hove関数 \(G(r, 500fs)\) を10ステップのシフトで計算する場合。 5fsでのvan Hove関数 \(G(r, 500fs)\) を10ステップのシフトで計算する場合。
</p> </p>
<pre class="example" id="org79d9a2d"> <pre class="example" id="org0d1adc0">
dump2analysis -m vanHove -x Li --dt 5 --tau 100 --shift 10 -i hoge.lammpstrj -o hoge.cube dump2analysis -m vanHove -x Li --dt 5 --tau 100 --shift 10 -i hoge.lammpstrj -o hoge.cube
</pre> </pre>
</div> </div>
<div id="outline-container-org577bd52" class="outline-3"> <div id="outline-container-orgac4ff98" class="outline-3">
<h3 id="org577bd52">cube2slice.py</h3> <h3 id="orgac4ff98">cube2slice.py</h3>
<div class="outline-text-3" id="text-org577bd52"> <div class="outline-text-3" id="text-orgac4ff98">
<p> <p>
cubeファイルを任意の面でスライスしてコンタープロットします。 cubeファイルを任意の面でスライスしてコンタープロットします。
</p> </p>
<pre class="example" id="org2a167a9"> <pre class="example" id="orgce4b01d">
-a スライスする面と垂直の軸を指定 a, b, cのいずれか -a スライスする面と垂直の軸を指定 a, b, cのいずれか
-s スライスする面の幅の始まりと終わりを指定する。0から1の範囲 -s スライスする面の幅の始まりと終わりを指定する。0から1の範囲
</pre> </pre>
@@ -568,7 +564,7 @@ cubeファイルを任意の面でスライスしてコンタープロットし
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">&#33879;&#32773;: 大窪 貴洋 (千葉大院工) ohkubo.takahiro@faculty.chiba-u.jp</p> <p class="author">&#33879;&#32773;: 大窪 貴洋 (千葉大院工) ohkubo.takahiro@faculty.chiba-u.jp</p>
<p class="date">Created: 2023-05-26 金 20:10</p> <p class="date">Created: 2023-05-26 金 20:14</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>