first commit, Readme.html更新して、git管理することにした。

This commit is contained in:
2023-05-26 20:13:05 +09:00
commit ce85e3907f
26 changed files with 158505 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
CC = gcc
CFLAGS = -O2
LDFLAGS = -O2
SRC = $(wildcard *.c)
OBJ = $(patsubst %.c, %.o, $(SRC))
PKG = dump2analysis
$(PKG): $(OBJ)
$(CC) $(LDFLAGS) $(LIBS) $(OBJ) -o $(PKG)
obj/%.o: src/%.cpp dump2analysis.h
$(CC) $(CFLAGS) -c $< -o $@
clean:
rm -f $(OBJ) $(PKG)
install: $(PKG)
install $(PKG) ~/bin
+20
View File
@@ -0,0 +1,20 @@
CC = clang
CFLAGS = -O2 -lm -Wall
OBJS := $(patsubst %.o, %, $(wildcard *.c))
.c:
$(CC) -c -o $@ $<
all: dump2analysis dump2analysis.h
dump2analysis: $(OBJS) dump2analysis.h
$(CC) $(CFLAGS) $(OBJS) -o $@
install: dump2analysis
install dump2analysis ~/bin/espresso
clean:
rm -f *.o dump2analysis
+20
View File
@@ -0,0 +1,20 @@
CC = icc
#CFLAGS = -parallel -fast
#LDFLAGS = -parallel
CFLAGS = -fast
LDFLAGS =
SRC = $(wildcard *.c)
OBJ = $(patsubst %.c, %.o, $(SRC))
PKG = dump2analysis
$(PKG): $(OBJ)
$(CC) $(LDFLAGS) $(LIBS) $(OBJ) -o $(PKG)
obj/%.o: src/%.cpp dump2analysis.h
$(CC) $(CFLAGS) -c $< -o $@
clean:
rm -f $(OBJ) $(PKG)
install: $(PKG)
install $(PKG) ~/bin
+18
View File
@@ -0,0 +1,18 @@
CC = icc
CFLAGS = -parallel -fast
LDFLAGS = -parallel
SRC = $(wildcard *.c)
OBJ = $(patsubst %.c, %.o, $(SRC))
PKG = dump2analysis
$(PKG): $(OBJ)
$(CC) $(LDFLAGS) $(LIBS) $(OBJ) -o $(PKG)
obj/%.o: src/%.cpp dump2analysis.h
$(CC) $(CFLAGS) -c $< -o $@
clean:
rm -f $(OBJ) $(PKG)
install: $(PKG)
install $(PKG) ~/bin
+575
View File
@@ -0,0 +1,575 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
<head>
<!-- 2023-05-26 金 20:10 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>dump2analysis</title>
<meta name="author" content="大窪 貴洋 (千葉大院工) ohkubo.takahiro@faculty.chiba-u.jp" />
<meta name="generator" content="Org Mode" />
<style>
#content { max-width: 60em; margin: auto; }
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
font-size: medium;
font-weight: bold;
margin-top:0; }
.todo { font-family: monospace; color: red; }
.done { font-family: monospace; color: green; }
.priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
border: 1px solid #e6e6e6;
border-radius: 3px;
background-color: #f2f2f2;
padding: 8pt;
font-family: monospace;
overflow: auto;
margin: 1.2em;
}
pre.src {
position: relative;
overflow: auto;
}
pre.src:before {
display: none;
position: absolute;
top: -8px;
right: 12px;
padding: 3px;
color: #555;
background-color: #f2f2f299;
}
pre.src:hover:before { display: inline; margin-top: 14px;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
pre.src-authinfo::before { content: 'Authinfo'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
pre.src-css:before { content: 'CSS'; }
pre.src-D:before { content: 'D'; }
pre.src-ditaa:before { content: 'ditaa'; }
pre.src-dot:before { content: 'Graphviz'; }
pre.src-calc:before { content: 'Emacs Calc'; }
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
pre.src-fortran:before { content: 'Fortran'; }
pre.src-gnuplot:before { content: 'gnuplot'; }
pre.src-haskell:before { content: 'Haskell'; }
pre.src-hledger:before { content: 'hledger'; }
pre.src-java:before { content: 'Java'; }
pre.src-js:before { content: 'Javascript'; }
pre.src-latex:before { content: 'LaTeX'; }
pre.src-ledger:before { content: 'Ledger'; }
pre.src-lisp:before { content: 'Lisp'; }
pre.src-lilypond:before { content: 'Lilypond'; }
pre.src-lua:before { content: 'Lua'; }
pre.src-matlab:before { content: 'MATLAB'; }
pre.src-mscgen:before { content: 'Mscgen'; }
pre.src-ocaml:before { content: 'Objective Caml'; }
pre.src-octave:before { content: 'Octave'; }
pre.src-org:before { content: 'Org mode'; }
pre.src-oz:before { content: 'OZ'; }
pre.src-plantuml:before { content: 'Plantuml'; }
pre.src-processing:before { content: 'Processing.js'; }
pre.src-python:before { content: 'Python'; }
pre.src-R:before { content: 'R'; }
pre.src-ruby:before { content: 'Ruby'; }
pre.src-sass:before { content: 'Sass'; }
pre.src-scheme:before { content: 'Scheme'; }
pre.src-screen:before { content: 'Gnu Screen'; }
pre.src-sed:before { content: 'Sed'; }
pre.src-sh:before { content: 'shell'; }
pre.src-sql:before { content: 'SQL'; }
pre.src-sqlite:before { content: 'SQLite'; }
/* additional languages in org.el's org-babel-load-languages alist */
pre.src-forth:before { content: 'Forth'; }
pre.src-io:before { content: 'IO'; }
pre.src-J:before { content: 'J'; }
pre.src-makefile:before { content: 'Makefile'; }
pre.src-maxima:before { content: 'Maxima'; }
pre.src-perl:before { content: 'Perl'; }
pre.src-picolisp:before { content: 'Pico Lisp'; }
pre.src-scala:before { content: 'Scala'; }
pre.src-shell:before { content: 'Shell Script'; }
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre.src-cpp:before { content: 'C++'; }
pre.src-abc:before { content: 'ABC'; }
pre.src-coq:before { content: 'Coq'; }
pre.src-groovy:before { content: 'Groovy'; }
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre.src-bash:before { content: 'bash'; }
pre.src-csh:before { content: 'csh'; }
pre.src-ash:before { content: 'ash'; }
pre.src-dash:before { content: 'dash'; }
pre.src-ksh:before { content: 'ksh'; }
pre.src-mksh:before { content: 'mksh'; }
pre.src-posh:before { content: 'posh'; }
/* Additional Emacs modes also supported by the LaTeX listings package */
pre.src-ada:before { content: 'Ada'; }
pre.src-asm:before { content: 'Assembler'; }
pre.src-caml:before { content: 'Caml'; }
pre.src-delphi:before { content: 'Delphi'; }
pre.src-html:before { content: 'HTML'; }
pre.src-idl:before { content: 'IDL'; }
pre.src-mercury:before { content: 'Mercury'; }
pre.src-metapost:before { content: 'MetaPost'; }
pre.src-modula-2:before { content: 'Modula-2'; }
pre.src-pascal:before { content: 'Pascal'; }
pre.src-ps:before { content: 'PostScript'; }
pre.src-prolog:before { content: 'Prolog'; }
pre.src-simula:before { content: 'Simula'; }
pre.src-tcl:before { content: 'tcl'; }
pre.src-tex:before { content: 'TeX'; }
pre.src-plain-tex:before { content: 'Plain TeX'; }
pre.src-verilog:before { content: 'Verilog'; }
pre.src-vhdl:before { content: 'VHDL'; }
pre.src-xml:before { content: 'XML'; }
pre.src-nxml:before { content: 'XML'; }
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre.src-conf:before { content: 'Configuration File'; }
table { border-collapse:collapse; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
th.org-right { text-align: center; }
th.org-left { text-align: center; }
th.org-center { text-align: center; }
td.org-right { text-align: right; }
td.org-left { text-align: left; }
td.org-center { text-align: center; }
dt { font-weight: bold; }
.footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.equation-container {
display: table;
text-align: center;
width: 100%;
}
.equation {
vertical-align: middle;
}
.equation-label {
display: table-cell;
text-align: right;
vertical-align: middle;
}
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up
{ text-align: right; font-size: 70%; white-space: nowrap; }
textarea { overflow-x: auto; }
.linenr { font-size: smaller }
.code-highlighted { background-color: #ffff00; }
.org-info-js_info-navigation { border-style: none; }
#org-info-js_console-label
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
.org-svg { }
</style>
<link rel="stylesheet" type="text/css" href="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/css/htmlize.css"/>
<link rel="stylesheet" type="text/css" href="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/readtheorg.css"/>
<script src="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/jquery.min.js"></script>
<script src="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/bootstrap.min.js"></script>
<script type="text/javascript" src="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/jquery.stickytableheaders.min.js"></script>
<script type="text/javascript" src="https://amorphous.tf.chiba-u.jp/org-html-themes/org/lib/readtheorg.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
displayAlign: "center",
displayIndent: "0em",
"HTML-CSS": { scale: 100,
linebreaks: { automatic: "false" },
webFont: "TeX"
},
SVG: {scale: 100,
linebreaks: { automatic: "false" },
font: "TeX"},
NativeMML: {scale: 100},
TeX: { equationNumbers: {autoNumber: "AMS"},
MultLineWidth: "85%",
TagSide: "right",
TagIndent: ".8em"
}
});
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS_HTML"></script>
</head>
<body>
<div id="content" class="content">
<h1 class="title">dump2analysis</h1>
<div id="table-of-contents" role="doc-toc">
<h2>&#30446;&#27425;</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
<li><a href="#orgf2c2963">はじめに</a></li>
<li><a href="#org109dfe0">動径分布関数の計算</a></li>
<li><a href="#orga060af0">MSDの計算</a></li>
<li><a href="#orgbc1d0cb">角度分布の計算</a></li>
<li><a href="#org123cbfd">速度相関関数の計算</a>
<ul>
<li><a href="#orgd072999">回転相関関数の計算</a></li>
</ul>
</li>
<li><a href="#org782a9aa">空間分布の計算</a></li>
<li><a href="#org9354bba">有限サイズでの空間分布の計算</a></li>
<li><a href="#orgced6bb5">jumpの計算</a></li>
<li><a href="#orga9934d7">van Hove関数の計算</a>
<ul>
<li><a href="#org577bd52">cube2slice.py</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-orgf2c2963" class="outline-2">
<h2 id="orgf2c2963">はじめに</h2>
<div class="outline-text-2" id="text-orgf2c2963">
<p>
lammpsのdump commandで生成したtrajectryファイルを解析できます。ただし
以下のdumpコマンドでlammpstrjを出力する必要があります。
</p>
<pre class="example" id="orgfdf2260">
dump 1 all custom 1 hoge.lammpstrj id type element x y z vx vy vz
dump_modify 1 element Ar sort id
</pre>
</div>
</div>
<div id="outline-container-org109dfe0" class="outline-2">
<h2 id="org109dfe0">動径分布関数の計算</h2>
<div class="outline-text-2" id="text-org109dfe0">
<p>
配位数や原子間距離等の局所構造を表す動径分布関数の計算を計算します。動径分布関数\(g(r)\) は平均数密度\(\rho_0\) からのずれとして定義されます。
\[
g(r) = \frac{\left< n(r+\Delta r) \right>}{4\pi r^2 \Delta r}\cdot \frac{1}{\rho_0}
\]
</p>
<p>
「コンピュータシミュレーションによる物質化学」 p.50参照
</p>
<p>
プログラムの実行は、計算modeをgr(-m gr)として行います。計算対象の原子
ペアは、元素記号や原子タイプ、複数のidを指定して行うことができます。id
はlammpstrjの数字です。VMDで原子をピックアップすると0から始まるidが表
示されるので間違えないようしてください。また&#x2013;rcutで指定した距離内の平均結合距離を計算します。
</p>
<p>
ID=0,1,2,3とID=8,9,10,11の(r)を計算する場合(IDは0からスタートすることに注意))
</p>
<pre class="example" id="org00d2ced">
dump2analysis -m gr -a 0,1,2,3 -b 8,9,10,11 -i hoge.lammpstrj -o hoge.gr
</pre>
<p>
PとLiのG(r)を計算する場合
</p>
<pre class="example" id="org278bda1">
dump2analysis -m gr -x P -y Li -i hoge.lammpstrj -o hoge.gr
</pre>
<p>
「コンピュータシミュレーションによる物質化学」 p.47参照
</p>
</div>
</div>
<div id="outline-container-orga060af0" class="outline-2">
<h2 id="orga060af0">MSDの計算</h2>
<div class="outline-text-2" id="text-orga060af0">
<p>
原子の平均二乗変位\(MSD(t)\) の計算をします。
\[
MSD(t) = \left< \left[\vec{r_i(0)} - \vec{r_i(t)}\right]^2 \right>
\]
\(MSD(t)\) は自己拡散係数と以下の関係があります。
\[
D = \frac{1}{6t} MSD(t)
\]
よって\(MSD(t)\) が直線になったところの傾きから\(D\) を求めることができます。
</p>
<p>
「コンピュータシミュレーションによる物質化学」 p.50参照
</p>
<p>
計算対象する原子は、元素名、原子タイプ、IDで選択します。&#x2013;dtで1ステッ
プの時間(fs)を指定する必要があります。またMSDのスタートステップをシフ
トしながら計算させる場合は、&#x2013;tauと&#x2013;tau_shiftを指定します。&#x2013;tau_shiftが
短いと相関が残って結果がおかしくなるので注意が必要です。
</p>
<p>
LiのMSDを1ステップ2fsで計算する場合は以下のとおりです。
</p>
<pre class="example" id="org26ceb88">
dump2analysis -m msd -x Li --dt 2 -i hoge.lammpstrj -o hoge.msd
</pre>
</div>
</div>
<div id="outline-container-orgbc1d0cb" class="outline-2">
<h2 id="orgbc1d0cb">角度分布の計算</h2>
<div class="outline-text-2" id="text-orgbc1d0cb">
<p>
S-P-S結合の角度分布は、以下のように計算します。&#x2013;rcut_abと&#x2013;rcut_bcで
結合の有無を判断する距離を指定する必要があります。結合原子を逐次、検索
するので遅い。結合の組み換えがない場合は、自作した方が良いでしょう。
</p>
<pre class="example" id="org7de011f">
dump2analysis -m angle -x S -y P -z S --rcut 3.0 -i hoge.lammpstrj -o huga.angle
</pre>
</div>
</div>
<div id="outline-container-org123cbfd" class="outline-2">
<h2 id="org123cbfd">速度相関関数の計算</h2>
<div class="outline-text-2" id="text-org123cbfd">
<p>
次の式にしたがって指定した原子の速度関数を計算します。
\[
C(t) = \vec{v(0)}\cdot \vec{v(t')}
\]
また拡散係数と速度相関関数は以下の関係があります。
\[
D = \frac{1}{3}\int_0^\infty C(t) dt
\]
「コンピュータシミュレーションによる物質化学」 p.50参照
</p>
<p>
さらに速度相関関数のフーリエ変換よりIRスペクトルを計算できます。
\[
I(\nu) = \int_0^\infty \exp(-2\pi it ) C(t) dt
\]
</p>
<p>
&#x2013;dtで1ステップの時間(fs)を指定する必要があります。MSDの計算と同様、
&#x2013;tauと&#x2013;shiftで相関関数を計算するステップ数とシフトを指定して統
計を稼ぐことができます。十分に相関関数が減衰するよう&#x2013;tauの指定する
必要があります。
</p>
<p>
1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場
合。
</p>
<pre class="example" id="org3064bbe">
dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100
</pre>
</div>
<div id="outline-container-orgd072999" class="outline-3">
<h3 id="orgd072999">回転相関関数の計算</h3>
<div class="outline-text-3" id="text-orgd072999">
<p>
次の式にしたがって指定した水分子の回転相関関数を計算します。
\[
C(t) = \left< \frac{3\cos^2\theta -1 }{2}\right>
\]
\(\cos \theta\) は水の永久双極子モーメントの向きです。
また回転相関関数を時間積分すると^2H NMRの緩和時間と関係する回転相関時間が求まります。
\[
\tau_R = \frac{1}{3}\int_0^\infty C(t) dt
\]
日本化学会編「溶液の分子論的描像」 p.99参照
「分子シミュレーション入門」 p.101参照
</p>
<p>
&#x2013;dtで1ステップの時間(fs)を指定する必要があります。MSDの計算と同様、
&#x2013;tauと&#x2013;shiftで相関関数を計算するステップ数とシフトを指定して統計
&#x2013;を稼ぐことができます。十分に相関関数が減衰するよう&#x2013;tauの指定する
&#x2013;必要があります。
</p>
<p>
1000ステップ分の速度相関関数を100ステップシフトさせながら計算する場
合。
</p>
<pre class="example" id="org6b9af46">
dump2analysis -m vcorr -i hoge.lammpstrj -o hoge.vcorr -x Li --dt 1 --tau 1000 --shift 100
</pre>
</div>
</div>
</div>
<div id="outline-container-org782a9aa" class="outline-2">
<h2 id="org782a9aa">空間分布の計算</h2>
<div class="outline-text-2" id="text-org782a9aa">
<p>
空間をvoxcelで分割し、voxcel毎に指定した原子が存在する存在頻度、速
度、力のいずれかでcubeファイルを作成します。cubeファイルのパラメー
タは、&#x2013;cube_typeで指定します。
</p>
<pre class="example" id="org2c8740c">
--cube_type 1 (指定原子の頻度)
--cube_type 2 (指定原子の速度ノルム)
--cube_type 3 (指定原子の力ノルム)
</pre>
<p>
空間の分割数はa,b,c軸方向の分割数を&#x2013;na, &#x2013;nb, &#x2013;ncで指定します。微
小体積の1辺の長さは、a/na(a軸方向)になるので、以下の式を満たせば
voxcelは、1辺の長さが同じ平行6面体になります。
\[ \frac{a}{na} =
\frac{b}{nb} = \frac{c}{nc}
\]
</p>
<p>
なおcubeファイルの原子位置は全ステップの平均座標になります。VMDで
isosurfaceの表示は、Drawing methodでisosurfaceを選択した後、
isovalueとRangeを調整します。色を変えたい場合は、Coloring methodで
Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。
</p>
<pre class="example" id="org1b9a78e">
dump2analysis -m cube -x Li --cube_type 1 -i hoge.lammpstrj -o hoge.cube
</pre>
<p>
※VMDのbugかと思いますがisosurfaceの原点が少しずれます。na, nb, nc
が大きいとほとんど問題になりませんが、気になる場合は手動で3行目の
offsetの値(1,2,3列のデータ)を調整してください。
</p>
</div>
</div>
<div id="outline-container-org9354bba" class="outline-2">
<h2 id="org9354bba">有限サイズでの空間分布の計算</h2>
<div class="outline-text-2" id="text-org9354bba">
<p>
空間をvoxcelで分割し、指定した有限サイズの原子が占めるvoxelの密度分
布を求めます。半径は&#x2013;radiusで与えます。radiusのデフォルト値は0.68
&Aring; (Li+のイオン半径)です。各原子と全voxelの中心距離を求めて、指定
した半径より小さい場合、原子が占めるvoxelとしてカウントします。(計
算にかなり時間がかかります)。
</p>
<p>
空間の分割数はa,b,c軸方向の分割数を&#x2013;na, &#x2013;nb, &#x2013;ncで指定します。微
小体積の1辺の長さは、a/na(a軸方向)になるので、以下の式を満たせば
voxcelは、1辺の長さが同じ平行6面体になります。
\[ \frac{a}{na} =
\frac{b}{nb} = \frac{c}{nc}
\]
</p>
<p>
なおcubeファイルの原子位置は全ステップの平均座標になります。VMDで
isosurfaceの表示は、Drawing methodでisosurfaceを選択した後、
isovalueとRangeを調整します。色を変えたい場合は、Coloring methodで
Volumeを選択しTrajectory-&gt;Color Scale Data Rangeを調整します。
</p>
<pre class="example" id="org28ae93f">
dump2analysis -m cube_radius --radius 0.68 -x Li -i hoge.lammpstrj -o hoge.cube
</pre>
<p>
※VMDのbugかと思いますがisosurfaceの原点が少しずれます。na, nb, nc
が大きいとほとんど問題になりませんが、気になる場合は手動で3行目の
offsetの値(1,2,3列のデータ)を調整してください。
</p>
</div>
</div>
<div id="outline-container-orgced6bb5" class="outline-2">
<h2 id="orgced6bb5">jumpの計算</h2>
<div class="outline-text-2" id="text-orgced6bb5">
<p>
空間をvoxcelで分割し、voxcel毎に指定した原子が指定したステップの間
に移動する距離でcubeファイルを作成します。移動する距離は&#x2013;tauで指
定します。他は&#x2013;nx, &#x2013;ny, &#x2013;nzはcubeファイルの計算と同じです。
</p>
<pre class="example" id="orgd123e33">
--tau 1 (jumpの時間ステップ)
</pre>
<pre class="example" id="org01c0523">
dump2analysis -m cube_jump -x Li --tau 1 -i hoge.lammpstrj -o hoge.cube
</pre>
</div>
</div>
<div id="outline-container-orga9934d7" class="outline-2">
<h2 id="orga9934d7">van Hove関数の計算</h2>
<div class="outline-text-2" id="text-orga9934d7">
<p>
\(N\) 粒子の jump時間\(t\) と移動距離の分布であるvan Hove関数を計算します。\(t\) は&#x2013;tauで指定します。&#x2013;shiftで統計を稼ぎくことができます。
\[
G(r,t) = \frac{1}{N}\sum_{i=1}^{N}
\left<
\delta\left(r - |r_i(t) - r_i(0)| \right)
\right>
\]
</p>
<p>
5fsでのvan Hove関数 \(G(r, 500fs)\) を10ステップのシフトで計算する場合。
</p>
<pre class="example" id="org79d9a2d">
dump2analysis -m vanHove -x Li --dt 5 --tau 100 --shift 10 -i hoge.lammpstrj -o hoge.cube
</pre>
</div>
<div id="outline-container-org577bd52" class="outline-3">
<h3 id="org577bd52">cube2slice.py</h3>
<div class="outline-text-3" id="text-org577bd52">
<p>
cubeファイルを任意の面でスライスしてコンタープロットします。
</p>
<pre class="example" id="org2a167a9">
-a スライスする面と垂直の軸を指定 a, b, cのいずれか
-s スライスする面の幅の始まりと終わりを指定する。0から1の範囲
</pre>
</div>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">&#33879;&#32773;: 大窪 貴洋 (千葉大院工) ohkubo.takahiro@faculty.chiba-u.jp</p>
<p class="date">Created: 2023-05-26 金 20:10</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
</html>
+130
View File
@@ -0,0 +1,130 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m angle */
/* lammpstrjから3原子の角度分布を計算する */
/* A原子(-a, -x, -s)とB原子(-c, -z, -u)で端の原子を指定する。 */
/* B原子(-b, -y, -t)で中心原子を指定する。 */
/* --rcut_abは角度を計算するA-B原子距離のカッとオフ。 default:2.3 */
/* --rcut_bcは角度を計算するB-C原子距離のカッとオフ。 default:2.3 */
void ErrorAngle(){
printf("Required arguments atoms A, atoms B, and atom C\n");
printf("(-a, -x, -s) atom A\n");
printf("(-b, -y, -t) atom B\n");
printf("(-c, -z, -u) atom B\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for Gr analysis:\n");
printf("--rcut_ab cut-off for A-B bonds [2.3]\n");
printf("--rcut_bc cut-off for B-C bonds [2.3]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m angle -x Si -y O -z Si -i hoge.lammpstrj -o hoge.angle\n");
exit(0);
}
void OutputAngle(PARAM *p, int pairs, double *d, double ave, double std){
FILE *fp;
int i, j, bunkatu=1800; /* 180degを1800分割, delta_angle = 0.1; */
double delta_angle, min_angle;
int *a;
double ang;
a = malloc(sizeof(int) * bunkatu);
delta_angle = 180.0/(double)bunkatu;
min_angle = delta_angle * 0.5;
for (i=0; i<bunkatu; i++) a[i] = 0;
for (i=0; i<pairs; i++) {
j = (int)floor((d[i] - min_angle)/delta_angle);
a[j]++;
}
fp = fopen(p->outfile, "w");
fprintf(fp, "# Rcut a-b: %lf\n", RCUT_AB);
fprintf(fp, "# Rcut b-c: %lf\n", RCUT_BC);
fprintf(fp, "# Total pairs: %d\n", pairs);
fprintf(fp, "# angle: %lf +/- %lf\n", ave, std);
for (i=0; i<bunkatu; i++){
ang = min_angle + ((double)i+0.5)*delta_angle;
fprintf(fp, "%lf %d\n", ang, a[i]);
}
printf("%s was created.\n", p->outfile);
}
void EstimateAngle(PARAM *param){
FILE *f;
HEAD head;
ATOMS a, b, c; /* bが中心元素 */
int i, j, k;
int s, pairs=0;
double x, y, z;
double xa, ya, za;
double xb, yb, zb;
double ab, norm_a, norm_b, angle;
double ra, rb, *d = NULL;
double ave = 0.0, std = 0.0;
if (ArgCheckInputOutput(param) != 0) ErrorAngle();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 7) ErrorAngle();
Allocate(&a, param->atoms);
Allocate(&b, param->atoms);
Allocate(&c, param->atoms);
f = fopen(param->infile, "r");
/* 距離の計算 */
for (s=0; s<param->steps; s++){
if (s%10 == 0) {
printf("Calculating Gr step: %d\r", s);
fflush(stdout);
}
/* 原子の選択 */
GetData(f, param, &head, &a, &b, &c);
for(i=0; i<b.atoms; i++){
for(j=0; j<a.atoms; j++){
for(k=0; k<c.atoms; k++){
if ((b.id[i] == a.id[j]) ||
(b.id[i] == c.id[k]) ||
(a.id[j] == c.id[k]))
continue;
/* a - b bond */
x = (a.x[j] - b.x[i]) - round(a.x[j] - b.x[i]);
y = (a.y[j] - b.y[i]) - round(a.y[j] - b.y[i]);
z = (a.z[j] - b.z[i]) - round(a.z[j] - b.z[i]);
xa = x*head.A[0][0] + y*head.A[1][0] + z*head.A[2][0];
ya = x*head.A[0][1] + y*head.A[1][1] + z*head.A[2][1];
za = x*head.A[0][2] + y*head.A[1][2] + z*head.A[2][2];
ra = sqrt(pow(xa, 2) + pow(ya, 2) + pow(za, 2));
x = (c.x[k] - b.x[i]) - round(c.x[k] - b.x[i]);
y = (c.y[k] - b.y[i]) - round(c.y[k] - b.y[i]);
z = (c.z[k] - b.z[i]) - round(c.z[k] - b.z[i]);
xb = x*head.A[0][0] + y*head.A[1][0] + z*head.A[2][0];
yb = x*head.A[0][1] + y*head.A[1][1] + z*head.A[2][1];
zb = x*head.A[0][2] + y*head.A[1][2] + z*head.A[2][2];
rb = sqrt(pow(xb, 2) + pow(yb, 2) + pow(zb, 2));
/* 角度の計算 */
if (ra < RCUT_AB && rb < RCUT_BC){
norm_a = sqrt(pow(xa, 2) + pow(ya, 2) + pow(za, 2));
norm_b = sqrt(pow(xb, 2) + pow(yb, 2) + pow(zb, 2));
ab = xa*xb + ya*yb + za*zb;
angle = acos(ab/(norm_a*norm_b)) * 180/M_PI;
d = realloc(d, sizeof(double) * (pairs+1));
d[pairs] = angle;
pairs++;
}
}
}
}
}
/* 平均値の計算 */
for (i=0; i<pairs; i++) ave = ave + d[i];
ave = ave/pairs;
/* 標準偏差の計算 */
for (i=0; i<pairs; i++) std = std + (d[i] - ave)*(d[i] - ave);
std = sqrt(std/pairs);
OutputAngle(param, pairs, d, ave, std);
}
+254
View File
@@ -0,0 +1,254 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m cube */
/* lammpstrjから指定したデータのグリッドデータ(cubeファイル)を作成する。 */
/* cubeファイルは、VESTAやVMDでisosurfaceやvolumes urfaceで可視化できる。 */
/* グリッドデータのパラメータは、頻度、速度、力、エネルギーを選択できる。 */
/* cubeファイル中での指定以外の原子座標は、全ステップの平均値とする */
/* --cube_type 1:指定原子の頻度 */
/* --cube_type 2:指定原子の速度ノルム */
/* --cube_type 3:指定原子の力ノルム */
void ErrorCube(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for cube analysis:\n");
printf("--nx numebr boxcel on X [100]\n");
printf("--ny numebr boxcel on X [100]\n");
printf("--nz numebr boxcel on X [100]\n");
printf("--cube_type select cube parameter [1]\n");
printf(" 1: density\n");
printf(" 2: velocity\n");
printf(" 3: force\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m cube -x Li --cube_type 2 -i hoge.lammpstrj -o hoge.cube\n");
exit(0);
}
void OutputCube(PARAM *param, double ***rho){
int i, j, k, cnt=0;
FILE *fp;
ATOMS a;
HEAD *head;
int l, m;
double **xx, **yy, **zz;
double *x_merge, *y_merge, *z_merge;
double x, y, z;
double A[3][3];
/* steps * atoms * (x, y, z)のメモリ取得 */
head = malloc(sizeof(HEAD) * param->steps);
xx = malloc(sizeof(double*) * param->steps);
yy = malloc(sizeof(double*) * param->steps);
zz = malloc(sizeof(double*) * param->steps);
for(i=0; i<param->steps; i++){
xx[i] = malloc(sizeof(double) * param->atoms);
yy[i] = malloc(sizeof(double) * param->atoms);
zz[i] = malloc(sizeof(double) * param->atoms);
}
x_merge = malloc(sizeof(double) * param->atoms);
y_merge = malloc(sizeof(double) * param->atoms);
z_merge = malloc(sizeof(double) * param->atoms);
Allocate(&a, param->atoms);
fp = fopen(param->infile, "r");
/* 分率座標のデータを全ステップで取得する */
printf("Calculating average position of all atoms...\n");
fflush(stdout);
for (i=0; i<param->steps; i++){
GetAllData(fp, param, &head[i], &a);
/* xx, yy, zzは[0-1]の分率座標 */
for (j=0; j<param->atoms; j++){
xx[i][j] = a.x[j];
yy[i][j] = a.y[j];
zz[i][j] = a.z[j];
}
}
/* 分率座標でunwrap */
Unwrap(param->steps, param->atoms, xx, yy, zz);
fclose(fp);
/* 時間平均を求めるための初期化 */
for (i=0; i<param->atoms; i++){
x_merge[i] = 0.0;
y_merge[i] = 0.0;
z_merge[i] = 0.0;
}
for (l=0; l<3; l++){
for (m=0; m<3; m++){
A[l][m] = 0.0;
}
}
/* 時間平均を求めるための足し上げ */
for (i=0; i<param->steps; i++){
for (j=0; j<param->atoms; j++){
x_merge[j] = x_merge[j] + xx[i][j];
y_merge[j] = y_merge[j] + yy[i][j];
z_merge[j] = z_merge[j] + zz[i][j];
}
for (l=0; l<3; l++){
for (m=0; m<3; m++){
A[l][m] = A[l][m] + head[i].A[l][m];
}
}
}
/* 時間平均する */
for (i=0; i<param->atoms; i++){
x_merge[i] = x_merge[i]/param->steps;
y_merge[i] = y_merge[i]/param->steps;
z_merge[i] = z_merge[i]/param->steps;
}
for (l=0; l<3; l++){
for (m=0; m<3; m++){
A[l][m] = A[l][m]/param->steps;
}
}
fp = fopen(param->outfile, "w");
/* cubeファイルの出力 Bohr単位にする */
fprintf(fp, "Cubfile created from dump2analysis cube\n");
if (CUBE_TYPE == 1) fprintf(fp, "Density: density\n");
if (CUBE_TYPE == 2) fprintf(fp, "Density: velocity\n");
if (CUBE_TYPE == 3) fprintf(fp, "Density: force\n");
if (CUBE_TYPE == 4) fprintf(fp, "Density: jump\n");
/* atoms, x_origin, y_origin, z_orgin */
fprintf(fp, "%5d ", param->atoms);
fprintf(fp, "%12.6f ", 0.0);
fprintf(fp, "%12.6f ", 0.0);
fprintf(fp, "%12.6f", 0.0);
fprintf(fp, "\n");
/* NX dx dy dz minus unit: Bohr unit */
fprintf(fp, "%5d ", NX); /* a vector */
fprintf(fp, "%12.6f ", A[0][0]/NX/0.52917721067);
fprintf(fp, "%12.6f ", A[0][1]/NX/0.52917721067);
fprintf(fp, "%12.6f\n", A[0][2]/NX/0.52917721067);
fprintf(fp, "%5d ", NY); /* b vector */
fprintf(fp, "%12.6f ", A[1][0]/NY/0.52917721067);
fprintf(fp, "%12.6f ", A[1][1]/NY/0.52917721067);
fprintf(fp, "%12.6f\n", A[1][2]/NY/0.52917721067);
fprintf(fp, "%5d ", NZ); /* c vector */
fprintf(fp, "%12.6f ", A[2][0]/NZ/0.52917721067);
fprintf(fp, "%12.6f ", A[2][1]/NZ/0.52917721067);
fprintf(fp, "%12.6f\n", A[2][2]/NZ/0.52917721067);
/* 原子座標の出力 */
for(i=0; i<param->atoms; i++){
x_merge[i] = x_merge[i] - floor(x_merge[i]);
y_merge[i] = y_merge[i] - floor(y_merge[i]);
z_merge[i] = z_merge[i] - floor(z_merge[i]);
x = x_merge[i]*A[0][0] + y_merge[i]*A[1][0] + z_merge[i]*A[2][0];
y = x_merge[i]*A[0][1] + y_merge[i]*A[1][1] + z_merge[i]*A[2][1];
z = x_merge[i]*A[0][2] + y_merge[i]*A[1][2] + z_merge[i]*A[2][2];
x = x /0.52917721067;
y = y /0.52917721067;
z = z /0.52917721067;
fprintf(fp, "%5d %12.6f ", Eleme2AtomicNumber(a.elem[i]), 0.0);
fprintf(fp, "%12.6f %12.6f %12.6f\n", x, y, z);
}
for (i=0; i<NX; i++){
for (j=0; j<NY; j++){
for (k=0; k<NZ; k++){
fprintf(fp, " %13.5E", rho[k][j][i]);
if (cnt%6==5) fprintf(fp, "\n");
cnt++;
}
}
}
}
void EstimateCube(PARAM *param){
int i, j, k;
int ix, iy, iz;
FILE *f;
HEAD head;
ATOMS a;
double ***rho;
double ***vel;
double ***force;
double ***jump;
double vel_norm, force_norm;
double da, db, dc;
/* メモリ確保 */
rho = malloc(sizeof(double**) * NZ);
vel = malloc(sizeof(double**) * NZ);
force= malloc(sizeof(double**) * NZ);
jump = malloc(sizeof(double**) * NZ);
for (i=0; i<NZ; i++){
rho[i] = malloc(sizeof(double*) * NY);
vel[i] = malloc(sizeof(double*) * NY);
force[i] = malloc(sizeof(double*) * NY);
jump[i] = malloc(sizeof(double*) * NY);
}
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
rho[i][j] = malloc(sizeof(double*) * NX);
vel[i][j] = malloc(sizeof(double*) * NX);
force[i][j] = malloc(sizeof(double*) * NX);
jump[i][j] = malloc(sizeof(double*) * NX);
}
}
/* 初期化 */
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
for (k=0; k<NX; k++){
rho[i][j][k] = 0.0;
vel[i][j][k] = 0.0;
force[i][j][k] = 0.0;
jump[i][j][k] = 0.0;
}
}
}
/* エラーのチェック */
if (ArgCheckInputOutput(param) != 0) ErrorCube();
SetAtomsSteps(param);
/* 1: A原子のみを指定している */
if (CheckArgAtomSelect(param) != 1) ErrorCube();
/* 原子数を与えての構造体のメモリ確保 */
Allocate(&a, param->atoms);
/* ファイルオープン */
f = fopen(param->infile, "r");
/* ステップ毎にデータを取得する */
da = 1.0/(double)NX;
db = 1.0/(double)NY;
dc = 1.0/(double)NZ;
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
a.x[j] = a.x[j] - floor(a.x[j]);
a.y[j] = a.y[j] - floor(a.y[j]);
a.z[j] = a.z[j] - floor(a.z[j]);
ix = (int)floor(a.x[j]/da);
iy = (int)floor(a.y[j]/db);
iz = (int)floor(a.z[j]/dc);
vel_norm = sqrt(a.vx[j]*a.vx[j] + a.vy[j]*a.vy[j] + a.vz[j]*a.vz[j]);
force_norm = sqrt(a.fx[j]*a.fx[j] + a.fy[j]*a.fy[j] + a.fz[j]*a.fz[j]);
rho[iz][iy][ix] = rho[iz][iy][ix] + 1.0;
vel[iz][iy][ix] = rho[iz][iy][ix] + vel_norm;
force[iz][iy][ix] = rho[iz][iy][ix] + force_norm;
}
}
fclose(f);
/* 訪れた回数で規格化 */
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
for (k=0; k<NX; k++){
if (rho[i][j][k] == 0) continue;
/* 訪れた回数で規格化 */
vel[i][j][k] = vel[i][j][k]/rho[i][j][k];
force[i][j][k] = force[i][j][k]/rho[i][j][k];
}
}
}
if (CUBE_TYPE == 1) OutputCube(param, rho);
if (CUBE_TYPE == 2) OutputCube(param, vel);
if (CUBE_TYPE == 3) OutputCube(param, force);
}
+155
View File
@@ -0,0 +1,155 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m cube_jump */
/* lammpstrjから指定したjump距離のグリッドデータ(cubeファイル)を作成する。 */
/* cubeファイルは、VESTAやVMDでisosurfaceやvolumes urfaceで可視化できる。 */
/* cubeファイルは、原子座標は全ステップの平均座標としている。 */
/* jumpを評価するステップはtauで与える */
/* x, y, zのvexcel分割数はnx, ny, nzで与える */
void ErrorCube_Jump(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for cube analysis:\n");
printf("--nx numebr boxcel on X [100]\n");
printf("--ny numebr boxcel on X [100]\n");
printf("--nz numebr boxcel on X [100]\n");
printf("--tau jump period [1]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m cube -x Li --cube_type 2 -i hoge.lammpstrj -o hoge.msd\n");
exit(0);
}
void EstimateCube_Jump(PARAM *param){
int i, j, k;
int ix, iy, iz;
FILE *f;
HEAD *head;
ATOMS a;
int ***rho;
double ***jump;
double da, db, dc;
double dx, dy, dz, r;
double **xx, **yy, **zz;
double **fx, **fy, **fz;
/* メモリ確保 */
rho = malloc(sizeof(int**) * NZ);
jump = malloc(sizeof(double**) * NZ);
for (i=0; i<NZ; i++){
rho[i] = malloc(sizeof(int*) * NY);
jump[i] = malloc(sizeof(double*) * NY);
}
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
rho[i][j] = malloc(sizeof(int*) * NX);
jump[i][j] = malloc(sizeof(double*) * NX);
}
}
/* 初期化 */
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
for (k=0; k<NX; k++){
rho[i][j][k] = 0;
jump[i][j][k] = 0.0;
}
}
}
/* -1の場合は全ステップでMSDを計算する */
if (TAU == -1) TAU = 1;
/* エラーのチェック */
if (ArgCheckInputOutput(param) != 0) ErrorCube_Jump();
SetAtomsSteps(param);
/* 選択元素が変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1); /* 現在のステップ */
/* steps * atoms * (x, y, z)のメモリ取得 */
xx = malloc(sizeof(double*) * param->steps);
yy = malloc(sizeof(double*) * param->steps);
zz = malloc(sizeof(double*) * param->steps);
fx = malloc(sizeof(double*) * param->steps);
fy = malloc(sizeof(double*) * param->steps);
fz = malloc(sizeof(double*) * param->steps);
for(i=0; i<param->steps; i++){
xx[i] = malloc(sizeof(double) * a.atoms);
yy[i] = malloc(sizeof(double) * a.atoms);
zz[i] = malloc(sizeof(double) * a.atoms);
fx[i] = malloc(sizeof(double) * a.atoms);
fy[i] = malloc(sizeof(double) * a.atoms);
fz[i] = malloc(sizeof(double) * a.atoms);
}
/* ヘッダ用のメモリ取得 */
head = malloc(sizeof(HEAD) * param->steps);
/* ファイルオープン */
f = fopen(param->infile, "r");
/* 分率座標を全ステップで取得する xx, yy, zz*/
printf("Loading data...\n");
for (i=0; i<param->steps; i++){
GetData(f, param, &head[i], &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
/* 分率座標 fx, fy, fz */
fx[i][j] = a.x[j] - floor(a.x[j]);
fy[i][j] = a.y[j] - floor(a.y[j]);
fz[i][j] = a.z[j] - floor(a.z[j]);
}
}
/* fx, fy, fzをunwrapする */
Unwrap(param->steps, a.atoms, fx, fy, fz);
/* fx, fy, fzから絶対座標を生成 */
for (i=0; i<param->steps; i++){
for (j=0; j<a.atoms; j++){
xx[i][j] = fx[i][j]*head[i].A[0][0] + fy[i][j]*head[i].A[1][0] + fz[i][j]*head[i].A[2][0];
yy[i][j] = fx[i][j]*head[i].A[0][1] + fy[i][j]*head[i].A[1][1] + fz[i][j]*head[i].A[2][1];
zz[i][j] = fx[i][j]*head[i].A[0][2] + fy[i][j]*head[i].A[1][2] + fz[i][j]*head[i].A[2][2];
fx[i][j] = fx[i][j] - floor(fx[i][j]);
fy[i][j] = fy[i][j] - floor(fy[i][j]);
fz[i][j] = fz[i][j] - floor(fz[i][j]);
}
}
/* 全ステップのデータを解析する */
da = 1.0/(double)NX;
db = 1.0/(double)NY;
dc = 1.0/(double)NZ;
for (i=0; i<param->steps - TAU; i++){
printf("\rCalculating step: %d/%d", i, param->steps);
fflush(stdout);
for (j=0; j<a.atoms; j++){
ix = (int)floor(fx[i][j]/da);
iy = (int)floor(fy[i][j]/db);
iz = (int)floor(fz[i][j]/dc);
dx = xx[i+TAU][j] - xx[i][j];
dy = yy[i+TAU][j] - yy[i][j];
dz = zz[i+TAU][j] - zz[i][j];
r = sqrt(dx*dx + dy*dy + dz*dz);
rho[iz][iy][ix]++;
jump[iz][iy][ix] = jump[iz][iy][ix] + r;
}
}
printf("\n");
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
for (k=0; k<NX; k++){
/* 訪れた回数で規格化 */
if (rho[i][j][k] != 0){
jump[i][j][k] = jump[i][j][k]/(double)rho[i][j][k];
}
}
}
}
fclose(f);
CUBE_TYPE = 4;
OutputCube(param, jump);
}
+99
View File
@@ -0,0 +1,99 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m cube_radius */
/* lammpstrjから指定した原子を有限のサイズを考慮してグリッドデータ(cubeファイル)を作成する。 */
/* cubeファイルは、VESTAやVMDでisosurfaceやvolumes urfaceで可視化できる。 */
/* cubeファイル中での指定以外の原子座標は、全ステップの平均値とする */
/* 基本的に1種類の原子によるグリッドデータのみを想定している */
void ErrorCube_Radius(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for cube analysis:\n");
printf("--nx numebr boxcel on X [100]\n");
printf("--ny numebr boxcel on X [100]\n");
printf("--nz numebr boxcel on X [100]\n");
printf("--radius atomic radius [0.7]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m cube_radius -x Li --radius 0.7 -i hoge.lammpstrj -o hoge.cube\n");
exit(0);
}
void EstimateCube_Radius(PARAM *param){
int i, j, k;
int ix, iy, iz;
FILE *f;
HEAD head;
ATOMS a;
double ***rho;
double da, db, dc;
double r, x, y, z, xp, yp, zp;
double dx, dy, dz;
/* メモリ確保 */
rho = malloc(sizeof(double**) * NZ);
for (i=0; i<NZ; i++) rho[i] = malloc(sizeof(double*) * NY);
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++) rho[i][j] = malloc(sizeof(double*) * NX);
}
/* 初期化 */
for (i=0; i<NZ; i++){
for (j=0; j<NY; j++){
for (k=0; k<NX; k++){
rho[i][j][k] = 0.0;
}
}
}
/* エラーのチェック */
if (ArgCheckInputOutput(param) != 0) ErrorCube_Radius();
SetAtomsSteps(param);
/* 1: A原子以外も指定している */
if (CheckArgAtomSelect(param) != 1) ErrorCube_Radius();
/* 原子数を与えての構造体のメモリ確保 */
Allocate(&a, param->atoms);
/* ファイルオープン */
f = fopen(param->infile, "r");
/* ステップ毎にデータを取得する */
da = 1.0/(double)NX;
db = 1.0/(double)NY;
dc = 1.0/(double)NZ;
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
/* voxelの中心点と原子の距離を探すloop */
for (ix=0; ix<NX; ix++){
for (iy=0; iy<NY; iy++){
for (iz=0; iz<NZ; iz++){
xp = ix*da + 0.5*da;
yp = iy*db + 0.5*db;
zp = iz*dc + 0.5*dc;
dx = a.x[j] - xp;
dy = a.y[j] - yp;
dz = a.z[j] - zp;
dx = dx - rint(dx);
dy = dy - rint(dy);
dz = dz - rint(dz);
/* 絶対座標に変換 */
x = dx*head.A[0][0] + dy*head.A[1][0] + dz*head.A[2][0];
y = dx*head.A[0][1] + dy*head.A[1][1] + dz*head.A[2][1];
z = dx*head.A[0][2] + dy*head.A[1][2] + dz*head.A[2][2];
r = sqrt(x*x + y*y + z*z);
if (r < RADIUS) rho[iz][iy][ix] += 1.0;
}
}
}
}
printf("step: %d\r", i);
fflush(stdout);
}
printf("\n");
fclose(f);
OutputCube(param, rho);
}
+22
View File
@@ -0,0 +1,22 @@
#include "dump2analysis.h"
int Eleme2AtomicNumber(char *elem){
int atomic_num = 0;
if (strcmp(elem, "H")==0) atomic_num = 1;
if (strcmp(elem, "Li")==0) atomic_num = 3;
if (strcmp(elem, "B")==0) atomic_num = 5;
if (strcmp(elem, "C")==0) atomic_num = 6;
if (strcmp(elem, "N")==0) atomic_num = 7;
if (strcmp(elem, "O")==0) atomic_num = 8;
if (strcmp(elem, "Na")==0) atomic_num = 11;
if (strcmp(elem, "Mg")==0) atomic_num = 12;
if (strcmp(elem, "Al")==0) atomic_num = 13;
if (strcmp(elem, "Si")==0) atomic_num = 14;
if (strcmp(elem, "P")==0) atomic_num = 15;
if (strcmp(elem, "S")==0) atomic_num = 16;
if (strcmp(elem, "Cl")==0) atomic_num = 17;
if (strcmp(elem, "Ca")==0) atomic_num = 20;
if (strcmp(elem, "Ho")==0) atomic_num = 67;
return atomic_num;
}
+69
View File
@@ -0,0 +1,69 @@
#include "dump2analysis.h"
double DT = 0.0;
int TAU = -1;
int TAU_SHIFT = 1;
double DR = 0.01;
double RMAX = 20.005;
double RMIN = 0.005;
double RCUT = 2.3;
double RCUT_AB = 2.3;
double RCUT_BC = 2.3;
double RADIUS = 0.68; /* Ionic Radius of Li+ */
double DA = 0.1;
int NX = 100;
int NY = 100;
int NZ = 100;
int CUBE_TYPE = 1;
void InitParam(PARAM *param){
param->atoms = 0;
param->steps = 0;
strcpy(param->infile, "");
strcpy(param->outfile, "");
strcpy(param->mode, "");
param->Aid = NULL;
param->Bid = NULL;
param->Cid = NULL;
strcpy(param->Aelem, "");
strcpy(param->Belem, "");
strcpy(param->Celem, "");
param->Atype = -1;
param->Btype = -1;
param->Ctype = -1;
}
void SetAtomsSteps(PARAM *param){
char buf[512];
int i;
FILE *f;
f = fopen(param->infile, "r");
printf("%s\n", param->infile);
for (i=0; i<4; i++) fgets(buf, sizeof(buf), f);
param->atoms = atoi(buf);
rewind(f);
for (i=0; fgets(buf, sizeof(buf), f) != NULL; i++);
param->steps = i/(param->atoms+9);
fclose(f);
}
int main(int argn, char** argv){
PARAM param;
InitParam(&param);
SetArgment(argn, argv, &param);
if (strcmp(param.mode, "msd") == 0) EstimateMSD(&param);
if (strcmp(param.mode, "gr") == 0) EstimateGr(&param);
if (strcmp(param.mode, "angle") == 0) EstimateAngle(&param);
if (strcmp(param.mode, "cube") == 0) EstimateCube(&param);
if (strcmp(param.mode, "cube_jump") == 0) EstimateCube_Jump(&param);
if (strcmp(param.mode, "cube_radius") == 0) EstimateCube_Radius(&param);
if (strcmp(param.mode, "vcorr") == 0) EstimateVelocityCorr(&param);
if (strcmp(param.mode, "rcorr") == 0) EstimateRotationCorr(&param);
if (strcmp(param.mode, "vanHove") == 0) EstimateVanHove(&param);
}
+87
View File
@@ -0,0 +1,87 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <getopt.h>
#include <math.h>
typedef struct{
int atoms;
int step;
double a, b, c;
double alpha, beta, gamma;
double x_low, x_hi, xy;
double y_low, y_hi, xz;
double z_low, z_hi, yz;
double A[3][3]; /* 並進行列 */
double B[3][3]; /* 並進逆行列 */
}HEAD;
typedef struct{
int atoms; /* 原子数 */
char **elem; /* 元素名 */
int *type; /* 元素type */
int *id; /* 0から始まるid */
double *x, *y, *z; /* 絶対座標 */
double *vx, *vy, *vz; /* 速度 */
double *fx, *fy, *fz; /* 速度 */
}ATOMS;
/* 引数解析用 */
typedef struct{
int atoms; /* 原子数 */
int steps; /* トータルステップ数 */
char infile[1024];
char outfile[1024];
char mode[1024]; /* grかmsd */
int *Aid; /* 原子数, id1, id2, id3... */
int *Bid; /* 原子数, id1, id2, id3... */
int *Cid; /* 原子数, id1, id2, id3... */
char Aelem[256]; /* 引数で与える中心元素名 */
char Belem[256]; /* 引数で与えるカウンター元素名 */
char Celem[256]; /* 引数で与えるカウンター元素名 */
int Atype; /* 引数で与える原子タイプ */
int Btype; /* 引数で与える原子タイプ */
int Ctype; /* 引数で与える原子タイプ */
}PARAM;
void Error();
int SetArgment(int, char**, PARAM*);
void Allocate(ATOMS*, int);
void Deallocate(ATOMS *a, int n);
void GetData(FILE *f, PARAM* para, HEAD *head, ATOMS *a, ATOMS *b, ATOMS *c);
void GetAllData(FILE *f, PARAM* p, HEAD *head, ATOMS *a);
void EstimateGr(PARAM *param);
void EstimateDistance(PARAM *param);
void EstimateAngle(PARAM *param);
int CheckArgAtomSelect(PARAM *p);
void GetDataFixID(FILE *f, PARAM* p, HEAD *head, ATOMS *a);
void EstimateMSD(PARAM *param);
void GetOneStepData(FILE *f, HEAD *head, ATOMS *a);
void SetIDfromElemTtype(PARAM *param);
void EstimateCube(PARAM *param);
int Eleme2AtomicNumber(char *elem);
void SetAtomsSteps(PARAM *param);
void ArgCheck(PARAM *arg);
int ArgCheckInputOutput(PARAM *arg);
void EstimateVelocityCorr(PARAM *param);
void EstimateCube_Jump(PARAM *param);
void EstimateCube_Radius(PARAM *param);
void OutputCube(PARAM *p, double ***rho);
int* SetIDfromMolecules(int *Aid, int n);
void EstimateRotationCorr(PARAM *param);
void EstimateVanHove(PARAM *param);
void Unwrap(int steps, int atoms, double **x, double **y, double **z);
extern double DT;
extern int TAU;
extern int TAU_SHIFT;
extern double DR;
extern double RMAX;
extern double RMIN;
extern double RCUT;
extern double RCUT_AB;
extern double RCUT_BC;
extern double DA;
extern int NX, NY, NZ, CUBE_TYPE;
extern double RADIUS;
+92
View File
@@ -0,0 +1,92 @@
#include "dump2analysis.h"
void ArgCheck(PARAM *arg){
if (strcmp(arg->mode, "") == 0){
printf("-m mode is required.\n");
Error();
}
}
int ArgCheckInputOutput(PARAM *arg){
int flag = 0;
if (strcmp(arg->infile, "") == 0){
printf("-i infile is required.\n");
flag = flag + 1;
}
if (strcmp(arg->outfile, "") == 0){
printf("-o outfile is required.\n");
flag = flag + 2;
}
return flag;
}
void Error(){
printf("Usage: dump2analysis hoge options hoge.lammpstrj\n");
printf("Options:\n");
printf(" -h --help show this help message\n");
printf(" -m --mode=str mode gr or msd...\n");
printf("--------------------------------------------------------\n");
printf(" -a --Aid=str Atom \"a\" ids 1,2... must be > 0\n");
printf(" -b --Bid=str Atom \"b\" ids 1,2... must be > 0\n");
printf(" -c --Cid=str Atom \"c\" ids 1,2... must be > 0\n");
printf("--------------------------------------------------------\n");
printf(" -x --Aelem=str Atom \"a\" element\n");
printf(" -y --Belem=str Atom \"b\" element\n");
printf(" -z --Celem=str Atom \"c\" element\n");
printf("--------------------------------------------------------\n");
printf(" -s --Atype=%%d Atom \"a\" type number\n");
printf(" -t --Btype=%%d Atom \"b\" type number\n");
printf(" -u --Ctype=%%d Atom \"c\" type number\n");
printf("--------------------------------------------------------\n");
printf(" -i --in=str Input file name\n");
printf(" -o --out=str Output file name\n");
printf("--------------------------------------------------------\n");
printf("-m --mode=str\n");
printf(" -m gr calculate radial distribution function\n");
printf(" -m msd calculate mean square displacement\n");
printf(" -m angle calculate angle distribution\n");
printf(" -m cube density map analysis (cube file)\n");
printf(" -m cube_radius density map analysis with finite radius (cube file)\n");
printf(" -m cube_jump jump map analysis (cube file)\n");
printf(" -m vcorr velocity correlation function\n");
printf(" -m rcorr rotational correlation function\n");
printf(" -m vanHove caclulate van Hove function\n");
exit(1);
}
int CheckArgAtomSelect(PARAM *p){
int n=0;
/* Aid, Aelem, Atypeを2つ以上指定している */
if ((p->Aid[0] != 0 && strcmp(p->Aelem, "") != 0 && p->Atype != -1) ||
(p->Aid[0] != 0 && strcmp(p->Aelem, "") == 0 && p->Atype != -1) ||
(p->Aid[0] != 0 && strcmp(p->Aelem, "") != 0 && p->Atype == -1) ||
(p->Aid[0] == 0 && strcmp(p->Aelem, "") != 0 && p->Atype != -1))
return -1;
/* Bid, Belem, Btypeを2つ以上指定している */
if ((p->Bid[0] != 0 && strcmp(p->Belem, "") != 0 && p->Btype != -1) ||
(p->Bid[0] != 0 && strcmp(p->Belem, "") == 0 && p->Btype != -1) ||
(p->Bid[0] != 0 && strcmp(p->Belem, "") != 0 && p->Btype == -1) ||
(p->Bid[0] == 0 && strcmp(p->Belem, "") != 0 && p->Btype != -1))
return -1;
/* Cid, Celem, Ctypeを2つ以上指定している */
if ((p->Cid[0] != 0 && strcmp(p->Celem, "") != 0 && p->Ctype != -1) ||
(p->Cid[0] != 0 && strcmp(p->Celem, "") == 0 && p->Ctype != -1) ||
(p->Cid[0] != 0 && strcmp(p->Celem, "") != 0 && p->Ctype == -1) ||
(p->Cid[0] == 0 && strcmp(p->Celem, "") != 0 && p->Ctype != -1))
return -1;
/* Aが指定されている */
if (p->Aid[0] != 0 || strcmp(p->Aelem, "") != 0 || p->Atype != -1)
n = n + 1;
/* Bが指定されている */
if (p->Bid[0] != 0 || strcmp(p->Belem, "") != 0 || p->Btype != -1)
n = n + 2;
/* Cが指定されている */
if (p->Cid[0] != 0 || strcmp(p->Celem, "") != 0 || p->Ctype != -1)
n = n + 4;
return n;
}
+930
View File
@@ -0,0 +1,930 @@
ITEM: TIMESTEP
149000
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.948773 1.979181 2.543775 3.635706e-03 -6.278792e-03 -1.662833e-03 -7.717817e+06 -5.278387e+06 3.883219e+06
2 1 Li 0.235253 10.082629 7.927619 -8.429711e-03 5.151095e-03 -2.670928e-03 -1.900265e+07 7.748435e+06 -3.549608e+06
3 1 Li 4.910758 2.206389 9.960599 3.899890e-03 -9.225567e-03 -4.738247e-03 9.939809e+05 -7.528867e+06 -1.649192e+06
4 1 Li 4.611384 2.442162 1.451808 -1.689641e-03 -3.602496e-03 2.746873e-03 5.795633e+06 -3.116615e+06 6.045812e+06
5 1 Li 8.052542 3.998205 9.618816 4.482335e-03 2.673934e-03 -2.421202e-03 4.747512e+06 7.856137e+06 -2.571484e+06
6 1 Li 10.180814 8.222176 3.244717 -4.360376e-04 -1.214240e-02 1.991126e-03 6.956559e+06 9.231814e+05 -2.734322e+06
7 1 Li 3.337455 5.830994 1.788098 -1.692522e-03 8.892809e-03 -3.526441e-03 -1.741990e+06 -1.090562e+06 1.655764e+06
8 1 Li 10.811047 4.067167 7.417639 -6.559194e-03 -1.302249e-03 4.720236e-03 -9.486647e+05 -2.832428e+06 -9.152719e+05
9 1 Li 1.224535 5.107511 9.887569 -5.680548e-03 5.423417e-03 -1.416143e-03 6.141086e+06 -3.040265e+06 1.161468e+05
10 1 Li 9.875782 10.183349 9.641676 -1.622258e-04 8.114432e-04 -1.050477e-02 -3.456617e+06 -1.261056e+07 -7.841780e+06
11 1 Li 7.115374 2.914836 5.625275 6.996382e-03 5.137885e-03 -1.122399e-03 3.839228e+06 1.382137e+05 -6.109137e+06
12 1 Li 0.959947 1.487192 8.187758 -1.492193e-03 1.812305e-03 -6.488789e-03 -1.200474e+06 3.560162e+06 -8.711157e+06
13 1 Li 0.186802 -0.222848 2.389619 5.271849e-03 -6.542888e-03 1.043239e-02 -2.674724e+06 2.652501e+06 1.753279e+06
14 1 Li -3.988214 0.770027 10.613345 4.293464e-03 -6.829562e-03 -7.501302e-03 4.767152e+06 6.852809e+05 5.490088e+06
15 2 P 11.330774 11.254987 5.064886 -6.772053e-03 -7.971343e-04 -6.671114e-04 2.069805e+07 2.506650e+07 1.571626e+07
16 2 P 1.762253 4.582581 6.087149 -2.239041e-03 -4.085566e-03 3.615313e-03 -7.817062e+06 -1.208439e+07 -2.957959e+06
17 2 P 5.002814 -0.288789 3.248160 -3.303619e-03 2.285908e-03 -4.844883e-05 6.919035e+06 4.475503e+06 -2.139470e+07
18 2 P 4.805745 4.597085 7.945143 -2.333555e-03 -4.590521e-03 1.170945e-03 -3.043812e+06 2.289064e+07 5.430135e+06
19 2 P 10.769334 1.743233 0.746405 -8.305101e-04 -1.346826e-03 2.843883e-04 6.876917e+06 -1.102445e+07 9.473150e+06
20 2 P -1.413132 2.659284 10.654765 6.244413e-03 -5.396458e-04 1.307457e-03 -1.583215e+07 6.648419e+06 -1.228715e+07
21 3 S 8.588510 0.159566 6.783550 -1.637189e-03 4.047143e-03 1.618935e-03 1.342060e+06 -9.441468e+05 -2.025169e+06
22 3 S 1.331819 3.618157 4.380950 1.498040e-04 -2.096481e-03 -3.430858e-03 2.493945e+06 -4.580081e+06 7.945717e+06
23 3 S 12.168588 2.114103 2.267317 -2.093969e-03 -1.312891e-03 -1.653185e-03 -1.358730e+07 -1.134229e+07 3.085450e+06
24 3 S -2.785964 2.512928 9.128225 4.268769e-03 2.303496e-03 1.220593e-03 -5.934948e+06 -6.251172e+06 -4.825318e+06
25 3 S 9.139216 2.991583 0.881090 6.723821e-04 -3.735196e-03 1.496818e-03 1.068180e+07 1.507830e+06 -4.353905e+06
26 3 S 0.120982 1.381114 10.324116 2.858490e-03 2.445568e-03 -4.457671e-03 8.448190e+06 -6.678383e+06 1.178171e+07
27 3 S 9.569369 3.294989 5.485893 2.595737e-03 2.720817e-03 -6.371785e-03 2.653534e+06 -1.155848e+06 -1.368017e+06
28 3 S 0.009475 0.542808 5.828392 -5.290352e-04 3.051272e-03 -1.636437e-03 -9.571281e+05 3.228081e+07 3.467589e+06
29 3 S 9.071332 -0.256198 3.479266 -2.502125e-03 3.161112e-03 5.921018e-04 -4.335310e+06 -6.058532e+06 7.864924e+05
30 3 S 0.525362 4.012694 7.689616 -3.247588e-03 -5.180153e-04 -4.028769e-03 1.437222e+07 7.289567e+06 -6.717557e+06
31 3 S 6.082985 0.315488 1.567650 2.066109e-03 -2.290033e-03 5.045802e-04 -3.035094e+06 -8.292807e+06 6.143146e+06
32 3 S 3.883659 4.367117 9.712968 -4.691332e-04 1.194306e-03 -1.915977e-03 -6.004677e+06 -3.604390e+06 6.718578e+05
33 3 S 6.328487 3.623316 3.453879 -4.132248e-03 1.885264e-03 1.586693e-03 -6.188867e+06 -1.082257e+07 -7.075811e+06
34 3 S 3.275875 0.680183 7.962493 -5.551216e-03 7.001778e-03 -2.062679e-03 -5.397141e+06 1.255319e+07 -3.067180e+06
35 3 S 12.135742 5.506589 0.431658 9.855744e-04 -6.240404e-04 -1.518768e-03 6.570918e+06 1.043483e+07 -2.837755e+06
36 3 S -2.782024 -1.315745 10.315950 2.162306e-03 -1.690208e-03 4.223248e-04 5.324879e+06 -1.077918e+07 8.266310e+06
37 3 S 6.653005 0.422872 10.301396 -1.005848e-03 3.918684e-03 -1.908429e-03 2.122050e+06 2.044984e+07 -2.213615e+07
38 3 S 2.664295 3.792922 1.023148 5.264594e-04 -4.134035e-03 3.687750e-03 -4.088405e+06 -4.917121e+06 1.556289e+07
39 3 S 3.517127 1.060957 3.307235 -3.961288e-04 1.546135e-03 -8.401220e-04 -1.467897e+07 -8.596292e+06 7.265110e+06
40 3 S 6.437192 3.444077 7.749513 -4.684467e-03 -4.401345e-03 2.903532e-03 5.664159e+06 -6.858920e+06 1.399612e+07
41 3 S 6.051302 0.340601 5.039706 -4.459787e-03 -2.205602e-03 1.100216e-03 -8.700373e+06 -9.283552e+06 -6.027721e+06
42 3 S 3.752919 3.737674 6.292302 -1.958598e-03 -1.381564e-03 2.722571e-03 -1.458861e+07 1.281341e+07 -2.881223e+06
43 1 Li 13.083917 4.720013 2.476035 1.507696e-02 -2.493398e-03 1.594849e-04 -2.767951e+06 -2.332967e+06 2.631654e+06
44 1 Li -0.418144 6.559150 7.223090 1.050975e-03 5.736114e-03 -4.960709e-03 8.693328e+06 3.814535e+05 5.086835e+05
45 1 Li 11.696364 10.771757 1.237013 4.261825e-03 9.411604e-04 -9.802715e-03 3.345648e+06 8.302988e+06 -8.331901e+05
46 1 Li 10.035676 5.536347 1.441646 -5.199148e-03 -1.410812e-02 2.332980e-03 -1.003745e+07 -5.611780e+06 2.700935e+06
47 1 Li -0.224454 -1.316903 10.141691 6.721492e-03 7.777641e-03 -3.612413e-03 2.968059e+06 1.870888e+06 -1.378042e+06
48 1 Li 8.627592 9.136208 5.513859 1.320413e-03 1.362462e-02 -1.763485e-04 1.549225e+05 -2.277818e+05 8.999838e+06
49 1 Li 10.898714 1.211148 4.504907 -2.758268e-03 -5.838271e-03 3.717523e-03 4.368286e+06 5.604331e+06 -2.064742e+05
50 1 Li 2.837805 7.431737 8.238646 -3.950002e-03 -9.819989e-03 -2.656924e-03 6.275025e+06 4.143585e+06 -7.558937e+06
51 1 Li 6.571449 8.400346 1.555791 1.789188e-03 -2.045324e-03 -1.150895e-03 4.468265e+05 1.293122e+06 2.526012e+06
52 1 Li 6.936328 7.744355 9.053966 5.661328e-03 -6.002564e-03 -7.923682e-03 -1.182485e+07 4.818622e+06 -2.778711e+06
53 1 Li 2.444818 1.226148 5.537768 4.716371e-03 8.022330e-03 1.802241e-03 4.152757e+06 -7.458808e+05 -3.801150e+06
54 1 Li 4.092243 6.771761 5.343582 4.897340e-03 3.900257e-03 -1.183781e-02 -7.269068e+05 2.768256e+06 1.098265e+07
55 1 Li 1.034629 9.400959 4.150716 7.966530e-03 6.516586e-03 2.708930e-03 -3.243808e+06 -1.024318e+06 -5.908699e+06
56 1 Li 2.663190 8.271684 0.452709 -1.903635e-03 2.963359e-03 3.564173e-03 2.449126e+06 5.808129e+06 -1.148931e+07
57 2 P 9.762883 5.317406 5.224486 5.067267e-03 -2.491982e-03 2.698264e-04 -1.685569e+07 -2.203690e+06 -1.290388e+07
58 2 P 3.640332 10.521638 6.045495 5.011203e-03 -2.553753e-03 1.656075e-03 2.383227e+07 -1.783986e+07 -1.534277e+06
59 2 P 6.704903 5.597373 3.209275 -1.724678e-03 -2.240290e-03 4.067219e-03 1.514020e+07 -2.057581e+07 1.068371e+05
60 2 P 6.543124 10.682015 8.172440 -1.942331e-03 -1.700667e-04 6.417891e-03 -8.478111e+06 -4.055022e+07 -6.607640e+06
61 2 P 12.604624 7.564918 0.649314 -2.898277e-04 1.833269e-03 2.590158e-03 1.750901e+07 -1.639020e+07 -1.694220e+07
62 2 P 0.380532 8.634672 10.568617 -3.952310e-03 1.477146e-03 -1.827129e-05 -1.243286e+07 -1.664931e+07 -2.284720e+06
63 3 S 10.176445 6.206212 6.981357 -8.851792e-04 3.317534e-03 2.645974e-04 -9.040344e+06 7.257742e+05 1.690818e+06
64 3 S 3.359722 9.675008 4.244677 2.819385e-03 -5.211573e-03 9.137539e-04 -1.393665e+07 -8.856123e+06 -6.130613e+06
65 3 S 14.016165 7.690775 2.143237 6.804381e-03 -1.370884e-03 1.071386e-03 4.408530e+06 -4.363731e+06 1.494971e+07
66 3 S -0.992094 8.175509 8.975624 1.887073e-03 1.380503e-03 -2.412830e-03 1.541253e+07 1.222067e+07 2.392984e+07
67 3 S 10.939092 8.584914 0.924924 2.018102e-03 -1.802613e-03 3.102015e-03 -2.461465e+07 9.342497e+06 1.214044e+07
68 3 S 2.069208 7.363230 10.477034 1.411143e-03 -8.281716e-04 -4.984810e-03 -1.259160e+07 1.188446e+07 -2.367069e+06
69 3 S 11.227996 9.283907 5.322317 3.528360e-03 -9.143466e-04 -6.384518e-03 1.616558e+06 -2.476397e+07 -3.868775e+06
70 3 S 1.722489 6.609230 5.901208 3.152771e-03 3.830024e-04 3.897227e-03 1.426868e+06 2.486738e+06 9.854398e+06
71 3 S 10.928936 5.919750 3.697525 7.711976e-03 8.304753e-03 -7.946829e-04 3.934167e+06 -4.750605e+05 -3.143984e+06
72 3 S 2.569137 9.925411 7.640327 -1.822310e-03 -4.017813e-03 1.790377e-03 6.958302e+06 -1.077232e+07 2.450887e+06
73 3 S 7.628027 6.145520 1.544061 -1.347722e-03 4.272201e-03 1.261689e-03 1.494093e+07 4.977017e+06 -1.855420e+07
74 3 S 5.586860 9.896571 9.799541 -5.122887e-03 -1.479480e-04 -2.417037e-03 3.978008e+06 1.048801e+07 -6.609133e+06
75 3 S 8.208032 9.602035 3.275045 1.231009e-03 1.131484e-03 -2.691924e-03 -4.435875e+06 2.340962e+07 -2.055780e+06
76 3 S 5.105942 6.626332 7.569601 -3.911121e-03 4.917309e-03 -3.386188e-03 -5.092903e+06 -1.105730e+07 -1.579911e+06
77 3 S 13.944659 11.664462 0.523684 3.350287e-03 6.229909e-04 1.201772e-03 2.838763e+06 9.620903e+06 9.816948e+06
78 3 S -0.868829 4.616289 10.889194 1.637274e-03 1.585463e-04 5.245704e-03 3.840709e+06 5.904997e+06 3.027589e+06
79 3 S 8.458643 6.517075 10.238413 -4.572753e-03 -4.343713e-03 -5.445297e-04 1.042403e+07 -1.607811e+07 6.998764e+06
80 3 S 4.673270 9.921633 1.181862 -2.110355e-03 -1.196974e-03 3.809956e-03 8.997454e+05 -1.416743e+06 -2.249708e+07
81 3 S 5.107239 6.763729 3.334240 5.470515e-03 -2.817061e-03 -6.973508e-04 -1.936993e+07 1.839210e+07 -2.376702e+06
82 3 S 8.170247 9.470605 7.850741 7.333751e-05 1.111364e-03 2.651812e-03 1.648830e+07 4.467519e+06 7.771479e+06
83 3 S 7.735713 6.174107 4.953929 -3.105453e-03 5.450519e-03 3.587516e-03 1.445132e+07 1.125858e+07 1.967504e+07
84 3 S 5.662967 9.800087 6.331511 -4.122434e-03 -3.033165e-03 -1.635491e-03 -1.198077e+07 2.056224e+07 8.149310e+06
ITEM: TIMESTEP
149001
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.954601 1.966646 2.540990 2.640161e-03 -6.870297e-03 -1.159116e-03 -8.375076e+06 -5.048389e+06 4.275140e+06
2 1 Li 0.217273 10.093515 7.922285 -1.056661e-02 6.050823e-03 -3.079458e-03 -1.701799e+07 7.560991e+06 -3.431906e+06
3 1 Li 4.917999 2.188059 9.951333 3.948010e-03 -1.000177e-02 -4.925599e-03 1.549785e+05 -6.114782e+06 -1.869625e+06
4 1 Li 4.608803 2.434950 1.457658 -9.693048e-04 -3.943664e-03 3.443091e-03 5.934581e+06 -2.838346e+06 5.689250e+06
5 1 Li 8.061589 4.004128 9.613953 5.000373e-03 3.608745e-03 -2.676932e-03 4.205616e+06 7.807585e+06 -1.868293e+06
6 1 Li 10.180552 8.199252 3.248034 3.492238e-04 -1.187256e-02 1.623881e-03 5.961272e+06 2.425684e+06 -3.142902e+06
7 1 Li 3.334223 5.847809 1.781734 -1.912076e-03 8.654049e-03 -3.273878e-03 -2.032344e+06 -2.041163e+06 2.190291e+06
8 1 Li 10.798565 4.064419 7.426473 -6.609123e-03 -1.571811e-03 4.535312e-03 -4.697273e+05 -1.735387e+06 -1.706245e+06
9 1 Li 1.214624 5.117561 9.884996 -4.885859e-03 5.024798e-03 -1.394696e-03 6.454223e+06 -3.045150e+06 1.095752e+05
10 1 Li 9.875013 10.183639 9.620939 -5.890373e-04 -6.614455e-04 -1.132645e-02 -3.598820e+06 -1.161717e+07 -6.667126e+06
11 1 Li 7.129107 2.924471 5.622466 7.379309e-03 5.136663e-03 -1.799557e-03 3.112907e+06 3.059805e+05 -5.166136e+06
12 1 Li 0.956994 1.491191 8.174535 -1.657339e-03 2.234932e-03 -7.505681e-03 -1.657693e+06 3.575876e+06 -8.651802e+06
13 1 Li 0.196373 -0.235225 2.409424 4.898509e-03 -6.126898e-03 1.059649e-02 -3.006461e+06 3.615560e+06 1.897286e+06
14 1 Li -3.979753 0.757211 10.599707 4.822503e-03 -6.689878e-03 -6.781288e-03 4.350028e+06 1.000372e+06 5.708834e+06
15 2 P 11.318521 11.254258 5.064065 -6.115233e-03 -9.087947e-05 -2.205525e-04 2.490976e+07 2.660008e+07 1.688570e+07
16 2 P 1.757763 4.574512 6.093869 -2.426221e-03 -4.338747e-03 3.444970e-03 -6.869151e+06 -8.214136e+06 -8.108581e+06
17 2 P 4.996807 -0.284275 3.247563 -3.066707e-03 2.352107e-03 -6.452142e-04 9.181911e+06 1.329359e+06 -2.255396e+07
18 2 P 4.801185 4.589004 7.947463 -2.391379e-03 -3.854956e-03 1.286009e-03 -2.157540e+06 2.938858e+07 3.518574e+06
19 2 P 10.767916 1.740405 0.747175 -5.988862e-04 -1.626099e-03 5.158559e-04 9.831217e+06 -1.008125e+07 7.686603e+06
20 2 P -1.401764 2.658296 10.656878 5.718359e-03 -3.542025e-04 1.013825e-03 -2.036118e+07 6.785189e+06 -8.811056e+06
21 3 S 8.585549 0.167211 6.786611 -1.618323e-03 3.976042e-03 1.517843e-03 -5.831733e+05 -2.777976e+06 -4.994149e+06
22 3 S 1.332099 3.614128 4.374643 2.269879e-04 -2.191322e-03 -3.155352e-03 3.448104e+06 -3.526639e+06 1.160628e+07
23 3 S 12.164261 2.111406 2.264270 -2.426325e-03 -1.608000e-03 -1.550435e-03 -1.261885e+07 -1.169527e+07 4.051384e+06
24 3 S -2.778007 2.517033 9.130409 4.086071e-03 2.118711e-03 1.095892e-03 -6.203429e+06 -6.866668e+06 -4.169684e+06
25 3 S 9.140682 2.984504 0.883764 9.250395e-04 -3.659551e-03 1.369219e-03 8.858855e+06 2.692677e+06 -4.743573e+06
26 3 S 0.126606 1.385600 10.315997 3.084298e-03 2.241703e-03 -4.117807e-03 9.950793e+06 -7.832688e+06 1.225460e+07
27 3 S 9.574347 3.300177 5.473838 2.654050e-03 2.637959e-03 -6.361734e-03 2.874608e+06 -4.013766e+06 -5.311985e+05
28 3 S 0.008515 0.549431 5.825428 -5.390556e-04 3.795016e-03 -1.532115e-03 -3.015684e+04 2.569213e+07 3.797851e+06
29 3 S 9.066572 -0.250323 3.480452 -2.610801e-03 2.981867e-03 6.165209e-04 -4.990571e+06 -6.279773e+06 1.320429e+06
30 3 S 0.519559 4.012029 7.681854 -2.872058e-03 -3.374408e-04 -4.152536e-03 1.289325e+07 6.258104e+06 -4.404598e+06
31 3 S 6.086761 0.310894 1.568717 1.964456e-03 -2.480021e-03 6.659750e-04 -3.846067e+06 -7.146070e+06 6.366765e+06
32 3 S 3.882637 4.369334 9.709381 -6.377573e-04 1.079886e-03 -1.852600e-03 -7.039127e+06 -4.613505e+06 3.349942e+06
33 3 S 6.320585 3.626672 3.456743 -4.261419e-03 1.547767e-03 1.396986e-03 -5.384209e+06 -1.410071e+07 -6.719356e+06
34 3 S 3.265405 0.693904 7.958632 -5.664356e-03 7.196643e-03 -2.117052e-03 -5.544608e+06 5.243388e+06 -1.941569e+06
35 3 S 12.137744 5.505674 0.428707 1.151503e-03 -3.345172e-04 -1.565214e-03 6.486359e+06 1.136594e+07 -1.340629e+06
36 3 S -2.777848 -1.319268 10.316920 2.287703e-03 -1.948186e-03 6.379071e-04 5.135568e+06 -9.590560e+06 8.339194e+06
37 3 S 6.651233 0.430862 10.297292 -9.522816e-04 4.406063e-03 -2.456116e-03 1.541403e+06 1.833602e+07 -2.040457e+07
38 3 S 2.665124 3.784890 1.030451 4.528944e-04 -4.215317e-03 4.020618e-03 -1.305512e+06 -3.010189e+06 1.135725e+07
39 3 S 3.516041 1.063696 3.305848 -7.944857e-04 1.324062e-03 -6.452764e-04 -1.584156e+07 -7.683896e+06 7.232769e+06
40 3 S 6.428424 3.435603 7.755324 -4.487323e-03 -4.568988e-03 3.237404e-03 7.397468e+06 -7.753793e+06 1.266481e+07
41 3 S 6.042633 0.336263 5.041636 -4.671847e-03 -2.422423e-03 9.453254e-04 -9.322533e+06 -8.164899e+06 -5.318382e+06
42 3 S 3.748854 3.735370 6.297373 -2.333522e-03 -1.055730e-03 2.613251e-03 -1.480173e+07 1.144428e+07 -4.308196e+06
43 1 Li 13.111985 4.714727 2.476521 1.460207e-02 -2.713850e-03 3.841329e-04 -3.699770e+06 -1.531626e+06 1.093052e+06
44 1 Li -0.415077 6.570117 7.213832 2.074656e-03 5.737199e-03 -4.888131e-03 8.290617e+06 1.559867e+05 2.406013e+05
45 1 Li 11.704754 10.774587 1.218392 4.622109e-03 1.917091e-03 -9.819716e-03 2.984550e+06 7.883338e+06 -3.354591e+05
46 1 Li 10.024437 5.509047 1.446242 -6.304384e-03 -1.470161e-02 2.642062e-03 -8.669855e+06 -5.455787e+06 2.609345e+06
47 1 Li -0.211297 -1.302023 10.134754 6.959428e-03 7.947062e-03 -3.767077e-03 1.569114e+06 1.628357e+06 -1.499939e+06
48 1 Li 8.630382 9.161955 5.514697 1.338748e-03 1.351523e-02 8.923095e-04 2.666945e+05 -3.438913e+05 8.615030e+06
49 1 Li 10.893922 1.200717 4.511860 -2.193075e-03 -5.127897e-03 3.666164e-03 4.705307e+06 5.586657e+06 -3.042194e+05
50 1 Li 2.830859 7.413740 8.232679 -3.164778e-03 -9.236535e-03 -3.581913e-03 6.321418e+06 4.592098e+06 -7.940030e+06
51 1 Li 6.574828 8.396604 1.553875 1.829401e-03 -1.856191e-03 -8.542263e-04 3.786158e+05 1.641027e+06 2.264769e+06
52 1 Li 6.945483 7.733590 9.038591 4.153147e-03 -5.402742e-03 -8.235798e-03 -1.254164e+07 4.534435e+06 -3.086291e+06
53 1 Li 2.454364 1.241132 5.540791 5.150516e-03 7.879231e-03 1.335939e-03 3.438017e+06 -8.886995e+05 -3.728639e+06
54 1 Li 4.101412 6.779574 5.322500 4.700172e-03 4.222184e-03 -1.030185e-02 -2.079030e+06 2.895113e+06 1.327910e+07
55 1 Li 1.049430 9.412991 4.155176 7.496858e-03 6.339270e-03 1.965563e-03 -3.782238e+06 -1.310565e+06 -6.109094e+06
56 1 Li 2.659966 8.277948 0.458167 -1.593179e-03 3.664369e-03 2.124329e-03 2.500136e+06 6.024006e+06 -1.194026e+07
57 2 P 9.771956 5.312534 5.224608 4.578553e-03 -2.425178e-03 -1.113500e-04 -1.707588e+07 6.092833e+06 -1.504250e+07
58 2 P 3.650348 10.516208 6.048521 5.554117e-03 -2.965282e-03 1.616747e-03 1.817425e+07 -1.349878e+07 -6.946839e+05
59 2 P 6.702012 5.592555 3.216941 -1.218562e-03 -2.750656e-03 4.014885e-03 2.140523e+07 -1.790774e+07 -2.310950e+06
60 2 P 6.539267 10.680573 8.184396 -2.134525e-03 -1.181656e-03 6.132314e-03 -6.460397e+06 -3.400695e+07 -1.181055e+07
61 2 P 12.604575 7.567926 0.653788 2.108077e-04 1.318972e-03 2.124033e-03 1.922471e+07 -2.071897e+07 -1.632873e+07
62 2 P 0.372783 8.637121 10.568562 -4.218083e-03 9.872736e-04 -7.106540e-05 -8.738377e+06 -1.881150e+07 -1.611070e+06
63 3 S 10.174622 6.212528 6.981941 -1.106347e-03 3.296271e-03 3.001685e-04 -8.186823e+06 -9.551242e+05 1.132120e+06
64 3 S 3.364590 9.664850 4.246178 2.446401e-03 -5.399485e-03 7.607620e-04 -1.331132e+07 -7.645674e+06 -5.149495e+06
65 3 S 14.029087 7.687914 2.145575 6.856104e-03 -1.473531e-03 1.442037e-03 2.382378e+06 -4.032628e+06 1.374807e+07
66 3 S -0.988134 8.178426 8.971666 2.259331e-03 1.692197e-03 -1.771400e-03 1.374991e+07 1.211026e+07 2.394418e+07
67 3 S 10.942273 8.581641 0.931056 1.341841e-03 -1.519872e-03 3.413133e-03 -2.607479e+07 1.144567e+07 1.286378e+07
68 3 S 2.071512 7.362023 10.467546 1.036144e-03 -4.988734e-04 -4.997196e-03 -1.538910e+07 1.286207e+07 -6.647386e+05
69 3 S 11.234626 9.281606 5.310128 3.543206e-03 -1.557259e-03 -6.436084e-03 9.910312e+05 -2.461394e+07 -2.732355e+06
70 3 S 1.728504 6.609883 5.908799 3.169927e-03 4.035827e-04 4.132368e-03 1.198800e+06 -7.493844e+05 9.694497e+06
71 3 S 10.943744 5.935332 3.695989 7.736886e-03 8.200055e-03 -8.284535e-04 1.194637e+06 -4.023387e+06 2.289891e+05
72 3 S 2.565798 9.917533 7.643735 -1.615622e-03 -4.257518e-03 1.808997e-03 8.028552e+06 -9.178707e+06 -2.761722e+05
73 3 S 7.625951 6.153740 1.546036 -9.511275e-04 4.350161e-03 8.054895e-04 1.472030e+07 2.755723e+06 -1.569266e+07
74 3 S 5.577280 9.896695 9.794842 -4.988398e-03 1.136394e-04 -2.540654e-03 4.129813e+06 9.388361e+06 -3.829265e+06
75 3 S 8.210256 9.604788 3.269918 1.104624e-03 1.739466e-03 -2.724202e-03 -4.680608e+06 2.339670e+07 -1.530537e+06
76 3 S 5.098516 6.635509 7.563242 -4.020535e-03 4.535056e-03 -3.398455e-03 -4.880498e+06 -1.600496e+07 -7.723225e+05
77 3 S 13.951072 11.665792 0.526185 3.400827e-03 8.496448e-04 1.435057e-03 2.414115e+06 7.917091e+06 8.467301e+06
78 3 S -0.865608 4.616609 10.899169 1.732107e-03 3.106125e-04 5.286287e-03 4.070035e+06 5.750423e+06 2.259510e+06
79 3 S 8.450181 6.508542 10.237537 -4.250374e-03 -4.726496e-03 -3.642657e-04 1.222807e+07 -1.491175e+07 6.512664e+06
80 3 S 4.669308 9.919308 1.188498 -2.063106e-03 -1.229894e-03 3.169927e-03 1.816629e+06 -1.591785e+06 -2.468031e+07
81 3 S 5.117018 6.758764 3.332805 4.864927e-03 -2.274983e-03 -7.707966e-04 -2.448081e+07 2.173235e+07 -3.508816e+06
82 3 S 8.170835 9.472766 7.855953 4.919365e-04 1.235312e-03 2.840635e-03 1.544601e+07 5.440142e+06 7.726785e+06
83 3 S 7.730353 6.184698 4.961271 -2.673840e-03 5.670798e-03 4.053901e-03 1.713607e+07 7.815874e+06 1.737305e+07
84 3 S 5.654828 9.794965 6.328621 -4.366333e-03 -2.472486e-03 -1.387286e-03 -8.339269e+06 2.089771e+07 1.007723e+07
ITEM: TIMESTEP
149002
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.958467 1.953027 2.539202 1.586336e-03 -7.432808e-03 -6.266699e-04 -8.804024e+06 -4.739067e+06 4.417803e+06
2 1 Li 0.195506 10.106131 7.916214 -1.243798e-02 6.919303e-03 -3.468440e-03 -1.463123e+07 7.210708e+06 -3.211809e+06
3 1 Li 4.925219 2.168425 9.941681 3.894475e-03 -1.061035e-02 -5.145379e-03 -7.417861e+05 -4.667888e+06 -2.120456e+06
4 1 Li 4.607594 2.427097 1.464773 -2.464807e-04 -4.250670e-03 4.088634e-03 5.912023e+06 -2.518208e+06 5.212566e+06
5 1 Li 8.071569 4.011811 9.608695 5.452218e-03 4.532944e-03 -2.849256e-03 3.618479e+06 7.700511e+06 -1.174020e+06
6 1 Li 10.181662 8.177004 3.250610 1.000216e-03 -1.142144e-02 1.212939e-03 4.801615e+06 4.125158e+06 -3.511436e+06
7 1 Li 3.330540 5.864061 1.775906 -2.166289e-03 8.314585e-03 -2.957977e-03 -2.301124e+06 -2.910067e+06 2.773595e+06
8 1 Li 10.786038 4.061291 7.434865 -6.605123e-03 -1.703597e-03 4.256662e-03 4.252824e+04 -5.573228e+05 -2.548906e+06
9 1 Li 1.206240 5.126840 9.882453 -4.065471e-03 4.633351e-03 -1.374617e-03 6.708926e+06 -3.035405e+06 1.176652e+05
10 1 Li 9.873388 10.181276 9.598772 -1.024113e-03 -1.989558e-03 -1.200288e-02 -3.618989e+06 -1.033435e+07 -5.332776e+06
11 1 Li 7.143475 2.934126 5.618484 7.674390e-03 5.162616e-03 -2.350390e-03 2.303893e+06 5.039042e+05 -4.053095e+06
12 1 Li 0.953679 1.496015 8.159403 -1.883732e-03 2.653153e-03 -8.504250e-03 -2.197473e+06 3.486780e+06 -8.373091e+06
13 1 Li 0.205212 -0.246698 2.429563 4.498341e-03 -5.612503e-03 1.078291e-02 -3.226776e+06 4.408437e+06 1.965210e+06
14 1 Li -3.970334 0.744673 10.587453 5.296328e-03 -6.523556e-03 -6.046984e-03 3.823129e+06 1.243562e+06 5.893926e+06
15 2 P 11.307632 11.254884 5.064120 -5.364812e-03 6.295747e-04 2.472175e-04 2.826838e+07 2.638239e+07 1.745900e+07
16 2 P 1.752940 4.566071 6.100134 -2.584105e-03 -4.485652e-03 3.142526e-03 -5.557185e+06 -4.046119e+06 -1.299025e+07
17 2 P 4.991301 -0.279712 3.245807 -2.778705e-03 2.335589e-03 -1.263556e-03 1.098687e+07 -1.756359e+06 -2.315760e+07
18 2 P 4.796556 4.582484 7.949959 -2.424451e-03 -2.972956e-03 1.350307e-03 -1.072802e+06 3.421882e+07 1.643983e+06
19 2 P 10.767006 1.737063 0.748331 -2.898928e-04 -1.873362e-03 6.899451e-04 1.269958e+07 -8.656189e+06 5.299925e+06
20 2 P -1.391501 2.657678 10.658530 5.088129e-03 -1.692486e-04 8.184330e-04 -2.410403e+07 6.706524e+06 -5.237452e+06
21 3 S 8.582572 0.174678 6.789405 -1.647806e-03 3.867608e-03 1.350309e-03 -2.215470e+06 -4.111212e+06 -7.240131e+06
22 3 S 1.332548 3.609939 4.368947 3.268861e-04 -2.263113e-03 -2.793551e-03 4.237559e+06 -2.697245e+06 1.486019e+07
23 3 S 12.159326 2.108147 2.261439 -2.731590e-03 -1.910130e-03 -1.422943e-03 -1.147060e+07 -1.187099e+07 5.124254e+06
24 3 S -2.770406 2.520779 9.132373 3.899221e-03 1.920222e-03 9.890243e-04 -6.623104e+06 -7.522433e+06 -3.594987e+06
25 3 S 9.142580 2.977596 0.886187 1.128067e-03 -3.559336e-03 1.236058e-03 6.928562e+06 3.680124e+06 -4.928254e+06
26 3 S 0.132689 1.389659 10.308528 3.346687e-03 2.015764e-03 -3.774244e-03 1.109387e+07 -8.604743e+06 1.249847e+07
27 3 S 9.579438 3.305136 5.461821 2.719669e-03 2.481431e-03 -6.337011e-03 3.036058e+06 -6.995211e+06 2.249566e+05
28 3 S 0.007573 0.557296 5.822676 -5.241810e-04 4.360744e-03 -1.421076e-03 9.755234e+05 1.872102e+07 4.132533e+06
29 3 S 9.061587 -0.244791 3.481697 -2.735796e-03 2.803362e-03 6.556882e-04 -5.427335e+06 -6.291796e+06 1.873769e+06
30 3 S 0.514430 4.011674 7.673915 -2.544235e-03 -1.867274e-04 -4.216145e-03 1.109391e+07 5.108516e+06 -1.874391e+06
31 3 S 6.090323 0.305968 1.570094 1.846096e-03 -2.638826e-03 8.295610e-04 -4.492548e+06 -5.806243e+06 6.322955e+06
32 3 S 3.881269 4.371311 9.705981 -8.330557e-04 9.423152e-04 -1.721521e-03 -8.054073e+06 -5.492123e+06 5.991491e+06
33 3 S 6.312450 3.629312 3.459256 -4.373584e-03 1.128338e-03 1.220631e-03 -4.626791e+06 -1.730830e+07 -6.234594e+06
34 3 S 3.254720 0.707815 7.954697 -5.784915e-03 7.203626e-03 -2.143196e-03 -5.586433e+06 -2.219695e+06 -7.805929e+05
35 3 S 12.140063 5.505329 0.425708 1.313586e-03 -2.769862e-05 -1.575402e-03 6.256231e+06 1.188866e+07 2.318704e+04
36 3 S -2.773444 -1.323256 10.318296 2.409165e-03 -2.176026e-03 8.535317e-04 4.903623e+06 -8.436920e+06 8.304700e+06
37 3 S 6.649554 0.439732 10.292202 -9.147426e-04 4.833952e-03 -2.952517e-03 9.917655e+05 1.577793e+07 -1.825652e+07
38 3 S 2.665884 3.776748 1.038279 4.519015e-04 -4.251027e-03 4.245889e-03 1.379560e+06 -1.163683e+06 7.194037e+06
39 3 S 3.514171 1.066042 3.304828 -1.217897e-03 1.127088e-03 -4.542667e-04 -1.668165e+07 -6.866406e+06 7.095122e+06
40 3 S 6.420069 3.426780 7.761729 -4.255896e-03 -4.759150e-03 3.536277e-03 8.684622e+06 -8.301165e+06 1.121738e+07
41 3 S 6.033543 0.331548 5.043291 -4.901760e-03 -2.610148e-03 8.113986e-04 -9.795771e+06 -6.970144e+06 -4.559644e+06
42 3 S 3.744083 3.733659 6.302207 -2.710494e-03 -7.685459e-04 2.471679e-03 -1.471545e+07 1.007104e+07 -5.573975e+06
43 1 Li 13.139047 4.709123 2.477255 1.403470e-02 -2.840155e-03 4.216748e-04 -4.566652e+06 -7.548233e+05 -4.419477e+05
44 1 Li -0.410125 6.581040 7.204673 3.030465e-03 5.719946e-03 -4.850458e-03 7.625760e+06 -1.298748e+04 1.720048e+04
45 1 Li 11.713803 10.779210 1.199805 4.936464e-03 2.825545e-03 -9.788596e-03 2.543959e+06 7.240417e+06 1.165450e+05
46 1 Li 10.011261 5.480656 1.451411 -7.234088e-03 -1.528049e-02 2.938673e-03 -7.132908e+06 -5.184506e+06 2.478480e+06
47 1 Li -0.197849 -1.286851 10.127511 7.026566e-03 8.097477e-03 -3.939153e-03 5.944245e+04 1.443869e+06 -1.617610e+06
48 1 Li 8.633224 9.187462 5.517508 1.375353e-03 1.340574e-02 1.892391e-03 4.361665e+05 -4.551405e+05 7.943359e+06
49 1 Li 10.890249 1.191619 4.518709 -1.595760e-03 -4.432068e-03 3.605130e-03 4.979992e+06 5.505384e+06 -4.289726e+05
50 1 Li 2.825405 7.396901 8.224923 -2.389793e-03 -8.609160e-03 -4.536673e-03 6.222011e+06 5.064078e+06 -8.069450e+06
51 1 Li 6.578281 8.393254 1.552492 1.861539e-03 -1.625381e-03 -5.890243e-04 2.877035e+05 2.025773e+06 2.045077e+06
52 1 Li 6.951722 7.723965 9.022607 2.589639e-03 -4.857884e-03 -8.580896e-03 -1.292914e+07 4.048696e+06 -3.216862e+06
53 1 Li 2.464640 1.255829 5.542938 5.499578e-03 7.725159e-03 8.862059e-04 2.702783e+06 -1.064843e+06 -3.587917e+06
54 1 Li 4.110070 6.787987 5.304587 4.351050e-03 4.563523e-03 -8.528065e-03 -3.324963e+06 3.047229e+06 1.519771e+07
55 1 Li 1.063275 9.424677 4.158211 6.968822e-03 6.132663e-03 1.207231e-03 -4.365181e+06 -1.623553e+06 -6.248471e+06
56 1 Li 2.657339 8.285585 0.460860 -1.284668e-03 4.385029e-03 6.525353e-04 2.468405e+06 6.131565e+06 -1.216963e+07
57 2 P 9.780103 5.308019 5.223959 4.096686e-03 -2.135361e-03 -5.396753e-04 -1.686014e+07 1.440789e+07 -1.650804e+07
58 2 P 3.661236 10.510101 6.051488 5.931859e-03 -3.250195e-03 1.599306e-03 1.148080e+07 -8.462018e+06 -5.300161e+04
59 2 P 6.700227 5.586829 3.224438 -5.611140e-04 -3.173734e-03 3.902119e-03 2.655442e+07 -1.414532e+07 -4.647508e+06
60 2 P 6.535078 10.677393 8.195670 -2.268971e-03 -1.997014e-03 5.714404e-03 -4.146646e+06 -2.639813e+07 -1.689127e+07
61 2 P 12.605499 7.569846 0.657387 7.384658e-04 7.040379e-04 1.689834e-03 1.967025e+07 -2.408311e+07 -1.491785e+07
62 2 P 0.364617 8.638591 10.568420 -4.383607e-03 4.520221e-04 -1.053064e-04 -4.851212e+06 -2.024195e+07 -9.335863e+05
63 3 S 10.172401 6.218765 6.982578 -1.303072e-03 3.232433e-03 3.190826e-04 -7.180763e+06 -2.769862e+06 4.134462e+05
64 3 S 3.368765 9.654376 4.247414 2.096477e-03 -5.558542e-03 6.363149e-04 -1.250345e+07 -6.329750e+06 -4.070638e+06
65 3 S 14.042056 7.684860 2.148582 6.862274e-03 -1.567930e-03 1.777466e-03 4.498074e+05 -3.665438e+06 1.230128e+07
66 3 S -0.983502 8.181912 8.968921 2.583408e-03 1.998013e-03 -1.140461e-03 1.171710e+07 1.176695e+07 2.350713e+07
67 3 S 10.944150 8.578964 0.937801 6.494812e-04 -1.193400e-03 3.740562e-03 -2.620156e+07 1.289620e+07 1.324989e+07
68 3 S 2.073047 7.361473 10.458083 5.963744e-04 -1.506723e-04 -4.972129e-03 -1.774714e+07 1.348795e+07 8.521828e+05
69 3 S 11.241255 9.278090 5.297863 3.547377e-03 -2.176540e-03 -6.464543e-03 5.461836e+05 -2.309655e+07 -1.651152e+06
70 3 S 1.734547 6.610490 5.916829 3.183127e-03 3.403440e-04 4.364470e-03 8.974740e+05 -3.921634e+06 9.406831e+06
71 3 S 10.958529 5.950628 3.694470 7.699604e-03 8.007821e-03 -7.775903e-04 -1.367961e+06 -7.790876e+06 3.353365e+06
72 3 S 2.562872 9.909237 7.647107 -1.387316e-03 -4.457090e-03 1.758911e-03 8.804503e+06 -7.490894e+06 -2.910925e+06
73 3 S 7.624616 6.162052 1.547219 -5.643646e-04 4.371975e-03 4.303489e-04 1.441362e+07 4.071485e+05 -1.261232e+07
74 3 S 5.567963 9.897287 9.789981 -4.857599e-03 3.413331e-04 -2.590556e-03 4.117940e+06 7.997636e+06 -8.523383e+05
75 3 S 8.212249 9.608695 3.264751 9.740594e-04 2.342328e-03 -2.743278e-03 -4.884338e+06 2.312300e+07 -8.608141e+05
76 3 S 5.090880 6.643840 7.556875 -4.123823e-03 4.041666e-03 -3.393484e-03 -4.370862e+06 -2.000867e+07 -1.942832e+04
77 3 S 13.957576 11.667504 0.529095 3.443242e-03 1.028486e-03 1.632863e-03 1.987140e+06 6.002045e+06 7.096491e+06
78 3 S -0.862199 4.617210 10.909203 1.833690e-03 4.558084e-04 5.310086e-03 4.262924e+06 5.416943e+06 1.373238e+06
79 3 S 8.442365 6.499302 10.236982 -3.889200e-03 -5.077543e-03 -2.047801e-04 1.381777e+07 -1.345672e+07 5.512584e+06
80 3 S 4.665454 9.916927 1.193870 -1.997664e-03 -1.268422e-03 2.485792e-03 2.457229e+06 -1.765519e+06 -2.633745e+07
81 3 S 5.125541 6.754923 3.331213 4.148265e-03 -1.660599e-03 -8.733641e-04 -2.842642e+07 2.427812e+07 -4.566583e+06
82 3 S 8.172192 9.475174 7.861520 8.796483e-04 1.383433e-03 3.029416e-03 1.425843e+07 6.265441e+06 7.630066e+06
83 3 S 7.725880 6.195604 4.969436 -2.183665e-03 5.803136e-03 4.456278e-03 1.927692e+07 4.222748e+06 1.467683e+07
84 3 S 5.646333 9.790912 6.326255 -4.508241e-03 -1.916692e-03 -1.097060e-03 -3.981450e+06 2.058842e+07 1.154934e+07
ITEM: TIMESTEP
149003
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.960289 1.938389 2.538436 5.006789e-04 -7.956085e-03 -9.332328e-05 -8.997317e+06 -4.308725e+06 4.336387e+06
2 1 Li 0.170497 10.120391 7.909454 -1.400928e-02 7.739021e-03 -3.825689e-03 -1.197729e+07 6.693443e+06 -2.873873e+06
3 1 Li 4.932223 2.147812 9.931580 3.732049e-03 -1.104958e-02 -5.405795e-03 -1.711603e+06 -3.177551e+06 -2.463707e+06
4 1 Li 4.607743 2.418675 1.473045 4.633702e-04 -4.515088e-03 4.675862e-03 5.772763e+06 -2.082303e+06 4.698879e+06
5 1 Li 8.082353 4.021226 9.603198 5.834025e-03 5.438098e-03 -2.941218e-03 2.985403e+06 7.475256e+06 -5.049559e+05
6 1 Li 10.183875 8.155803 3.252370 1.504507e-03 -1.077078e-02 7.591510e-04 3.568371e+06 5.944413e+06 -3.897414e+06
7 1 Li 3.326340 5.879570 1.770739 -2.451601e-03 7.887079e-03 -2.574137e-03 -2.523896e+06 -3.660608e+06 3.382706e+06
8 1 Li 10.773575 4.058054 7.442632 -6.544298e-03 -1.692706e-03 3.879031e-03 5.828124e+05 6.377244e+05 -3.430661e+06
9 1 Li 1.199424 5.135362 9.879940 -3.224897e-03 4.248092e-03 -1.353740e-03 6.912170e+06 -3.049936e+06 1.480710e+05
10 1 Li 9.870912 10.176564 9.575470 -1.453239e-03 -3.143239e-03 -1.252108e-02 -3.511654e+06 -8.794683e+06 -3.893363e+06
11 1 Li 7.158305 2.943858 5.613589 7.873392e-03 5.216814e-03 -2.759270e-03 1.414285e+06 6.829784e+05 -2.821351e+06
12 1 Li 0.949877 1.501643 8.142423 -2.176507e-03 3.062118e-03 -9.464774e-03 -2.733911e+06 3.404331e+06 -7.941697e+06
13 1 Li 0.213284 -0.257100 2.450070 4.084422e-03 -5.022479e-03 1.098425e-02 -3.338411e+06 4.994728e+06 1.966940e+06
14 1 Li -3.960074 0.732455 10.576607 5.702902e-03 -6.337770e-03 -5.301930e-03 3.180059e+06 1.446414e+06 6.040230e+06
15 2 P 11.298263 11.256845 5.065077 -4.544106e-03 1.319858e-03 7.213521e-04 3.072086e+07 2.454599e+07 1.747287e+07
16 2 P 1.747848 4.557469 6.105703 -2.703697e-03 -4.521861e-03 2.717833e-03 -3.897395e+06 2.359340e+05 -1.743645e+07
17 2 P 4.986380 -0.275254 3.242866 -2.452774e-03 2.240534e-03 -1.889058e-03 1.227465e+07 -4.635777e+06 -2.316452e+07
18 2 P 4.791913 4.577758 7.952540 -2.427509e-03 -1.989404e-03 1.366131e-03 2.295367e+05 3.735327e+07 -1.340442e+05
19 2 P 10.766750 1.733280 0.749749 9.190955e-05 -2.076788e-03 7.928365e-04 1.530097e+07 -6.783515e+06 2.447241e+06
20 2 P -1.382521 2.657425 10.659912 4.377138e-03 9.568852e-06 7.202244e-04 -2.688624e+07 6.401689e+06 -1.783056e+06
21 3 S 8.579495 0.181911 6.791826 -1.717674e-03 3.734311e-03 1.134090e-03 -3.534841e+06 -5.017853e+06 -8.862825e+06
22 3 S 1.333206 3.605625 4.364013 4.448966e-04 -2.319302e-03 -2.358790e-03 4.831672e+06 -2.176713e+06 1.749922e+07
23 3 S 12.153839 2.104313 2.258874 -3.004898e-03 -2.215415e-03 -1.267268e-03 -1.005767e+07 -1.187318e+07 6.351002e+06
24 3 S -2.763173 2.524137 9.134148 3.705806e-03 1.707026e-03 8.992358e-04 -7.075326e+06 -8.202075e+06 -2.981594e+06
25 3 S 9.144814 2.970902 0.888354 1.279585e-03 -3.441313e-03 1.103139e-03 4.906890e+06 4.367583e+06 -4.865918e+06
26 3 S 0.139294 1.393260 10.301710 3.635017e-03 1.777901e-03 -3.431170e-03 1.173628e+07 -8.973129e+06 1.262702e+07
27 3 S 9.584653 3.309723 5.449867 2.791534e-03 2.252543e-03 -6.301147e-03 3.150344e+06 -9.772714e+06 8.373097e+05
28 3 S 0.006695 0.566057 5.820148 -4.828892e-04 4.745026e-03 -1.303727e-03 2.028356e+06 1.169411e+07 4.427007e+06
29 3 S 9.056353 -0.239596 3.483028 -2.871353e-03 2.630940e-03 7.090818e-04 -5.612122e+06 -6.097737e+06 2.362782e+06
30 3 S 0.509878 4.011570 7.665919 -2.271880e-03 -6.816078e-05 -4.215116e-03 8.975132e+06 3.871109e+06 8.389775e+05
31 3 S 6.093643 0.300774 1.571778 1.715768e-03 -2.761907e-03 9.872320e-04 -4.943096e+06 -4.260876e+06 5.899664e+06
32 3 S 3.879506 4.373007 9.702893 -1.054170e-03 7.858985e-04 -1.525947e-03 -8.997100e+06 -6.166993e+06 8.440661e+06
33 3 S 6.304111 3.631083 3.461442 -4.470373e-03 6.312151e-04 1.059866e-03 -3.893599e+06 -2.023628e+07 -5.684403e+06
34 3 S 3.243805 0.721557 7.950742 -5.911204e-03 7.025324e-03 -2.141291e-03 -5.549860e+06 -9.447162e+06 3.599156e+05
35 3 S 12.142689 5.505574 0.422726 1.469540e-03 2.873009e-04 -1.552934e-03 5.962827e+06 1.208496e+07 1.270782e+06
36 3 S -2.768819 -1.327653 10.320075 2.526531e-03 -2.376307e-03 1.067641e-03 4.665735e+06 -7.384922e+06 8.220340e+06
37 3 S 6.647937 0.449356 10.286232 -8.909330e-04 5.192558e-03 -3.388582e-03 5.809579e+05 1.279989e+07 -1.572266e+07
38 3 S 2.666710 3.768580 1.046428 5.198940e-04 -4.244689e-03 4.368128e-03 3.911279e+06 5.250003e+05 3.235967e+06
39 3 S 3.511479 1.068040 3.304166 -1.658454e-03 9.527880e-04 -2.704307e-04 -1.717791e+07 -6.108067e+06 6.781555e+06
40 3 S 6.412180 3.417573 7.768659 -4.003229e-03 -4.961156e-03 3.798762e-03 9.430298e+06 -8.329685e+06 9.698760e+06
41 3 S 6.024004 0.326515 5.044712 -5.145529e-03 -2.768588e-03 6.978558e-04 -1.005166e+07 -5.780772e+06 -3.872235e+06
42 3 S 3.738607 3.732467 6.306747 -3.082224e-03 -5.184407e-04 2.302214e-03 -1.429846e+07 8.769809e+06 -6.675496e+06
43 1 Li 13.164937 4.703383 2.477887 1.338263e-02 -2.875396e-03 2.768497e-04 -5.379113e+06 1.097744e+04 -1.918251e+06
44 1 Li -0.403448 6.591892 7.195555 3.892944e-03 5.688186e-03 -4.842413e-03 6.762270e+06 -1.844073e+05 -1.605295e+05
45 1 Li 11.723412 10.785473 1.181335 5.197233e-03 3.643609e-03 -9.713360e-03 2.035593e+06 6.403904e+06 5.651825e+05
46 1 Li 9.996497 5.451210 1.457125 -7.972771e-03 -1.583431e-02 3.216575e-03 -5.455700e+06 -4.813370e+06 2.269137e+06
47 1 Li -0.184446 -1.271411 10.119931 6.913132e-03 8.238646e-03 -4.128690e-03 -1.526013e+06 1.343933e+06 -1.730148e+06
48 1 Li 8.636158 9.212731 5.522129 1.438695e-03 1.330000e-02 2.793228e-03 6.856232e+05 -5.239673e+05 7.012119e+06
49 1 Li 10.887748 1.183819 4.525433 -9.729794e-04 -3.754408e-03 3.531557e-03 5.192409e+06 5.410464e+06 -5.779833e+05
50 1 Li 2.821409 7.381308 8.215351 -1.643910e-03 -7.938474e-03 -5.490392e-03 5.934799e+06 5.498060e+06 -7.906792e+06
51 1 Li 6.581792 8.390380 1.551587 1.880609e-03 -1.351468e-03 -3.526339e-04 1.328432e+05 2.395216e+06 1.817575e+06
52 1 Li 6.954975 7.715354 9.005971 1.008551e-03 -4.391271e-03 -8.933582e-03 -1.298019e+07 3.365798e+06 -3.084405e+06
53 1 Li 2.475485 1.270217 5.544248 5.765143e-03 7.559090e-03 4.612955e-04 1.988242e+06 -1.231832e+06 -3.364678e+06
54 1 Li 4.117946 6.797038 5.290252 3.864230e-03 4.919999e-03 -6.569559e-03 -4.448277e+06 3.087423e+06 1.659110e+07
55 1 Li 1.076048 9.435961 4.159798 6.377650e-03 5.894633e-03 4.402957e-04 -4.979631e+06 -1.949479e+06 -6.322003e+06
56 1 Li 2.655296 8.294620 0.460754 -9.869222e-04 5.109600e-03 -8.260454e-04 2.365563e+06 6.059446e+06 -1.216075e+07
57 2 P 9.787352 5.304285 5.222471 3.631181e-03 -1.628323e-03 -9.976172e-04 -1.633412e+07 2.232464e+07 -1.730594e+07
58 2 P 3.672660 10.503580 6.054434 6.119922e-03 -3.396079e-03 1.597141e-03 3.870418e+06 -3.101873e+06 2.995708e+05
59 2 P 6.699805 5.580387 3.231653 2.114880e-04 -3.482038e-03 3.732739e-03 3.011595e+07 -9.342957e+06 -6.813778e+06
60 2 P 6.530677 10.672876 8.206016 -2.340608e-03 -2.597164e-03 5.169116e-03 -1.702561e+06 -1.825999e+07 -2.175007e+07
61 2 P 12.607414 7.570512 0.660193 1.258464e-03 1.576067e-05 1.307937e-03 1.876096e+07 -2.635173e+07 -1.274220e+07
62 2 P 0.356228 8.639014 10.568226 -4.445456e-03 -1.090626e-04 -1.201591e-04 -8.182236e+05 -2.090563e+07 -1.867658e+05
63 3 S 10.169833 6.224840 6.983234 -1.472705e-03 3.124482e-03 3.183775e-04 -6.078252e+06 -4.595078e+06 -3.818207e+05
64 3 S 3.372296 9.643642 4.248442 1.773389e-03 -5.685586e-03 5.444843e-04 -1.154369e+07 -4.807141e+06 -2.755405e+06
65 3 S 14.054989 7.681630 2.152186 6.825636e-03 -1.653481e-03 2.071553e-03 -1.430714e+06 -3.260859e+06 1.055844e+07
66 3 S -0.978300 8.185951 8.967358 2.851061e-03 2.293054e-03 -5.305080e-04 9.343300e+06 1.122140e+07 2.263079e+07
67 3 S 10.944728 8.576948 0.945182 -2.349681e-05 -8.398312e-04 4.075406e-03 -2.486444e+07 1.370605e+07 1.322621e+07
68 3 S 2.073701 7.361606 10.448712 1.024951e-04 2.094556e-04 -4.915635e-03 -1.969218e+07 1.388864e+07 2.138559e+06
69 3 S 11.247868 9.273440 5.285565 3.545808e-03 -2.739590e-03 -6.471559e-03 2.680511e+05 -2.034636e+07 -5.854074e+05
70 3 S 1.740607 6.610894 5.925290 3.190850e-03 1.977973e-04 4.590501e-03 5.284106e+05 -6.836019e+06 8.950078e+06
71 3 S 10.973176 5.965465 3.693124 7.606310e-03 7.724314e-03 -6.495696e-04 -3.705165e+06 -1.167960e+07 6.183534e+06
72 3 S 2.560390 9.900602 7.650315 -1.143957e-03 -4.615578e-03 1.644066e-03 9.356773e+06 -5.750479e+06 -5.365379e+06
73 3 S 7.624001 6.170345 1.547768 -1.887771e-04 4.334601e-03 1.404338e-04 1.403245e+07 -2.098016e+06 -9.351657e+06
74 3 S 5.558896 9.898273 9.785101 -4.735849e-03 5.279713e-04 -2.561320e-03 3.873586e+06 6.304055e+06 2.391071e+06
75 3 S 8.214002 9.613740 3.259571 8.398713e-04 2.935093e-03 -2.746654e-03 -5.074987e+06 2.262188e+07 -1.191649e+05
76 3 S 5.083050 6.651139 7.550531 -4.213559e-03 3.462198e-03 -3.373006e-03 -3.547125e+06 -2.303843e+07 6.845839e+05
77 3 S 13.964153 11.669503 0.532347 3.477567e-03 1.153801e-03 1.795645e-03 1.532635e+06 3.812650e+06 5.728169e+06
78 3 S -0.858591 4.618076 10.919260 1.940939e-03 5.886243e-04 5.314890e-03 4.384142e+06 4.815424e+06 3.910992e+05
79 3 S 8.435263 6.489424 10.236698 -3.494929e-03 -5.390071e-03 -7.881409e-05 1.517311e+07 -1.167513e+07 4.026044e+06
80 3 S 4.661734 9.914480 1.197908 -1.920840e-03 -1.311085e-03 1.768703e-03 2.865242e+06 -1.816038e+06 -2.759922e+07
81 3 S 5.132626 6.752327 3.329413 3.355138e-03 -9.986750e-04 -1.001646e-03 -3.085978e+07 2.567557e+07 -5.427945e+06
82 3 S 8.174254 9.477874 7.867440 1.234011e-03 1.550574e-03 3.217625e-03 1.295323e+07 6.822136e+06 7.495624e+06
83 3 S 7.722389 6.206655 4.978291 -1.648493e-03 5.845527e-03 4.787053e-03 2.088911e+07 5.374464e+05 1.168289e+07
84 3 S 5.637691 9.787900 6.324480 -4.531408e-03 -1.381471e-03 -7.755844e-04 1.023130e+06 1.965590e+07 1.263445e+07
ITEM: TIMESTEP
149004
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.960034 1.922821 2.538670 -5.916960e-04 -8.426638e-03 4.148078e-04 -8.976109e+06 -3.754489e+06 4.029989e+06
2 1 Li 0.142844 10.136177 7.902075 -1.525949e-02 8.491689e-03 -4.135128e-03 -9.168034e+06 6.008281e+06 -2.373603e+06
3 1 Li 4.938800 2.126547 9.920945 3.450060e-03 -1.131798e-02 -5.713477e-03 -2.785606e+06 -1.678285e+06 -2.815744e+06
4 1 Li 4.609214 2.409778 1.482361 1.148404e-03 -4.726620e-03 5.199893e-03 5.529200e+06 -1.579531e+06 4.116651e+06
5 1 Li 8.093801 4.032323 9.597613 6.143310e-03 6.314865e-03 -2.958924e-03 2.338443e+06 7.179917e+06 9.730964e+04
6 1 Li 10.186911 8.136044 3.253235 1.857299e-03 -9.905571e-03 2.618315e-04 2.303109e+06 7.882386e+06 -4.263976e+06
7 1 Li 3.321570 5.894180 1.766363 -2.761517e-03 7.384357e-03 -2.120539e-03 -2.676790e+06 -4.310032e+06 3.987100e+06
8 1 Li 10.761287 4.054981 7.449586 -6.424649e-03 -1.538822e-03 3.399360e-03 1.130801e+06 1.829206e+06 -4.317108e+06
9 1 Li 1.194209 5.143136 9.877461 -2.369974e-03 3.867179e-03 -1.329803e-03 7.043091e+06 -3.057733e+06 1.930760e+05
10 1 Li 9.867614 10.169861 9.551346 -1.863079e-03 -4.103977e-03 -1.286956e-02 -3.296250e+06 -7.155249e+06 -2.339234e+06
11 1 Li 7.173407 2.953716 5.608062 7.969969e-03 5.298063e-03 -3.018028e-03 4.862121e+05 8.596068e+05 -1.550464e+06
12 1 Li 0.945464 1.508059 8.123685 -2.539799e-03 3.456823e-03 -1.036657e-02 -3.334640e+06 3.217292e+06 -7.283947e+06
13 1 Li 0.220576 -0.266314 2.470967 3.669326e-03 -4.380629e-03 1.119118e-02 -3.338728e+06 5.380164e+06 1.872300e+06
14 1 Li -3.949112 0.720592 10.567184 6.032352e-03 -6.138383e-03 -4.549209e-03 2.470857e+06 1.589183e+06 6.150228e+06
15 2 P 11.290522 11.260040 5.066931 -3.676971e-03 1.940763e-03 1.187567e-03 3.221952e+07 2.132704e+07 1.692213e+07
16 2 P 1.742571 4.548919 6.110355 -2.777239e-03 -4.447163e-03 2.183705e-03 -1.983425e+06 4.458570e+06 -2.134350e+07
17 2 P 4.982101 -0.271046 3.238739 -2.103410e-03 2.074895e-03 -2.506780e-03 1.297477e+07 -7.144290e+06 -2.257097e+07
18 2 P 4.787318 4.574976 7.955115 -2.395620e-03 -9.479816e-04 1.337085e-03 1.688036e+06 3.884459e+07 -1.760006e+06
19 2 P 10.767277 1.729150 0.751285 5.376198e-04 -2.225658e-03 8.146042e-04 1.747354e+07 -4.524814e+06 -7.048088e+05
20 2 P -1.374949 2.657518 10.661203 3.612236e-03 1.761068e-04 7.134711e-04 -2.856869e+07 5.841677e+06 1.408846e+06
21 3 S 8.576249 0.188874 6.793798 -1.820175e-03 3.586838e-03 8.848032e-04 -4.574206e+06 -5.526624e+06 -9.898830e+06
22 3 S 1.334104 3.601206 4.359965 5.756479e-04 -2.365546e-03 -1.865748e-03 5.197332e+06 -1.762464e+06 1.958671e+07
23 3 S 12.147865 2.099903 2.256632 -3.241129e-03 -2.519970e-03 -1.080061e-03 -8.463244e+06 -1.170179e+07 7.662551e+06
24 3 S -2.756320 2.527080 9.135768 3.503851e-03 1.479227e-03 8.260672e-04 -7.619717e+06 -8.821286e+06 -2.423649e+06
25 3 S 9.147287 2.964448 0.890272 1.379462e-03 -3.312802e-03 9.752177e-04 2.926800e+06 4.787202e+06 -4.668131e+06
26 3 S 0.146455 1.396389 10.295539 3.936399e-03 1.539885e-03 -3.091014e-03 1.185398e+07 -8.815791e+06 1.263417e+07
27 3 S 9.590001 3.313804 5.437993 2.869106e-03 1.959629e-03 -6.257869e-03 3.257493e+06 -1.210449e+07 1.314106e+06
28 3 S 0.005928 0.575367 5.817851 -4.145645e-04 4.951924e-03 -1.181529e-03 3.081785e+06 4.916075e+06 4.634744e+06
29 3 S 9.050855 -0.234721 3.484471 -3.011395e-03 2.468295e-03 7.757322e-04 -5.563657e+06 -5.801893e+06 2.836492e+06
30 3 S 0.505790 4.011655 7.657992 -2.061050e-03 1.777670e-05 -4.145878e-03 6.658308e+06 2.656988e+06 3.662724e+06
31 3 S 6.096705 0.295386 1.573749 1.578443e-03 -2.846426e-03 1.130737e-03 -5.194930e+06 -2.672210e+06 5.199273e+06
32 3 S 3.877300 4.374390 9.700236 -1.299438e-03 6.160400e-04 -1.271191e-03 -9.855194e+06 -6.614709e+06 1.066472e+07
33 3 S 6.295597 3.631845 3.463334 -4.551949e-03 6.589348e-05 9.155762e-04 -3.123977e+06 -2.266190e+07 -5.103420e+06
34 3 S 3.232647 0.734782 7.946817 -6.039987e-03 6.673155e-03 -2.112462e-03 -5.319969e+06 -1.606939e+07 1.444591e+06
35 3 S 12.145609 5.506417 0.419821 1.617455e-03 6.017636e-04 -1.501188e-03 5.558591e+06 1.189478e+07 2.384039e+06
36 3 S -2.763981 -1.332410 10.322253 2.639267e-03 -2.553067e-03 1.279188e-03 4.370197e+06 -6.496142e+06 8.069792e+06
37 3 S 6.646359 0.459592 10.279504 -8.766863e-04 5.473986e-03 -3.757583e-03 3.420244e+05 9.558156e+06 -1.297152e+07
38 3 S 2.667728 3.760463 1.054709 6.512619e-04 -4.199798e-03 4.394681e-03 6.175960e+06 2.120276e+06 -4.202604e+05
39 3 S 3.507941 1.069732 3.303845 -2.106702e-03 7.957461e-04 -9.715710e-05 -1.722956e+07 -5.669262e+06 6.354387e+06
40 3 S 6.404784 3.407973 7.776044 -3.743869e-03 -5.161965e-03 4.025228e-03 9.579364e+06 -7.848787e+06 8.222711e+06
41 3 S 6.013995 0.321218 5.045934 -5.397233e-03 -2.900245e-03 6.029537e-04 -1.003226e+07 -4.739546e+06 -3.223278e+06
42 3 S 3.732444 3.731727 6.310944 -3.441295e-03 -3.018308e-04 2.110519e-03 -1.358226e+07 7.619549e+06 -7.492767e+06
43 1 Li 13.189504 4.697682 2.478080 1.265558e-02 -2.823837e-03 -3.916315e-05 -6.071021e+06 7.247225e+05 -3.274475e+06
44 1 Li -0.395243 6.602648 7.186426 4.641260e-03 5.644429e-03 -4.857525e-03 5.717434e+06 -3.132117e+05 -2.780640e+05
45 1 Li 11.733471 10.793183 1.163066 5.397312e-03 4.351633e-03 -9.597189e-03 1.464411e+06 5.402318e+06 9.670911e+05
46 1 Li 9.980523 5.420765 1.463337 -8.512019e-03 -1.634879e-02 3.471587e-03 -3.741066e+06 -4.282197e+06 2.057629e+06
47 1 Li -0.171437 -1.255708 10.111983 6.613367e-03 8.380091e-03 -4.335101e-03 -3.138651e+06 1.308860e+06 -1.831465e+06
48 1 Li 8.639243 9.237775 5.528343 1.536882e-03 1.320225e-02 3.569007e-03 9.876956e+05 -5.648278e+05 5.876937e+06
49 1 Li 10.886459 1.177280 4.532003 -3.320207e-04 -3.096912e-03 3.440349e-03 5.326827e+06 5.272462e+06 -7.856709e+05
50 1 Li 2.818796 7.367037 8.204000 -9.459437e-04 -7.224367e-03 -6.409608e-03 5.497817e+06 5.952628e+06 -7.449804e+06
51 1 Li 6.585328 8.388064 1.551105 1.880945e-03 -1.034072e-03 -1.425609e-04 -5.336877e+04 2.779333e+06 1.629042e+06
52 1 Li 6.955247 7.707584 8.988699 -5.559252e-04 -4.020285e-03 -9.265170e-03 -1.274977e+07 2.573699e+06 -2.727937e+06
53 1 Li 2.486742 1.284274 5.544778 5.951159e-03 7.380346e-03 6.802639e-05 1.302507e+06 -1.415822e+06 -3.095283e+06
54 1 Li 4.124795 6.806743 5.279782 3.260314e-03 5.287938e-03 -4.489658e-03 -5.346560e+06 3.165846e+06 1.740944e+07
55 1 Li 1.087625 9.446782 4.159929 5.719372e-03 5.623354e-03 -3.309746e-04 -5.612427e+06 -2.287421e+06 -6.364643e+06
56 1 Li 2.653809 8.305040 0.457861 -7.093462e-04 5.820636e-03 -2.286150e-03 2.168069e+06 5.852904e+06 -1.192199e+07
57 2 P 9.793747 5.301733 5.220107 3.187686e-03 -9.200810e-04 -1.467807e-03 -1.562976e+07 2.943993e+07 -1.742879e+07
58 2 P 3.684241 10.496919 6.057384 6.096776e-03 -3.399477e-03 1.602542e-03 -4.491241e+06 2.251731e+06 3.766742e+05
59 2 P 6.700926 5.573473 3.238485 1.053568e-03 -3.651023e-03 3.512726e-03 3.181441e+07 -3.693740e+06 -8.702607e+06
60 2 P 6.526191 10.667443 8.215203 -2.348218e-03 -2.976882e-03 4.504353e-03 7.308709e+05 -1.011443e+07 -2.620254e+07
61 2 P 12.610270 7.569812 0.662323 1.735299e-03 -7.165368e-04 9.966341e-04 1.651067e+07 -2.747021e+07 -9.914083e+06
62 2 P 0.347813 8.638356 10.568017 -4.401133e-03 -6.763166e-04 -1.139811e-04 3.293568e+06 -2.080841e+07 6.188935e+05
63 3 S 10.166969 6.230667 6.983868 -1.612939e-03 2.973411e-03 2.969118e-04 -4.860304e+06 -6.332078e+06 -1.192888e+06
64 3 S 3.375240 9.632713 4.249331 1.479981e-03 -5.778182e-03 4.889466e-04 -1.046198e+07 -3.269839e+06 -1.373518e+06
65 3 S 14.067806 7.678246 2.156302 6.749030e-03 -1.729144e-03 2.319141e-03 -3.160214e+06 -2.796285e+06 8.657919e+06
66 3 S -0.972642 8.190521 8.966926 3.054359e-03 2.571699e-03 4.758498e-05 6.645115e+06 1.039689e+07 2.126192e+07
67 3 S 10.944080 8.575630 0.953203 -6.415243e-04 -4.766573e-04 4.408216e-03 -2.216878e+07 1.377573e+07 1.283574e+07
68 3 S 2.073384 7.362440 10.439486 -4.344060e-04 5.736242e-04 -4.833359e-03 -2.114039e+07 1.385894e+07 3.230453e+06
69 3 S 11.254461 9.267792 5.273274 3.542462e-03 -3.217934e-03 -6.457884e-03 1.196192e+05 -1.655151e+07 4.528255e+05
70 3 S 1.746670 6.610952 5.934164 3.191262e-03 -1.582832e-05 4.806287e-03 8.125420e+04 -9.379922e+06 8.301059e+06
71 3 S 10.987582 5.979668 3.692086 7.464217e-03 7.349244e-03 -4.537680e-04 -5.726974e+06 -1.545626e+07 8.594531e+06
72 3 S 2.558378 9.891708 7.653243 -8.904724e-04 -4.733311e-03 1.468675e-03 9.723341e+06 -4.045646e+06 -7.679683e+06
73 3 S 7.624082 6.178503 1.547847 1.763933e-04 4.237512e-03 -6.467596e-05 1.371959e+07 -4.501776e+06 -6.233449e+06
74 3 S 5.550057 9.899566 9.780358 -4.626839e-03 6.673154e-04 -2.449918e-03 3.563790e+06 4.396526e+06 5.617853e+06
75 3 S 8.215510 9.619897 3.254411 7.017890e-04 3.510741e-03 -2.732876e-03 -5.279376e+06 2.171179e+07 6.692566e+05
76 3 S 5.075059 6.657265 7.544237 -4.282963e-03 2.819339e-03 -3.337780e-03 -2.498046e+06 -2.524719e+07 1.384128e+06
77 3 S 13.970786 11.671682 0.535872 3.503613e-03 1.219809e-03 1.924135e-03 1.079467e+06 1.421684e+06 4.375418e+06
78 3 S -0.854775 4.619176 10.929302 2.052990e-03 7.049483e-04 5.299205e-03 4.493170e+06 4.143062e+06 -6.209907e+05
79 3 S 8.428934 6.478988 10.236610 -3.072994e-03 -5.657274e-03 2.598124e-06 1.629771e+07 -9.634855e+06 2.156575e+06
80 3 S 4.658163 9.911963 1.200560 -1.838710e-03 -1.357058e-03 1.029508e-03 3.036002e+06 -1.919340e+06 -2.832501e+07
81 3 S 5.138168 6.751037 3.327361 2.524632e-03 -3.168732e-04 -1.150236e-03 -3.172486e+07 2.602153e+07 -6.058905e+06
82 3 S 8.176957 9.480894 7.873712 1.552937e-03 1.730314e-03 3.403734e-03 1.153905e+07 7.134725e+06 7.248383e+06
83 3 S 7.719949 6.217677 4.987694 -1.079954e-03 5.798163e-03 5.040502e-03 2.207115e+07 -3.078574e+06 8.472684e+06
84 3 S 5.629143 9.785872 6.323344 -4.419047e-03 -8.817707e-04 -4.323117e-04 6.699106e+06 1.811803e+07 1.334392e+07
ITEM: TIMESTEP
149005
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.957715 1.906439 2.539830 -1.667354e-03 -8.829289e-03 8.741812e-04 -8.745826e+06 -3.062736e+06 3.542265e+06
2 1 Li 0.113167 10.153336 7.894183 -1.617962e-02 9.157470e-03 -4.377801e-03 -6.322195e+06 5.142413e+06 -1.714179e+06
3 1 Li 4.944717 2.104960 9.909689 3.034996e-03 -1.141334e-02 -6.069941e-03 -3.969856e+06 -1.451835e+05 -3.179879e+06
4 1 Li 4.611948 2.400517 1.492594 1.799118e-03 -4.876501e-03 5.654184e-03 5.209348e+06 -9.937569e+05 3.478734e+06
5 1 Li 8.105777 4.045042 9.592070 6.378936e-03 7.154401e-03 -2.910653e-03 1.678092e+06 6.782451e+06 6.310347e+05
6 1 Li 10.190485 8.118151 3.253127 2.055424e-03 -8.816652e-03 -2.764806e-04 1.000932e+06 9.822312e+06 -4.592210e+06
7 1 Li 3.316189 5.907761 1.762910 -3.087219e-03 6.819539e-03 -1.599423e-03 -2.746787e+06 -4.823551e+06 4.544386e+06
8 1 Li 10.749289 4.052344 7.455534 -6.245707e-03 -1.246121e-03 2.818151e-03 1.671514e+06 2.954468e+06 -5.174972e+06
9 1 Li 1.190614 5.150170 9.875023 -1.507113e-03 3.488094e-03 -1.301343e-03 7.109323e+06 -3.096901e+06 2.457664e+05
10 1 Li 9.863549 10.161538 9.526735 -2.240628e-03 -4.865486e-03 -1.303804e-02 -2.961102e+06 -5.474132e+06 -7.225507e+05
11 1 Li 7.188586 2.963751 5.602193 7.960881e-03 5.404370e-03 -3.124551e-03 -4.574679e+05 1.008561e+06 -2.713804e+05
12 1 Li 0.940300 1.515225 8.103326 -2.976784e-03 3.832000e-03 -1.118338e-02 -3.915697e+06 3.036463e+06 -6.394955e+06
13 1 Li 0.227101 -0.274262 2.492254 3.265207e-03 -3.711217e-03 1.139260e-02 -3.232544e+06 5.542592e+06 1.693233e+06
14 1 Li -3.937601 0.709104 10.559197 6.277183e-03 -5.930074e-03 -3.791490e-03 1.694844e+06 1.703270e+06 6.222633e+06
15 2 P 11.284469 11.264304 5.069653 -2.787780e-03 2.460424e-03 1.631602e-03 3.273889e+07 1.704603e+07 1.581793e+07
16 2 P 1.737203 4.540631 6.113900 -2.799187e-03 -4.265082e-03 1.556246e-03 9.325844e+04 8.472827e+06 -2.453348e+07
17 2 P 4.978490 -0.267212 3.233457 -1.746205e-03 1.850017e-03 -3.101071e-03 1.305799e+07 -9.168588e+06 -2.133906e+07
18 2 P 4.782842 4.574205 7.957605 -2.325336e-03 1.097672e-04 1.268734e-03 3.235930e+06 3.876892e+07 -3.127419e+06
19 2 P 10.768697 1.724788 0.752776 1.034279e-03 -2.310954e-03 7.490599e-04 1.906606e+07 -1.964719e+06 -4.027114e+06
20 2 P -1.368860 2.657927 10.662570 2.822156e-03 3.242084e-04 7.889803e-04 -2.911492e+07 5.056697e+06 4.207557e+06
21 3 S 8.572779 0.195553 6.795272 -1.947348e-03 3.434933e-03 6.175500e-04 -5.284498e+06 -5.656274e+06 -1.033462e+07
22 3 S 1.335260 3.596698 4.356898 7.130983e-04 -2.405323e-03 -1.330339e-03 5.315134e+06 -1.506442e+06 2.093865e+07
23 3 S 12.141481 2.094921 2.254774 -3.434893e-03 -2.819930e-03 -8.581406e-04 -6.607833e+06 -1.137030e+07 9.102518e+06
24 3 S -2.749868 2.529582 9.137262 3.291312e-03 1.237966e-03 7.684295e-04 -8.182790e+06 -9.374141e+06 -1.875045e+06
25 3 S 9.149900 2.958248 0.891955 1.429620e-03 -3.182008e-03 8.557189e-04 1.031195e+06 4.818604e+06 -4.319659e+06
26 3 S 0.154185 1.399060 10.290006 4.236475e-03 1.313725e-03 -2.754878e-03 1.137286e+07 -8.225667e+06 1.261092e+07
27 3 S 9.595492 3.317270 5.426209 2.952305e-03 1.618213e-03 -6.210503e-03 3.365288e+06 -1.365768e+07 1.643361e+06
28 3 S 0.005319 0.584896 5.815791 -3.197206e-04 4.991807e-03 -1.056840e-03 4.087808e+06 -1.368595e+06 4.726210e+06
29 3 S 9.045091 -0.230146 3.486050 -3.149466e-03 2.317572e-03 8.539610e-04 -5.247259e+06 -5.406780e+06 3.192555e+06
30 3 S 0.502044 4.011867 7.650265 -1.915346e-03 7.246961e-05 -4.007329e-03 4.211963e+06 1.505079e+06 6.445088e+06
31 3 S 6.099502 0.289877 1.575974 1.439365e-03 -2.891147e-03 1.251371e-03 -5.219511e+06 -1.023148e+06 4.092232e+06
32 3 S 3.874609 4.375440 9.698114 -1.565516e-03 4.391299e-04 -9.656240e-04 -1.051373e+07 -6.775930e+06 1.244186e+07
33 3 S 6.286934 3.631478 3.464961 -4.617192e-03 -5.528055e-04 7.877333e-04 -2.307229e+06 -2.438285e+07 -4.525244e+06
34 3 S 3.221242 0.747177 7.942970 -6.166873e-03 6.163443e-03 -2.058575e-03 -4.952225e+06 -2.200335e+07 2.435361e+06
35 3 S 12.148804 5.507847 0.417043 1.755715e-03 9.065699e-04 -1.423695e-03 5.123172e+06 1.134841e+07 3.354074e+06
36 3 S -2.758941 -1.337484 10.324825 2.746779e-03 -2.710537e-03 1.487140e-03 4.078274e+06 -5.743098e+06 7.877052e+06
37 3 S 6.644805 0.470286 10.272150 -8.660129e-04 5.672106e-03 -4.055267e-03 3.793688e+05 6.075290e+06 -1.005670e+07
38 3 S 2.669051 3.752467 1.062950 8.386298e-04 -4.120070e-03 4.335019e-03 8.139322e+06 3.509557e+06 -3.662189e+06
39 3 S 3.503555 1.071143 3.303841 -2.552199e-03 6.481289e-04 6.207957e-05 -1.686818e+07 -5.475346e+06 5.746129e+06
40 3 S 6.397877 3.397996 7.783815 -3.492080e-03 -5.347246e-03 4.216967e-03 9.184040e+06 -6.774461e+06 6.774853e+06
41 3 S 6.003508 0.315703 5.046995 -5.649525e-03 -3.009619e-03 5.242121e-04 -9.711056e+06 -3.877855e+06 -2.703337e+06
42 3 S 3.725625 3.731379 6.314764 -3.780013e-03 -1.139169e-04 1.902727e-03 -1.253280e+07 6.641070e+06 -8.092183e+06
43 1 Li 0.334396 4.543137 2.431925 1.186593e-02 -2.689951e-03 -5.099812e-04 -6.646465e+06 1.416009e+06 -4.476667e+06
44 1 Li -0.385748 6.613294 7.177250 5.256682e-03 5.593188e-03 -4.886629e-03 4.518579e+06 -4.044477e+05 -3.093659e+05
45 1 Li 11.743857 10.802112 1.145069 5.530288e-03 4.932925e-03 -9.443777e-03 8.455366e+05 4.265295e+06 1.344276e+06
46 1 Li 9.963720 5.389411 1.470004 -8.852285e-03 -1.680257e-02 3.701205e-03 -2.051686e+06 -3.553578e+06 1.800151e+06
47 1 Li -0.159176 -1.239729 10.103638 6.126455e-03 8.529263e-03 -4.557750e-03 -4.728849e+06 1.333809e+06 -1.930604e+06
48 1 Li 8.642550 9.262614 5.535890 1.676404e-03 1.311570e-02 4.199591e-03 1.343286e+06 -5.655683e+05 4.584842e+06
49 1 Li 10.886408 1.171960 4.538381 3.177412e-04 -2.461435e-03 3.325517e-03 5.362790e+06 5.120446e+06 -1.027934e+06
50 1 Li 2.817458 7.354175 8.190970 -3.130200e-04 -6.465250e-03 -7.260635e-03 4.901333e+06 6.383343e+06 -6.704091e+06
51 1 Li 6.588851 8.386390 1.551002 1.858630e-03 -6.752149e-04 4.671145e-05 -2.719094e+05 3.105252e+06 1.483877e+06
52 1 Li 6.952599 7.700461 8.970853 -2.073567e-03 -3.755071e-03 -9.551559e-03 -1.224793e+07 1.703457e+06 -2.193857e+06
53 1 Li 2.498265 1.297975 5.544593 6.063103e-03 7.185976e-03 -2.881230e-04 6.735691e+05 -1.619390e+06 -2.766719e+06
54 1 Li 4.130423 6.817128 5.273342 2.566431e-03 5.669101e-03 -2.359448e-03 -6.003700e+06 3.227112e+06 1.756003e+07
55 1 Li 1.097877 9.457079 4.158600 4.991757e-03 5.315107e-03 -1.103698e-03 -6.238352e+06 -2.661624e+06 -6.364095e+06
56 1 Li 2.652828 8.316803 0.452245 -4.610641e-04 6.501590e-03 -3.704211e-03 1.903764e+06 5.487686e+06 -1.147486e+07
57 2 P 9.799336 5.300723 5.216863 2.768808e-03 -3.700629e-05 -1.933594e-03 -1.482655e+07 3.533983e+07 -1.693672e+07
58 2 P 3.695566 10.490393 6.060348 5.845703e-03 -3.264209e-03 1.607398e-03 -1.334124e+07 7.344049e+06 1.397010e+05
59 2 P 6.703675 5.566373 3.244847 1.914448e-03 -3.662096e-03 3.249183e-03 3.153540e+07 2.512757e+06 -1.030804e+07
60 2 P 6.521742 10.661515 8.223017 -2.294346e-03 -3.142263e-03 3.731873e-03 2.991694e+06 -2.336800e+06 -3.009701e+07
61 2 P 12.613950 7.567692 0.663927 2.136442e-03 -1.463204e-03 7.710451e-04 1.313431e+07 -2.745520e+07 -6.561963e+06
62 2 P 0.339576 8.636625 10.567833 -4.249017e-03 -1.230687e-03 -8.475766e-05 7.440917e+06 -1.998641e+07 1.516063e+06
63 3 S 10.163868 6.236169 6.984440 -1.722199e-03 2.782164e-03 2.546030e-04 -3.615958e+06 -7.905056e+06 -1.993612e+06
64 3 S 3.377655 9.621653 4.250149 1.218208e-03 -5.835125e-03 4.723938e-04 -9.294418e+06 -1.657021e+06 1.639895e+05
65 3 S 14.080436 7.674727 2.160838 6.635706e-03 -1.793345e-03 2.516452e-03 -4.761843e+06 -2.264738e+06 6.588068e+06
66 3 S -0.966658 8.195584 8.967555 3.186097e-03 2.828167e-03 5.827762e-04 3.690317e+06 9.373376e+06 1.944607e+07
67 3 S 10.942342 8.575006 0.961850 -1.171910e-03 -1.205369e-04 4.729359e-03 -1.823638e+07 1.325885e+07 1.204212e+07
68 3 S 2.072026 7.363972 10.430450 -1.003065e-03 9.338962e-04 -4.730601e-03 -2.215079e+07 1.359938e+07 4.085916e+06
69 3 S 11.261035 9.261333 5.261031 3.540049e-03 -3.589184e-03 -6.423373e-03 6.176987e+04 -1.201693e+07 1.505882e+06
70 3 S 1.752718 6.610537 5.943427 3.182391e-03 -2.901239e-04 5.006990e-03 -4.267946e+05 -1.148075e+07 7.458335e+06
71 3 S 11.001663 5.993066 3.691475 7.280405e-03 6.885748e-03 -1.999494e-04 -7.482002e+06 -1.903368e+07 1.066050e+07
72 3 S 2.556850 9.882632 7.655779 -6.308192e-04 -4.811652e-03 1.237901e-03 9.931688e+06 -2.400935e+06 -9.718225e+06
73 3 S 7.624840 6.186412 1.547612 5.332510e-04 4.082711e-03 -1.880156e-04 1.343817e+07 -6.832926e+06 -3.155410e+06
74 3 S 5.541419 9.901071 9.775905 -4.531534e-03 7.545697e-04 -2.257714e-03 3.207914e+06 2.309413e+06 8.744955e+06
75 3 S 8.216764 9.627125 3.249303 5.590317e-04 4.060378e-03 -2.701148e-03 -5.505023e+06 2.045115e+07 1.461667e+06
76 3 S 5.066949 6.662120 7.538021 -4.325723e-03 2.133812e-03 -3.288041e-03 -1.195937e+06 -2.659655e+07 2.054293e+06
77 3 S 13.977459 11.673924 0.539607 3.521140e-03 1.221329e-03 2.018941e-03 6.147303e+05 -1.178668e+06 3.033787e+06
78 3 S -0.850743 4.620478 10.939291 2.168658e-03 8.017138e-04 5.262004e-03 4.514969e+06 3.289249e+06 -1.661576e+06
79 3 S 8.423424 6.468088 10.236624 -2.628669e-03 -5.872507e-03 3.058556e-05 1.717653e+07 -7.318124e+06 -2.635456e+04
80 3 S 4.654746 9.909368 1.201796 -1.756619e-03 -1.406004e-03 2.787259e-04 3.017706e+06 -1.942807e+06 -2.866649e+07
81 3 S 5.142136 6.751067 3.325026 1.697118e-03 3.567566e-04 -1.311173e-03 -3.094896e+07 2.517665e+07 -6.298803e+06
82 3 S 8.180232 9.484253 7.880330 1.833767e-03 1.915607e-03 3.585343e-03 9.979307e+06 7.135248e+06 6.913981e+06
83 3 S 7.718610 6.228505 4.997491 -4.879969e-04 5.663405e-03 5.213035e-03 2.283601e+07 -6.570295e+06 5.170118e+06
84 3 S 5.620959 9.784742 6.322878 -4.155252e-03 -4.311122e-04 -7.486354e-05 1.290337e+07 1.606559e+07 1.379555e+07
ITEM: TIMESTEP
149006
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.953389 1.889386 2.541804 -2.707116e-03 -9.147970e-03 1.266473e-03 -8.375200e+06 -2.241619e+06 2.919090e+06
2 1 Li 0.082093 10.171675 7.885919 -1.677091e-02 9.712262e-03 -4.533958e-03 -3.518661e+06 4.049511e+06 -8.854573e+05
3 1 Li 4.949713 2.083384 9.897721 2.473943e-03 -1.133289e-02 -6.476553e-03 -5.241478e+06 1.390911e+06 -3.552359e+06
4 1 Li 4.615874 2.391019 1.503606 2.407154e-03 -4.957580e-03 6.033970e-03 4.808398e+06 -3.737930e+05 2.809446e+06
5 1 Li 8.118139 4.059300 9.586688 6.541633e-03 7.945157e-03 -2.806715e-03 1.042763e+06 6.278553e+06 1.059354e+06
6 1 Li 10.194304 8.102552 3.251976 2.100713e-03 -7.506374e-03 -8.511702e-04 -2.414103e+05 1.167818e+07 -4.866297e+06
7 1 Li 3.310177 5.920209 1.760501 -3.419116e-03 6.205009e-03 -1.016005e-03 -2.735728e+06 -5.242125e+06 5.044898e+06
8 1 Li 10.737694 4.050398 7.460287 -6.009441e-03 -8.247435e-04 2.139204e-03 2.173620e+06 3.970715e+06 -5.977900e+06
9 1 Li 1.188646 5.156464 9.872635 -6.433691e-04 3.107813e-03 -1.267786e-03 7.093547e+06 -3.136940e+06 2.975545e+05
10 1 Li 9.858796 10.151975 9.501987 -2.570800e-03 -5.427144e-03 -1.301715e-02 -2.487354e+06 -3.801629e+06 9.769920e+05
11 1 Li 7.203642 2.974006 5.596272 7.846153e-03 5.533467e-03 -3.082544e-03 -1.375945e+06 1.152587e+06 9.410602e+05
12 1 Li 0.934248 1.523104 8.081533 -3.486621e-03 4.183431e-03 -1.189175e-02 -4.493991e+06 2.772618e+06 -5.338066e+06
13 1 Li 0.232890 -0.280920 2.513910 2.883556e-03 -3.036880e-03 1.157627e-02 -3.025398e+06 5.528515e+06 1.406929e+06
14 1 Li -3.925708 0.698006 10.552649 6.432524e-03 -5.716503e-03 -3.031382e-03 9.043069e+05 1.770653e+06 6.259299e+06
15 2 P 11.280119 11.269416 5.073184 -1.901337e-03 2.856443e-03 2.039379e-03 3.226852e+07 1.210978e+07 1.417546e+07
16 2 P 1.731848 4.532803 6.116181 -2.766857e-03 -3.982789e-03 8.555396e-04 2.195189e+06 1.212559e+07 -2.687207e+07
17 2 P 4.975546 -0.263853 3.227079 -1.397242e-03 1.580679e-03 -3.655579e-03 1.251356e+07 -1.055250e+07 -1.947362e+07
18 2 P 4.778560 4.575435 7.959941 -2.215630e-03 1.144640e-03 1.168713e-03 4.748806e+06 3.722617e+07 -4.178390e+06
19 2 P 10.771094 1.720323 0.754054 1.565497e-03 -2.325980e-03 5.934178e-04 1.997298e+07 7.904565e+05 -7.378307e+06
20 2 P -1.364272 2.658609 10.664158 2.036036e-03 4.484121e-04 9.353932e-04 -2.852468e+07 4.073737e+06 6.567165e+06
21 3 S 8.569047 0.201949 6.796230 -2.091463e-03 3.289107e-03 3.467614e-04 -5.731716e+06 -5.320629e+06 -1.023002e+07
22 3 S 1.336680 3.592109 4.354875 8.512378e-04 -2.442471e-03 -7.698359e-04 5.208060e+06 -1.393176e+06 2.162608e+07
23 3 S 12.134773 2.089378 2.253368 -3.580263e-03 -3.110749e-03 -5.984157e-04 -4.551082e+06 -1.082533e+07 1.061320e+07
24 3 S -2.743836 2.531618 9.138660 3.066317e-03 9.846084e-04 7.246405e-04 -8.816476e+06 -9.845835e+06 -1.429475e+06
25 3 S 9.152563 2.952299 0.893421 1.433618e-03 -3.057131e-03 7.468319e-04 -6.818893e+05 4.573783e+06 -3.930545e+06
26 3 S 0.162467 1.401305 10.285103 4.520122e-03 1.111115e-03 -2.422946e-03 1.032236e+07 -7.134632e+06 1.253427e+07
27 3 S 9.601135 3.320048 5.414518 3.040934e-03 1.249207e-03 -6.161838e-03 3.464888e+06 -1.434126e+07 1.860215e+06
28 3 S 0.004913 0.594340 5.813967 -2.001106e-04 4.879888e-03 -9.323501e-04 4.994125e+06 -6.980543e+06 4.703614e+06
29 3 S 9.039072 -0.225845 3.487786 -3.279079e-03 2.181213e-03 9.423011e-04 -4.704610e+06 -4.885676e+06 3.549471e+06
30 3 S 0.498513 4.012149 7.642869 -1.835702e-03 9.789039e-05 -3.801172e-03 1.782346e+06 4.297941e+05 9.099245e+06
31 3 S 6.102035 0.284325 1.578400 1.303731e-03 -2.894318e-03 1.340846e-03 -5.045471e+06 6.906514e+05 2.748983e+06
32 3 S 3.871397 4.376150 9.696614 -1.847180e-03 2.605079e-04 -6.205957e-04 -1.094629e+07 -6.788239e+06 1.375488e+07
33 3 S 6.278155 3.629901 3.466355 -4.663713e-03 -1.205566e-03 6.759261e-04 -1.374675e+06 -2.525414e+07 -3.949127e+06
34 3 S 3.209596 0.758460 7.939243 -6.287185e-03 5.517186e-03 -1.982763e-03 -4.387727e+06 -2.692685e+07 3.262440e+06
35 3 S 12.152256 5.509836 0.414437 1.882858e-03 1.191310e-03 -1.324424e-03 4.597026e+06 1.032493e+07 4.147032e+06
36 3 S -2.753706 -1.342844 10.327783 2.848190e-03 -2.851458e-03 1.690592e-03 3.717145e+06 -5.054612e+06 7.635319e+06
37 3 S 6.643274 0.481273 10.264308 -8.514565e-04 5.783805e-03 -4.279804e-03 6.997868e+05 2.594907e+06 -7.139915e+06
38 3 S 2.670777 3.744656 1.070997 1.073598e-03 -4.009682e-03 4.199518e-03 9.747946e+06 4.751575e+06 -6.500815e+06
39 3 S 3.498335 1.072286 3.304124 -2.983763e-03 5.023868e-04 2.043154e-04 -1.601785e+07 -5.582849e+06 5.068067e+06
40 3 S 6.391433 3.387687 7.791910 -3.261128e-03 -5.503447e-03 4.375553e-03 8.262090e+06 -5.267969e+06 5.413196e+06
41 3 S 5.992552 0.310009 5.047919 -5.893758e-03 -3.100956e-03 4.593179e-04 -9.032459e+06 -3.160083e+06 -2.213198e+06
42 3 S 3.718195 3.731373 6.318180 -4.089946e-03 4.916094e-05 1.684981e-03 -1.114619e+07 5.751935e+06 -8.399813e+06
43 1 Li 0.355957 4.537997 2.430351 1.102817e-02 -2.483638e-03 -1.116194e-03 -7.058182e+06 1.960481e+06 -5.501993e+06
44 1 Li -0.375231 6.623823 7.168012 5.722900e-03 5.538697e-03 -4.918997e-03 3.189294e+06 -4.540764e+05 -2.565821e+05
45 1 Li 11.754433 10.812007 1.127410 5.590379e-03 5.376129e-03 -9.256945e-03 1.811215e+05 3.061641e+06 1.665640e+06
46 1 Li 9.946462 5.357282 1.477072 -8.997787e-03 -1.717950e-02 3.903273e-03 -4.032964e+05 -2.763564e+06 1.550221e+06
47 1 Li -0.148015 -1.223449 10.094865 5.457076e-03 8.691811e-03 -4.795659e-03 -6.243878e+06 1.399101e+06 -2.015312e+06
48 1 Li 8.646162 9.287276 5.544477 1.861723e-03 1.304252e-02 4.672368e-03 1.717546e+06 -5.491333e+05 3.223764e+06
49 1 Li 10.887598 1.167817 4.544517 9.655926e-04 -1.848167e-03 3.180965e-03 5.299968e+06 4.954297e+06 -1.327971e+06
50 1 Li 2.817258 7.342803 8.176422 2.386196e-04 -5.659856e-03 -8.009544e-03 4.174071e+06 6.825465e+06 -5.669144e+06
51 1 Li 6.592316 8.385430 1.551245 1.809010e-03 -2.778737e-04 2.206126e-04 -5.318643e+05 3.428439e+06 1.378061e+06
52 1 Li 6.947149 7.693774 8.952540 -3.516912e-03 -3.598339e-03 -9.770728e-03 -1.151701e+07 8.501852e+05 -1.477909e+06
53 1 Li 2.509921 1.311289 5.543770 6.107957e-03 6.973495e-03 -6.026864e-04 1.059659e+05 -1.828005e+06 -2.411552e+06
54 1 Li 4.134688 6.828217 5.270952 1.813634e-03 6.057148e-03 -2.573292e-04 -6.366217e+06 3.196974e+06 1.701495e+07
55 1 Li 1.106674 9.466777 4.155812 4.195843e-03 4.967759e-03 -1.874511e-03 -6.824482e+06 -3.017762e+06 -6.327379e+06
56 1 Li 2.652290 8.329836 0.444007 -2.510938e-04 7.136031e-03 -5.058127e-03 1.548286e+06 4.996664e+06 -1.082959e+07
57 2 P 9.804174 5.301554 5.212765 2.374819e-03 9.845625e-04 -2.379817e-03 -1.402031e+07 3.967267e+07 -1.588882e+07
58 2 P 3.706194 10.484261 6.063320 5.357341e-03 -2.999557e-03 1.603713e-03 -2.233986e+07 1.198924e+07 -3.613158e+05
59 2 P 6.708041 5.559400 3.250665 2.743182e-03 -3.506449e-03 2.949488e-03 2.937782e+07 8.803756e+06 -1.159968e+07
60 2 P 6.517447 10.655486 8.229270 -2.185545e-03 -3.107781e-03 2.868392e-03 4.927414e+06 4.771751e+06 -3.319488e+07
61 2 P 12.618283 7.564156 0.665180 2.436326e-03 -2.195740e-03 6.420491e-04 8.952300e+06 -2.638018e+07 -2.887601e+06
62 2 P 0.331722 8.633860 10.567721 -3.988855e-03 -1.753964e-03 -3.020747e-05 1.153290e+07 -1.847595e+07 2.486819e+06
63 3 S 10.160586 6.241272 6.984911 -1.799664e-03 2.554544e-03 1.927541e-04 -2.327080e+06 -9.309633e+06 -2.699684e+06
64 3 S 3.379604 9.610530 4.250976 9.888759e-04 -5.853944e-03 4.975446e-04 -8.100229e+06 4.236644e+04 1.762408e+06
65 3 S 14.092812 7.671099 2.165695 6.488577e-03 -1.845162e-03 2.660264e-03 -6.212894e+06 -1.730764e+06 4.423565e+06
66 3 S -0.960491 8.201097 8.969151 3.239853e-03 3.057639e-03 1.064055e-03 4.970216e+05 8.159317e+06 1.715731e+07
67 3 S 10.939710 8.575047 0.971090 -1.587114e-03 2.137670e-04 5.029219e-03 -1.336342e+07 1.214979e+07 1.090105e+07
68 3 S 2.069578 7.366190 10.421637 -1.592484e-03 1.283250e-03 -4.612553e-03 -2.268554e+07 1.298637e+07 4.738389e+06
69 3 S 11.267597 9.254282 5.248875 3.540410e-03 -3.837195e-03 -6.366321e-03 7.718433e+04 -6.949826e+06 2.628387e+06
70 3 S 1.758732 6.609548 5.953045 3.162421e-03 -6.138629e-04 5.187002e-03 -9.908943e+05 -1.313716e+07 6.383212e+06
71 3 S 11.015346 6.005495 3.691391 7.061595e-03 6.339145e-03 1.014983e-04 -8.921284e+06 -2.229888e+07 1.224750e+07
72 3 S 2.555814 9.873448 7.657826 -3.684043e-04 -4.851259e-03 9.574249e-04 9.995978e+06 -7.617496e+05 -1.156290e+07
73 3 S 7.626260 6.193965 1.547217 8.847958e-04 3.871902e-03 -2.344133e-04 1.330143e+07 -9.062722e+06 -3.780246e+05
74 3 S 5.532955 9.902684 9.771894 -4.448028e-03 7.892988e-04 -1.991304e-03 2.997096e+06 3.547007e+05 1.143468e+07
75 3 S 8.217754 9.635364 3.244281 4.103415e-04 4.575164e-03 -2.651179e-03 -5.780038e+06 1.880866e+07 2.251470e+06
76 3 S 5.058777 6.665641 7.531907 -4.335959e-03 1.422758e-03 -3.223750e-03 2.813000e+05 -2.738710e+07 2.729101e+06
77 3 S 13.984153 11.676102 0.543487 3.530620e-03 1.155836e-03 2.080739e-03 2.168853e+05 -3.760824e+06 1.727633e+06
78 3 S -0.846491 4.621941 10.949183 2.285829e-03 8.747547e-04 5.202401e-03 4.460151e+06 2.288435e+06 -2.703250e+06
79 3 S 8.418769 6.456828 10.236631 -2.167404e-03 -6.031058e-03 -3.197967e-07 1.780374e+07 -4.919622e+06 -2.321485e+06
80 3 S 4.651478 9.906691 1.201605 -1.679364e-03 -1.456338e-03 -4.735398e-04 2.799608e+06 -1.927661e+06 -2.850846e+07
81 3 S 5.144574 6.752370 3.322393 9.103052e-04 9.941709e-04 -1.474323e-03 -2.880780e+07 2.328821e+07 -6.144422e+06
82 3 S 8.184002 9.487954 7.887283 2.073790e-03 2.100517e-03 3.759373e-03 8.324215e+06 6.981109e+06 6.428012e+06
83 3 S 7.718404 6.238977 5.007525 1.187437e-04 5.443906e-03 5.302658e-03 2.327009e+07 -9.935901e+06 1.807494e+06
84 3 S 5.613439 9.784401 6.323101 -3.728531e-03 -3.863275e-05 2.904357e-04 1.940174e+07 1.375574e+07 1.397038e+07
ITEM: TIMESTEP
149007
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.947141 1.871838 2.544451 -3.696471e-03 -9.365618e-03 1.579813e-03 -7.879038e+06 -1.274142e+06 2.225850e+06
2 1 Li 0.050234 10.190949 7.877463 -1.704379e-02 1.013185e-02 -4.584798e-03 -8.517596e+05 2.783795e+06 8.114219e+04
3 1 Li 4.953505 2.062158 9.884947 1.755946e-03 -1.107542e-02 -6.935764e-03 -6.586002e+06 2.923695e+06 -3.955680e+06
4 1 Li 4.620901 2.381422 1.515255 2.965631e-03 -4.964025e-03 6.337525e-03 4.360713e+06 3.026076e+05 2.141185e+06
5 1 Li 8.130751 4.074992 9.581558 6.633386e-03 8.671373e-03 -2.659139e-03 4.205280e+05 5.610790e+06 1.387744e+06
6 1 Li 10.198091 8.089659 3.249725 2.003421e-03 -5.991282e-03 -1.456836e-03 -1.373816e+06 1.329548e+07 -5.090009e+06
7 1 Li 3.303531 5.931440 1.759246 -3.746119e-03 5.552051e-03 -3.794808e-04 -2.618990e+06 -5.541453e+06 5.432089e+06
8 1 Li 10.726607 4.049375 7.463670 -5.719905e-03 -2.917244e-04 1.370904e-03 2.630907e+06 4.802530e+06 -6.674500e+06
9 1 Li 1.188298 5.162016 9.870307 2.138924e-04 2.719360e-03 -1.229889e-03 7.011496e+06 -3.274233e+06 3.346687e+05
10 1 Li 9.853465 10.141545 9.477470 -2.837221e-03 -5.792687e-03 -1.279829e-02 -1.876719e+06 -2.172649e+06 2.714396e+06
11 1 Li 7.218380 2.984523 5.590572 7.627716e-03 5.680681e-03 -2.901349e-03 -2.272062e+06 1.230151e+06 2.061114e+06
12 1 Li 0.927170 1.531640 8.058530 -4.064515e-03 4.507045e-03 -1.247394e-02 -4.987142e+06 2.520984e+06 -4.154593e+06
13 1 Li 0.237998 -0.286298 2.535890 2.534839e-03 -2.377725e-03 1.173035e-02 -2.730544e+06 5.334718e+06 1.046385e+06
14 1 Li -3.913604 0.687305 10.547544 6.497164e-03 -5.500695e-03 -2.272124e-03 1.137447e+05 1.819031e+06 6.250462e+06
15 2 P 11.277437 11.275127 5.077442 -1.042526e-03 3.116299e-03 2.397047e-03 3.082719e+07 6.873333e+06 1.201320e+07
16 2 P 1.726610 4.525617 6.117081 -2.681052e-03 -3.610726e-03 1.057760e-04 4.189666e+06 1.530877e+07 -2.818749e+07
17 2 P 4.973238 -0.261037 3.219697 -1.072455e-03 1.284700e-03 -4.153738e-03 1.136913e+07 -1.122179e+07 -1.697648e+07
18 2 P 4.774544 4.578585 7.962072 -2.068590e-03 2.120105e-03 1.046860e-03 6.113431e+06 3.433651e+07 -4.802194e+06
19 2 P 10.774516 1.715893 0.754949 2.112475e-03 -2.266877e-03 3.479423e-04 2.012632e+07 3.620924e+06 -1.065879e+07
20 2 P -1.361148 2.659513 10.666089 1.281802e-03 5.441828e-04 1.140101e-03 -2.689927e+07 2.941580e+06 8.429521e+06
21 3 S 8.565028 0.208084 6.796678 -2.245171e-03 3.160319e-03 8.569685e-05 -5.879949e+06 -4.571275e+06 -9.617624e+06
22 3 S 1.338361 3.587439 4.353927 9.841116e-04 -2.480880e-03 -2.022659e-04 4.860559e+06 -1.446302e+06 2.152466e+07
23 3 S 12.127838 2.083296 2.252489 -3.671310e-03 -3.387503e-03 -2.983871e-04 -2.250786e+06 -1.010265e+07 1.220366e+07
24 3 S -2.738249 2.533168 9.139984 2.827106e-03 7.207455e-04 6.921072e-04 -9.458824e+06 -1.023526e+07 -1.065857e+06
25 3 S 9.155192 2.946583 0.894693 1.396736e-03 -2.946460e-03 6.495366e-04 -2.167223e+06 3.934036e+06 -3.486320e+06
26 3 S 0.171255 1.403182 10.280821 4.772745e-03 9.420916e-04 -2.094943e-03 8.726410e+06 -5.743951e+06 1.246678e+07
27 3 S 9.606941 3.322108 5.402919 3.134751e-03 8.780693e-04 -6.114415e-03 3.565377e+06 -1.389931e+07 1.942310e+06
28 3 S 0.004753 0.603427 5.812375 -5.867756e-05 4.634169e-03 -8.107221e-04 5.759073e+06 -1.184879e+07 4.568189e+06
29 3 S 9.032820 -0.221788 3.489697 -3.393933e-03 2.061836e-03 1.039422e-03 -3.916201e+06 -4.255294e+06 3.799675e+06
30 3 S 0.495074 4.012446 7.635928 -1.819762e-03 9.716850e-05 -3.532850e-03 -5.123365e+05 -4.880044e+05 1.141210e+07
31 3 S 6.104318 0.278812 1.580962 1.176547e-03 -2.854053e-03 1.391150e-03 -4.660464e+06 2.462742e+06 1.029527e+06
32 3 S 3.867642 4.376521 9.695797 -2.137576e-03 8.459763e-05 -2.499483e-04 -1.105926e+07 -6.586394e+06 1.442836e+07
33 3 S 6.269296 3.627067 3.467545 -4.687515e-03 -1.868420e-03 5.794652e-04 -2.829428e+05 -2.507278e+07 -3.402029e+06
34 3 S 3.197723 0.768397 7.935673 -6.396603e-03 4.756947e-03 -1.888718e-03 -3.722864e+06 -3.101787e+07 3.947665e+06
35 3 S 12.155940 5.512335 0.412042 1.997313e-03 1.444609e-03 -1.207361e-03 4.038708e+06 8.882832e+06 4.790756e+06
36 3 S -2.748291 -1.348460 10.331117 2.942511e-03 -2.977648e-03 1.888950e-03 3.357571e+06 -4.441432e+06 7.381910e+06
37 3 S 6.641778 0.492387 10.256115 -8.249522e-04 5.808608e-03 -4.431045e-03 1.341762e+06 -8.979719e+05 -4.212965e+06
38 3 S 2.672988 3.737082 1.078717 1.346840e-03 -3.873308e-03 3.999212e-03 1.097950e+07 5.740360e+06 -8.855358e+06
39 3 S 3.492321 1.073155 3.304659 -3.389795e-03 3.512583e-04 3.266560e-04 -1.473719e+07 -5.916702e+06 4.221005e+06
40 3 S 6.385400 3.377113 7.800268 -3.062742e-03 -5.618196e-03 4.502842e-03 6.917018e+06 -3.272751e+06 4.117031e+06
41 3 S 5.981149 0.304166 5.048734 -6.120080e-03 -3.178655e-03 4.057889e-04 -7.973510e+06 -2.643409e+06 -1.868884e+06
42 3 S 3.710216 3.731663 6.321180 -4.362931e-03 1.911021e-04 1.463460e-03 -9.463641e+06 5.031488e+06 -8.486580e+06
43 1 Li 0.375890 4.533340 2.427522 1.015661e-02 -2.222392e-03 -1.836294e-03 -7.354784e+06 2.354057e+06 -6.334866e+06
44 1 Li -0.363988 6.634235 7.158716 6.027103e-03 5.483387e-03 -4.943037e-03 1.774014e+06 -4.944266e+05 -1.044039e+05
45 1 Li 11.765056 10.822599 1.110144 5.572765e-03 5.675825e-03 -9.041121e-03 -5.100962e+05 1.830015e+06 1.949124e+06
46 1 Li 9.929113 5.324528 1.484490 -8.955604e-03 -1.746827e-02 4.077356e-03 1.160410e+06 -1.865934e+06 1.285810e+06
47 1 Li -0.138288 -1.206835 10.085640 4.615697e-03 8.873016e-03 -5.047388e-03 -7.633906e+06 1.520649e+06 -2.091694e+06
48 1 Li 8.650168 9.311790 5.553800 2.095584e-03 1.298637e-02 4.982273e-03 2.116150e+06 -4.657010e+05 1.840687e+06
49 1 Li 10.890014 1.164806 4.550348 1.599714e-03 -1.253071e-03 3.002172e-03 5.123514e+06 4.846962e+06 -1.635196e+06
50 1 Li 2.818027 7.333009 8.160585 6.948604e-04 -4.807736e-03 -8.622769e-03 3.328497e+06 7.230205e+06 -4.361098e+06
51 1 Li 6.595668 8.385259 1.551808 1.727478e-03 1.547762e-04 3.822407e-04 -8.219139e+05 3.689950e+06 1.278896e+06
52 1 Li 6.939061 7.687316 8.933904 -4.862390e-03 -3.545506e-03 -9.902664e-03 -1.058912e+07 4.383508e+04 -6.236853e+05
53 1 Li 2.521590 1.324181 5.542392 6.094308e-03 6.741750e-03 -8.715044e-04 -3.732951e+05 -2.032643e+06 -2.005766e+06
54 1 Li 4.137512 6.840016 5.272477 1.034338e-03 6.444822e-03 1.736142e-03 -6.464641e+06 3.137245e+06 1.577594e+07
55 1 Li 1.113890 9.475806 4.151574 3.335266e-03 4.581836e-03 -2.640811e-03 -7.360086e+06 -3.364859e+06 -6.263886e+06
56 1 Li 2.652112 8.344033 0.433292 -8.617406e-05 7.705293e-03 -6.330998e-03 1.166054e+06 4.316691e+06 -1.007152e+07
57 2 P 9.808308 5.304447 5.207865 2.004410e-03 2.100082e-03 -2.793104e-03 -1.324159e+07 4.217612e+07 -1.437179e+07
58 2 P 3.715676 10.478762 6.066278 4.632860e-03 -2.619175e-03 1.584565e-03 -3.100604e+07 1.602520e+07 -1.094352e+06
59 2 P 6.713917 5.552875 3.255882 3.493068e-03 -3.187676e-03 2.620900e-03 2.557726e+07 1.470493e+07 -1.261091e+07
60 2 P 6.513403 10.649721 8.233814 -2.032318e-03 -2.893930e-03 1.935947e-03 6.388029e+06 1.102321e+07 -3.533647e+07
61 2 P 12.623060 7.559256 0.666276 2.618885e-03 -2.887904e-03 6.152916e-04 4.370452e+06 -2.435564e+07 9.043692e+05
62 2 P 0.324454 8.630135 10.567729 -3.622151e-03 -2.228965e-03 5.162186e-05 1.550850e+07 -1.633387e+07 3.520609e+06
63 3 S 10.157185 6.245911 6.985245 -1.845424e-03 2.295361e-03 1.140759e-04 -1.091539e+06 -1.046681e+07 -3.284905e+06
64 3 S 3.381151 9.599417 4.251892 7.913961e-04 -5.832190e-03 5.656249e-04 -6.936664e+06 1.800113e+06 3.394829e+06
65 3 S 14.104875 7.667388 2.170771 6.310331e-03 -1.884168e-03 2.748668e-03 -7.540809e+06 -1.173285e+06 2.207262e+06
66 3 S -0.954295 8.207005 8.971601 3.210253e-03 3.256525e-03 1.480829e-03 -2.851595e+06 6.853630e+06 1.447563e+07
67 3 S 10.936424 8.575696 0.980874 -1.867532e-03 5.151295e-04 5.298758e-03 -7.891229e+06 1.074154e+07 9.416576e+06
68 3 S 2.066013 7.369062 10.413070 -2.191036e-03 1.615368e-03 -4.483856e-03 -2.274303e+07 1.220748e+07 5.189634e+06
69 3 S 11.274156 9.246886 5.236853 3.544888e-03 -3.953294e-03 -6.283927e-03 1.486435e+05 -1.746670e+06 3.838208e+06
70 3 S 1.764689 6.607902 5.962972 3.129706e-03 -9.750888e-04 5.339644e-03 -1.597192e+06 -1.429040e+07 5.047114e+06
71 3 S 11.028569 6.016807 3.691910 6.814054e-03 5.717742e-03 4.395523e-04 -1.011623e+07 -2.512293e+07 1.343595e+07
72 3 S 2.555272 9.864231 7.659296 -1.066808e-04 -4.852521e-03 6.341938e-04 9.902539e+06 8.229656e+05 -1.302855e+07
73 3 S 7.628335 6.201057 1.546799 1.234792e-03 3.607018e-03 -2.105613e-04 1.326388e+07 -1.118960e+07 2.198500e+06
74 3 S 5.524644 9.904306 9.768452 -4.371722e-03 7.756529e-04 -1.662046e-03 2.944617e+06 -1.417452e+06 1.364827e+07
75 3 S 8.218467 9.644539 3.239380 2.537868e-04 5.045106e-03 -2.583685e-03 -6.128846e+06 1.675090e+07 2.962770e+06
76 3 S 5.050608 6.667795 7.525924 -4.308354e-03 7.007962e-04 -3.144593e-03 1.956654e+06 -2.751598e+07 3.389813e+06
77 3 S 13.990853 11.678091 0.547451 3.533252e-03 1.023549e-03 2.110272e-03 -1.310758e+05 -6.328680e+06 4.488801e+05
78 3 S -0.842019 4.623516 10.958937 2.401836e-03 9.202070e-04 5.120504e-03 4.280535e+06 1.136663e+06 -3.687853e+06
79 3 S 8.414998 6.445321 10.236519 -1.695012e-03 -6.130050e-03 -9.165385e-05 1.816033e+07 -2.406722e+06 -4.618863e+06
80 3 S 4.648344 9.903932 1.199996 -1.611173e-03 -1.505698e-03 -1.216714e-03 2.435946e+06 -1.775750e+06 -2.794503e+07
81 3 S 5.145593 6.754851 3.319466 1.950875e-04 1.571082e-03 -1.628092e-03 -2.556559e+07 2.051472e+07 -5.491687e+06
82 3 S 8.188189 9.491995 7.894553 2.270494e-03 2.279852e-03 3.922190e-03 6.554651e+06 6.577352e+06 5.821720e+06
83 3 S 7.719347 6.248936 5.017640 7.328065e-04 5.143300e-03 5.309363e-03 2.338467e+07 -1.308170e+07 -1.470112e+06
84 3 S 5.606893 9.784730 6.324019 -3.134516e-03 2.910144e-04 6.579608e-04 2.585534e+07 1.129269e+07 1.394602e+07
ITEM: TIMESTEP
149008
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.939082 1.854002 2.547614 -4.622844e-03 -9.465645e-03 1.806888e-03 -7.284146e+06 -1.964737e+05 1.478171e+06
2 1 Li 0.018173 10.210873 7.869027 -1.701330e-02 1.039042e-02 -4.510745e-03 1.670101e+06 1.279208e+06 1.222061e+06
3 1 Li 4.955794 2.041620 9.871269 8.732754e-04 -1.064452e-02 -7.446155e-03 -7.960703e+06 4.367309e+06 -4.308221e+06
4 1 Li 4.626933 2.371875 1.527398 3.470021e-03 -4.890636e-03 6.563060e-03 3.877562e+06 9.964452e+05 1.449426e+06
5 1 Li 8.143480 4.091980 9.576752 6.656971e-03 9.316580e-03 -2.480242e-03 -1.559244e+05 4.837043e+06 1.603173e+06
6 1 Li 10.201595 8.079836 3.246322 1.778424e-03 -4.300708e-03 -2.081883e-03 -2.363385e+06 1.461371e+07 -5.160454e+06
7 1 Li 3.296272 5.941395 1.759232 -4.055570e-03 4.870979e-03 2.970883e-04 -2.399678e+06 -5.760106e+06 5.699655e+06
8 1 Li 10.716126 4.049465 7.465527 -5.382722e-03 3.304237e-04 5.268384e-04 3.019436e+06 5.432967e+06 -7.229850e+06
9 1 Li 1.189550 5.166799 9.868046 1.056585e-03 2.316319e-03 -1.189297e-03 6.840518e+06 -3.403261e+06 3.555532e+05
10 1 Li 9.847699 10.130608 9.453564 -3.023587e-03 -5.971364e-03 -1.237364e-02 -1.134653e+06 -6.571092e+05 4.505977e+06
11 1 Li 7.232607 2.995329 5.585345 7.310245e-03 5.842355e-03 -2.593549e-03 -3.089751e+06 1.323018e+06 3.054211e+06
12 1 Li 0.918950 1.540781 8.034570 -4.701936e-03 4.799032e-03 -1.291008e-02 -5.418673e+06 2.196365e+06 -2.784747e+06
13 1 Li 0.242497 -0.290446 2.558128 2.227833e-03 -1.751381e-03 1.184346e-02 -2.364182e+06 5.007865e+06 5.958558e+05
14 1 Li -3.901459 0.677004 10.543873 6.472266e-03 -5.284968e-03 -1.517132e-03 -6.439039e+05 1.829990e+06 6.205632e+06
15 2 P 11.276345 11.281172 5.082316 -2.356165e-04 3.235630e-03 2.691057e-03 2.846395e+07 1.621991e+06 9.359915e+06
16 2 P 1.721589 4.519229 6.116534 -2.546115e-03 -3.161716e-03 -6.647873e-04 5.933803e+06 1.793693e+07 -2.836080e+07
17 2 P 4.971503 -0.258797 3.211433 -7.866649e-04 9.816170e-04 -4.579137e-03 9.688212e+06 -1.112283e+07 -1.389179e+07
18 2 P 4.770859 4.583508 7.963965 -1.889701e-03 3.002639e-03 9.150394e-04 7.183924e+06 3.024112e+07 -4.956681e+06
19 2 P 10.778973 1.711643 0.755294 2.655327e-03 -2.133125e-03 1.561915e-05 1.953004e+07 6.381968e+06 -1.375565e+07
20 2 P -1.359402 2.660579 10.668460 5.844265e-04 6.084361e-04 1.389545e-03 -2.437460e+07 1.727285e+06 9.779771e+06
21 3 S 8.560711 0.214002 6.796648 -2.401338e-03 3.058060e-03 -1.535875e-04 -5.789808e+06 -3.465747e+06 -8.564381e+06
22 3 S 1.340287 3.582682 4.354047 1.105361e-03 -2.522814e-03 3.533416e-04 4.264567e+06 -1.526654e+06 2.069433e+07
23 3 S 12.120784 2.076702 2.252213 -3.702712e-03 -3.645605e-03 4.349760e-05 1.810966e+05 -9.211589e+06 1.379122e+07
24 3 S -2.733135 2.534213 9.141255 2.573351e-03 4.494324e-04 6.684591e-04 -1.005782e+07 -1.043458e+07 -7.894421e+05
25 3 S 9.157717 2.941063 0.895794 1.325239e-03 -2.857905e-03 5.634456e-04 -3.383634e+06 3.043912e+06 -3.108239e+06
26 3 S 0.180480 1.404763 10.277154 4.981044e-03 8.152890e-04 -1.770062e-03 6.685739e+06 -3.967180e+06 1.238932e+07
27 3 S 9.612918 3.323472 5.391408 3.233491e-03 5.337809e-04 -6.070509e-03 3.666408e+06 -1.232598e+07 1.915855e+06
28 3 S 0.004872 0.611922 5.811005 1.005716e-04 4.272141e-03 -6.950284e-04 6.342327e+06 -1.604857e+07 4.288743e+06
29 3 S 9.026370 -0.217942 3.491796 -3.487907e-03 1.960434e-03 1.143403e-03 -2.930839e+06 -3.622947e+06 4.009590e+06
30 3 S 0.491610 4.012715 7.629551 -1.861911e-03 7.537513e-05 -3.211133e-03 -2.534531e+06 -1.176048e+06 1.332784e+07
31 3 S 6.106372 0.273421 1.583578 1.062696e-03 -2.770109e-03 1.394348e-03 -4.087608e+06 4.158557e+06 -9.066841e+05
32 3 S 3.863336 4.376562 9.695698 -2.428930e-03 -8.372329e-05 1.312836e-04 -1.088806e+07 -6.205744e+06 1.455023e+07
33 3 S 6.260406 3.622985 3.468560 -4.683122e-03 -2.512865e-03 4.967755e-04 1.018406e+06 -2.371653e+07 -2.928126e+06
34 3 S 3.185644 0.776792 7.932289 -6.491623e-03 3.904056e-03 -1.779912e-03 -2.946789e+06 -3.417377e+07 4.478820e+06
35 3 S 12.159833 5.515274 0.409885 2.097237e-03 1.655586e-03 -1.075903e-03 3.379931e+06 7.017583e+06 5.297958e+06
36 3 S -2.742708 -1.354304 10.334817 3.028955e-03 -3.090744e-03 2.081851e-03 2.956360e+06 -3.893879e+06 7.108458e+06
37 3 S 6.640346 0.503463 10.247709 -7.790612e-04 5.747694e-03 -4.510045e-03 2.215053e+06 -4.227757e+06 -1.406848e+06
38 3 S 2.675747 3.729790 1.086000 1.649038e-03 -3.714733e-03 3.744984e-03 1.185973e+07 6.636440e+06 -1.079831e+07
39 3 S 3.485569 1.073736 3.305406 -3.759291e-03 1.868499e-04 4.258742e-04 -1.303747e+07 -6.601666e+06 3.286816e+06
40 3 S 6.379707 3.366365 7.808831 -2.906153e-03 -5.679781e-03 4.600964e-03 5.238124e+06 -9.229698e+05 2.949975e+06
41 3 S 5.969345 0.298194 5.049457 -6.318129e-03 -3.248645e-03 3.605344e-04 -6.545210e+06 -2.400699e+06 -1.603079e+06
42 3 S 3.701766 3.732213 6.323763 -4.591337e-03 3.162846e-04 1.244273e-03 -7.510908e+06 4.460294e+06 -8.287281e+06
43 1 Li 0.394147 4.529253 2.423246 9.267008e-03 -1.922472e-03 -2.643951e-03 -7.460713e+06 2.618716e+06 -6.911430e+06
44 1 Li -0.352335 6.644534 7.149390 6.160371e-03 5.429746e-03 -4.946852e-03 3.047795e+05 -4.891432e+05 1.333721e+05
45 1 Li 11.775573 10.833613 1.093321 5.474190e-03 5.831201e-03 -8.801605e-03 -1.214357e+06 6.189495e+05 2.156737e+06
46 1 Li 9.912019 5.291325 1.492203 -8.737021e-03 -1.765338e-02 4.224339e-03 2.600358e+06 -8.535456e+05 1.055321e+06
47 1 Li -0.130305 -1.189842 10.075939 3.619222e-03 9.075765e-03 -5.311037e-03 -8.836919e+06 1.648788e+06 -2.149929e+06
48 1 Li 8.654661 9.336198 5.563546 2.379029e-03 1.295122e-02 5.129917e-03 2.505824e+06 -3.527529e+05 4.939287e+05
49 1 Li 10.893617 1.162901 4.555808 2.207901e-03 -6.724120e-04 2.783684e-03 4.846869e+06 4.723734e+06 -2.013140e+06
50 1 Li 2.819574 7.324879 8.143747 1.045129e-03 -3.909112e-03 -9.070409e-03 2.417451e+06 7.634808e+06 -2.838688e+06
51 1 Li 6.598842 8.385936 1.552671 1.611594e-03 6.163236e-04 5.351134e-04 -1.115685e+06 3.896343e+06 1.227619e+06
52 1 Li 6.928542 7.680892 8.915125 -6.091365e-03 -3.584451e-03 -9.932286e-03 -9.527769e+06 -6.188873e+05 3.205860e+05
53 1 Li 2.533171 1.336617 5.540550 6.031729e-03 6.489225e-03 -1.090820e-03 -7.687878e+05 -2.244525e+06 -1.583975e+06
54 1 Li 4.138875 6.852523 5.277635 2.584137e-04 6.827666e-03 3.542991e-03 -6.312656e+06 3.038274e+06 1.390015e+07
55 1 Li 1.119408 9.484095 4.145897 2.416017e-03 4.157376e-03 -3.401247e-03 -7.816801e+06 -3.699434e+06 -6.190715e+06
56 1 Li 2.652204 8.359250 0.420264 2.698780e-05 8.195487e-03 -7.510358e-03 6.959534e+05 3.600251e+06 -9.202485e+06
57 2 P 9.811785 5.309531 5.202238 1.655335e-03 3.259974e-03 -3.161829e-03 -1.253682e+07 4.275674e+07 -1.245109e+07
58 2 P 3.723578 10.474105 6.069192 3.686558e-03 -2.141075e-03 1.544367e-03 -3.881539e+07 1.927336e+07 -1.986624e+06
59 2 P 6.721116 5.547098 3.260452 4.124540e-03 -2.721459e-03 2.270202e-03 2.046488e+07 1.976968e+07 -1.333832e+07
60 2 P 6.509687 10.644535 8.236543 -1.848503e-03 -2.525992e-03 9.612270e-04 7.267662e+06 1.621608e+07 -3.634336e+07
61 2 P 12.628049 7.553094 0.667411 2.678286e-03 -3.515994e-03 6.907462e-04 -2.309867e+05 -2.148964e+07 4.583261e+06
62 2 P 0.317970 8.625556 10.567912 -3.152657e-03 -2.640496e-03 1.616465e-04 1.924168e+07 -1.367611e+07 4.548667e+06
63 3 S 10.153722 6.250032 6.985413 -1.860345e-03 2.011235e-03 2.208487e-05 1.167753e+05 -1.131132e+07 -3.712434e+06
64 3 S 3.382356 9.588390 4.252978 6.242642e-04 -5.768600e-03 6.766651e-04 -5.825224e+06 3.529974e+06 4.991928e+06
65 3 S 14.116568 7.663620 2.175959 6.102715e-03 -1.909789e-03 2.781196e-03 -8.769735e+06 -6.112392e+05 2.700798e+04
66 3 S -0.948232 8.213252 8.974775 3.093150e-03 3.421566e-03 1.823233e-03 -6.319800e+06 5.402916e+06 1.140385e+07
67 3 S 10.932753 8.576880 0.991135 -2.001948e-03 7.762947e-04 5.530019e-03 -2.155498e+06 9.050699e+06 7.694873e+06
68 3 S 2.061325 7.372554 10.404765 -2.786375e-03 1.923174e-03 -4.348166e-03 -2.228925e+07 1.103359e+07 5.500748e+06
69 3 S 11.280726 9.239398 5.225017 3.554203e-03 -3.936770e-03 -6.173271e-03 2.556486e+05 3.342935e+06 5.105274e+06
70 3 S 1.770562 6.605541 5.973151 3.082768e-03 -1.360413e-03 5.457875e-03 -2.236224e+06 -1.489450e+07 3.475566e+06
71 3 S 11.041285 6.026870 3.693091 6.542833e-03 5.034851e-03 8.029527e-04 -1.106843e+07 -2.723770e+07 1.412955e+07
72 3 S 2.555220 9.855052 7.660118 1.510822e-04 -4.816788e-03 2.752004e-04 9.685305e+06 2.307266e+06 -1.429441e+07
73 3 S 7.631063 6.207586 1.546485 1.586671e-03 3.292493e-03 -1.241776e-04 1.335809e+07 -1.301037e+07 4.382170e+06
74 3 S 5.516478 9.905851 9.765687 -4.294981e-03 7.200381e-04 -1.286475e-03 3.258644e+06 -2.874060e+06 1.502185e+07
75 3 S 8.218886 9.654555 3.234629 8.708954e-05 5.457391e-03 -2.500263e-03 -6.554893e+06 1.413175e+07 3.595117e+06
76 3 S 5.042519 6.668576 7.520098 -4.238019e-03 -1.724859e-05 -3.050064e-03 3.755491e+06 -2.708410e+07 4.059779e+06
77 3 S 13.997547 11.679766 0.551436 3.530267e-03 8.259204e-04 2.108337e-03 -3.981313e+05 -8.771496e+06 -7.771392e+05
78 3 S -0.837332 4.625148 10.968511 2.513989e-03 9.355344e-04 5.017285e-03 4.032628e+06 -5.185035e+04 -4.591009e+06
79 3 S 8.412124 6.433681 10.236174 -1.217689e-03 -6.167631e-03 -2.401675e-04 1.824064e+07 7.815513e+04 -6.655059e+06
80 3 S 4.645325 9.901095 1.196997 -1.555540e-03 -1.552874e-03 -1.939766e-03 1.927325e+06 -1.678714e+06 -2.687090e+07
81 3 S 5.145354 6.758372 3.316276 -4.254101e-04 2.070248e-03 -1.760643e-03 -2.157985e+07 1.726406e+07 -4.436540e+06
82 3 S 8.192707 9.496360 7.902117 2.421124e-03 2.447797e-03 4.069235e-03 4.691411e+06 5.983787e+06 5.011250e+06
83 3 S 7.721445 6.258236 5.027678 1.347531e-03 4.767730e-03 5.234625e-03 2.324502e+07 -1.588710e+07 -4.662847e+06
84 3 S 5.601637 9.785601 6.325630 -2.378925e-03 5.567797e-04 1.021800e-03 3.180847e+07 8.867710e+06 1.363352e+07
ITEM: TIMESTEP
149009
ITEM: NUMBER OF ATOMS
84
ITEM: BOX BOUNDS xy xz yz pp pp pp
-5.057443 16.482010 3.602843
-1.679003 11.923184 -5.057443
0.000000 11.315800 -1.679003
ITEM: ATOMS id type element x y z vx vy vz fx fy fz
1 1 Li 7.929344 1.836115 2.551125 -5.475942e-03 -9.433767e-03 1.944102e-03 -6.611865e+06 9.810743e+05 7.271993e+05
2 1 Li -0.013537 10.231109 7.860862 -1.669948e-02 1.046287e-02 -4.294317e-03 3.957174e+06 -3.746144e+05 2.460353e+06
3 1 Li 4.956267 2.022093 9.856598 -1.778332e-04 -1.004844e-02 -8.001208e-03 -9.342690e+06 5.724274e+06 -4.611862e+06
4 1 Li 4.633864 2.362535 1.539885 3.917451e-03 -4.733921e-03 6.709205e-03 3.381773e+06 1.714391e+06 7.723661e+05
5 1 Li 8.156201 4.110097 9.572315 6.617177e-03 9.865218e-03 -2.282844e-03 -6.812235e+05 3.925274e+06 1.709792e+06
6 1 Li 10.204594 8.073385 3.241751 1.444106e-03 -2.476781e-03 -2.706862e-03 -3.181634e+06 1.548697e+07 -5.055857e+06
7 1 Li 3.288445 5.950027 1.760521 -4.333982e-03 4.169945e-03 9.974165e-04 -2.065401e+06 -5.897311e+06 5.804389e+06
8 1 Li 10.706334 4.050816 7.465730 -5.004172e-03 1.015705e-03 -3.747588e-04 3.351118e+06 5.823064e+06 -7.605510e+06
9 1 Li 1.192363 5.170787 9.865854 1.875378e-03 1.896083e-03 -1.147298e-03 6.589736e+06 -3.568315e+06 3.674641e+05
10 1 Li 9.841668 10.119500 9.430666 -3.113955e-03 -5.976921e-03 -1.173584e-02 -2.671861e+05 7.306780e+05 6.319103e+06
11 1 Li 7.246148 3.006453 5.580818 6.901535e-03 6.017241e-03 -2.174317e-03 -3.829794e+06 1.391614e+06 3.909038e+06
12 1 Li 0.909481 1.550456 8.009951 -5.387151e-03 5.054780e-03 -1.317884e-02 -5.716296e+06 1.875779e+06 -1.277944e+06
13 1 Li 0.246471 -0.293441 2.580537 1.969667e-03 -1.171871e-03 1.190438e-02 -1.940349e+06 4.565868e+06 8.038920e+04
14 1 Li -3.889438 0.667100 10.541626 6.361254e-03 -5.071006e-03 -7.694088e-04 -1.359037e+06 1.832100e+06 6.127116e+06
15 2 P 11.276716 11.287289 5.087673 4.964627e-04 3.216691e-03 2.908749e-03 2.526338e+07 -3.411507e+06 6.276780e+06
16 2 P 1.716873 4.513770 6.114533 -2.369826e-03 -2.650341e-03 -1.424314e-03 7.310526e+06 1.996329e+07 -2.727147e+07
17 2 P 4.970256 -0.257126 3.202440 -5.528657e-04 6.915853e-04 -4.916385e-03 7.556466e+06 -1.027168e+07 -1.028333e+07
18 2 P 4.767555 4.589995 7.965613 -1.687926e-03 3.761832e-03 7.866086e-04 7.848974e+06 2.507715e+07 -4.575949e+06
19 2 P 10.784440 1.707714 0.754930 3.174249e-03 -1.928114e-03 -3.978299e-04 1.820899e+07 8.919623e+06 -1.657688e+07
20 2 P -1.358903 2.661744 10.671341 -3.504832e-05 6.399795e-04 1.669784e-03 -2.113537e+07 5.110856e+05 1.060763e+07
21 3 S 8.556098 0.219760 6.796192 -2.552901e-03 2.990697e-03 -3.594657e-04 -5.414740e+06 -2.035836e+06 -7.048499e+06
22 3 S 1.342429 3.577832 4.355194 1.208722e-03 -2.569026e-03 8.773867e-04 3.443586e+06 -1.662989e+06 1.905353e+07
23 3 S 12.113729 2.069635 2.252620 -3.671074e-03 -3.881183e-03 4.266521e-04 2.692547e+06 -8.214602e+06 1.529982e+07
24 3 S -2.728521 2.534745 9.142486 2.305258e-03 1.746821e-04 6.508736e-04 -1.062666e+07 -1.048589e+07 -6.304933e+05
25 3 S 9.160078 2.935691 0.896743 1.226101e-03 -2.798872e-03 4.865712e-04 -4.313237e+06 1.799839e+06 -2.800435e+06
26 3 S 0.190046 1.406139 10.274097 5.133742e-03 7.369705e-04 -1.447567e-03 4.276428e+06 -2.081755e+06 1.232395e+07
27 3 S 9.619079 3.324222 5.379975 3.335860e-03 2.448135e-04 -6.031404e-03 3.697436e+06 -9.682530e+06 1.822641e+06
28 3 S 0.005299 0.619622 5.809842 2.723216e-04 3.809727e-03 -5.884836e-04 6.687257e+06 -1.960963e+07 3.889598e+06
29 3 S 9.019765 -0.214272 3.494097 -3.555262e-03 1.876577e-03 1.251769e-03 -1.740895e+06 -2.992715e+06 4.074521e+06
30 3 S 0.488018 4.012919 7.623830 -1.953541e-03 3.932885e-05 -2.847658e-03 -4.189038e+06 -1.571049e+06 1.468108e+07
31 3 S 6.108228 0.268233 1.586154 9.667223e-04 -2.643843e-03 1.342979e-03 -3.334285e+06 5.781924e+06 -3.172685e+06
32 3 S 3.858483 4.376293 9.696321 -2.712521e-03 -2.391215e-04 5.077733e-04 -1.033854e+07 -5.583484e+06 1.402189e+07
33 3 S 6.251543 3.617717 3.469423 -4.643848e-03 -3.108513e-03 4.260687e-04 2.558558e+06 -2.119425e+07 -2.503665e+06
34 3 S 3.173387 0.783492 7.929115 -6.569890e-03 2.978428e-03 -1.659110e-03 -2.173359e+06 -3.661157e+07 4.920307e+06
35 3 S 12.163902 5.518561 0.407990 2.180033e-03 1.813197e-03 -9.337407e-04 2.640883e+06 4.739142e+06 5.633903e+06
36 3 S -2.736973 -1.360354 10.338874 3.106896e-03 -3.190907e-03 2.268642e-03 2.578142e+06 -3.320071e+06 6.811731e+06
37 3 S 6.639021 0.514341 10.239222 -7.076159e-04 5.604550e-03 -4.519673e-03 3.309841e+06 -7.372868e+06 1.249343e+06
38 3 S 2.679099 3.722820 1.092755 1.971079e-03 -3.537118e-03 3.446865e-03 1.238637e+07 7.322194e+06 -1.231545e+07
39 3 S 3.478160 1.073993 3.306316 -4.082589e-03 1.296688e-06 4.985563e-04 -1.103461e+07 -7.512974e+06 2.177503e+06
40 3 S 6.374267 3.355556 7.817550 -2.796700e-03 -5.678664e-03 4.672200e-03 3.440045e+06 1.729606e+06 1.875611e+06
41 3 S 5.957200 0.292099 5.050102 -6.477431e-03 -3.317101e-03 3.210568e-04 -4.749590e+06 -2.385981e+06 -1.440241e+06
42 3 S 3.692934 3.732994 6.325939 -4.767507e-03 4.293350e-04 1.033454e-03 -5.283172e+06 4.083937e+06 -7.878863e+06
43 1 Li 0.410715 4.525798 2.417387 8.377426e-03 -1.599770e-03 -3.509025e-03 -7.416498e+06 2.738734e+06 -7.236553e+06
44 1 Li -0.340601 6.654731 7.140083 6.116512e-03 5.381491e-03 -4.918585e-03 -1.195956e+06 -4.529625e+05 4.672381e+05
45 1 Li 11.785826 10.844781 1.076976 5.293166e-03 5.845494e-03 -8.545471e-03 -1.912066e+06 -5.448892e+05 2.295143e+06
46 1 Li 9.895500 5.257879 1.500164 -8.356280e-03 -1.772026e-02 4.347278e-03 3.899038e+06 2.392571e+05 8.495380e+05
47 1 Li -0.124337 -1.172423 10.065741 2.491630e-03 9.299537e-03 -5.583961e-03 -9.798689e+06 1.780822e+06 -2.190814e+06
48 1 Li 8.659733 9.360546 5.573415 2.710508e-03 1.293906e-02 5.121640e-03 2.878142e+06 -2.022736e+05 -7.717376e+05
49 1 Li 10.898345 1.162075 4.560815 2.778558e-03 -1.048597e-04 2.517907e-03 4.472827e+06 4.624140e+06 -2.432442e+06
50 1 Li 2.821695 7.318497 8.126246 1.282906e-03 -2.964913e-03 -9.327293e-03 1.461711e+06 7.993604e+06 -1.133831e+06
51 1 Li 6.601776 8.387511 1.553822 1.460526e-03 1.099026e-03 6.834332e-04 -1.412051e+06 4.021588e+06 1.195782e+06
52 1 Li 6.915825 7.674339 8.896404 -7.188636e-03 -3.695487e-03 -9.850105e-03 -8.341272e+06 -1.108447e+06 1.303533e+06
53 1 Li 2.544583 1.348555 5.538341 5.930068e-03 6.214084e-03 -1.257800e-03 -1.067998e+06 -2.456445e+06 -1.130570e+06
54 1 Li 4.138810 6.865728 5.285998 -4.874551e-04 7.201233e-03 5.092553e-03 -5.954843e+06 2.915126e+06 1.147260e+07
55 1 Li 1.123126 9.491574 4.138793 1.447063e-03 3.694860e-03 -4.155462e-03 -8.177588e+06 -4.017767e+06 -6.113842e+06
56 1 Li 2.652458 8.375331 0.405113 8.641895e-05 8.596096e-03 -8.586000e-03 2.798936e+05 2.759550e+06 -8.272327e+06
57 2 P 9.814643 5.316840 5.195978 1.324925e-03 4.413411e-03 -3.476261e-03 -1.190221e+07 4.145278e+07 -1.022509e+07
58 2 P 3.729505 10.470458 6.072018 2.547978e-03 -1.587406e-03 1.479337e-03 -4.516081e+07 2.160464e+07 -2.973442e+06
59 2 P 6.729384 5.542330 3.264344 4.607090e-03 -2.133940e-03 1.903541e-03 1.442241e+07 2.366366e+07 -1.383613e+07
60 2 P 6.506342 10.640195 8.237409 -1.650505e-03 -2.032667e-03 -2.536687e-05 7.482773e+06 2.028393e+07 -3.614503e+07
61 2 P 12.633021 7.545815 0.668776 2.618746e-03 -4.058659e-03 8.623076e-04 -4.467830e+06 -1.788381e+07 7.919743e+06
62 2 P 0.312462 8.620254 10.568321 -2.587361e-03 -2.975880e-03 2.989633e-04 2.261388e+07 -1.060002e+07 5.505123e+06
63 3 S 10.150254 6.253596 6.985393 -1.846140e-03 1.709950e-03 -7.932146e-05 1.198551e+06 -1.182238e+07 -3.991008e+06
64 3 S 3.383276 9.577528 4.254315 4.848540e-04 -5.663084e-03 8.298901e-04 -4.839333e+06 5.214762e+06 6.558963e+06
65 3 S 14.127838 7.659821 2.181156 5.866736e-03 -1.921404e-03 2.758890e-03 -9.923754e+06 -2.830860e+04 -2.074904e+06
66 3 S -0.942471 8.219774 8.978521 2.886210e-03 3.550418e-03 2.082841e-03 -9.789180e+06 3.946881e+06 8.075972e+06
67 3 S 10.928977 8.578513 1.001792 -1.987197e-03 9.936189e-04 5.716086e-03 3.533982e+06 7.352301e+06 5.732071e+06
68 3 S 2.055533 7.376608 10.396730 -3.364882e-03 2.199001e-03 -4.208417e-03 -2.128653e+07 9.666823e+06 5.662292e+06
69 3 S 11.287318 9.232066 5.213421 3.568820e-03 -3.793242e-03 -6.031724e-03 4.041116e+05 8.058771e+06 6.426462e+06
70 3 S 1.776323 6.602435 5.983511 3.020567e-03 -1.755244e-03 5.534802e-03 -2.878217e+06 -1.491512e+07 1.673014e+06
71 3 S 11.053453 6.035585 3.694971 6.251722e-03 4.308283e-03 1.180373e-03 -1.186706e+07 -2.857414e+07 1.442883e+07
72 3 S 2.555648 9.845979 7.660230 4.019285e-04 -4.746169e-03 -1.125157e-04 9.343586e+06 3.666670e+06 -1.518289e+07
73 3 S 7.634451 6.213465 1.546382 1.943587e-03 2.935079e-03 1.677439e-05 1.354387e+07 -1.454873e+07 6.338550e+06
74 3 S 5.508466 9.907245 9.763663 -4.207432e-03 6.309393e-04 -8.865691e-04 3.934248e+06 -3.983914e+06 1.550887e+07
75 3 S 8.218989 9.665288 3.230057 -9.202175e-05 5.796983e-03 -2.403342e-03 -7.057590e+06 1.096145e+07 4.081914e+06
76 3 S 5.034592 6.668003 7.514460 -4.120506e-03 -7.164170e-04 -2.939703e-03 5.706544e+06 -2.600501e+07 4.707597e+06
77 3 S 14.004223 11.681005 0.555385 3.523154e-03 5.673477e-04 2.076093e-03 -5.894461e+05 -1.097000e+07 -1.939416e+06
78 3 S -0.832440 4.626780 10.977868 2.619412e-03 9.194018e-04 4.894372e-03 3.653925e+06 -1.292761e+06 -5.378851e+06
79 3 S 8.410151 6.422026 10.235495 -7.426532e-04 -6.143328e-03 -4.374937e-04 1.798584e+07 2.550773e+06 -8.300088e+06
80 3 S 4.642392 9.898183 1.192658 -1.515440e-03 -1.597572e-03 -2.631033e-03 1.314262e+06 -1.518608e+06 -2.537429e+07
81 3 S 5.144052 6.762770 3.312869 -9.365348e-04 2.482108e-03 -1.860847e-03 -1.717544e+07 1.374582e+07 -2.948264e+06
82 3 S 8.197468 9.501022 7.909939 2.522351e-03 2.599006e-03 4.195308e-03 2.686915e+06 5.187680e+06 4.045889e+06
83 3 S 7.724689 6.266745 5.037487 1.956863e-03 4.325435e-03 5.081300e-03 2.285429e+07 -1.830516e+07 -7.645779e+06
84 3 S 5.597961 9.786893 6.327918 -1.480851e-03 7.622650e-04 1.375566e-03 3.669333e+07 6.663685e+06 1.310026e+07
+154500
View File
File diff suppressed because it is too large Load Diff
+118
View File
@@ -0,0 +1,118 @@
#include "dump2analysis.h"
int* GetIDS(char* str){
int i, len;
int p = 0;
char *tok=NULL;
int *d;
for (i=0; str[i] != '\0'; i++) if (str[i] == ',') p++;
if (i == 0) {
d = malloc(sizeof(int) * 1);
d[0] = 0;
}
else{
d = malloc(sizeof(int) * (p+2));
tok = strtok(str, ",");
d[0] = p + 2;
d[1] = atoi(tok);
for (i=2; i<d[0]; i++){
tok = strtok( NULL, ","); /* 2回目以降 */
d[i] = atoi(tok);
}
}
return d;
}
int SetArgment(int argc, char *argv[], PARAM *arg){
int opt, option_index;
char Aid[102400], Bid[102400], Cid[102400];
Aid[0] = '\0';
Bid[0] = '\0';
Cid[0] = '\0';
struct option long_options[] = {
{"help", no_argument, NULL, 'h'},
{"mode", required_argument, NULL, 'm'},
{"Aid", required_argument, NULL, 'a'},
{"Bid", required_argument, NULL, 'b'},
{"Cid", required_argument, NULL, 'c'},
{"Aelem", required_argument, NULL, 'x'},
{"Belem", required_argument, NULL, 'y'},
{"Celem", required_argument, NULL, 'z'},
{"Atype", required_argument, NULL, 's'},
{"Btype", required_argument, NULL, 't'},
{"Ctype", required_argument, NULL, 'u'},
{"out", required_argument, NULL, 'o'},
{"in", required_argument, NULL, 'i'},
{"rmin", required_argument, NULL, '0'},
{"rmax", required_argument, NULL, '0'},
{"dr", required_argument, NULL, '0'},
{"rcut", required_argument, NULL, '0'},
{"rcut_ab", required_argument, NULL, '0'},
{"rcut_bc", required_argument, NULL, '0'},
{"dt", required_argument, NULL, '0'},
{"shift", required_argument, NULL, '0'},
{"tau", required_argument, NULL, '0'},
{"nx", required_argument, NULL, '0'},
{"ny", required_argument, NULL, '0'},
{"nz", required_argument, NULL, '0'},
{"cube_type", required_argument, NULL, '0'},
{"radius", required_argument, NULL, '0'},
{0, 0, 0, 0}// 配列の最後はすべて0で埋める
};
if (argc == 1) Error(); /* 引数なし */
/* b,c,d.oは引数が必須 */
while((opt = getopt_long(argc, argv, "hm:a:b:c:s:t:u:x:y:z:o:i:",
long_options, &option_index)) != -1){
if (opt == '0'){
if (strcmp(long_options[option_index].name, "rmin")==0) RMIN = atof(optarg);
if (strcmp(long_options[option_index].name, "rmax")==0) RMAX = atof(optarg);
if (strcmp(long_options[option_index].name, "dr")==0) DR = atof(optarg);
if (strcmp(long_options[option_index].name, "rcut")==0) RCUT = atof(optarg);
if (strcmp(long_options[option_index].name, "rcut_ab")==0) RCUT_AB = atof(optarg);
if (strcmp(long_options[option_index].name, "rcut_bc")==0) RCUT_BC = atof(optarg);
if (strcmp(long_options[option_index].name, "dt")==0) DT = atof(optarg);
if (strcmp(long_options[option_index].name, "shift")==0) TAU_SHIFT = atoi(optarg);
if (strcmp(long_options[option_index].name, "tau")==0) TAU = atoi(optarg);
if (strcmp(long_options[option_index].name, "nx")==0) NX = atoi(optarg);
if (strcmp(long_options[option_index].name, "ny")==0) NY = atoi(optarg);
if (strcmp(long_options[option_index].name, "nz")==0) NZ = atoi(optarg);
if (strcmp(long_options[option_index].name, "cube_type")==0) CUBE_TYPE = atoi(optarg);
if (strcmp(long_options[option_index].name, "radius")==0) RADIUS = atof(optarg);
}
switch(opt){
case 'h': Error(); break;
case 'm': strcpy(arg->mode, optarg); break;
case 'a': strcpy(Aid, optarg); break;
case 'b': strcpy(Bid, optarg); break;
case 'c': strcpy(Cid, optarg); break;
case 's': arg->Atype = atoi(optarg); break;
case 't': arg->Btype = atoi(optarg); break;
case 'u': arg->Ctype = atoi(optarg); break;
case 'x': strcpy(arg->Aelem, optarg); break;
case 'y': strcpy(arg->Belem, optarg); break;
case 'z': strcpy(arg->Celem, optarg); break;
case 'o': strcpy(arg->outfile, optarg); break;
case 'i': strcpy(arg->infile, optarg); break;
case '?':
Error();
}
}
arg->Aid = GetIDS(Aid);
arg->Bid = GetIDS(Bid);
arg->Cid = GetIDS(Cid);
ArgCheck(arg);
return 1;
}
+164
View File
@@ -0,0 +1,164 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m gr */
/* lammpstrjから2原子間の動径分布関数を計算する */
/* またカットオフ距離内の平均結合距離を求める */
/* A原子(-a, -x, -s)とB原子(-c, -z, -u)を指定する。 */
/* --rmaxは動径分布関数を計算する最大距離 default:10.005 */
/* --rminは動径分布関数を計算する最小距離 default:0.01 */
/* --drは動径分布関数を計算する刻み距離 default:0.01 */
/* --rcutは結合距離を計算するカットオフ default:2.3 */
void ErrorGr(){
printf("Required arguments atoms A and atoms B\n");
printf("(-a, -x, -s) atom A\n");
printf("(-b, -y, -t) atom B\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for Gr analysis:\n");
printf("--dr distance step for g(r) [0.01]\n");
printf("--rmax maximum distance for g(r) [10.005]\n");
printf("--rmin minimum distance for g(r) [0.005]\n");
printf("--rcut cut-off for alculation of mean distance [2.3]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m gr -x Si -y O -i hoge.lammpstrj -o hoge.gr\n");
exit(0);
}
void OutputGr(PARAM *p, double *gr, double *cn, ATOMS *a, ATOMS *b,
double ave, double std, int pairs){
int i, RDATA;
double rp, rcn=0;
FILE *fp;
RDATA = floor((RMAX-RMIN)/DR);
fp = fopen(p->outfile, "w");
fprintf(fp, "# Total step: %d\n", p->steps);
/* fprintf(fp, "# atom-A:"); */
/* for(i=0; i<a->atoms; i++) */
/* fprintf(fp, " %s(%d)", a->elem[i], a->id[i]); */
/* fprintf(fp, "\n"); */
/* fprintf(fp, "# atom-B:"); */
/* for(i=0; i<b->atoms; i++) */
/* fprintf(fp, " %s(%d)", b->elem[i], b->id[i]); */
/* fprintf(fp, "\n"); */
fprintf(fp, "# (Rmin, Rmax, dr)=(%g, %g, %g)\n", RMIN, RMAX, DR);
fprintf(fp, "# RDATA=%d\n", RDATA);
fprintf(fp, "\n");
fprintf(fp, "# Total pairs: %d\n", pairs);
fprintf(fp, "# Rcut : %lf\n", RCUT);
fprintf(fp, "# distance: %lf +/- %lf\n", ave, std);
fprintf(fp, "# %10s %12s %12s\n", "r", "g(r)", "cn(r)");
fprintf(fp, "%12g %12g %12g\n", 0.0, 0.0, 0.0);
for(i=0; i<RDATA; i++){
rp = RMIN + (double)i*DR + 0.5*DR;
rcn = rcn + (double)cn[i];
fprintf(fp, "%12g ", rp);
fprintf(fp, "%12g ", gr[i]/(double)p->steps);
fprintf(fp, "%12g ", rcn/(double)p->steps);
fprintf(fp, "\n");
}
fclose(fp);
}
void EstimateGr(PARAM *param){
FILE *f;
HEAD head;
int i, j, k, l, p, s, RDATA;
double *gr, *cn, *cr;
double volume, bunbo, sflag = 0.0;
double xa, ya, za, xb, yb, zb, xp, yp, zp, r;
double ave = 0.0, std = 0.0, *d = NULL;
int rp, pairs=0;
ATOMS a, b;
if (ArgCheckInputOutput(param) != 0) ErrorGr();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 3) ErrorGr();
Allocate(&a, param->atoms);
Allocate(&b, param->atoms);
f = fopen(param->infile, "r");
RDATA = floor((RMAX-RMIN)/DR);
gr = malloc(sizeof(double)*RDATA);
cn = malloc(sizeof(double)*RDATA);
cr = malloc(sizeof(double)*RDATA);
/* grの計算 */
for (i=0; i<RDATA; i++) gr[i] = 0.0;
for (s=0; s<param->steps; s++){
if (s%10 == 0) {
printf("Calculating Gr step: %d\r", s);
fflush(stdout);
}
/* 初期化 */
for (i=0; i<RDATA; i++) cr[i] = 0.0;
/* 原子の選択 */
GetData(f, param, &head, &a, &b, NULL);
/* 同一原子かのチェック */
if (a.atoms == b.atoms){
sflag = 1.0;
for (i=0; i<a.atoms; i++)
if (a.id[i] != b.id[i]) sflag = 0.0;
}
volume = head.A[0][0] * head.A[1][1] * head.A[2][2];
for(i=0; i<a.atoms; i++){
/* 絶対座標に変換 */
xa = a.x[i]*head.A[0][0] + a.y[i]*head.A[1][0] + a.z[i]*head.A[2][0];
ya = a.x[i]*head.A[0][1] + a.y[i]*head.A[1][1] + a.z[i]*head.A[2][1];
za = a.x[i]*head.A[0][2] + a.y[i]*head.A[1][2] + a.z[i]*head.A[2][2];
/* x-1, x+1, y-1,y+1, z-1, z+1 のb原子を作る */
for (j=-1; j<2; j++){
for (k=-1; k<2; k++){
for (l=-1; l<2; l++){
for (p=0; p<b.atoms; p++){
xp = b.x[p] + j;
yp = b.y[p] + k;
zp = b.z[p] + l;
xb = xp*head.A[0][0] + yp*head.A[1][0] + zp*head.A[2][0];
yb = xp*head.A[0][1] + yp*head.A[1][1] + zp*head.A[2][1];
zb = xp*head.A[0][2] + yp*head.A[1][2] + zp*head.A[2][2];
r = sqrt(pow((xa-xb), 2) + pow((ya-yb), 2) + pow((za-zb), 2));
if (RMIN < r && r < RMAX) {
rp = (int)floor((r-RMIN)/DR);
cr[rp]++;
cn[rp] = cn[rp] + 1.0/(double)a.atoms;
}
if (0 < r && r < RCUT){
d = realloc(d, sizeof(double) * (pairs+1));
d[pairs] = r;
pairs++;
}
}
}
}
}
}
/* 1ステップ毎にgrの計算 */
for (i=0; i<RDATA; i++){
if(cr[i] != 0){
r = RMIN + (double)i*DR + 0.5*DR;
bunbo = 4.0 * M_PI * r*r * DR * (a.atoms) * (b.atoms - sflag);
gr[i] = gr[i] + (double)cr[i] * volume / bunbo;
}
}
}
printf("\n");
fclose(f);
Deallocate(&a, param->atoms);
Deallocate(&b, param->atoms);
/* 平均値の計算 */
for (i=0; i<pairs; i++) ave = ave + d[i];
ave = ave/pairs;
/* 標準偏差の計算 */
for (i=0; i<pairs; i++) std = std + (d[i] - ave)*(d[i] - ave);
std = sqrt(std/pairs);
/* 出力 */
OutputGr(param, gr, cn, &a, &b, ave, std, pairs);
free(gr);
free(cn);
free(cr);
free(d);
}
+53
View File
@@ -0,0 +1,53 @@
#include "dump2analysis.h"
void Deallocate(ATOMS *a, int n){
int i;
for (i=0; i<n; i++) free(a->elem[i]);
/* free(a->elem); */
free(a->id);
free(a->type);
free(a->x);
free(a->y);
free(a->z);
free(a->vx);
free(a->vy);
free(a->vz);
free(a->fx);
free(a->fy);
free(a->fz);
}
void Allocate(ATOMS *a, int n){
int i;
a->atoms = n;
a->elem = malloc(sizeof(char*) * n);
for (i=0; i<n; i++) a->elem[i] = malloc(sizeof(char) * 8);
a->id = malloc(sizeof(int) * n);
a->type = malloc(sizeof(int) * n);
a->x = malloc(sizeof(double) * n);
a->y = malloc(sizeof(double) * n);
a->z = malloc(sizeof(double) * n);
a->vx = malloc(sizeof(double) * n);
a->vy = malloc(sizeof(double) * n);
a->vz = malloc(sizeof(double) * n);
a->fx = malloc(sizeof(double) * n);
a->fy = malloc(sizeof(double) * n);
a->fz = malloc(sizeof(double) * n);
for (i=0; i<n; i++){
a->id[i] = 0;
a->type[i] = 0;
a->x[i] = 0.0;
a->y[i] = 0.0;
a->z[i] = 0.0;
a->vx[i] = 0.0;
a->vy[i] = 0.0;
a->vz[i] = 0.0;
a->fx[i] = 0.0;
a->fy[i] = 0.0;
a->fz[i] = 0.0;
strcpy(a->elem[i], "");
}
}
+176
View File
@@ -0,0 +1,176 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m msd */
/* lammpstrjから指定した原子の平均二乗変位(MSD)を時間シフトしながら計算する */
/* 原子タイプで指定しても最初のステップのidで原子を選択する */
/* --shfitと--tauを小さくすればMSDの統計が稼げる。ただしシフトが小さすぎるMSDが変化する。 */
/* --shiftでMSDが変わらないようパラメータを調整する。 */
/* 教科書Pを参照 */
/* A原子(-a, -x, -s)を指定する。 */
/* --shiftはMSDを計算する時にシフトさせるステップ default:1 */
/* --tauはMSDを計算する時間ステップ範囲。-1でMDの全ステップでMSDを計算する default:-1 */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorMSD(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for MSD analysis:\n");
printf("--shift time shift for MSD [1]\n");
printf("--tau time period for MSD (-1: all steps [-1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m msd -x Li --dt 1.2 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.msd\n");
exit(0);
}
void OutputMSD(PARAM *p, double **msd, ATOMS *a, int step){
int i;
double t;
FILE *f;
f = fopen(p->outfile, "w");
fprintf(f, "# Atomic list: ");
for (i=0; i<a->atoms; i++) fprintf(f, "%s(%d) ", a->elem[i], a->id[i]);
fprintf(f, "\n");
fprintf(f, "# TAU: %d\n", TAU);
fprintf(f, "# TAU_SHIFT: %d\n", TAU_SHIFT);
fprintf(f, "# total TAU step: %d\n", step);
fprintf(f, "# atoms: %d\n", a->atoms);
fprintf(f, "# %12s ", "time/fs");
fprintf(f, "%14s ", "msd/Ang.2");
fprintf(f, "%14s ", "a/Ang.2");
fprintf(f, "%14s ", "b/Ang.2");
fprintf(f, "%14s ", "c/Ang.2");
fprintf(f, "\n");
for (i=0; i<TAU; i++){
t = i * (double)DT;
fprintf(f, "%14lf ", t);
fprintf(f, "%14e ", msd[0][i]);
fprintf(f, "%14e ", msd[1][i]);
fprintf(f, "%14e ", msd[2][i]);
fprintf(f, "%14e ", msd[3][i]);
fprintf(f, "\n");
}
fclose(f);
}
void EstimateMSD(PARAM *param){
int i, j, k, p, step_counter=0;
FILE *f;
HEAD *head;
double A[3][3];
ATOMS a;
double **xx, **yy, **zz;
double **msd; /* r, a, b, c */
double xp, yp, zp;
double r, sum[4], dx, dy, dz;
if (ArgCheckInputOutput(param) != 0) ErrorMSD();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorMSD();
/* 選択元素が変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1);
head = malloc(sizeof(HEAD) * param->steps);
f = fopen(param->infile, "r");
/* -1の場合は全ステップでMSDを計算する */
if (TAU == -1) {
TAU = param->steps;
TAU_SHIFT = param->steps;
}
/* steps * atoms * (x, y, z)のメモリ取得 */
xx = malloc(sizeof(double*) * param->steps);
yy = malloc(sizeof(double*) * param->steps);
zz = malloc(sizeof(double*) * param->steps);
for(i=0; i<param->steps; i++){
xx[i] = malloc(sizeof(double) * a.atoms);
yy[i] = malloc(sizeof(double) * a.atoms);
zz[i] = malloc(sizeof(double) * a.atoms);
}
/* 分率座標のデータを全ステップで取得する */
printf("Loading data...\n");
fflush(stdout);
for (i=0; i<param->steps; i++){
GetData(f, param, &head[i], &a, NULL, NULL);
/* xx, yy, zzは分率座標 */
for (j=0; j<a.atoms; j++){
xx[i][j] = a.x[j];
yy[i][j] = a.y[j];
zz[i][j] = a.z[j];
}
}
/* 分率座標のwarapを解く */
Unwrap(param->steps, a.atoms, xx, yy, zz);
/* msdの計算 r, a, b, c*/
/* メモリ確保と初期化 */
msd = malloc(sizeof(double*) * 4);
for(i=0; i<4; i++) msd[i] = malloc(sizeof(double) * TAU);
for (k=0; k<4; k++)
for (i=0; i<TAU; i++) msd[k][i] = 0.0;
for (p=0; p+TAU <= param->steps; p=p+TAU_SHIFT){
printf("MSD step range: from %d to %d\n", p, p+TAU);
fflush(stdout);
for (i=0; i<TAU; i++){
for (k=0; k<4; k++) sum[k] = 0.0;
for (j=0; j<a.atoms; j++){
dx = xx[p+i][j] - xx[p][j];
dy = yy[p+i][j] - yy[p][j];
dz = zz[p+i][j] - zz[p][j];
/* nptのための処理。正しいか検討すること */
A[0][0] = (head[p+i].A[0][0] + head[p].A[0][0])*0.5;
A[0][1] = (head[p+i].A[0][1] + head[p].A[0][1])*0.5;
A[0][2] = (head[p+i].A[0][2] + head[p].A[0][2])*0.5;
A[1][0] = (head[p+i].A[1][0] + head[p].A[1][0])*0.5;
A[1][1] = (head[p+i].A[1][1] + head[p].A[1][1])*0.5;
A[1][2] = (head[p+i].A[1][2] + head[p].A[1][2])*0.5;
A[2][0] = (head[p+i].A[2][0] + head[p].A[2][0])*0.5;
A[2][1] = (head[p+i].A[2][1] + head[p].A[2][1])*0.5;
A[2][2] = (head[p+i].A[2][2] + head[p].A[2][2])*0.5;
xp = dx*A[0][0] + dy*A[1][0] + dz*A[2][0];
yp = dx*A[0][1] + dy*A[1][1] + dz*A[2][1];
zp = dx*A[0][2] + dy*A[1][2] + dz*A[2][2];
r = pow(xp, 2) + pow(yp, 2) + pow(zp, 2);
sum[0] = sum[0] + r;
sum[1] = sum[1] + dx*dx*head[p+i].a*head[p+i].a;
sum[2] = sum[2] + dy*dy*head[p+i].b*head[p+i].b;
sum[3] = sum[3] + dz*dz*head[p+i].c*head[p+i].c;
}
msd[0][i] = msd[0][i] + sum[0]/(double)a.atoms;
msd[1][i] = msd[1][i] + sum[1]/(double)a.atoms;
msd[2][i] = msd[2][i] + sum[2]/(double)a.atoms;
msd[3][i] = msd[3][i] + sum[3]/(double)a.atoms;
}
step_counter++;
}
if (step_counter == 0){
printf("--tau is too long, can not calculate MSD!!!\n");
exit(0);
}
for (k=0; k<4; k++)
for (i=0; i<TAU; i++) msd[k][i] = msd[k][i]/(double)step_counter;
OutputMSD(param, msd, &a, step_counter);
free(head);
for(i=0; i<param->steps; i++){
free(xx[i]);
free(yy[i]);
free(zz[i]);
}
free(xx);
free(yy);
free(zz);
for(i=0; i<4; i++) free(msd[i]);
free(msd);
}
+326
View File
@@ -0,0 +1,326 @@
#include "dump2analysis.h"
int GetHeader(FILE *fp, HEAD *head){
int chk;
char buf[1024];
double xlo = 0.0, xhi = 0.0, lx;
double ylo = 0.0, yhi = 0.0, ly;
double lz;
/* ITEM: TIMESTEP */
if (fgets(buf, sizeof(buf), fp)==NULL) return -1;
if (fgets(buf, sizeof(buf), fp)==NULL) return -1;
sscanf(buf, "%d", &head->step);
/* ITEM: NUMBER OF ATOMS */
fgets(buf, sizeof(buf), fp);
fgets(buf, sizeof(buf), fp);
sscanf(buf, "%d", &head->atoms);
/* ITEM: BOX BOUNDS xy xz yz pp pp pp */
fgets(buf, sizeof(buf), fp);
fgets(buf, sizeof(buf), fp);
chk = sscanf(buf, "%lf %lf %lf",&head->x_low, &head->x_hi, &head->xy);
if (chk == 2) {
head->A[0][0] = head->x_hi - head->x_low;
head->A[0][1] = 0.0;
head->A[0][2] = 0.0;
head->a = head->x_hi - head->x_low;
}
fgets(buf, sizeof(buf), fp);
chk = sscanf(buf, "%lf %lf %lf",&head->y_low, &head->y_hi, &head->xz);
if (chk == 2) {
head->A[1][0] = 0.0;
head->A[1][1] = head->y_hi - head->y_low ;
head->A[1][2] = 0.0;
head->b = head->y_hi - head->y_low;
}
fgets(buf, sizeof(buf), fp);
chk = sscanf(buf, "%lf %lf %lf", &head->z_low, &head->z_hi, &head->yz);
if (chk == 2) {
head->A[2][0] = 0.0;
head->A[2][1] = 0.0;
head->A[2][2] = head->z_hi - head->z_low ;
head->c = head->z_hi - head->z_low;
}
/* ITEM: ATOMS id element x y z vx vy vz fx fy fz */
fgets(buf, sizeof(buf), fp);
if (chk == 3){ /* triclinic */
/* x */
if (xlo > head->xy) xlo = head->xy;
if (xlo > head->xz) xlo = head->xz;
if (xlo > (head->xy+head->xz)) xlo = head->xy+head->xz;
if (xhi < head->xy) xhi = head->xy;
if (xhi < head->xz) xhi = head->xz;
if (xhi < (head->xy+head->xz)) xhi = head->xy+head->xz;
xlo = head->x_low - xlo;
xhi = head->x_hi - xhi;
lx = xhi - xlo;
head->a = lx;
/* y */
if (ylo > head->yz) ylo = head->yz;
if (yhi < head->yz) yhi = head->yz;
ylo = head->y_low - ylo;
yhi = head->y_hi - yhi;
ly = yhi - ylo;
head->b = sqrt(ly*ly + head->xy*head->xy);
/* z */
lz = head->z_hi - head->z_low;
head->c = sqrt(lz*lz + head->xz*head->xz + head->yz*head->yz );
/* angle */
head->alpha = acos((head->yz*ly+head->xy*head->xz)/
(head->b*head->c));
head->beta = acos(head->xz/head->c);
head->gamma = acos(head->xy/head->b);
head->A[0][0] = head->a;
head->A[0][1] = 0;
head->A[0][2] = 0;
head->A[1][0] = head->b*cos(head->gamma);
head->A[1][1] = head->b*sin(head->gamma);
head->A[1][2] = 0;
head->A[2][0] = head->c*cos(head->beta);
head->A[2][1] = head->c*(
cos(head->alpha)-cos(head->beta)*cos(head->gamma)
)/sin(head->gamma);
head->A[2][2] = head->c*sqrt(
1+2*cos(head->alpha)*cos(head->beta)*cos(head->gamma)
- cos(head->alpha)*cos(head->alpha)
- cos(head->beta)*cos(head->beta)
- cos(head->gamma)*cos(head->gamma)
) /sin(head->gamma);
}
else{ /* 直行系 */
head->alpha = M_PI*0.5;
head->beta = M_PI*0.5;
head->gamma = M_PI*0.5;
}
/* 逆行列の計算 */
double det_A;
det_A = head->A[0][0]*head->A[1][1]*head->A[2][2];
head->B[0][0] = (head->A[1][1]*head->A[2][2] - head->A[1][2]*head->A[2][1])/det_A;
head->B[1][0] = (head->A[1][2]*head->A[2][0] - head->A[1][0]*head->A[2][2])/det_A;
head->B[2][0] = (head->A[1][0]*head->A[2][1] - head->A[1][1]*head->A[2][0])/det_A;
head->B[0][1] = 0.0;
head->B[1][1] = (head->A[0][0]*head->A[2][2] - head->A[0][2]*head->A[2][0])/det_A;
head->B[2][1] = (head->A[0][1]*head->A[2][0] - head->A[0][0]*head->A[2][1])/det_A;
head->B[0][2] = 0.0;
head->B[1][2] = 0.0;
head->B[2][2] = (head->A[0][0]*head->A[1][1] - head->A[0][1]*head->A[1][0])/det_A;
return 1;
}
void SetData(HEAD *head, ATOMS *a, ATOMS *b){
double x, y, z;
x = b->x[0];
y = b->y[0];
z = b->z[0];
strcpy(a->elem[a->atoms], b->elem[0]);
a->id[a->atoms] = b->id[0];
a->type[a->atoms] = b->type[0];
/* 絶対座標を分率座標へ */
a->x[a->atoms] = x*head->B[0][0] + y*head->B[1][0] + z*head->B[2][0];
a->y[a->atoms] = x*head->B[0][1] + y*head->B[1][1] + z*head->B[2][1];
a->z[a->atoms] = x*head->B[0][2] + y*head->B[1][2] + z*head->B[2][2];
a->x[a->atoms] = a->x[a->atoms] - floor(a->x[a->atoms]);
a->y[a->atoms] = a->y[a->atoms] - floor(a->y[a->atoms]);
a->z[a->atoms] = a->z[a->atoms] - floor(a->z[a->atoms]);
a->vx[a->atoms] = b->vx[0];
a->vy[a->atoms] = b->vy[0];
a->vz[a->atoms] = b->vz[0];
a->fx[a->atoms] = b->fx[0];
a->fy[a->atoms] = b->fy[0];
a->fz[a->atoms] = b->fz[0];
a->atoms++;
}
void GetAllData(FILE *f, PARAM* p, HEAD *head, ATOMS *a){
int i;
char buf[1024];
ATOMS l;
Allocate(&l, 1);
GetHeader(f, head);
a->atoms = 0;
for(i=0; i<p->atoms; i++){
fgets(buf, sizeof(buf), f);
sscanf(buf, "%d %d %s %lf %lf %lf %lf %lf %lf %lf %lf %lf",
&l.id[0], &l.type[0], l.elem[0],
&l.x[0], &l.y[0], &l.z[0],
&l.vx[0], &l.vy[0], &l.vz[0],
&l.fx[0], &l.fy[0], &l.fz[0]
);
SetData(head, a, &l);
}
head->atoms = p->atoms;
}
void GetData(FILE *f, PARAM* p, HEAD *head, ATOMS *a, ATOMS *b, ATOMS *c){
int i, j;
char buf[1024];
ATOMS l;
Allocate(&l, 1);
if (a != NULL) a->atoms = 0;
if (b != NULL) b->atoms = 0;
if (c != NULL) c->atoms = 0;
GetHeader(f, head);
for(i=0; i<head->atoms; i++){
fgets(buf, sizeof(buf), f);
sscanf(buf, "%d %d %s %lf %lf %lf %lf %lf %lf %lf %lf %lf",
&l.id[0], &l.type[0], l.elem[0],
&l.x[0], &l.y[0], &l.z[0],
&l.vx[0], &l.vy[0], &l.vz[0],
&l.fx[0], &l.fy[0], &l.fz[0]
);
/* idで選択 */
for (j=1; j<p->Aid[0]; j++)
if (l.id[0] == p->Aid[j]) SetData(head, a, &l);
/* 元素名で選択 */
if (strcmp(p->Aelem, l.elem[0]) == 0) SetData(head, a, &l);
/* 元素タイプ番号で選択 */
if (p->Atype == l.type[0]) SetData(head, a, &l);
if (b == NULL) continue;
/* idで選択 */
for (j=1; j<p->Bid[0]; j++)
if (l.id[0] == p->Bid[j]) SetData(head, b, &l);
/* 元素名で選択 */
if (strcmp(p->Belem, l.elem[0]) == 0) SetData(head, b, &l);
/* 元素タイプ番号で選択 */
if (p->Btype == l.type[0]) SetData(head, b, &l);
if (c == NULL) continue;
/* idで選択 */
for (j=1; j<p->Cid[0]; j++)
if (l.id[0] == p->Cid[j]) SetData(head, c, &l);
/* 元素名で選択 */
if (strcmp(p->Celem, l.elem[0]) == 0) SetData(head, c, &l);
/* 元素タイプ番号で選択 */
if (p->Ctype == l.type[0]) SetData(head, c, &l);
}
}
void GetOneStepData(FILE *f, HEAD *head, ATOMS *a){
int i;
double x, y, z;
char buf[1024];
GetHeader(f, head);
for(i=0; i<head->atoms; i++){
fgets(buf, sizeof(buf), f);
sscanf(buf, "%d %d %s %lf %lf %lf %lf %lf %lf %lf %lf %lf",
&a->id[i], &a->type[i], a->elem[i],
&x, &y, &z,
&a->vx[i], &a->vy[i], &a->vz[i],
&a->fx[i], &a->fy[i], &a->fz[i]);
/* 絶対座標を分率座標へ 2017-12-27に修正 */
a->x[i] = x*head->B[0][0] + y*head->B[1][0] + z*head->B[2][0];
a->y[i] = x*head->B[0][1] + y*head->B[1][1] + z*head->B[2][1];
a->z[i] = x*head->B[0][2] + y*head->B[1][2] + z*head->B[2][2];
a->x[i] = a->x[i] - floor(a->x[i]);
a->y[i] = a->y[i] - floor(a->y[i]);
a->z[i] = a->z[i] - floor(a->z[i]);
}
}
void SetIDfromElemTtype(PARAM *param){
int i, j;
ATOMS a;
FILE *f;
HEAD head;
/* 構造体のメモリ確保 */
Allocate(&a, param->atoms);
/* ファイルオープン */
f = fopen(param->infile, "r");
GetOneStepData(f, &head, &a);
/* 元素名で指定した場合はidに変換 */
if (strcmp(param->Aelem, "") != 0){
j = 0;
for (i=0; i<a.atoms; i++){
if (strcmp(a.elem[i], param->Aelem) == 0){
param->Aid = realloc(param->Aid, sizeof(int) * (j + 2));
param->Aid[j+1] = a.id[i];
j++;
}
}
param->Atype = -1;
strcpy(param->Aelem, "");
param->Aid[0] = j+1;
}
/* 元素タイプで指定した場合はidに変換 */
if (param->Atype != -1){
j = 0;
for (i=0; i<a.atoms; i++){
if (param->Atype == a.type[i]){
param->Aid = realloc(param->Aid, sizeof(int) * (j + 2));
param->Aid[j+1] = a.id[i];
j++;
}
}
param->Atype = -1;
strcpy(param->Aelem, "");
param->Aid[0] = j+1;
}
fclose(f);
}
int* SetIDfromMolecules(int *Aid, int n){
int i, j;
int *tmp;
int atoms;
/* 指定原子から連番で原子の数(n)だけ選択原子を増やす */
atoms = (Aid[0]-1) * n;
tmp = malloc(sizeof(int) * atoms + 1);
tmp[0] = atoms + 1;
for (i=1; i<Aid[0]; i++){
tmp[(i-1)*n + 1] = Aid[i];
for (j=0; j<n; j++){
tmp[(i-1)*n + 1 + j + 1] = Aid[i] + j + 1;
}
}
Aid = malloc(sizeof(int)*tmp[0]);
Aid[0] = tmp[0];
for (i=1; i<Aid[0]; i++)
Aid[i] = tmp[i];
return Aid;
}
void Unwrap(int steps, int atoms, double **x, double **y, double **z){
int **nx, **ny, **nz;
int i, j;
nx = malloc(sizeof(int*) * steps);
ny = malloc(sizeof(int*) * steps);
nz = malloc(sizeof(int*) * steps);
for (i=0; i < steps; i++){
nx[i] = malloc(sizeof(int) * atoms);
ny[i] = malloc(sizeof(int) * atoms);
nz[i] = malloc(sizeof(int) * atoms);
}
for (i=0; i<steps; i++){
for (j=0; j<atoms; j++){
nx[i][j] = 0;
ny[i][j] = 0;
nz[i][j] = 0;
}
}
for (i=1; i<steps; i++){
for (j=0; j<atoms; j++){
nx[i][j] = nx[i-1][j] + round(x[i-1][j] - x[i][j]);
ny[i][j] = ny[i-1][j] + round(y[i-1][j] - y[i][j]);
nz[i][j] = nz[i-1][j] + round(z[i-1][j] - z[i][j]);
}
}
for (i=0; i<steps; i++){
for (j=0; j<atoms; j++){
x[i][j] = x[i][j] + (double)nx[i][j];
y[i][j] = y[i][j] + (double)ny[i][j];
z[i][j] = z[i][j] + (double)nz[i][j];
}
}
}
+146
View File
@@ -0,0 +1,146 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m rotcorr */
/* 水分子の回転相関時間を計算する。 */
/* 日本化学会編「溶液の分子論的描像」 p.98 (1995) */
/* 室温での水の回転相関時間は1ps程度 */
/* 原子タイプで酸素原子を指定する */
/* idはsortされていてO,H,H O,H.Hの並びになっていること */
/* 酸素原子の後に2つの水分子が続くIDを仮定している */
/* --shfitと--tauを小さくすれば統計が稼げる。ただしシフトが小さすぎる相関が影響を受ける */
/* --shiftでMSDが変わらないようパラメータを調整する。 */
/* A原子(-a, -x, -s)で酸素原子を指定する。 */
/* --shiftは速度相関関数を計算する時にシフトさせるステップ default:1 */
/* --tauは速度相関関数を計算する時間ステップ範囲。-1でMDの全ステップで計算する default:-1 */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorRotationCorr(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for RotationCorr analysis:\n");
printf("--shift time shift for RotationCorr [1]\n");
printf("--tau time period for RotationCorr (-1: all steps [-1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m rotcorr -x O --dt 1.0 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.rot\n");
exit(0);
}
void OutputRotationCorr(PARAM *p, double *vcor){
int i;
double vsum = 0.0;
FILE *f;
f = fopen(p->outfile, "w");
fprintf(f, "# %22s ", "time/s");
fprintf(f, "%24s ", "C(t)");
fprintf(f, "%24s ", "sum(C(t)*dt)/s");
fprintf(f, "\n");
for (i=0; i<TAU; i++){
vsum = vsum + vcor[i] * DT * 1e-15;
fprintf(f, "%24e ", (double)i*DT*1e-15);
fprintf(f, "%24e ", vcor[i]);
fprintf(f, "%24e ", vsum);
fprintf(f, "\n");
}
printf("%s was created.\n", p->outfile);
fclose(f);
}
void EstimateRotationCorr(PARAM *param){
int i, j, p, step_counter=0;
int matoms;
FILE *f;
ATOMS a;
HEAD head;
double **vx, **vy, **vz; /* 水分子のベクトル */
double vvx, vvy, vvz;
double xa, ya, za;
double *rcor;
double vv, ab, norm_a, norm_b, cos2_theta;
if (ArgCheckInputOutput(param) != 0) ErrorRotationCorr();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorRotationCorr();
/* 選択元素がステップで変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
param->Aid = SetIDfromMolecules(param->Aid, 3);
Allocate(&a, param->Aid[0] - 1);
/* -1の場合は全ステップで計算する */
if (TAU == -1) {
TAU = param->steps;
TAU_SHIFT = param->steps;
}
/* 全ステップの水のベクトルを取得 */
matoms = a.atoms/3;
f = fopen(param->infile, "r");
vx = malloc(sizeof(double*) * param->steps);
vy = malloc(sizeof(double*) * param->steps);
vz = malloc(sizeof(double*) * param->steps);
for (i=0; i<param->steps; i++){
vx[i] = malloc(sizeof(double)*matoms);
vy[i] = malloc(sizeof(double)*matoms);
vz[i] = malloc(sizeof(double)*matoms);
}
for (i=0; i<param->steps; i++){
for (j=0; j<matoms; j++){
vx[i][j] = 0.0;
vy[i][j] = 0.0;
vz[i][j] = 0.0;
}
}
printf("Loading data...\n");
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
for (j=0; j<matoms; j++){
for (p=1; p<3; p++){
vvx = a.x[3*j+p] - a.x[3*j];
vvy = a.y[3*j+p] - a.y[3*j];
vvz = a.z[3*j+p] - a.z[3*j];
vvx = vvx - round(vvx);
vvy = vvy - round(vvy);
vvz = vvz - round(vvz);
xa = vvx*head.A[0][0] + vvy*head.A[1][0] + vvz*head.A[2][0];
ya = vvx*head.A[0][1] + vvy*head.A[1][1] + vvz*head.A[2][1];
za = vvx*head.A[0][2] + vvy*head.A[1][2] + vvz*head.A[2][2];
vx[i][j] = vx[i][j] + xa;
vy[i][j] = vy[i][j] + ya;
vz[i][j] = vz[i][j] + za;
}
}
}
fclose(f);
/* 回転相関の計算 */
rcor = malloc(sizeof(double) * TAU);
for (i=0; i<TAU; i++) rcor[i] = 0.0;
for (p=0; p+TAU <= param->steps; p=p+TAU_SHIFT){
printf("Rotation correlation step ranging from %d to %d\n", p, p+TAU);
for (i=0; i<TAU; i++){
vv = 0;
for (j=0; j<matoms; j++){
ab = vx[p][j]*vx[p+i][j] + vy[p][j]*vy[p+i][j] + vz[p][j]*vz[p+i][j]; /* a dot b */
norm_a = pow(vx[p][j],2) + pow(vy[p][j],2) + pow(vz[p][j],2); /* |a|^2 */
norm_b = pow(vx[p+i][j],2) + pow(vy[p+i][j],2) + pow(vz[p+i][j],2); /* |b|^2 */
cos2_theta = ab*ab/(norm_a * norm_b); /* cos2theta */
vv = vv + 0.5*(3*cos2_theta - 1);
}
rcor[i] = rcor[i] + vv/matoms;
}
step_counter++;
}
for (i=0; i<TAU; i++) rcor[i] = rcor[i]/step_counter;
if (step_counter == 0){
printf("--tau is too long, can not calculate Rotation correlation!!!\n");
exit(0);
}
OutputRotationCorr(param, rcor);
}
+62
View File
@@ -0,0 +1,62 @@
#include "dump2analysis.h"
/* -m template */
/* lammpstrjから3原子の角度分布を計算する */
/* A原子(-a, -x, -s)とB原子(-c, -z, -u)で端の原子を指定する。 */
/* B原子(-b, -y, -t)で中心原子を指定する。 */
/* --rcut_abは角度を計算するA-B原子距離のカッとオフ。 default:2.3 */
/* --rcut_bcは角度を計算するB-C原子距離のカッとオフ。 default:2.3 */
void ErrorTemplate(){
printf("Required arguments atoms A, atoms B, and atom C\n");
printf("(-a, -x, -s) atom A\n");
printf("(-b, -y, -t) atom B\n");
printf("(-c, -z, -u) atom B\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for Gr analysis:\n");
printf("--rcut_ab cut-off for A-B bonds [2.3]\n");
printf("--rcut_bc cut-off for B-C bonds [2.3]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m angle -x Si -y O -z Si -i hoge.lammpstrj -o hoge.angle\n");
exit(0);
}
void OutputTemplate(PARAM *p){
FILE *fp;
fp = fopen(p->outfile, "w");
fclose(fp);
}
void EstimateTemplate(PARAM *param){
FILE *f;
HEAD head;
ATOMS a, b, c; /* bが中心元素 */
int i, j, k;
int s;
if (ArgCheckInputOutput(param) != 0) ErrorTemplate();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 7) ErrorTemplate();
Allocate(&a, param->atoms);
Allocate(&b, param->atoms);
Allocate(&c, param->atoms);
f = fopen(param->infile, "r");
/* 距離の計算 */
for (s=0; s<param->steps; s++){
if (s%10 == 0) printf("Calculating angle step: %d...\n", s);
/* 原子の選択 */
GetData(f, param, &head, &a, &b, &c);
for(i=0; i<b.atoms; i++){
for(j=0; j<a.atoms; j++){
for(k=0; k<c.atoms; k++){
}
}
}
}
OutputTemplate(param);
}
+77
View File
@@ -0,0 +1,77 @@
#include "dump2analysis.h"
/* -m template_msd */
/* lammpstrjから指定した原子の平均二乗変位(MSD)を時間シフトしながら計算する */
/* 原子タイプで指定しても最初のステップのidで原子を選択する */
/* --shfitと--tauを小さくすればMSDの統計が稼げる。ただしシフトが小さすぎるMSDが変化する。 */
/* --shiftでMSDが変わらないようパラメータを調整する。 */
/* 教科書Pを参照 */
/* A原子(-a, -x, -s)を指定する。 */
/* --shiftはMSDを計算する時にシフトさせるステップ default:1 */
/* --tauはMSDを計算する時間ステップ範囲。-1でMDの全ステップでMSDを計算する default:-1 */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorTemplateMSD(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for TemplateMSD analysis:\n");
printf("--shift time shift for TemplateMSD [1]\n");
printf("--tau time period for TemplateMSD (-1: all steps [-1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m msd -x Li --dt 1.2 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.msd\n");
exit(0);
}
void OutputTemplateMSD(PARAM *p){
FILE *f;
f = fopen(p->outfile, "w");
fclose(f);
}
void EstimateTemplateMSD(PARAM *param){
int i, j, p, step_counter=0;
FILE *f;
HEAD head;
ATOMS a;
if (ArgCheckInputOutput(param) != 0) ErrorTemplateMSD();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorTemplateMSD();
/* 選択元素が変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1);
f = fopen(param->infile, "r");
/* -1の場合は全ステップでMSDを計算する */
if (TAU == -1) {
TAU = param->steps;
TAU_SHIFT = param->steps;
}
/* 分率座標のデータを全ステップで取得する */
printf("Loading data...\n");
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
}
/* msdの計算 r, a, b, c*/
for (p=0; p+TAU <= param->steps; p=p+TAU_SHIFT){
printf("TemplateMSD step range: from %d to %d\n", p, p+TAU);
for (i=0; i<TAU; i++){
for (j=0; j<a.atoms; j++){
}
}
step_counter++;
}
if (step_counter == 0){
printf("--tau is too long, can not calculate TemplateMSD!!!\n");
exit(0);
}
OutputTemplateMSD(param);
}
+137
View File
@@ -0,0 +1,137 @@
#include "dump2analysis.h"
/* -m template_msd */
/* lammpstrjから指定した原子のvan Hove関数を時間シフトしながら計算する */
/* 原子タイプで指定しても最初のステップのidで原子を選択する */
/* --tauでジャンプさせるステップ数を指定する */
/* --shfitを指定すれば、複数のtau期間をサンプリングしvan Hoveを計算する */
/* --shfitを指定しなければ、tauが小さくても1セットのtauだけで計算する */
/* --shiftを指定する時は、--shftで関数が変わらないよう調整する。 */
/* --drでrの刻みを指定する default=0.01 */
/* A原子(-a, -x, -s)を指定する。 */
/* --shiftはMSDを計算する時にシフトさせるステップ default:1 */
/* --tauはval Hove関数のt。defaultでtotal step */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorVanHove(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for van Hove analysis:\n");
printf("--tau time period for van Hove function (-1: total steps [-1]\n");
printf("--shift time shift for van Hove function [1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m msd -x Li --dt 1.2 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.msd\n");
exit(0);
}
void OutputVanHove(PARAM *p, double *g){
int i, RDATA;
double r;
FILE *f;
RDATA = floor((RMAX-RMIN)/DR);
f = fopen(p->outfile, "w");
fprintf(f, "# step: %d\n", TAU);
fprintf(f, "# time/fs: %lf\n", TAU*DT);
for (i=0; i<RDATA; i++){
r = RMIN + (double)i*DR + 0.5*DR;
fprintf(f, "%lf %lf\n", r, g[i]);
}
fclose(f);
}
void EstimateVanHove(PARAM *param){
int i, j, p, rp, step_counter=0;
FILE *f;
HEAD *head;
ATOMS a;
double **x, **y, **z;
int RDATA;
double *g;
double xa, ya, za, dx, dy, dz, r;
if (ArgCheckInputOutput(param) != 0) ErrorVanHove();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorVanHove();
/* G(r,TAU)のメモリ確保 */
RDATA = floor((RMAX-RMIN)/DR);
g = malloc(sizeof(double)*RDATA);
for (i=0; i<RDATA; i++) g[i] = 0.0;
/* 選択元素が時間ステップで変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1);
f = fopen(param->infile, "r");
/* メモリー確保 */
x = malloc(sizeof(double*) * param->steps);
y = malloc(sizeof(double*) * param->steps);
z = malloc(sizeof(double*) * param->steps);
for (i=0; i<param->steps; i++){
x[i] = malloc(sizeof(double)*a.atoms);
y[i] = malloc(sizeof(double)*a.atoms);
z[i] = malloc(sizeof(double)*a.atoms);
}
head = malloc(sizeof(HEAD) * param->steps);
/* -1の場合は全ステップのtでvan Hove関数を計算する */
if (TAU == -1) TAU = param->steps;
if (TAU_SHIFT == -1) TAU_SHIFT = param->steps;
/* 分率座標のデータを全ステップで取得する */
printf("Loading data...\n");
for (i=0; i<param->steps; i++){
GetData(f, param, &head[i], &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
x[i][j] = a.x[j] - floor(a.x[j]);
y[i][j] = a.y[j] - floor(a.y[j]);
z[i][j] = a.z[j] - floor(a.z[j]);
}
}
Unwrap(param->steps, a.atoms, x, y, z);
/* 絶対座標に変換 */
for (i=0; i<param->steps; i++){
for (j=0; j<a.atoms; j++){
xa = x[i][j]*head[i].A[0][0] + y[i][j]*head[i].A[1][0] + z[i][j]*head[i].A[2][0];
ya = x[i][j]*head[i].A[0][1] + y[i][j]*head[i].A[1][1] + z[i][j]*head[i].A[2][1];
za = x[i][j]*head[i].A[0][2] + y[i][j]*head[i].A[1][2] + z[i][j]*head[i].A[2][2];
x[i][j] = xa;
y[i][j] = ya;
z[i][j] = za;
}
}
/* van Hove関数の計算 r, a, b, c*/
step_counter = 0;
for (p=0; p+TAU+TAU_SHIFT < param->steps; p=p+TAU_SHIFT){
printf("VanHove step range: from %d to %d\r", p, p+TAU);
fflush(stdout);
for (j=0; j<a.atoms; j++){
dx = x[p+TAU][j] - x[p][j];
dy = y[p+TAU][j] - y[p][j];
dz = z[p+TAU][j] - z[p][j];
r = sqrt(dx*dx + dy*dy + dz*dz);
if (RMIN < r && r < RMAX) {
rp = (int)floor((r-RMIN)/DR);
g[rp] = g[rp] + 1.0;
}
}
step_counter++;
}
for (i=0; i<RDATA; i++) g[i] = g[i]/step_counter/a.atoms;
if (step_counter == 0){
printf("--tau is too long, can not calculate VanHove!!!\n");
exit(0);
}
OutputVanHove(param, g);
}
+126
View File
@@ -0,0 +1,126 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m vcorr */
/* D=sum(v(t)v(0)dt)/3の関係がある。 */
/* 原子タイプで指定しても最初のステップのidで原子を選択する */
/* lammpstrjは少なくとも1.0fsで作成しないと誤差が大きい */
/* --shfitと--tauを小さくすれば統計が稼げる。ただしシフトが小さすぎる相関が影響を受ける */
/* --shiftでMSDが変わらないようパラメータを調整する。 */
/* 「コンピュータシミュレーションによる物質化学」P50を参照 */
/* A原子(-a, -x, -s)を指定する。 */
/* --shiftは速度相関関数を計算する時にシフトさせるステップ default:1 */
/* --tauは速度相関関数を計算する時間ステップ範囲。-1でMDの全ステップで計算する default:-1 */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorVelocityCorr(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for VelocityCorr analysis:\n");
printf("--shift time shift for VelocityCorr [1]\n");
printf("--tau time period for VelocityCorr (-1: all steps [-1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m vcorr -x Li --dt 1.2 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.vcorr\n");
exit(0);
}
void OutputVelocityCorr(PARAM *p, double **vcor){
int i;
double vsum = 0.0;
double vv;
FILE *f;
f = fopen(p->outfile, "w");
fprintf(f, "# %22s ", "time/s");
fprintf(f, "%24s ", "v(t)v(0) m2/s2");
fprintf(f, "%24s ", "sum(v(t)v(0))*dt/3 m2/s");
fprintf(f, "\n");
for (i=0; i<TAU; i++){
vv = vcor[0][i] + vcor[1][i] + vcor[2][i];
vsum = vsum + vv * DT * 1e-5;
fprintf(f, "%24e ", (double)i*DT*1e-15);
fprintf(f, "%24e ", vv*1e+10);
fprintf(f, "%24e ", vsum/3.0);
fprintf(f, "\n");
}
printf("%s was created.\n", p->outfile);
fclose(f);
}
void EstimateVelocityCorr(PARAM *param){
int i, j, p, step_counter=0;
FILE *f;
ATOMS a;
HEAD head;
double **vx, **vy, **vz;
double **vcor;
double vvx, vvy, vvz;
if (ArgCheckInputOutput(param) != 0) ErrorVelocityCorr();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorVelocityCorr();
/* 選択元素がステップで変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1);
/* -1の場合は全ステップで計算する */
if (TAU == -1) {
TAU = param->steps;
TAU_SHIFT = param->steps;
}
vcor = malloc(sizeof(double*) * 3);
for (i=0; i<3; i++) vcor[i] = malloc(sizeof(double) * TAU);
for (i=0; i<3; i++)
for (j=0; j<TAU; j++) vcor[i][j] = 0.0;
vx = malloc(sizeof(double*) * param->steps);
vy = malloc(sizeof(double*) * param->steps);
vz = malloc(sizeof(double*) * param->steps);
for (i=0; i<param->steps; i++){
vx[i] = malloc(sizeof(double) * a.atoms);
vy[i] = malloc(sizeof(double) * a.atoms);
vz[i] = malloc(sizeof(double) * a.atoms);
}
f = fopen(param->infile, "r");
/* 全ステップの速度を読み込み */
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
vx[i][j] = a.vx[j];
vy[i][j] = a.vy[j];
vz[i][j] = a.vz[j];
}
}
fclose(f);
/* 速度相関の計算 */
for (p=0; p+TAU <= param->steps; p=p+TAU_SHIFT){
printf("Velocity correlation step ranging from %d to %d\n", p, p+TAU);
for (i=0; i<TAU; i++){
vvx = 0.0;
vvy = 0.0;
vvz = 0.0;
for (j=0; j<a.atoms; j++){
vvx = vvx + vx[p][j] * vx[p+i][j];
vvy = vvy + vy[p][j] * vy[p+i][j];
vvz = vvz + vz[p][j] * vz[p+i][j];
}
vcor[0][i] = vcor[0][i] + vvx/a.atoms;
vcor[1][i] = vcor[1][i] + vvy/a.atoms;
vcor[2][i] = vcor[2][i] + vvz/a.atoms;
}
step_counter++;
}
for (i=0; i<3; i++)
for (j=0; j<TAU; j++) vcor[i][j] = vcor[i][j]/step_counter;
if (step_counter == 0){
printf("--tau is too long, can not calculate Velocity correlation!!!\n");
exit(0);
}
OutputVelocityCorr(param, vcor);
}
+131
View File
@@ -0,0 +1,131 @@
#include "dump2analysis.h"
/* DOCUMENT */
/* -m vmcorr */
/* 原子タイプで指定しても最初のステップのidで原子を選択する */
/* 選択した原子の自己相関を除いた多体速度相関を計算する */
/* -m vcorr は自己相関の計算 */
/* 多体速度相関を計算することでLiの玉突きの程度を評価できる */
/* lammpstrjは少なくとも1.0fsで作成しないと誤差が大きい */
/* --shfitと--tauを小さくすれば統計が稼げる。ただしシフトが小さすぎると相関のが影響を受ける */
/* --shiftでMSDが変わらないようパラメータを調整する。 */
/* 「コンピュータシミュレーションによる物質化学」P50を参照 */
/* A原子(-a, -x, -s)を指定する。 */
/* --shiftは速度相関関数を計算する時にシフトさせるステップ default:1 */
/* --tauは速度相関関数を計算する時間ステップ範囲。-1でMDの全ステップで計算する default:-1 */
/* --dtはMDの時間ステップでの時間(fs単位) default:1.0 */
void ErrorVelocityMultiCorr(){
printf("Required arguments atoms A\n");
printf("(-a, -x, -s) atom A\n");
printf("------------------------------------------------------------\n");
printf("Optional arguments for VelocityMultiCorr analysis:\n");
printf("--shift time shift for VelocityMultiCorr [1]\n");
printf("--tau time period for VelocityMultiCorr (-1: all steps [-1]\n");
printf("--dt time period for one step (fs) [1.0]\n");
printf("------------------------------------------------------------\n");
printf("Example:\n");
printf("dump2analysis -m vmcorr -x Li --dt 1.2 --tau 2500 --shift 100 -i hoge.lammpstrj -o hoge.vmcorr\n");
exit(0);
}
void OutputVelocityMultiCorr(PARAM *p, double **vcor){
int i;
double vsum = 0.0;
double vv;
FILE *f;
f = fopen(p->outfile, "w");
fprintf(f, "# %22s ", "time/s");
fprintf(f, "%24s ", "v(t)v(0) m2/s2");
fprintf(f, "%24s ", "sum(v(t)v(0))*dt/3 m2/s");
fprintf(f, "\n");
for (i=0; i<TAU; i++){
vv = vcor[0][i] + vcor[1][i] + vcor[2][i];
vsum = vsum + vv * DT * 1e-5;
fprintf(f, "%24e ", (double)i*DT*1e-15);
fprintf(f, "%24e ", vv*1e+10);
fprintf(f, "%24e ", vsum/3.0);
fprintf(f, "\n");
}
printf("%s was created.\n", p->outfile);
fclose(f);
}
void EstimateVelocityMultiCorr(PARAM *param){
int i, j, k, p, step_counter=0;
FILE *f;
ATOMS a;
HEAD head;
double **vx, **vy, **vz;
double **vcor;
double vvx, vvy, vvz;
if (ArgCheckInputOutput(param) != 0) ErrorVelocityMultiCorr();
SetAtomsSteps(param);
if (CheckArgAtomSelect(param) != 1) ErrorVelocityMultiCorr();
/* 選択元素がステップで変わるとおかしくなるので元素選択は全てid */
SetIDfromElemTtype(param);
Allocate(&a, param->Aid[0]-1);
/* -1の場合は全ステップで計算する */
if (TAU == -1) {
TAU = param->steps;
TAU_SHIFT = param->steps;
}
vcor = malloc(sizeof(double*) * 3);
for (i=0; i<3; i++) vcor[i] = malloc(sizeof(double) * TAU);
for (i=0; i<3; i++)
for (j=0; j<TAU; j++) vcor[i][j] = 0.0;
vx = malloc(sizeof(double*) * param->steps);
vy = malloc(sizeof(double*) * param->steps);
vz = malloc(sizeof(double*) * param->steps);
for (i=0; i<param->steps; i++){
vx[i] = malloc(sizeof(double) * a.atoms);
vy[i] = malloc(sizeof(double) * a.atoms);
vz[i] = malloc(sizeof(double) * a.atoms);
}
f = fopen(param->infile, "r");
/* 全ステップの速度を読み込み */
for (i=0; i<param->steps; i++){
GetData(f, param, &head, &a, NULL, NULL);
for (j=0; j<a.atoms; j++){
vx[i][j] = a.vx[j];
vy[i][j] = a.vy[j];
vz[i][j] = a.vz[j];
}
}
fclose(f);
/* 多体速度相関の計算 */
for (p=0; p+TAU <= param->steps; p=p+TAU_SHIFT){
printf("Velocity multi correlation step ranging from %d to %d\n", p, p+TAU);
for (i=0; i<TAU; i++){
vvx = 0.0;
vvy = 0.0;
vvz = 0.0;
for (j=0; j<a.atoms; j++){
for (k=0; k<a.atoms; k++){
if (j == k) continue;
vvx = vvx + vx[p][j] * vx[p+i][k];
vvy = vvy + vy[p][j] * vy[p+i][k];
vvz = vvz + vz[p][j] * vz[p+i][k];
}
}
vcor[0][i] = vcor[0][i] + vvx/(a.atoms*(a.atoms-1));
vcor[1][i] = vcor[1][i] + vvy/(a.atoms*(a.atoms-1));
vcor[2][i] = vcor[2][i] + vvz/(a.atoms*(a.atoms-1));
}
step_counter++;
}
for (i=0; i<3; i++)
for (j=0; j<TAU; j++) vcor[i][j] = vcor[i][j]/step_counter;
if (step_counter == 0){
printf("--tau is too long, can not calculate Velocity multi correlation!!!\n");
exit(0);
}
OutputVelocityMultiCorr(param, vcor);
}