Compare commits

...

68 Commits

Author SHA1 Message Date
829d11e88b Merge pull request #44 from rbberger/doc-fixes
Some documentation fixes and IPython updates
2016-09-27 15:36:10 -06:00
96f31d6dad Merge pull request #43 from akohlmey/doc-fixes
Documentation fixes
2016-09-27 15:35:41 -06:00
35705217f4 enable multi-processor NEB replicas 2016-09-27 15:34:08 -06:00
9a2f738673 sync with SVN 2016-09-27 15:32:57 -06:00
a3a3af691c Merge branch 'balance' into integration 2016-09-27 10:53:56 -06:00
f9677e6d7b released version of weighted balancing 2016-09-27 10:52:27 -06:00
a3277117e2 Add filter which merges preformatted sections 2016-09-26 18:52:43 -04:00
67d4c07689 Do not escape underscore inside preformat blocks 2016-09-26 18:52:31 -04:00
877a504933 Fix typo in Section_howto.txt 2016-09-26 18:44:25 -04:00
8a951f9d79 fix typo 2016-09-26 18:43:03 -04:00
69a8842ecb update load balance weights documentation for fix balance and balance 2016-09-26 18:33:50 -04:00
2af5c75f42 correct issue from merge 2016-09-26 18:32:01 -04:00
158599fca2 Merge branch 'balance2' into weighted-balancing 2016-09-26 18:25:36 -04:00
7732548b3c correct issues related to the addition of fix cmap 2016-09-26 18:14:32 -04:00
2c5f6e1a99 fix a broken link that slipped through the cracks in the previous cleanup 2016-09-26 18:13:18 -04:00
d0aa13b543 Fix broken link in Section_packages.txt 2016-09-26 16:53:18 -04:00
c31b026797 Merge branch 'integration' into weighted-balancing 2016-09-26 15:20:22 -04:00
47b52ed2dd Merge branch 'integration' into balance2 2016-09-26 15:19:48 -04:00
c87f9aeb9f Merge remote-tracking branch 'akohlmey/integration' into ipython-update-and-cleanup 2016-09-26 11:59:30 -04:00
08f0bf9025 new verion of balance weighting 2016-09-23 14:37:53 -06:00
d3406df6a0 Updated instructions in IPython notebooks
Make.py is now used to enable exceptions support
2016-09-21 12:07:59 -04:00
a4c8c9b1f9 Strip IPython notebooks of output 2016-09-21 11:35:00 -04:00
f1183cb97c Remove old copies of IPython notebooks 2016-09-21 11:28:15 -04:00
40b68820d9 update html docs to be used with latest version of converter tools 2016-09-14 14:06:25 -04:00
90e22a7909 Merge branch 'integration' into weighted-balancing 2016-09-14 14:04:02 -04:00
0f7873c0b8 Merge branch 'integration' into weighted-balancing 2016-09-01 08:26:08 -04:00
eac7217720 Merge remote-tracking branch 'lammps-rw/integration' into weighted-balancing 2016-08-31 16:34:51 -04:00
93401a83c6 reintroduce pointer nullification for fix balance 2016-08-31 15:58:33 -04:00
82859c4e25 Merge branch 'integration' into weighted-balancing 2016-08-31 15:57:02 -04:00
10edfa297b Merge branch 'integration' into weighted-balancing 2016-08-31 06:42:00 -04:00
74b1caf2e6 undo changes that belong to a different branch or are redundant 2016-08-22 15:46:01 -04:00
243137d552 undo obsoleted changes to group command by iain bethune 2016-08-22 15:23:16 -04:00
40fd97bd4c silence warnings about cases, that cannot happen
(cherry picked from commit 60bf26bad9)
2016-08-22 15:12:24 -04:00
8492212c4b fix bug found by coverity scan
(cherry picked from commit 63b41cb139)
2016-08-22 15:12:24 -04:00
1976314f40 improve the weight assignment algorithm for compute time based balancing
(cherry picked from commit 2b052c2a9c)
2016-08-22 15:12:23 -04:00
17c1d3a941 Fix typo
(cherry picked from commit 3b8ecd5c06)
2016-08-22 15:12:23 -04:00
fec59ee3b9 update documentation for refactored load-balancing
(cherry picked from commit 7abc061bf7)
2016-08-22 15:12:23 -04:00
33a98d79fe remove upper limit for weigh factor on neighbor list and time weights
(cherry picked from commit 797c6dc2dd)
2016-08-22 15:12:23 -04:00
0902b600fb add new imbalance module store, which allows to store weights in an atom property
(cherry picked from commit 5405622f3b)
2016-08-22 15:12:23 -04:00
7f20afe122 convert from using fix property/atom to using fix store
(cherry picked from commit 280aef55d2)
2016-08-22 15:12:22 -04:00
7e0dc7a74d whitespace cleanup
(cherry picked from commit b3bd35c7be)
2016-08-22 15:12:22 -04:00
b954283ec2 properly handle the case of neighbor lists never been computed before
(cherry picked from commit fcba14a0aa)
2016-08-22 15:12:22 -04:00
ecc136b6dc plug small memory leak
(cherry picked from commit c00aa3c600)
2016-08-22 15:12:22 -04:00
4a536d71eb simplify and correct logic to pass weight to balancer algorithms
(cherry picked from commit 529417f86c)
2016-08-22 15:12:22 -04:00
460bc14822 correct string hanlding with building custom property label
(cherry picked from commit 6a519e5eef)
2016-08-22 15:12:21 -04:00
bb40f63a34 we cannot add a fix while creating a fix. move fix addintion to Fix::init()
(cherry picked from commit 4c26534245)
2016-08-22 15:12:21 -04:00
c6699e19e6 rewrote balancing to use per-atom data stored via fix property/atom
(cherry picked from commit 1da862b440)
2016-08-22 15:12:21 -04:00
2574891160 fix optional argument scanning bug
(cherry picked from commit 2a90afe7e9)
2016-08-22 15:12:21 -04:00
332d6821ca remove unused class member
(cherry picked from commit f884bb2c92)
2016-08-22 15:12:20 -04:00
b20108bddb incorporate refactored weighting into fix balance
(cherry picked from commit 71ef6fb4d9)
2016-08-22 15:12:20 -04:00
8d38db07c7 convert weight array from class member to local pointer to temporary storage
(cherry picked from commit ecbbdc2e7f)
2016-08-22 15:12:20 -04:00
4114bafc28 proof-of-concept implementation for neighbor list based balancing with yet unsolved problems
(cherry picked from commit d40de42af8)
2016-08-22 15:12:20 -04:00
23a48916d7 re-factored balance command now works with group and time weights
(cherry picked from commit 3f674e5062)
2016-08-22 15:12:20 -04:00
34b34d8410 complete implementation for group based imbalance class
(cherry picked from commit 8ff0085cba)
2016-08-22 15:12:19 -04:00
a5d38c0875 prototype implementation for extensible imbalance scheme
(cherry picked from commit 362a26a3de)
2016-08-22 15:12:19 -04:00
eb273ab9ea fix elusive uninitialized data bug reported by valgrind
(cherry picked from commit b44492ee05)
2016-08-22 15:12:19 -04:00
3cf6715d40 be a bit more paranoid about initializing data structures
(cherry picked from commit bda51f2bac)
2016-08-22 15:12:19 -04:00
0b0db201d1 make it so that dynamic load balancing only uses the timing since the last balancing
(cherry picked from commit f758a4f4d0)
2016-08-22 15:12:18 -04:00
f76f2c881b minor tweaks and comment fixes
(cherry picked from commit f14e9cee83)
2016-08-22 15:12:18 -04:00
7d08d9991e improve c++-11 compliance. replace variable size stack allocation.
(cherry picked from commit af224028a9)
2016-08-22 15:12:18 -04:00
85cafde77c whitespace cleanup
(cherry picked from commit 2e0b9cae29)
2016-08-22 15:12:18 -04:00
db734c3003 disable debug output and include bond cost as well
(cherry picked from commit 9ea86965c5)
2016-08-22 15:12:18 -04:00
cc77679851 implement wall clock based load balancing cost function support
(cherry picked from commit 2a57dc6db4)
2016-08-22 15:12:17 -04:00
b8ae885de8 update documentation according to the modified implementation based on iain bethune's contributed code
(cherry picked from commit 76b8bbca8e)
2016-08-22 15:12:17 -04:00
66b4c9b847 implement modified version of balance and fix balance according to steve's suggestions and requirements
(cherry picked from commit 5a81288329)
2016-08-22 15:12:17 -04:00
85f58624a7 Comments
(cherry picked from commit 638fb5c119)
2016-08-22 15:12:17 -04:00
fc6270e590 Docs for load balance changes
(cherry picked from commit fc7afc2242)
2016-08-22 15:12:17 -04:00
f784f07b87 Set up branch with load balancing code from master
(cherry picked from commit fd8794f52a)
2016-08-22 15:12:16 -04:00
83 changed files with 7420 additions and 3018 deletions

View File

@ -1,10 +1,46 @@
Generation of LAMMPS Documentation
LAMMPS Documentation
Depending on how you obtained LAMMPS, this directory has 2 or 3
sub-directories and optionally 2 PDF files:
src content files for LAMMPS documentation
html HTML version of the LAMMPS manual (see html/Manual.html)
tools tools and settings for building the documentation
Manual.pdf large PDF version of entire manual
Developer.pdf small PDF with info about how LAMMPS is structured
If you downloaded LAMMPS as a tarball from the web site, all these
directories and files should be included.
If you downloaded LAMMPS from the public SVN or Git repositories, then
the HTML and PDF files are not included. Instead you need to create
them, in one of three ways:
(a) You can "fetch" the current HTML and PDF files from the LAMMPS web
site. Just type "make fetch". This should create a html_www dir and
Manual_www.pdf/Developer_www.pdf files. Note that if new LAMMPS
features have been added more recently than the date of your version,
the fetched documentation will include those changes (but your source
code will not, unless you update your local repository).
(b) You can build the HTML and PDF files yourself, by typing "make
html" followed by "make pdf". Note that the PDF make requires the
HTML files already exist. This requires various tools including
Sphinx, which the build process will attempt to download and install
on your system, if not already available. See more details below.
(c) You can genererate an older, simpler, less-fancy style of HTML
documentation by typing "make old". This will create an "old"
directory. This can be useful if (b) does not work on your box for
some reason, or you want to quickly view the HTML version of a doc
page you have created or edited yourself within the src directory.
E.g. if you are planning to submit a new feature to LAMMPS.
----------------
The generation of all documentation is managed by the Makefile in this
dir.
----------------
Options:
make html # generate HTML in html dir using Sphinx
@ -51,3 +87,10 @@ Once Python 3 is installed, open a Terminal and type
pip3 install virtualenv
This will install virtualenv from the Python Package Index.
----------------
Installing prerequisites for PDF build

View File

@ -1,7 +1,7 @@
<!-- HTML_ONLY -->
<HEAD>
<TITLE>LAMMPS Users Manual</TITLE>
<META NAME="docnumber" CONTENT="26 Sep 2016 version">
<META NAME="docnumber" CONTENT="28 Sep 2016 version">
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
</HEAD>
@ -21,7 +21,7 @@
<H1></H1>
LAMMPS Documentation :c,h3
26 Sep 2016 version :c,h4
28 Sep 2016 version :c,h4
Version info: :h4

View File

@ -2123,7 +2123,7 @@ thermo_style custom step temp press v_pxy v_pxz v_pyz v_v11 v_v22 v_v33
run 100000
variable v equal (v_v11+v_v22+v_v33)/3.0
variable ndens equal count(all)/vol
print "average viscosity: $v \[Pa.s/] @ $T K, $\{ndens\} /A^3" :pre
print "average viscosity: $v \[Pa.s\] @ $T K, $\{ndens\} /A^3" :pre
The fifth method is related to the above Green-Kubo method,
but uses the Einstein formulation, analogous to the Einstein

View File

@ -845,7 +845,7 @@ PYTHON package :link(PYTHON),h5
Contents: A "python"_python.html command which allow you to execute
Python code from a LAMMPS input script. The code can be in a separate
file or embedded in the input script itself. See "Section
11.2"_Section_python.html#py-2 for an overview of using Python from
11.2"_Section_python.html#py_2 for an overview of using Python from
LAMMPS and for other ways to use LAMMPS and Python together.
Building with the PYTHON package assumes you have a Python shared

View File

@ -10,7 +10,7 @@ balance command :h3
[Syntax:]
balance thresh style args ... keyword value ... :pre
balance thresh style args ... keyword args ... :pre
thresh = imbalance threshhold that must be exceeded to perform a re-balance :ulb,l
one style/arg pair can be used (or multiple for {x},{y},{z}) :l
@ -32,9 +32,23 @@ style = {x} or {y} or {z} or {shift} or {rcb} :l
Niter = # of times to iterate within each dimension of dimstr sequence
stopthresh = stop balancing when this imbalance threshhold is reached
{rcb} args = none :pre
zero or more keyword/value pairs may be appended :l
keyword = {out} :l
{out} value = filename
zero or more keyword/arg pairs may be appended :l
keyword = {weight} or {out} :l
{weight} style args = use weighted particle counts for the balancing
{style} = {group} or {neigh} or {time} or {var} or {store}
{group} args = Ngroup group1 weight1 group2 weight2 ...
Ngroup = number of groups with assigned weights
group1, group2, ... = group IDs
weight1, weight2, ... = corresponding weight factors
{neigh} factor = compute weight based on number of neighbors
factor = scaling factor (> 0)
{time} factor = compute weight based on time spend computing
factor = scaling factor (> 0)
{var} name = take weight from atom-style variable
name = name of the atom-style variable
{store} name = store weight in custom atom property defined by "fix property/atom"_fix_property_atom.html command
name = atom property name (without d_ prefix)
{out} arg = filename
filename = write each processor's sub-domain to a file :pre
:ule
@ -44,28 +58,42 @@ balance 0.9 x uniform y 0.4 0.5 0.6
balance 1.2 shift xz 5 1.1
balance 1.0 shift xz 5 1.1
balance 1.1 rcb
balance 1.0 shift x 10 1.1 weight group 2 fast 0.5 slow 2.0
balance 1.0 shift x 10 1.1 weight time 0.8 weight neigh 0.5 weight store balance
balance 1.0 shift x 20 1.0 out tmp.balance :pre
[Description:]
This command adjusts the size and shape of processor sub-domains
within the simulation box, to attempt to balance the number of
particles and thus the computational cost (load) evenly across
processors. The load balancing is "static" in the sense that this
command performs the balancing once, before or between simulations.
The processor sub-domains will then remain static during the
subsequent run. To perform "dynamic" balancing, see the "fix
within the simulation box, to attempt to balance the number of atoms
or particles and thus indirectly the computational cost (load) more
evenly across processors. The load balancing is "static" in the sense
that this command performs the balancing once, before or between
simulations. The processor sub-domains will then remain static during
the subsequent run. To perform "dynamic" balancing, see the "fix
balance"_fix_balance.html command, which can adjust processor
sub-domain sizes and shapes on-the-fly during a "run"_run.html.
Load-balancing is typically only useful if the particles in the
simulation box have a spatially-varying density distribution. E.g. a
model of a vapor/liquid interface, or a solid with an irregular-shaped
geometry containing void regions. In this case, the LAMMPS default of
Load-balancing is typically most useful if the particles in the
simulation box have a spatially-varying density distribution or when
the computational cost varies signficantly between different
particles. E.g. a model of a vapor/liquid interface, or a solid with
an irregular-shaped geometry containing void regions, or "hybrid pair
style simulations"_pair_hybrid.html which combine pair styles with
different computational cost. In these cases, the LAMMPS default of
dividing the simulation box volume into a regular-spaced grid of 3d
bricks, with one equal-volume sub-domain per procesor, may assign very
different numbers of particles per processor. This can lead to poor
performance when the simulation is run in parallel.
bricks, with one equal-volume sub-domain per procesor, may assign
numbers of particles per processor in a way that the computational
effort varies significantly. This can lead to poor performance when
the simulation is run in parallel.
The balancing can be performed with or without per-particle weighting.
With no weighting, the balancing attempts to assign an equal number of
particles to each processor. With weighting, the balancing attempts
to assign an equal aggregate computational weight to each processor,
which typically inducces a diffrent number of atoms assigned to each
processor. Details on the various weighting options and examples for
how they can be used are "given below"_#weighted_balance.
Note that the "processors"_processors.html command allows some control
over how the box volume is split across processors. Specifically, for
@ -78,9 +106,9 @@ sub-domains will still have the same shape and same volume.
The requested load-balancing operation is only performed if the
current "imbalance factor" in particles owned by each processor
exceeds the specified {thresh} parameter. The imbalance factor is
defined as the maximum number of particles owned by any processor,
divided by the average number of particles per processor. Thus an
imbalance factor of 1.0 is perfect balance.
defined as the maximum number of particles (or weight) owned by any
processor, divided by the average number of particles (or weight) per
processor. Thus an imbalance factor of 1.0 is perfect balance.
As an example, for 10000 particles running on 10 processors, if the
most heavily loaded processor has 1200 particles, then the factor is
@ -108,7 +136,7 @@ defined above. But depending on the method a perfect balance (1.0)
may not be achieved. For example, "grid" methods (defined below) that
create a logical 3d grid cannot achieve perfect balance for many
irregular distributions of particles. Likewise, if a portion of the
system is a perfect lattice, e.g. the intiial system is generated by
system is a perfect lattice, e.g. the initial system is generated by
the "create_atoms"_create_atoms.html command, then "grid" methods may
be unable to achieve exact balance. This is because entire lattice
planes will be owned or not owned by a single processor.
@ -134,11 +162,11 @@ The {x}, {y}, {z}, and {shift} styles are "grid" methods which produce
a logical 3d grid of processors. They operate by changing the cutting
planes (or lines) between processors in 3d (or 2d), to adjust the
volume (area in 2d) assigned to each processor, as in the following 2d
diagram where processor sub-domains are shown and atoms are colored by
the processor that owns them. The leftmost diagram is the default
partitioning of the simulation box across processors (one sub-box for
each of 16 processors); the middle diagram is after a "grid" method
has been applied.
diagram where processor sub-domains are shown and particles are
colored by the processor that owns them. The leftmost diagram is the
default partitioning of the simulation box across processors (one
sub-box for each of 16 processors); the middle diagram is after a
"grid" method has been applied.
:image(JPG/balance_uniform_small.jpg,JPG/balance_uniform.jpg),image(JPG/balance_nonuniform_small.jpg,JPG/balance_nonuniform.jpg),image(JPG/balance_rcb_small.jpg,JPG/balance_rcb.jpg)
:c
@ -146,8 +174,8 @@ has been applied.
The {rcb} style is a "tiling" method which does not produce a logical
3d grid of processors. Rather it tiles the simulation domain with
rectangular sub-boxes of varying size and shape in an irregular
fashion so as to have equal numbers of particles in each sub-box, as
in the rightmost diagram above.
fashion so as to have equal numbers of particles (or weight) in each
sub-box, as in the rightmost diagram above.
The "grid" methods can be used with either of the
"comm_style"_comm_style.html command options, {brick} or {tiled}. The
@ -230,7 +258,7 @@ counts do not match the target value for the plane, the position of
the cut is adjusted to be halfway between a low and high bound. The
low and high bounds are adjusted on each iteration, using new count
information, so that they become closer together over time. Thus as
the recustion progresses, the count of particles on either side of the
the recursion progresses, the count of particles on either side of the
plane gets closer to the target value.
Once the rebalancing is complete and final processor sub-domains
@ -262,21 +290,129 @@ the longest dimension, leaving one new box on either side of the cut.
All the processors are also partitioned into 2 groups, half assigned
to the box on the lower side of the cut, and half to the box on the
upper side. (If the processor count is odd, one side gets an extra
processor.) The cut is positioned so that the number of atoms in the
lower box is exactly the number that the processors assigned to that
box should own for load balance to be perfect. This also makes load
balance for the upper box perfect. The positioning is done
iteratively, by a bisectioning method. Note that counting atoms on
either side of the cut requires communication between all processors
at each iteration.
processor.) The cut is positioned so that the number of particles in
the lower box is exactly the number that the processors assigned to
that box should own for load balance to be perfect. This also makes
load balance for the upper box perfect. The positioning is done
iteratively, by a bisectioning method. Note that counting particles
on either side of the cut requires communication between all
processors at each iteration.
That is the procedure for the first cut. Subsequent cuts are made
recursively, in exactly the same manner. The subset of processors
assigned to each box make a new cut in the longest dimension of that
box, splitting the box, the subset of processsors, and the atoms in
the box in two. The recursion continues until every processor is
assigned a sub-box of the entire simulation domain, and owns the atoms
in that sub-box.
box, splitting the box, the subset of processsors, and the particles
in the box in two. The recursion continues until every processor is
assigned a sub-box of the entire simulation domain, and owns the
particles in that sub-box.
:line
This sub-section describes how to perform weighted load balancing
using the {weight} keyword. :link(weighted_balance)
By default, all particles have a weight of 1.0, which means each
particle is assumed to require the same amount of computation during a
timestep. There are, however, scenarios where this is not a good
assumption. Measuring the computational cost for each particle
accurately would be impractical and slow down the computation.
Instead the {weight} keyword implements several ways to influence the
per-particle weights empirically by properties readily available or
using the user's knowledge of the system. Note that the absolute
value of the weights are not important; their ratio is what is used to
assign particles to processors. A particle with a weight of 2.5 is
assumed to require 5x more computational than a particle with a weight
of 0.5.
Below is a list of possible weight options with a short description of
their usage and some example scenarios where they might be applicable.
It is possible to apply multiple weight flags and the weightins they
induce will be combined through multiplication. Most of the time,
however, it is sufficient to use just one method.
The {group} weight style assigns weight factors to specified
"groups"_group.html of particles. The {group} style keyword is
followed by the number of groups, then pairs of group IDs and the
corresponding weight factor. If a particle belongs to none of the
specified groups, its weight is not changed. If it belongs to
multiple groups, its weight is the product of the weight factors.
This weight style is useful in combination with pair style
"hybrid"_pair_hybrid.html, e.g. when combining a more costly manybody
potential with a fast pair-wise potential. It is also useful when
using "run_style respa"_run_style.html where some portions of the
system have many bonded interactions and others none. It assumes that
the computational cost for each group remains constant over time.
This is a purely empirical weighting, so a series test runs to tune
the assigned weight factors for optimal performance is recommended.
The {neigh} weight style assigns a weight to each particle equal to
its number of neighbors divided by the avergage number of neighbors
for all particles. The {factor} setting is then appied as an overall
scale factor to all the {neigh} weights which allows tuning of the
impact of this style. A {factor} smaller than 1.0 (e.g. 0.8) often
results in the best performance, since the number of neighbors is
likely to overestimate the ideal weight.
This weight style is useful for systems where there are different
cutoffs used for different pairs of interations, or the density
fluctuates, or a large number of particles are in the vicinity of a
wall, or a combination of these effects. If a simulation uses
multiple neighbor lists, this weight style will use the first suitable
neighbor list it finds. It will not request or compute a new list. A
warning will be issued if there is no suitable neighbor list available
or if it is not current, e.g. if the balance command is used before a
"run"_run.html or "minimize"_minimize.html command is used, in which
case the neighbor list may not yet have been built. In this case no
weights are computed. Inserting a "run 0 post no"_run.html command
before issuing the {balance} command, may be a workaround for this
case, as it will induce the neighbor list to be built.
The {time} weight style uses "timer data"_timer.html to estimate a
weight for each particle. It uses the same information as is used for
the "MPI task timing breakdown"_Section_start.html#start_8, namely,
the timings for sections {Pair}, {Bond}, {Kspace}, and {Neigh}. The
time spent in these sections of the timestep are measured for each MPI
rank, summed up, then converted into a cost for each MPI rank relative
to the average cost over all MPI ranks for the same sections. That
cost then evenly distributed over all the particles owned by that
rank. Finally, the {factor} setting is then appied as an overall
scale factor to all the {time} weights as a way to fine tune the
impact of this weight style. Good {factor} values to use are
typically between 0.5 and 1.2.
For the {balance} command the timing data is taken from the preceding
run command, i.e. the timings are for the entire previous run. For
the {fix balance} command the timing data is for only the timesteps
since the last balancing operation was performed. If timing
information for the required sections is not available, e.g. at the
beginning of a run, or when the "timer"_timer.html command is set to
either {loop} or {off}, a warning is issued. In this case no weights
are computed.
This weight style is the most generic one, and should be tried first,
if neither the {group} or {neigh} styles are easily applicable.
However, since the computed cost function is averaged over all local
particles this weight style may not be highly accurate. This style
can also be effective as a secondary weight in combination with either
{group} or {neigh} to offset some of inaccuracies in either of those
heuristics.
The {var} weight style assigns per-particle weights by evaluating an
"atom-style variable"_variable.html specified by {name}. This is
provided as a more flexible alternative to the {group} weight style,
allowing definition of a more complex heuristics based on information
(global and per atom) available inside of LAMMPS. For example,
atom-style variables can reference the position of a particle, its
velocity, the volume of its Voronoi cell, etc.
The {store} weight style does not compute a weight factor. Instead it
stores the current accumulated weights in a custom per-atom property
specified by {name}. This must be a property defined as {d_name} via
the "fix property/atom"_fix_property_atom.html command. Note that
these custom per-atom properties can be output in a "dump"_dump.html
file, so this is a way to examine, debug, or visualize the
per-particle weights computed during the load-balancing operation.
:line
@ -342,6 +478,7 @@ appear in {dimstr} for the {shift} style.
[Related commands:]
"processors"_processors.html, "fix balance"_fix_balance.html
"group"_group.html, "processors"_processors.html,
"fix balance"_fix_balance.html
[Default:] none

View File

@ -10,7 +10,7 @@ fix balance command :h3
[Syntax:]
fix ID group-ID balance Nfreq thresh style args keyword value ... :pre
fix ID group-ID balance Nfreq thresh style args keyword args ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
balance = style name of this fix command :l
@ -21,10 +21,24 @@ style = {shift} or {rcb} :l
dimstr = sequence of letters containing "x" or "y" or "z", each not more than once
Niter = # of times to iterate within each dimension of dimstr sequence
stopthresh = stop balancing when this imbalance threshhold is reached
rcb args = none :pre
zero or more keyword/value pairs may be appended :l
keyword = {out} :l
{out} value = filename
{rcb} args = none :pre
zero or more keyword/arg pairs may be appended :l
keyword = {weight} or {out} :l
{weight} style args = use weighted particle counts for the balancing
{style} = {group} or {neigh} or {time} or {var} or {store}
{group} args = Ngroup group1 weight1 group2 weight2 ...
Ngroup = number of groups with assigned weights
group1, group2, ... = group IDs
weight1, weight2, ... = corresponding weight factors
{neigh} factor = compute weight based on number of neighbors
factor = scaling factor (> 0)
{time} factor = compute weight based on time spend computing
factor = scaling factor (> 0)
{var} name = take weight from atom-style variable
name = name of the atom-style variable
{store} name = store weight in custom atom property defined by "fix property/atom"_fix_property_atom.html command
name = atom property name (without d_ prefix)
{out} arg = filename
filename = write each processor's sub-domain to a file, at each re-balancing :pre
:ule
@ -32,6 +46,9 @@ keyword = {out} :l
fix 2 all balance 1000 1.05 shift x 10 1.05
fix 2 all balance 100 0.9 shift xy 20 1.1 out tmp.balance
fix 2 all balance 100 0.9 shift xy 20 1.1 weight group 3 substrate 3.0 solvent 1.0 solute 0.8 out tmp.balance
fix 2 all balance 100 1.0 shift x 10 1.1 weight time 0.8
fix 2 all balance 100 1.0 shift xy 5 1.1 weight var myweight weight neigh 0.6 weight store allweight
fix 2 all balance 1000 1.1 rcb :pre
[Description:]
@ -44,14 +61,32 @@ rebalancing is performed periodically during the simulation. To
perform "static" balancing, before or between runs, see the
"balance"_balance.html command.
Load-balancing is typically only useful if the particles in the
simulation box have a spatially-varying density distribution. E.g. a
model of a vapor/liquid interface, or a solid with an irregular-shaped
geometry containing void regions. In this case, the LAMMPS default of
dividing the simulation box volume into a regular-spaced grid of 3d
bricks, with one equal-volume sub-domain per processor, may assign
very different numbers of particles per processor. This can lead to
poor performance when the simulation is run in parallel.
Load-balancing is typically most useful if the particles in the
simulation box have a spatially-varying density distribution or
where the computational cost varies signficantly between different
atoms. E.g. a model of a vapor/liquid interface, or a solid with
an irregular-shaped geometry containing void regions, or
"hybrid pair style simulations"_pair_hybrid.html which combine
pair styles with different computational cost. In these cases, the
LAMMPS default of dividing the simulation box volume into a
regular-spaced grid of 3d bricks, with one equal-volume sub-domain
per procesor, may assign numbers of particles per processor in a
way that the computational effort varies significantly. This can
lead to poor performance when the simulation is run in parallel.
The balancing can be performed with or without per-particle weighting.
With no weighting, the balancing attempts to assign an equal number of
particles to each processor. With weighting, the balancing attempts
to assign an equal aggregate computational weight to each processor,
which typically inducces a diffrent number of atoms assigned to each
processor.
NOTE: The weighting options listed above are documented with the
"balance"_balance.html command in "this section of the balance
command"_balance.html#weighted_balance doc page. That section
describes the various weighting options and gives a few examples of
how they can be used. The weighting options are the same for both the
fix balance and "balance"_balance.html commands.
Note that the "processors"_processors.html command allows some control
over how the box volume is split across processors. Specifically, for
@ -64,9 +99,9 @@ sub-domains will still have the same shape and same volume.
On a particular timestep, a load-balancing operation is only performed
if the current "imbalance factor" in particles owned by each processor
exceeds the specified {thresh} parameter. The imbalance factor is
defined as the maximum number of particles owned by any processor,
divided by the average number of particles per processor. Thus an
imbalance factor of 1.0 is perfect balance.
defined as the maximum number of particles (or weight) owned by any
processor, divided by the average number of particles (or weight) per
processor. Thus an imbalance factor of 1.0 is perfect balance.
As an example, for 10000 particles running on 10 processors, if the
most heavily loaded processor has 1200 particles, then the factor is
@ -117,8 +152,8 @@ applied.
The {rcb} style is a "tiling" method which does not produce a logical
3d grid of processors. Rather it tiles the simulation domain with
rectangular sub-boxes of varying size and shape in an irregular
fashion so as to have equal numbers of particles in each sub-box, as
in the rightmost diagram above.
fashion so as to have equal numbers of particles (or weight) in each
sub-box, as in the rightmost diagram above.
The "grid" methods can be used with either of the
"comm_style"_comm_style.html command options, {brick} or {tiled}. The
@ -139,12 +174,9 @@ from scratch.
:line
The {group-ID} is currently ignored. In the future it may be used to
determine what particles are considered for balancing. Normally it
would only makes sense to use the {all} group. But in some cases it
may be useful to balance on a subset of the particles, e.g. when
modeling large nanoparticles in a background of small solvent
particles.
The {group-ID} is ignored. However the impact of balancing on
different groups of atoms can be affected by using the {group} weight
style as described below.
The {Nfreq} setting determines how often a rebalance is performed. If
{Nfreq} > 0, then rebalancing will occur every {Nfreq} steps. Each
@ -225,7 +257,7 @@ than {Niter} and exit early.
The {rcb} style invokes a "tiled" method for balancing, as described
above. It performs a recursive coordinate bisectioning (RCB) of the
simulation domain. The basic idea is as follows.
simulation domain. The basic idea is as follows.
The simulation domain is cut into 2 boxes by an axis-aligned cut in
the longest dimension, leaving one new box on either side of the cut.
@ -250,10 +282,10 @@ in that sub-box.
:line
The {out} keyword writes a text file to the specified {filename} with
the results of each rebalancing operation. The file contains the
bounds of the sub-domain for each processor after the balancing
operation completes. The format of the file is compatible with the
The {out} keyword writes text to the specified {filename} with the
results of each rebalancing operation. The file contains the bounds
of the sub-domain for each processor after the balancing operation
completes. The format of the file is compatible with the
"Pizza.py"_pizza {mdump} tool which has support for manipulating and
visualizing mesh files. An example is shown here for a balancing by 4
processors for a 2d problem:
@ -321,8 +353,8 @@ values in the vector are as follows:
3 = imbalance factor right before the last rebalance was performed :ul
As explained above, the imbalance factor is the ratio of the maximum
number of particles on any processor to the average number of
particles per processor.
number of particles (or total weight) on any processor to the average
number of particles (or total weight) per processor.
These quantities can be accessed by various "output
commands"_Section_howto.html#howto_15. The scalar and vector values
@ -336,11 +368,11 @@ minimization"_minimize.html.
[Restrictions:]
For 2d simulations, a "z" cannot appear in {dimstr} for the {shift}
style.
For 2d simulations, the {z} style cannot be used. Nor can a "z"
appear in {dimstr} for the {shift} style.
[Related commands:]
"processors"_processors.html, "balance"_balance.html
"group"_group.html, "processors"_processors.html, "balance"_balance.html
[Default:] none

View File

@ -56,7 +56,7 @@ CMAP :pre
1 1 8 10 12 18 20
2 5 18 20 22 25 27
...
\[...\]
N 3 314 315 317 318 330 :pre
The first column is an index from 1 to N to enumerate the CMAP terms;
@ -66,7 +66,7 @@ remaining 5 columns are the atom IDs of the atoms in the two 4-atom
dihedrals that overlap to create the CMAP 5-body interaction. Note
that the "crossterm" and "CMAP" keywords for the header and body
sections match those specified in the read_data command following the
data file name; see the "read_data"_doc/read_data.html doc page for
data file name; see the "read_data"_read_data.html doc page for
more details.
A data file containing CMAP crossterms can be generated from a PDB
@ -124,9 +124,9 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
:line
(Buck)
Buck, Bouguet-Bonnet, Pastor, MacKerell Jr., Biophys J, 90, L36
:link(Buck)
[(Buck)] Buck, Bouguet-Bonnet, Pastor, MacKerell Jr., Biophys J, 90, L36
(2006).
(Brooks)
Brooks, Brooks, MacKerell Jr., J Comput Chem, 30, 1545 (2009).
:link(Brooks)
[(Brooks)] Brooks, Brooks, MacKerell Jr., J Comput Chem, 30, 1545 (2009).

View File

@ -24,6 +24,7 @@ Fixes :h1
fix_bond_create
fix_bond_swap
fix_box_relax
fix_cmap
fix_colvars
fix_controller
fix_deform

View File

@ -147,6 +147,7 @@ fix_bond_break.html
fix_bond_create.html
fix_bond_swap.html
fix_box_relax.html
fix_cmap.html
fix_colvars.html
fix_controller.html
fix_deform.html

View File

@ -48,17 +48,14 @@ follows the discussion in these 3 papers: "(HenkelmanA)"_#HenkelmanA,
Each replica runs on a partition of one or more processors. Processor
partitions are defined at run-time using the -partition command-line
switch; see "Section 2.7"_Section_start.html#start_7 of the
manual. Note that if you have MPI installed, you can run a
multi-replica simulation with more replicas (partitions) than you have
physical processors, e.g you can run a 10-replica simulation on just
one or two processors. You will simply not get the performance
speed-up you would see with one or more physical processors per
replica. See "this section"_Section_howto.html#howto_5 of the manual
for further discussion.
NOTE: The current NEB implementation in LAMMPS only allows there to be
one processor per replica.
switch; see "Section 2.7"_Section_start.html#start_7 of the manual.
Note that if you have MPI installed, you can run a multi-replica
simulation with more replicas (partitions) than you have physical
processors, e.g you can run a 10-replica simulation on just one or two
processors. You will simply not get the performance speed-up you
would see with one or more physical processors per replica. See
"Section 6.5"_Section_howto.html#howto_5 of the manual for further
discussion.
NOTE: As explained below, a NEB calculation perfoms a damped dynamics
minimization across all the replicas. The mimimizer uses whatever
@ -255,12 +252,6 @@ An atom map must be defined which it is not by default for "atom_style
atomic"_atom_style.html problems. The "atom_modify
map"_atom_modify.html command can be used to do this.
The "atom_modify sort 0 0.0" command should be used to turn off atom
sorting.
NOTE: This sorting restriction will be removed in a future version of
NEB in LAMMPS.
The minimizers in LAMMPS operate on all atoms in your system, even
non-NEB atoms, as defined above. To prevent non-NEB atoms from moving
during the minimization, you should use the "fix

View File

@ -63,14 +63,14 @@ event to occur.
Each replica runs on a partition of one or more processors. Processor
partitions are defined at run-time using the -partition command-line
switch; see "Section 2.7"_Section_start.html#start_7 of the
manual. Note that if you have MPI installed, you can run a
multi-replica simulation with more replicas (partitions) than you have
physical processors, e.g you can run a 10-replica simulation on one or
two processors. For PRD, this makes little sense, since this offers
no effective parallel speed-up in searching for infrequent events. See
"Section 6.5"_Section_howto.html#howto_5 of the manual for further
discussion.
switch; see "Section 2.7"_Section_start.html#start_7 of the manual.
Note that if you have MPI installed, you can run a multi-replica
simulation with more replicas (partitions) than you have physical
processors, e.g you can run a 10-replica simulation on one or two
processors. However for PRD, this makes little sense, since running a
replica on virtual instead of physical processors,offers no effective
parallel speed-up in searching for infrequent events. See "Section
6.5"_Section_howto.html#howto_5 of the manual for further discussion.
When a PRD simulation is performed, it is assumed that each replica is
running the same model, though LAMMPS does not check for this.
@ -163,7 +163,7 @@ runs for {N} timesteps. If the {time} value is {clock}, then the
simulation runs until {N} aggregate timesteps across all replicas have
elapsed. This aggregate time is the "clock" time defined below, which
typically advances nearly M times faster than the timestepping on a
single replica.
single replica, where M is the number of replicas.
:line
@ -183,25 +183,26 @@ coincident events, and the replica number of the chosen event.
The timestep is the usual LAMMPS timestep, except that time does not
advance during dephasing or quenches, but only during dynamics. Note
that are two kinds of dynamics in the PRD loop listed above. The
first is when all replicas are performing independent dynamics,
waiting for an event to occur. The second is when correlated events
are being searched for and only one replica is running dynamics.
that are two kinds of dynamics in the PRD loop listed above that
contribute to this timestepping. The first is when all replicas are
performing independent dynamics, waiting for an event to occur. The
second is when correlated events are being searched for, but only one
replica is running dynamics.
The CPU time is the total processor time since the start of the PRD
run.
The CPU time is the total elapsed time on each processor, since the
start of the PRD run.
The clock is the same as the timestep except that it advances by M
steps every timestep during the first kind of dynamics when the M
steps per timestep during the first kind of dynamics when the M
replicas are running independently. The clock advances by only 1 step
per timestep during the second kind of dynamics, since only a single
per timestep during the second kind of dynamics, when only a single
replica is checking for a correlated event. Thus "clock" time
represents the aggregate time (in steps) that effectively elapses
represents the aggregate time (in steps) that has effectively elapsed
during a PRD simulation on M replicas. If most of the PRD run is
spent in the second stage of the loop above, searching for infrequent
events, then the clock will advance nearly M times faster than it
would if a single replica was running. Note the clock time between
events will be drawn from p(t).
successive events should be drawn from p(t).
The event number is a counter that increments with each event, whether
it is uncorrelated or correlated.
@ -212,14 +213,15 @@ replicas are running independently. The correlation flag will be 1
when a correlated event occurs during the third stage of the loop
listed above, i.e. when only one replica is running dynamics.
When more than one replica detects an event at the end of the second
stage, then one of them is chosen at random. The number of coincident
events is the number of replicas that detected an event. Normally, we
expect this value to be 1. If it is often greater than 1, then either
the number of replicas is too large, or {t_event} is too large.
When more than one replica detects an event at the end of the same
event check (every {t_event} steps) during the the second stage, then
one of them is chosen at random. The number of coincident events is
the number of replicas that detected an event. Normally, this value
should be 1. If it is often greater than 1, then either the number of
replicas is too large, or {t_event} is too large.
The replica number is the ID of the replica (from 0 to M-1) that
found the event.
The replica number is the ID of the replica (from 0 to M-1) in which
the event occurred.
:line
@ -286,7 +288,7 @@ This command can only be used if LAMMPS was built with the REPLICA
package. See the "Making LAMMPS"_Section_start.html#start_3 section
for more info on packages.
{N} and {t_correlate} settings must be integer multiples of
The {N} and {t_correlate} settings must be integer multiples of
{t_event}.
Runs restarted from restart file written during a PRD run will not

View File

@ -90,3 +90,24 @@ def promote_doc_keywords(content):
def filter_multiple_horizontal_rules(content):
return re.sub(r"----------[\s\n]+----------", '', content)
def merge_preformatted_sections(content):
mergable_section_pattern = re.compile(r"\.\. parsed-literal::\n"
r"\n"
r"(?P<listingA>(( [^\n]+\n)|(^\n))+)\n\s*"
r"^\.\. parsed-literal::\n"
r"\n"
r"(?P<listingB>(( [^\n]+\n)|(^\n))+)\n", re.MULTILINE | re.DOTALL)
m = mergable_section_pattern.search(content)
while m:
content = mergable_section_pattern.sub(r".. parsed-literal::\n"
r"\n"
r"\g<listingA>"
r"\g<listingB>"
r"\n", content)
m = mergable_section_pattern.search(content)
return content

View File

@ -73,10 +73,13 @@ class RSTMarkup(Markup):
def unescape_rst_chars(self, text):
text = text.replace('\\*', '*')
text = text.replace('\\^', '^')
text = text.replace('\\_', '_')
text = self.unescape_underscore(text)
text = text.replace('\\|', '|')
return text
def unescape_underscore(self, text):
return text.replace('\\_', '_')
def inline_math(self, text):
start_pos = text.find("\\(")
end_pos = text.find("\\)")
@ -136,6 +139,7 @@ class RSTFormatting(Formatting):
return content.strip()
def preformat(self, content):
content = self.markup.unescape_underscore(content)
if self.indent_level > 0:
return self.list_indent("\n.. parsed-literal::\n\n" + self.indent(content.rstrip()), self.indent_level)
return "\n.. parsed-literal::\n\n" + self.indent(content.rstrip())
@ -355,6 +359,7 @@ class Txt2Rst(TxtParser):
self.document_filters.append(lammps_filters.detect_and_add_command_to_index)
self.document_filters.append(lammps_filters.filter_multiple_horizontal_rules)
self.document_filters.append(lammps_filters.promote_doc_keywords)
self.document_filters.append(lammps_filters.merge_preformatted_sections)
def is_ignored_textblock_begin(self, line):
return line.startswith('<!-- HTML_ONLY -->')

View File

@ -169,6 +169,13 @@ class TestFormatting(unittest.TestCase):
" Hello\n"
" World\n\n", s)
def test_preformat_formatting_with_underscore(self):
s = self.txt2rst.convert("if MPI.COMM_WORLD.rank == 0:\n"
" print(\"Potential energy: \", L.eval(\"pe\")) :pre\n")
self.assertEqual("\n.. parsed-literal::\n\n"
" if MPI.COMM_WORLD.rank == 0:\n"
" print(\"Potential energy: \", L.eval(\"pe\"))\n\n", s)
def test_header_formatting(self):
s = self.txt2rst.convert("Level 1 :h1\n"
"Level 2 :h2\n"

View File

@ -0,0 +1,55 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
compute p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 shift x 10 1.0 &
weight time 1.0 weight store WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500
run 500
fix 0 all balance 50 1.0 shift x 5 1.0 &
weight neigh 0.5 weight time 0.66 weight store WEIGHT
run 500
run 500

View File

@ -0,0 +1,48 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
group slow type 2
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
run 250
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
run 250

View File

@ -0,0 +1,47 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
group slow type 2
balance 1.0 shift x 5 1.1 &
weight group 2 fast 1.0 slow ${factor} # out weighted.txt
fix 0 all balance 10 1.0 shift x 5 1.1 &
weight group 2 fast 1.0 slow ${factor}
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250

View File

@ -0,0 +1,54 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
balance 1.0 shift x 5 1.1 # out unweighted.txt
balance 1.0 x uniform
variable weight atom (type==1)*1.0+(type==2)*v_factor
balance 1.0 shift x 5 1.1 weight var weight # out weighted_var.txt
balance 1.0 x uniform
group fast type 1
group slow type 2
balance 1.0 shift x 5 1.1 &
weight group 2 fast 1.0 slow ${factor} # out weighted_group.txt
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250

View File

@ -0,0 +1,47 @@
# 3d Lennard-Jones melt
units lj
#atom_style charge
processors * 1 1
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
#set type 1:2 charge 0.0
velocity all create 1.0 87287
pair_style lj/long/coul/long long off 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
kspace_style pppm/disp 1.0e-4
kspace_modify gewald/disp 0.1
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
group slow type 2
fix 0 all balance 20 1.0 shift x 5 1.0 &
weight group 2 fast 1.0 slow 2.0 weight time 0.66
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500

View File

@ -0,0 +1,53 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 shift x 5 1.0 &
weight neigh 0.8 weight store WEIGHT
compute p all property/atom d_WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mp4 c_p type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3 amap 0.0 2.0 cf 0.1 3 min blue 0.5 green max red
thermo 50
run 500
run 500
run 500
run 500

View File

@ -0,0 +1,53 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
comm_style tiled
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 rcb weight neigh 0.8 weight store WEIGHT
compute p all property/atom d_WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
run 250

View File

@ -0,0 +1,51 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
balance 1.0 shift x 10 1.0 weight neigh 0.8 # out weighted_var.txt
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250 post no
balance 1.0 shift x 10 1.0 weight neigh 0.8
run 250 post no
balance 1.0 shift x 10 1.0 weight neigh 0.8
run 250 post no
balance 1.0 shift x 10 1.0 weight neigh 0.8 weight time 0.6
run 250
balance 1.0 shift x 10 1.0 weight neigh 0.8 weight time 0.6
run 250

View File

@ -0,0 +1,66 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
region box block 0 10 0 10 0 10
create_box 3 box
create_atoms 1 box
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
compute p all property/atom d_WEIGHT
group fast type 1
group slow type 2
balance 1.0 shift x 10 1.0 &
weight group 2 fast 0.8 slow 2.5 weight store WEIGHT
variable lastweight atom c_p
fix 0 all balance 50 1.0 shift x 10 1.0 &
weight var lastweight weight time 0.5 weight store WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type &
# axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500
run 500
balance 1.0 shift x 10 1.0 &
weight group 2 fast 0.8 slow 2.5 weight store WEIGHT
fix 0 all balance 50 1.0 shift x 5 1.0 &
weight var lastweight weight neigh 0.5 weight store WEIGHT
run 500
run 500

View File

@ -1,225 +0,0 @@
LAMMPS (15 Feb 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style bond
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box bond/types 1 extra/bond/per/atom 6
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
1 by 1 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
bond_style harmonic
bond_coeff 1 10.0 1.2
# need to preserve 1-3, 1-4 pairwise interactions during hard collisions
special_bonds lj/coul 0 1 1
0 = max # of 1-2 neighbors
1 = max # of special neighbors
create_bonds all all 1 1.0 1.5
Neighbor list info ...
2 neighbor list requests
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Added 1014 bonds, new total = 1014
6 = max # of 1-2 neighbors
6 = max # of special neighbors
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
comm_modify cutoff 7.5
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom (c_1%10)+1
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 7.5
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 4.44301 Mbytes
Step Temp E_pair Press 10[3] 10
0 25.701528 -2.2032569 3.1039469 1 1
100 27.623422 -6.228166 2.6542136 1 1
200 33.35302 -15.746749 3.2018248 1 1
300 39.17734 -24.1557 4.9116986 1 1
400 41.660701 -27.615203 8.6214678 1 1
500 37.154935 -24.096962 3.2656162 1 1
600 35.061294 -21.52655 2.3693223 1 1
700 37.204395 -22.313267 2.7108913 1 1
800 39.050704 -24.972147 5.5398741 1 1
900 38.37275 -24.777769 3.9291488 1 1
1000 39.147816 -26.003699 4.3586203 1 1
1100 36.084337 -24.88638 4.5496174 1 1
1200 32.404559 -20.810803 6.0760128 1 1
1300 32.625538 -19.709411 4.3718289 1 1
1400 32.246777 -18.785184 3.435959 1 1
1500 29.174368 -17.434726 2.2702916 1 1
1600 27.359273 -15.40756 1.033659 1 1
1700 26.046626 -14.318045 0.87714473 1 1
1800 24.540401 -13.017686 0.84464169 1 1
1900 26.259688 -12.777739 0.80954004 1 1
2000 27.491023 -13.363863 1.4519188 1 1
2100 27.839831 -13.709118 3.0184763 1 1
2200 26.669065 -12.710422 1.4560094 1 1
2300 26.86742 -12.730386 0.16986139 1 1
2400 26.375504 -12.476682 1.907352 1 1
2500 26.581263 -12.530908 1.5507765 1 1
2600 27.67091 -12.922702 2.0391206 1 1
2700 27.158784 -13.306789 3.7355268 1 1
2800 25.635671 -13.502047 2.9431633 1 1
2900 24.648357 -12.388002 0.44910075 1 1
3000 22.988768 -10.685349 0.37214853 1 1
3100 21.788719 -10.171928 -0.95734833 1 1
3200 22.707514 -9.6682633 -0.32868418 1 1
3300 22.907772 -10.612766 -0.024319089 1 1
3400 24.276426 -10.802246 0.44731188 1 1
3500 25.086959 -10.797849 2.3218091 1 1
3600 26.064365 -12.589537 1.2460738 1 1
3700 24.656426 -11.956895 0.57862216 1 1
3800 22.316856 -11.174148 -0.7567936 1 1
3900 22.590299 -9.5928781 0.4127727 1 1
4000 22.353461 -9.5887736 -0.34247396 1 1
4100 24.103395 -9.76584 0.98989862 1 1
4200 23.92261 -10.566828 -0.71536268 1 1
4300 24.44409 -11.358378 0.37166197 1 1
4400 24.772419 -11.324888 0.26732853 1 1
4500 23.150748 -11.309892 -0.43134573 1 1
4600 24.008361 -10.212365 0.43277527 1 1
4700 25.107401 -9.5753673 0.020406689 1 1
4800 23.658604 -8.9131426 0.46554745 1 1
4900 22.530251 -9.023311 -0.014405315 1 1
5000 23.110692 -9.6567397 0.9033234 1 1
5100 23.760144 -9.7623416 0.32059726 1 1
5200 25.048012 -9.6748253 0.66411561 1 1
5300 24.09835 -9.7867216 0.61128267 1 1
5400 22.984982 -9.9464053 0.28096544 1 1
5500 22.502003 -9.9294451 -0.53666181 1 1
5600 23.712298 -10.054318 0.64334761 1 1
5700 23.350796 -10.217344 2.1979894 1 1
5800 25.246549 -12.458753 0.055553025 1 1
5900 24.422272 -10.641177 0.82506839 1 1
6000 22.478315 -10.629525 -0.774321 1 1
6100 22.970846 -10.218868 0.59819592 1 1
6200 24.500063 -10.355481 0.55427078 1 1
6300 22.358071 -9.9041539 0.89500518 1 1
6400 23.924951 -11.121442 0.045999129 1 1
6500 24.83773 -10.464191 2.0048038 1 1
6600 24.752158 -9.9939162 0.53794465 1 1
6700 23.073765 -9.3662561 0.38618685 1 1
6800 21.940219 -8.4948475 -0.25184019 1 1
6900 22.23783 -8.8668868 0.0072863367 1 1
7000 25.667836 -10.473211 0.59852886 1 1
7100 23.352123 -9.0862268 0.85289283 1 1
7200 24.072107 -9.4020576 0.090222808 1 1
7300 22.806746 -8.4687857 -0.46892989 1 1
7400 24.798425 -9.1144357 -0.38738146 1 1
7500 24.748499 -9.1560558 0.94929896 1 1
7600 25.364753 -10.176533 0.2649225 1 1
7700 25.137988 -9.6617897 1.3920543 1 1
7800 25.502583 -10.320832 0.64812816 1 1
7900 24.5208 -9.9466543 -0.084071026 1 1
8000 24.653522 -10.312942 0.32535023 1 1
8100 23.129565 -9.6250435 0.016356303 1 1
8200 23.82421 -9.7608023 0.11631418 1 1
8300 25.081262 -9.3510452 0.92337854 1 1
8400 24.328205 -9.2875396 0.28266968 1 1
8500 25.041711 -11.254976 -0.21368615 1 1
8600 24.111473 -9.0389585 1.2102938 1 1
8700 23.50066 -9.0926498 0.78819229 1 1
8800 23.840962 -9.3434474 0.091313007 1 1
8900 23.081841 -9.0635966 0.56672001 1 1
9000 24.712103 -9.3243213 0.60301629 1 1
9100 24.457422 -9.439298 -0.60457515 1 1
9200 25.070662 -9.1945782 1.2399235 1 1
9300 25.019869 -8.7910068 0.42340497 1 1
9400 24.23662 -9.3111098 -0.75379175 1 1
9500 24.836827 -8.7324281 0.81857501 1 1
9600 24.901993 -8.6624128 0.84890877 1 1
9700 24.936686 -8.9869503 1.9627894 1 1
9800 25.393368 -9.8538595 0.45344428 1 1
9900 25.942336 -9.7854728 0.68352091 1 1
10000 24.636319 -9.3369442 0.62793231 1 1
Loop time of 1.67474 on 1 procs for 10000 steps with 361 atoms
Performance: 2579511.004 tau/day, 5971.090 timesteps/s
99.8% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.47884 | 0.47884 | 0.47884 | 0.0 | 28.59
Bond | 0.24918 | 0.24918 | 0.24918 | 0.0 | 14.88
Neigh | 0.82974 | 0.82974 | 0.82974 | 0.0 | 49.54
Comm | 0.01265 | 0.01265 | 0.01265 | 0.0 | 0.76
Output | 0.00085878 | 0.00085878 | 0.00085878 | 0.0 | 0.05
Modify | 0.075636 | 0.075636 | 0.075636 | 0.0 | 4.52
Other | | 0.02783 | | | 1.66
Nlocal: 361 ave 361 max 361 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 2421 ave 2421 max 2421 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 2421
Ave neighs/atom = 6.70637
Ave special neighs/atom = 5.61773
Neighbor list builds = 4937
Dangerous builds = 5
Total wall time: 0:00:01

View File

@ -1,225 +0,0 @@
LAMMPS (15 Feb 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style bond
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box bond/types 1 extra/bond/per/atom 6
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
2 by 2 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
bond_style harmonic
bond_coeff 1 10.0 1.2
# need to preserve 1-3, 1-4 pairwise interactions during hard collisions
special_bonds lj/coul 0 1 1
0 = max # of 1-2 neighbors
1 = max # of special neighbors
create_bonds all all 1 1.0 1.5
Neighbor list info ...
2 neighbor list requests
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Added 1014 bonds, new total = 1014
6 = max # of 1-2 neighbors
6 = max # of special neighbors
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
comm_modify cutoff 7.5
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom (c_1%10)+1
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 7.5
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 4.49421 Mbytes
Step Temp E_pair Press 10[3] 10
0 25.701528 -2.2032569 3.1039469 3.2354571 1.0526316
100 27.623422 -6.228166 2.6542136 1.2631579 1.0083102
200 33.35302 -15.746749 3.2018248 1.2963989 1.0193906
300 39.17734 -24.1557 4.9116986 1.2963989 1.0193906
400 41.660701 -27.615203 8.6214679 1.3518006 1.0083102
500 37.154928 -24.096947 3.2656178 1.3296399 1.0193906
600 35.059889 -21.524279 2.372849 1.3296399 1.0083102
700 36.70516 -21.98396 3.2995108 1.3296399 1.0083102
800 39.53521 -25.672748 4.3257712 1.3961219 1.0083102
900 38.566797 -24.778382 4.1874914 1.3739612 1.0083102
1000 37.506157 -25.381025 5.6634589 1.4182825 1.0193906
1100 34.186888 -23.460558 5.2123037 1.2963989 1.0083102
1200 33.302788 -22.509552 4.9394032 1.1745152 1.0193906
1300 33.271956 -22.831342 4.5519649 1.1966759 1.0083102
1400 30.344677 -20.654604 4.1641375 1.0969529 1.0193906
1500 27.292624 -18.180523 1.0686706 1.1412742 1.0083102
1600 26.787948 -15.907011 1.7236133 1.1745152 1.0193906
1700 25.708419 -15.568774 0.73006531 1.1080332 1.0193906
1800 26.523196 -14.641077 0.78443231 1.1301939 1.0083102
1900 25.151151 -13.927975 1.1760729 1.1080332 1.0193906
2000 27.637036 -15.055467 1.5903524 1.1301939 1.0083102
2100 27.642772 -14.038356 2.4101976 1.2077562 1.0083102
2200 27.178261 -13.277262 1.9252291 1.1745152 1.0193906
2300 25.615526 -12.67851 0.88527229 1.1634349 1.0083102
2400 24.918218 -13.029669 0.95714212 1.1966759 1.0193906
2500 27.302154 -13.02629 1.3556788 1.1080332 1.0193906
2600 26.798157 -13.78042 2.703198 1.1855956 1.0083102
2700 27.24573 -16.504845 3.1771274 1.1523546 1.0193906
2800 24.592313 -14.795322 1.6473982 1.0969529 1.0193906
2900 22.803769 -13.043913 0.71978239 1.0969529 1.0083102
3000 21.388681 -13.323114 -1.3437735 1.0858726 1.0083102
3100 21.929044 -11.627262 -0.38509856 1.1191136 1.0083102
3200 22.350115 -10.438826 0.7833392 1.0526316 1.0083102
3300 22.619011 -9.9110914 1.4143766 1.1191136 1.0193906
3400 24.251234 -11.712256 1.4299187 1.0969529 1.0193906
3500 25.633796 -12.609976 1.4809529 1.0969529 1.0083102
3600 23.070279 -11.178798 0.35315388 1.1191136 1.0083102
3700 22.635771 -10.360523 0.060253018 1.1412742 1.0193906
3800 20.746426 -9.7066538 0.24549731 1.0526316 1.0083102
3900 22.467121 -10.469368 0.9854352 1.0969529 1.0193906
4000 22.658639 -10.781605 0.014232783 1.1191136 1.0083102
4100 22.839698 -10.528796 1.3995223 1.0526316 1.0083102
4200 23.52621 -12.150065 0.74863439 1.0747922 1.0193906
4300 24.401948 -11.703236 0.25019621 1.0637119 1.0193906
4400 22.769001 -11.763045 -0.033044917 1.1412742 1.0083102
4500 22.170178 -11.572473 -0.40444128 1.0526316 1.0083102
4600 22.409231 -10.761099 -0.012942618 1.0747922 1.0083102
4700 22.953641 -10.999181 0.17199357 1.0637119 1.0083102
4800 22.746977 -10.69943 -0.050664647 1.0526316 1.0083102
4900 23.784023 -10.353932 0.55400224 1.0747922 1.0304709
5000 23.250563 -11.567067 -0.23735032 1.0637119 1.0083102
5100 22.521138 -10.661998 0.50094359 1.0747922 1.0083102
5200 21.318659 -9.5996948 0.75683786 1.0637119 1.0193906
5300 21.603355 -10.042239 -0.2376815 1.0637119 1.0083102
5400 21.350407 -10.181041 -0.87085628 1.1745152 1.0193906
5500 22.430002 -10.535576 0.47962005 1.1191136 1.0193906
5600 22.459036 -11.914086 0.47719353 1.0858726 1.0193906
5700 23.348257 -12.888911 0.55511547 1.0858726 1.0193906
5800 23.357742 -12.328566 0.734193 1.0526316 1.0193906
5900 24.002277 -11.439187 0.23688862 1.0858726 1.0193906
6000 22.398563 -10.682615 0.28777592 1.0747922 1.0193906
6100 22.23883 -10.838986 -0.17956279 1.1080332 1.0083102
6200 21.930735 -11.182485 0.044031465 1.0526316 1.0193906
6300 22.658226 -11.142419 0.060550217 1.0526316 1.0193906
6400 22.375935 -11.1764 -0.027267206 1.0526316 1.0193906
6500 21.553541 -9.9609653 1.0562139 1.0858726 1.0193906
6600 23.339323 -10.988956 0.19462502 1.0526316 1.0083102
6700 22.506968 -11.276791 0.50225378 1.0969529 1.0083102
6800 22.991741 -10.292043 1.3278137 1.0858726 1.0193906
6900 22.716461 -10.540264 1.090723 1.0304709 1.0083102
7000 20.88433 -10.566053 -0.47976012 1.0969529 1.0193906
7100 22.034864 -10.27774 0.24169213 1.0193906 1.0083102
7200 23.107403 -10.304771 0.39888005 1.0969529 1.0304709
7300 22.734104 -9.8038963 1.1986757 1.0858726 1.0083102
7400 23.566402 -10.560548 1.0213434 1.1080332 1.0193906
7500 23.651346 -10.596902 1.290057 1.0969529 1.0083102
7600 23.181407 -10.247073 0.80701327 1.0526316 1.0083102
7700 23.778698 -10.659208 0.54327672 1.0304709 1.0193906
7800 22.655159 -10.183303 0.81382393 1.0747922 1.0193906
7900 22.897008 -10.849819 0.56424197 1.0415512 1.0083102
8000 23.698074 -10.398048 0.42170034 1.0747922 1.0083102
8100 22.726563 -9.8563277 0.30293638 1.0193906 1.0193906
8200 23.424699 -10.687885 0.54222367 1.0415512 1.0083102
8300 22.921826 -10.919492 0.55264172 1.0747922 1.0083102
8400 23.220159 -9.7725217 1.2872547 1.1080332 1.0083102
8500 23.606204 -9.7070499 1.0340181 1.0747922 1.0193906
8600 23.008166 -10.451507 -0.42524326 1.0747922 1.0083102
8700 22.4959 -10.278782 0.19535494 1.0858726 1.0083102
8800 25.153658 -10.757 1.5966743 1.0193906 1.0193906
8900 23.206798 -10.486994 1.2031737 1.0637119 1.0083102
9000 22.726684 -10.406196 0.10165144 1.0858726 1.0304709
9100 22.504045 -9.638919 -0.80560991 1.0747922 1.0083102
9200 21.431928 -9.073801 0.3773795 1.0415512 1.0193906
9300 23.596502 -11.045041 -0.3135787 1.0858726 1.0083102
9400 25.308669 -11.931174 1.3143518 1.0526316 1.0193906
9500 24.394499 -10.661499 0.82236963 1.0969529 1.0193906
9600 21.987451 -9.5632699 0.30728292 1.0858726 1.0193906
9700 22.150748 -9.5707928 -0.1239396 1.0526316 1.0193906
9800 23.347328 -9.7899306 0.29737715 1.0193906 1.0083102
9900 20.310207 -9.4839992 -1.2980277 1.0193906 1.0193906
10000 22.978427 -9.9593786 -0.45943368 1.0526316 1.0083102
Loop time of 0.815364 on 4 procs for 10000 steps with 361 atoms
Performance: 5298244.819 tau/day, 12264.456 timesteps/s
98.9% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.12547 | 0.13632 | 0.14796 | 2.6 | 16.72
Bond | 0.05547 | 0.06023 | 0.064582 | 1.7 | 7.39
Neigh | 0.28201 | 0.28972 | 0.298 | 1.1 | 35.53
Comm | 0.16858 | 0.19467 | 0.22096 | 4.3 | 23.88
Output | 0.0017931 | 0.0019639 | 0.0023253 | 0.5 | 0.24
Modify | 0.039718 | 0.040559 | 0.041364 | 0.4 | 4.97
Other | | 0.09189 | | | 11.27
Nlocal: 90.25 ave 91 max 90 min
Histogram: 3 0 0 0 0 0 0 0 0 1
Nghost: 195.25 ave 202 max 185 min
Histogram: 1 0 0 0 0 1 0 0 1 1
Neighs: 629.5 ave 731 max 543 min
Histogram: 1 1 0 0 0 0 1 0 0 1
Total # of neighbors = 2518
Ave neighs/atom = 6.97507
Ave special neighs/atom = 5.61773
Neighbor list builds = 4874
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -1,524 +0,0 @@
LAMMPS (15 Feb 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
# careful not to slam into wall too hard
variable v index 0.3
variable w index 0.08
units lj
dimension 2
atom_style bond
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box bond/types 1 extra/bond/per/atom 6
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
1 by 1 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 0.3 $w 0 sum yes
velocity all set 0.3 0.08 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
bond_style harmonic
bond_coeff 1 10.0 1.2
create_bonds all all 1 1.0 1.5
Neighbor list info ...
2 neighbor list requests
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Added 1014 bonds, new total = 1014
6 = max # of 1-2 neighbors
30 = max # of 1-3 neighbors
180 = max # of 1-4 neighbors
36 = max # of special neighbors
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom (c_1%10)+1
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 200 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 40000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 6.31529 Mbytes
Step Temp E_pair Press 10[3] 10
0 0.57437856 0 0.26099453 1 1
100 0.29756515 0 0.10149401 1 1
200 0.35394813 0 0.075159099 1 1
300 0.39245849 0 0.033002384 1 1
400 0.34078347 0 -0.020825841 1 1
500 0.35201095 0 -0.062637506 1 1
600 0.34014717 0 -0.11122965 1 1
700 0.3323524 0 -0.11598015 1 1
800 0.35116047 0 -0.096162395 1 1
900 0.35695352 0 -0.01385176 1 1
1000 0.36986539 0 0.056772858 1 1
1100 0.34584644 0 0.084941323 1 1
1200 0.31921435 0 0.10545078 1 1
1300 0.32952819 0 0.124902 1 1
1400 0.34497365 0 0.12662081 1 1
1500 0.33429243 0 0.096230972 1 1
1600 0.33765387 0 0.025800542 1 1
1700 0.35134464 0 -0.04422593 1 1
1800 0.35003859 0 -0.096745576 1 1
1900 0.33839618 0 -0.095465943 1 1
2000 0.33732078 0 -0.094652802 1 1
2100 0.34552238 0 -0.076729261 1 1
2200 0.34893142 0 -0.036853228 1 1
2300 0.35379341 0 0.021124847 1 1
2400 0.34829744 0 0.09230184 1 1
2500 0.33038141 0 0.1399855 1 1
2600 0.30983019 0 0.12754742 1 1
2700 0.32992561 0 0.10485138 1 1
2800 0.34604747 0 0.066174138 1 1
2900 0.3444791 0 0.036590652 1 1
3000 0.34721342 0 -0.023793368 1 1
3100 0.33404314 0 -0.08374223 1 1
3200 0.33019355 0 -0.12715599 1 1
3300 0.33515177 0 -0.12217394 1 1
3400 0.33628481 0 -0.070877624 1 1
3500 0.34257038 0 -0.021612062 1 1
3600 0.32838009 0 0.030131228 1 1
3700 0.34462142 0 0.074586378 1 1
3800 0.30891825 0 0.10605673 1 1
3900 0.33847951 0 0.13956139 1 1
4000 0.32952079 0 0.12688129 1 1
4100 0.32646772 0 0.081089042 1 1
4200 0.35399503 0 0.013422873 1 1
4300 0.33154914 0 -0.050919508 1 1
4400 0.34113556 0 -0.083171 1 1
4500 0.32651708 0 -0.1063133 1 1
4600 0.34359609 0 -0.1076395 1 1
4700 0.34973537 0 -0.088231606 1 1
4800 0.35198515 0 -0.020901044 1 1
4900 0.35187284 0 0.043645941 1 1
5000 0.34887336 0 0.095698609 1 1
5100 0.30308163 0 0.11649328 1 1
5200 0.32401285 0 0.12072411 1 1
5300 0.33025072 0 0.10933161 1 1
5400 0.33288012 0 0.078356448 1 1
5500 0.35142492 0 0.036958063 1 1
5600 0.35125368 0 -0.041371343 1 1
5700 0.34547744 0 -0.096450846 1 1
5800 0.30939887 0 -0.12356656 1 1
5900 0.32315628 0 -0.11338676 1 1
6000 0.34117485 0 -0.066198961 1 1
6100 0.35298043 0 -0.016172816 1 1
6200 0.35130653 0 0.027660468 1 1
6300 0.35398766 0 0.087221238 1 1
6400 0.30963379 0 0.11990957 1 1
6500 0.3174541 0 0.14103528 1 1
6600 0.31989791 0 0.11575506 1 1
6700 0.33811477 0 0.060747353 1 1
6800 0.3424043 0 0.010357152 1 1
6900 0.34804319 0 -0.042621786 1 1
7000 0.35357865 0 -0.067248959 1 1
7100 0.33556885 0 -0.10983726 1 1
7200 0.33531101 0 -0.112179 1 1
7300 0.35742607 0 -0.078405267 1 1
7400 0.34577559 0 -0.01985432 1 1
7500 0.3498641 0 0.052289439 1 1
7600 0.33773715 0 0.092939035 1 1
7700 0.33093497 0 0.11924405 1 1
7800 0.31435814 0 0.12701724 1 1
7900 0.33132217 0 0.10793075 1 1
8000 0.33451798 0 0.077993125 1 1
8100 0.35188371 0 0.019929977 1 1
8200 0.33645742 0 -0.039302079 1 1
8300 0.3415632 0 -0.098067982 1 1
8400 0.30619282 0 -0.12952879 1 1
8500 0.34446484 0 -0.098084709 1 1
8600 0.33761673 0 -0.07069818 1 1
8700 0.34495452 0 -0.022458056 1 1
8800 0.33502983 0 0.027742411 1 1
8900 0.35418591 0 0.092390134 1 1
9000 0.31648387 0 0.12467398 1 1
9100 0.33994825 0 0.14460327 1 1
9200 0.33822571 0 0.11273284 1 1
9300 0.33260773 0 0.060063671 1 1
9400 0.36140305 0 0.021427642 1 1
9500 0.34273562 0 -0.034064202 1 1
9600 0.33867054 0 -0.089076906 1 1
9700 0.32088235 0 -0.12027075 1 1
9800 0.3320823 0 -0.11602794 1 1
9900 0.33916442 0 -0.080281044 1 1
10000 0.34852268 0 -0.01000914 1 1
10100 0.32955942 0 0.04258493 1 1
10200 0.34487898 0 0.086971308 1 1
10300 0.32325593 0 0.11558149 1 1
10400 0.30927871 0 0.12239437 1 1
10500 0.33176799 0 0.12285937 1 1
10600 0.35120027 0 0.084897432 1 1
10700 0.33129697 0 0.0053089279 1 1
10800 0.36028769 0 -0.04280715 1 1
10900 0.35552287 0 -0.084955999 1 1
11000 0.3406024 0 -0.096554577 1 1
11100 0.33041202 0 -0.10703492 1 1
11200 0.32442686 0 -0.084328121 1 1
11300 0.35952468 0 -0.020191965 1 1
11400 0.34610624 0 0.03440148 1 1
11500 0.3415612 0 0.1041929 1 1
11600 0.34040042 0 0.13215705 1 1
11700 0.33555094 0 0.12738686 1 1
11800 0.3458647 0 0.10963398 1 1
11900 0.33836678 0 0.067253864 1 1
12000 0.34853314 0 0.03201448 1 1
12100 0.34600048 0 -0.034833402 1 1
12200 0.33145631 0 -0.09865675 1 1
12300 0.32848884 0 -0.1248489 1 1
12400 0.3321344 0 -0.11266575 1 1
12500 0.32622305 0 -0.061634993 1 1
12600 0.36213537 0 -0.0090593315 1 1
12700 0.34673866 0 0.036734645 1 1
12800 0.34606618 0 0.086267678 1 1
12900 0.34271431 0 0.12415522 1 1
13000 0.31993287 0 0.13879926 1 1
13100 0.3422918 0 0.11978905 1 1
13200 0.33055236 0 0.062620483 1 1
13300 0.34652207 0 0.0043833459 1 1
13400 0.33574661 0 -0.04691024 1 1
13500 0.33940837 0 -0.074241604 1 1
13600 0.32093414 0 -0.1078027 1 1
13700 0.34336597 0 -0.10544097 1 1
13800 0.35806461 0 -0.072531559 1 1
13900 0.35209713 0 -0.018851408 1 1
14000 0.35702629 0 0.061046366 1 1
14100 0.33234093 0 0.094086465 1 1
14200 0.3459466 0 0.12186656 1 1
14300 0.3327428 0 0.11396572 1 1
14400 0.32409443 0 0.10658903 1 1
14500 0.35022184 0 0.083558031 1 1
14600 0.34823843 0 0.024605569 1 1
14700 0.35298973 0 -0.040418888 1 1
14800 0.33679845 0 -0.10067728 1 1
14900 0.32790966 0 -0.10925568 1 1
15000 0.34208495 0 -0.09568004 1 1
15100 0.33647529 0 -0.055652929 1 1
15200 0.35328398 0 -0.020236536 1 1
15300 0.34252669 0 0.026434179 1 1
15400 0.34409435 0 0.094410599 1 1
15500 0.32288994 0 0.12034455 1 1
15600 0.32109689 0 0.13645185 1 1
15700 0.33681572 0 0.098607746 1 1
15800 0.33635195 0 0.05570715 1 1
15900 0.34289757 0 0.013849092 1 1
16000 0.34225547 0 -0.035597548 1 1
16100 0.33660991 0 -0.076931881 1 1
16200 0.32802152 0 -0.12765884 1 1
16300 0.3469374 0 -0.10785455 1 1
16400 0.34053641 0 -0.070259853 1 1
16500 0.34610591 0 -0.014315306 1 1
16600 0.35109001 0 0.041251169 1 1
16700 0.34336905 0 0.077996627 1 1
16800 0.33277414 0 0.11053634 1 1
16900 0.32183338 0 0.11680626 1 1
17000 0.34044352 0 0.10806555 1 1
17100 0.32967873 0 0.067759786 1 1
17200 0.36172278 0 -0.0048631904 1 1
17300 0.35619435 0 -0.04215545 1 1
17400 0.34540936 0 -0.093994174 1 1
17500 0.33193585 0 -0.098831315 1 1
17600 0.3544756 0 -0.085660403 1 1
17700 0.34505209 0 -0.069640515 1 1
17800 0.36291124 0 -0.0063088133 1 1
17900 0.34255705 0 0.046794555 1 1
18000 0.34163238 0 0.11767705 1 1
18100 0.3466445 0 0.1351712 1 1
18200 0.33037668 0 0.12703659 1 1
18300 0.33677404 0 0.10956306 1 1
18400 0.34978954 0 0.087193072 1 1
18500 0.33354363 0 0.051095814 1 1
18600 0.34651729 0 0.0056245561 1 1
18700 0.32622232 0 -0.047319269 1 1
18800 0.32978847 0 -0.054929416 1 1
18900 0.34192451 0 -0.037252471 1 1
19000 0.34061294 0 -0.001167235 1 1
19100 0.34194478 0 0.016945224 1 1
19200 0.33321765 0 0.050665354 1 1
19300 0.33197783 0 0.080470585 1 1
19400 0.33284715 0 0.12423599 1 1
19500 0.33867856 0 0.12689524 1 1
19600 0.36092786 0 0.11417704 1 1
19700 0.34270183 0 0.069038291 1 1
19800 0.34880695 0 0.042483681 1 1
19900 0.33903644 0 0.034788638 1 1
20000 0.32590125 0 0.011383785 1 1
20100 0.30358859 0 0.0030743554 1 1
20200 0.31830224 0 0.017637826 1 1
20300 0.34195438 0 0.072811099 1 1
20400 0.31249563 0 0.10063541 1 1
20500 0.31544938 0 0.1405794 1 1
20600 0.30071644 0 0.12763486 1 1
20700 0.2890265 0 0.1136651 1 1
20800 0.28962296 0 0.094481978 1 1
20900 0.29447212 0 0.0967165 1 1
21000 0.31159961 0 0.067307231 1 1
21100 0.30490648 0 0.017689358 1 1
21200 0.30687262 0 -0.016055512 1 1
21300 0.30083286 0 -0.0014988997 1 1
21400 0.32070426 0 0.015960302 1 1
21500 0.31439311 0 0.038170385 1 1
21600 0.32617832 0 0.043263788 1 1
21700 0.35151793 0 0.066302727 1 1
21800 0.35912885 0 0.070099103 1 1
21900 0.32451958 0 0.068935768 1 1
22000 0.35219298 0 0.067161227 1 1
22100 0.34857705 0 0.032731746 1 1
22200 0.34750227 0 0.0056917695 1 1
22300 0.34766017 0 -0.0027090483 1 1
22400 0.33426062 0 -0.023196063 1 1
22500 0.34174625 0 -0.025019717 1 1
22600 0.3356145 0 -0.029707418 1 1
22700 0.3362653 0 -0.035815733 1 1
22800 0.33973405 0 -0.0024705835 1 1
22900 0.33813085 0 0.0077527467 1 1
23000 0.33339981 0 0.028340744 1 1
23100 0.34079832 0 0.018521302 1 1
23200 0.33074548 0 0.032378405 1 1
23300 0.32965664 0 0.035989589 1 1
23400 0.30927749 0 0.024581106 1 1
23500 0.32890632 0 0.01092479 1 1
23600 0.34137438 0 0.0094839745 1 1
23700 0.34512638 0 -0.012392771 1 1
23800 0.31781354 0 -0.012908449 1 1
23900 0.32405513 0 -0.015018071 1 1
24000 0.33549728 0 -0.012812915 1 1
24100 0.31368736 0 -0.020818372 1 1
24200 0.33533836 0 0.0056121057 1 1
24300 0.32530627 0 0.018183931 1 1
24400 0.31930662 0 0.027446878 1 1
24500 0.33540302 0 0.040307455 1 1
24600 0.34020431 0 0.027403921 1 1
24700 0.3291814 0 0.01204865 1 1
24800 0.31552604 0 0.019654111 1 1
24900 0.34727253 0 0.01670543 1 1
25000 0.35120105 0 0.0038617562 1 1
25100 0.32706871 0 -0.021196623 1 1
25200 0.32915282 0 -0.017146508 1 1
25300 0.32577518 0 -0.01312495 1 1
25400 0.33286855 0 0.0014726193 1 1
25500 0.33002601 0 0.0080974022 1 1
25600 0.34127655 0 0.014296091 1 1
25700 0.34048065 0 0.022513032 1 1
25800 0.33029079 0 0.038733531 1 1
25900 0.33031324 0 0.026156982 1 1
26000 0.32967371 0 0.028727383 1 1
26100 0.33775718 0 0.015607478 1 1
26200 0.35097144 0 0.012291703 1 1
26300 0.34303792 0 0.00094823191 1 1
26400 0.33632665 0 -0.0026904889 1 1
26500 0.33580127 0 -0.0074168555 1 1
26600 0.33063188 0 -0.020378601 1 1
26700 0.33581846 0 -0.00084397268 1 1
26800 0.32998532 0 0.015932208 1 1
26900 0.33825444 0 0.010428603 1 1
27000 0.32081518 0 0.019818223 1 1
27100 0.31448098 0 0.020093416 1 1
27200 0.32643684 0 0.021934917 1 1
27300 0.33289466 0 0.023713072 1 1
27400 0.32310744 0 0.024110945 1 1
27500 0.33115619 0 0.0025776713 1 1
27600 0.33295887 0 -0.010710764 1 1
27700 0.32968876 0 -0.0064595905 1 1
27800 0.34064581 0 -0.0086519116 1 1
27900 0.33559187 0 -0.0055753593 1 1
28000 0.32300727 0 -0.0004153384 1 1
28100 0.32147461 0 -0.0058543412 1 1
28200 0.35532383 0 0.013646951 1 1
28300 0.31507942 0 0.026532255 1 1
28400 0.32711006 0 0.033214981 1 1
28500 0.34472462 0 0.028050837 1 1
28600 0.33708059 0 0.019115676 1 1
28700 0.34478087 0 0.023743689 1 1
28800 0.34546686 0 0.0081772997 1 1
28900 0.34004886 0 0.017771865 1 1
29000 0.33604232 0 -0.010505671 1 1
29100 0.33541374 0 -0.016273261 1 1
29200 0.34347489 0 -0.010002306 1 1
29300 0.34083904 0 0.0089701784 1 1
29400 0.34846892 0 0.020765104 1 1
29500 0.3416255 0 0.022650856 1 1
29600 0.33725496 0 0.020693083 1 1
29700 0.34480638 0 0.024317128 1 1
29800 0.31459471 0 0.023097895 1 1
29900 0.33014448 0 0.03114046 1 1
30000 0.33741498 0 0.015624314 1 1
30100 0.32598657 0 -0.0018860541 1 1
30200 0.34855815 0 0.0017983372 1 1
30300 0.33375921 0 0.0010991235 1 1
30400 0.35008944 0 -0.0027316177 1 1
30500 0.33279729 0 -0.0035788551 1 1
30600 0.33868746 0 -0.0016249482 1 1
30700 0.33597034 0 -0.0014524001 1 1
30800 0.3227257 0 0.016353457 1 1
30900 0.32676516 0 0.027396654 1 1
31000 0.34083982 0 0.031606413 1 1
31100 0.32165238 0 0.013583368 1 1
31200 0.3428492 0 0.020486611 1 1
31300 0.32372541 0 0.01215566 1 1
31400 0.32734692 0 0.016229397 1 1
31500 0.33089262 0 0.0060426618 1 1
31600 0.34273493 0 -0.013456537 1 1
31700 0.32723905 0 -0.019243766 1 1
31800 0.33636488 0 0.0027814902 1 1
31900 0.32834805 0 0.00706877 1 1
32000 0.33995148 0 0.0018383309 1 1
32100 0.33412282 0 0.0076455933 1 1
32200 0.34334884 0 0.023586129 1 1
32300 0.32778925 0 0.020564321 1 1
32400 0.33163443 0 0.038878463 1 1
32500 0.32290345 0 0.022247461 1 1
32600 0.34113954 0 0.010966365 1 1
32700 0.33390633 0 0.0037777555 1 1
32800 0.34385341 0 0.010556575 1 1
32900 0.32137047 0 0.00022027143 1 1
33000 0.32079172 0 -0.017261272 1 1
33100 0.33570882 0 -0.0051942206 1 1
33200 0.34320894 0 -0.011515281 1 1
33300 0.32794746 0 -0.0018153673 1 1
33400 0.33060982 0 0.027118146 1 1
33500 0.33641809 0 0.02143035 1 1
33600 0.33643061 0 0.020833068 1 1
33700 0.3485949 0 0.030918751 1 1
33800 0.3283985 0 0.01947613 1 1
33900 0.31959761 0 0.021128147 1 1
34000 0.33897984 0 0.015270986 1 1
34100 0.32392267 0 0.0020130852 1 1
34200 0.33084514 0 -0.024316708 1 1
34300 0.3342259 0 -0.0059047764 1 1
34400 0.33385098 0 0.0063818721 1 1
34500 0.33255603 0 -0.01023837 1 1
34600 0.34766173 0 0.0056703013 1 1
34700 0.339822 0 0.0061648559 1 1
34800 0.33902329 0 0.030037037 1 1
34900 0.3216153 0 0.027996689 1 1
35000 0.32701056 0 0.024778517 1 1
35100 0.3124942 0 0.011316548 1 1
35200 0.34486416 0 0.011670127 1 1
35300 0.33275353 0 0.020491246 1 1
35400 0.33618763 0 0.014678874 1 1
35500 0.32352282 0 -0.018568683 1 1
35600 0.32617903 0 -0.012796912 1 1
35700 0.32378048 0 -0.021318585 1 1
35800 0.3371086 0 -0.0023678632 1 1
35900 0.33818476 0 0.011197742 1 1
36000 0.35142144 0 0.022520935 1 1
36100 0.35147297 0 0.020277852 1 1
36200 0.33489465 0 0.014564878 1 1
36300 0.33841515 0 0.036439962 1 1
36400 0.32301096 0 0.019966746 1 1
36500 0.35612028 0 0.036509556 1 1
36600 0.33841597 0 -0.0042180605 1 1
36700 0.34477654 0 -0.0052770853 1 1
36800 0.33804317 0 -0.013751733 1 1
36900 0.35003816 0 -0.0021184393 1 1
37000 0.32965041 0 -0.020900951 1 1
37100 0.34653095 0 -0.013667977 1 1
37200 0.35019871 0 -0.0071740923 1 1
37300 0.34859745 0 0.02006041 1 1
37400 0.35739859 0 0.020892822 1 1
37500 0.34128859 0 0.041072111 1 1
37600 0.33781905 0 0.023376738 1 1
37700 0.32961874 0 0.030953741 1 1
37800 0.343987 0 0.029579795 1 1
37900 0.33610448 0 0.036836828 1 1
38000 0.32757228 0 0.020902031 1 1
38100 0.32735808 0 0.019544751 1 1
38200 0.35646953 0 0.044607528 1 1
38300 0.32509773 0 0.03610738 1 1
38400 0.32111741 0 0.034474043 1 1
38500 0.30590608 0 0.053461212 1 1
38600 0.32322402 0 0.053453832 1 1
38700 0.33843057 0 0.076264534 1 1
38800 0.31350741 0 0.064733869 1 1
38900 0.31943061 0 0.067836769 1 1
39000 0.33775583 0 0.0788316 1 1
39100 0.34256036 0 0.075874935 1 1
39200 0.33128527 0 0.071610976 1 1
39300 0.34519653 0 0.046257301 1 1
39400 0.34351844 0 0.052422917 1 1
39500 0.35716037 0 0.048916058 1 1
39600 0.34000737 0 0.016149089 1 1
39700 0.34587892 0 0.021619621 1 1
39800 0.34878036 0 0.0092881327 1 1
39900 0.35225411 0 -0.011341599 1 1
40000 0.36309266 0 0.0050869295 1 1
Loop time of 1.94553 on 1 procs for 40000 steps with 361 atoms
Performance: 8881898.790 tau/day, 20559.951 timesteps/s
100.0% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.068658 | 0.068658 | 0.068658 | 0.0 | 3.53
Bond | 0.9979 | 0.9979 | 0.9979 | 0.0 | 51.29
Neigh | 0.50428 | 0.50428 | 0.50428 | 0.0 | 25.92
Comm | 0.015341 | 0.015341 | 0.015341 | 0.0 | 0.79
Output | 0.0029466 | 0.0029466 | 0.0029466 | 0.0 | 0.15
Modify | 0.28324 | 0.28324 | 0.28324 | 0.0 | 14.56
Other | | 0.07317 | | | 3.76
Nlocal: 361 ave 361 max 361 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 31.0249
Neighbor list builds = 3079
Dangerous builds = 0
Total wall time: 0:00:01

View File

@ -1,202 +0,0 @@
LAMMPS (15 Feb 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style atomic
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
1 by 1 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom c_1%10
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 2.47688 Mbytes
Step Temp E_pair Press 10[3] 10
0 25.701528 -29.143179 -1.2407285 1 1
100 26.269576 -29.713313 7.9052334 1 1
200 26.368336 -29.809962 1.6412462 1 1
300 26.479082 -29.920083 2.3678653 1 1
400 26.522239 -29.965537 6.6787858 1 1
500 25.725591 -29.168034 0.67065285 1 1
600 26.247693 -29.692706 7.9887712 1 1
700 26.237368 -29.676926 1.5987214 1 1
800 25.889643 -29.431589 4.6160859 1 1
900 23.635295 -27.372963 9.029962 1 1
1000 22.571904 -25.87422 1.8936085 1 1
1100 17.493795 -21.447274 9.502619 1 1
1200 17.214459 -20.726964 6.3578933 1 1
1300 16.424366 -19.75746 3.9025348 1 1
1400 15.09282 -18.172384 1.7966088 1 1
1500 13.669129 -16.736191 1.3320876 1 1
1600 13.518191 -16.481254 2.2474968 1 1
1700 13.840191 -16.808798 1.848689 1 1
1800 12.705797 -15.654395 2.6658475 1 1
1900 12.560112 -15.376796 1.6651246 1 1
2000 12.11219 -14.943991 1.2347207 1 1
2100 11.681161 -14.453803 1.1856253 1 1
2200 11.380134 -14.15437 1.0983288 1 1
2300 11.404137 -14.206989 1.0886428 1 1
2400 11.267361 -14.00915 1.1353313 1 1
2500 11.086288 -13.866685 1.5189761 1 1
2600 11.241757 -14.031809 1.6088858 1 1
2700 10.741715 -13.522752 1.2648051 1 1
2800 10.594219 -13.461001 1.2068865 1 1
2900 10.497917 -13.243311 0.90549881 1 1
3000 9.8887944 -12.633322 1.2014467 1 1
3100 10.046064 -12.757462 0.72911664 1 1
3200 9.8202521 -12.544235 0.85793687 1 1
3300 9.9932983 -12.729524 1.3692879 1 1
3400 9.4389164 -12.132571 0.83559817 1 1
3500 9.4456791 -12.154808 1.2415677 1 1
3600 9.4291752 -12.13391 1.1892815 1 1
3700 9.2656145 -11.994284 0.93597208 1 1
3800 9.6833674 -12.407022 1.4696321 1 1
3900 9.2075262 -11.996657 1.0201833 1 1
4000 8.704708 -11.395839 1.5366945 1 1
4100 8.496226 -11.160512 0.98385093 1 1
4200 8.5566638 -11.241219 0.84428298 1 1
4300 8.3079987 -10.963542 0.96552044 1 1
4400 8.0878014 -10.695296 0.9598929 1 1
4500 7.8974753 -10.510996 0.67253552 1 1
4600 7.9008492 -10.511956 0.80200878 1 1
4700 7.8469401 -10.46341 0.91408186 1 1
4800 7.8237062 -10.478701 0.80709563 1 1
4900 7.9248576 -10.569715 0.93955604 1 1
5000 7.8285795 -10.450559 0.72760696 1 1
5100 7.8176003 -10.433727 1.0046395 1 1
5200 7.930586 -10.543139 1.1883254 1 1
5300 7.4014327 -10.200353 1.2717149 1 1
5400 7.3398704 -9.9377313 0.8277383 1 1
5500 7.9323894 -10.544566 0.58409181 1 1
5600 7.8256391 -10.452111 0.8371735 1 1
5700 7.5744223 -10.225985 0.56633204 1 1
5800 7.5149231 -10.128901 0.8877957 1 1
5900 7.2696456 -9.868796 1.0183026 1 1
6000 8.172964 -10.8046 0.82048799 1 1
6100 7.569911 -10.224271 0.85335085 1 1
6200 7.5498129 -10.158173 0.69550695 1 1
6300 7.0906227 -9.664124 0.38267058 1 1
6400 6.9720876 -9.556043 0.74772365 1 1
6500 7.2708269 -9.8393843 0.87493485 1 1
6600 7.0968522 -9.7557969 0.66499003 1 1
6700 7.1122649 -9.7305659 1.3152794 1 1
6800 6.9990684 -9.5808587 0.25569509 1 1
6900 7.2436468 -9.8205382 0.94441711 1 1
7000 7.0592104 -9.6306985 0.62683684 1 1
7100 6.7457928 -9.3199995 0.92851433 1 1
7200 7.0005278 -9.645515 0.79975493 1 1
7300 7.0106928 -9.5922649 0.78131757 1 1
7400 6.9425198 -9.5718261 0.3016744 1 1
7500 7.4193009 -9.9953487 0.55537513 1 1
7600 7.1870399 -9.7798145 0.94155142 1 1
7700 6.8261504 -9.3693292 0.78601298 1 1
7800 6.8794916 -9.4362689 0.9335562 1 1
7900 7.0068635 -9.5490666 0.53210657 1 1
8000 6.641609 -9.181226 0.80726821 1 1
8100 6.9290677 -9.4788963 1.1195905 1 1
8200 6.6497084 -9.197688 0.45616164 1 1
8300 6.6000864 -9.207368 0.46307403 1 1
8400 6.7434835 -9.3226196 0.78570419 1 1
8500 7.0766248 -9.5981608 0.48778261 1 1
8600 6.8206587 -9.3646115 0.76420951 1 1
8700 7.2009315 -9.7629817 0.69026433 1 1
8800 7.0581986 -9.636327 0.54467209 1 1
8900 7.2337543 -9.8210795 0.61604427 1 1
9000 6.7053026 -9.2552306 0.24196123 1 1
9100 6.7919694 -9.3561383 0.34320213 1 1
9200 6.8518231 -9.4142511 0.73735875 1 1
9300 6.5891178 -9.1414615 0.45262773 1 1
9400 6.4724853 -9.0217877 0.54837629 1 1
9500 6.3569528 -8.9201793 0.19617724 1 1
9600 6.3765498 -8.947548 0.85408461 1 1
9700 6.5652079 -9.1101844 0.74478711 1 1
9800 6.5099709 -9.0677449 0.69826809 1 1
9900 6.1773299 -8.7085595 0.69981004 1 1
10000 6.3999463 -8.9423632 0.42668066 1 1
Loop time of 0.675636 on 1 procs for 10000 steps with 361 atoms
Performance: 6393974.952 tau/day, 14800.868 timesteps/s
99.7% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.29845 | 0.29845 | 0.29845 | 0.0 | 44.17
Neigh | 0.26869 | 0.26869 | 0.26869 | 0.0 | 39.77
Comm | 0.006007 | 0.006007 | 0.006007 | 0.0 | 0.89
Output | 0.00076938 | 0.00076938 | 0.00076938 | 0.0 | 0.11
Modify | 0.077204 | 0.077204 | 0.077204 | 0.0 | 11.43
Other | | 0.02452 | | | 3.63
Nlocal: 361 ave 361 max 361 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 1191 ave 1191 max 1191 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 1191
Ave neighs/atom = 3.29917
Neighbor list builds = 3609
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -1,202 +0,0 @@
LAMMPS (15 Feb 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style atomic
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
2 by 2 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom c_1%10
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 2.48839 Mbytes
Step Temp E_pair Press 10[3] 10
0 25.701528 -29.143179 -1.2407285 3.2354571 1.0526316
100 26.269576 -29.713313 7.9052334 1.2742382 1.0304709
200 26.368336 -29.809962 1.6412462 1.2520776 1.0083102
300 26.479082 -29.920083 2.3678653 1.2299169 1.0193906
400 26.522239 -29.965537 6.6787858 1.1855956 1.0083102
500 25.725591 -29.168034 0.67065285 1.2520776 1.0083102
600 26.247693 -29.692706 7.9887712 1.3074792 1.0083102
700 26.237368 -29.676926 1.5987214 1.2409972 1.0083102
800 25.889643 -29.431589 4.6160859 1.2631579 1.0083102
900 23.635295 -27.372963 9.029962 1.1634349 1.0083102
1000 22.571904 -25.87422 1.8936085 1.1301939 1.0193906
1100 17.493795 -21.447274 9.502619 1.0858726 1.0193906
1200 17.214459 -20.726965 6.3578917 1.0304709 1.0193906
1300 16.424154 -19.757386 3.9027133 1.1191136 1.0083102
1400 15.04233 -18.126227 1.7539398 1.0858726 1.0193906
1500 13.749022 -16.839766 1.4654778 1.0747922 1.0083102
1600 13.888812 -16.855703 1.8972035 1.0858726 1.0304709
1700 13.647879 -16.652436 1.5110481 1.0526316 1.0304709
1800 12.61308 -15.580445 2.1861667 1.0083102 1.0083102
1900 12.700272 -15.594505 1.6395684 1.0304709 1.0083102
2000 12.204319 -15.16754 1.6302417 1.1080332 1.0083102
2100 11.921129 -14.774621 1.4311256 1.0858726 1.0083102
2200 11.959274 -14.797326 1.4920985 1.0415512 1.0083102
2300 11.633606 -14.455284 1.4447243 1.1412742 1.0193906
2400 12.180014 -14.719121 1.4582702 1.0304709 1.0083102
2500 11.779995 -14.293633 1.2961686 1.0304709 1.0083102
2600 11.86013 -14.272853 1.1970414 1.0415512 1.0193906
2700 11.360658 -13.772549 1.192957 1.0526316 1.0083102
2800 11.045632 -13.438591 1.2007074 1.0083102 1.0193906
2900 10.689472 -13.127138 0.94544611 1.0193906 1.0193906
3000 10.445298 -12.809325 1.3035047 1.0304709 1.0193906
3100 10.22325 -12.599858 1.7838342 1.0304709 1.0083102
3200 10.226845 -12.602391 0.91456469 1.0304709 1.0193906
3300 9.8906692 -12.204654 1.4538962 1.0415512 1.0193906
3400 9.0246858 -11.627057 1.1929498 1.0304709 1.0193906
3500 9.4549317 -11.747347 0.92966653 1.0193906 1.0193906
3600 9.2467281 -11.534358 0.94959796 1.0415512 1.0083102
3700 9.1099307 -11.381318 1.2963887 1.0193906 1.0083102
3800 9.2236074 -11.483205 1.3510186 1.1080332 1.0193906
3900 8.6105519 -10.877844 1.3591509 1.0304709 1.0083102
4000 8.588698 -10.846126 0.76473884 1.0415512 1.0083102
4100 8.5960453 -10.831229 0.93758423 1.0747922 1.0193906
4200 8.1049344 -10.436054 0.74947412 1.0526316 1.0083102
4300 8.2606129 -10.471049 0.64465155 1.0193906 1.0193906
4400 8.0777962 -10.288476 1.1145052 1.0193906 1.0083102
4500 7.9202904 -10.10427 0.49016698 1.0304709 1.0083102
4600 8.2366755 -10.434942 0.65930769 1.0193906 1.0083102
4700 7.9313531 -10.13685 1.097861 1.0304709 1.0083102
4800 7.8637296 -10.085957 0.56015483 1.0304709 1.0193906
4900 7.3410322 -9.5357686 0.89340163 1.0304709 1.0193906
5000 7.6647481 -9.8529515 0.8283225 1.0193906 1.0193906
5100 7.4114006 -9.5917802 0.64812231 1.0083102 1.0193906
5200 7.6261959 -9.8178843 0.90517452 1.0193906 1.0083102
5300 7.6501619 -9.8428477 1.028077 1.0304709 1.0083102
5400 7.4694373 -9.6434672 0.38259983 1.0193906 1.0083102
5500 7.3111918 -9.4803007 0.47921149 1.0193906 1.0193906
5600 7.2132446 -9.3694039 0.71282856 1.0193906 1.0083102
5700 6.8349744 -9.0018958 0.85688618 1.0193906 1.0083102
5800 7.1978042 -9.3667457 0.61717818 1.0304709 1.0193906
5900 7.1441033 -9.3263118 0.32840394 1.0193906 1.0083102
6000 7.0943691 -9.2621241 1.3099316 1.0083102 1.0083102
6100 6.9547586 -9.1026607 0.44492974 1.0193906 1.0083102
6200 7.0932682 -9.2934579 0.93444691 1.0415512 1.0083102
6300 7.0536275 -9.2562193 0.57578551 1.0193906 1.0193906
6400 6.8839921 -9.0513091 0.65690774 1.0193906 1.0083102
6500 6.7618431 -8.9037814 0.6011838 1.0304709 1.0193906
6600 6.6600729 -8.7979286 0.73495903 1.0193906 1.0193906
6700 6.6544136 -8.8089155 0.41206297 1.0304709 1.0193906
6800 6.7935502 -8.9405122 1.022055 1.0193906 1.0083102
6900 6.6603594 -8.8085894 0.4271189 1.0526316 1.0193906
7000 6.4894888 -8.6794785 0.64389173 1.0526316 1.0193906
7100 6.6252776 -8.776746 1.3915989 1.0193906 1.0193906
7200 6.6680717 -8.8468379 0.60275261 1.0193906 1.0193906
7300 6.697874 -8.8458161 0.50887488 1.0637119 1.0083102
7400 6.2112277 -8.340139 0.45211042 1.0415512 1.0193906
7500 6.4923853 -8.6255862 0.79982162 1.0083102 1.0193906
7600 6.2922271 -8.4027197 0.33603817 1.0304709 1.0083102
7700 6.5744688 -8.7079756 0.51620003 1.0415512 1.0083102
7800 6.6730316 -8.8278613 1.2334484 1.0304709 1.0083102
7900 6.3831791 -8.4878853 0.49555781 1.0415512 1.0193906
8000 6.690559 -8.7918607 0.88102021 1.0415512 1.0083102
8100 6.5390375 -8.6612074 0.45605815 1.0304709 1.0193906
8200 6.6957638 -8.8406262 0.45001955 1.0193906 1.0083102
8300 6.8684401 -9.0293678 0.64215355 1.0083102 1.0083102
8400 6.4416293 -8.5841829 0.53513285 1.0193906 1.0193906
8500 6.6854101 -8.8269391 0.81750487 1.0637119 1.0083102
8600 6.588469 -8.7315753 0.33201251 1.0083102 1.0083102
8700 6.2974312 -8.4104697 0.57054382 1.0083102 1.0083102
8800 6.4691853 -8.5985479 0.95554418 1.0415512 1.0083102
8900 6.7437807 -8.8949865 0.69067866 1.0415512 1.0083102
9000 6.5681473 -8.6984555 0.88464065 1.0193906 1.0083102
9100 6.6158471 -8.7398687 0.72347757 1.0193906 1.0083102
9200 6.4521137 -8.6048511 0.75093363 1.0193906 1.0193906
9300 6.4179685 -8.5582051 1.0072192 1.0083102 1.0083102
9400 6.580258 -8.7234535 0.56842466 1.0193906 1.0193906
9500 6.4125418 -8.56348 0.36394135 1.0304709 1.0193906
9600 6.6723409 -8.8402798 0.56711277 1.0304709 1.0193906
9700 6.4522736 -8.594767 0.43495668 1.0193906 1.0083102
9800 6.2127437 -8.3329761 0.68977311 1.0304709 1.0193906
9900 6.4360513 -8.5839262 1.1702062 1.0304709 1.0193906
10000 6.3393653 -8.4396274 0.46277884 1.0304709 1.0193906
Loop time of 0.389322 on 4 procs for 10000 steps with 361 atoms
Performance: 11096205.412 tau/day, 25685.661 timesteps/s
98.7% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.061902 | 0.074659 | 0.098288 | 5.1 | 19.18
Neigh | 0.061993 | 0.067136 | 0.078793 | 2.6 | 17.24
Comm | 0.10335 | 0.13334 | 0.15511 | 5.6 | 34.25
Output | 0.0017662 | 0.0020409 | 0.0027893 | 1.0 | 0.52
Modify | 0.037374 | 0.038055 | 0.038669 | 0.2 | 9.77
Other | | 0.07409 | | | 19.03
Nlocal: 90.25 ave 92 max 88 min
Histogram: 1 0 0 0 0 1 0 1 0 1
Nghost: 36 ave 38 max 34 min
Histogram: 1 0 0 0 0 2 0 0 0 1
Neighs: 276.75 ave 448 max 153 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Total # of neighbors = 1107
Ave neighs/atom = 3.06648
Neighbor list builds = 3472
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1,225 @@
LAMMPS (26 Sep 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style bond
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box bond/types 1 extra/bond/per/atom 6
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
2 by 2 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
bond_style harmonic
bond_coeff 1 10.0 1.2
# need to preserve 1-3, 1-4 pairwise interactions during hard collisions
special_bonds lj/coul 0 1 1
0 = max # of 1-2 neighbors
1 = max # of special neighbors
create_bonds all all 1 1.0 1.5
Neighbor list info ...
2 neighbor list requests
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Added 1014 bonds, new total = 1014
6 = max # of 1-2 neighbors
6 = max # of special neighbors
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
comm_modify cutoff 7.5
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom (c_1%10)+1
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 7.5
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 4.49421 Mbytes
Step Temp E_pair Press f_10[3] f_10
0 25.701528 -2.2032569 3.1039469 3.2354571 1.0526316
100 27.623422 -6.228166 2.6542136 1.2631579 1.0083102
200 33.35302 -15.746749 3.2018248 1.2963989 1.0193906
300 39.17734 -24.1557 4.9116986 1.2963989 1.0193906
400 41.660701 -27.615203 8.6214679 1.3518006 1.0083102
500 37.154928 -24.096947 3.2656178 1.3296399 1.0193906
600 35.059889 -21.524278 2.3728491 1.3296399 1.0083102
700 36.70511 -21.983922 3.299538 1.3296399 1.0083102
800 39.54394 -25.667546 4.3058382 1.3961219 1.0083102
900 37.868974 -24.379807 5.3176538 1.3518006 1.0083102
1000 36.721328 -23.341363 5.8700266 1.3407202 1.0083102
1100 35.646239 -23.3255 3.3762843 1.1855956 1.0083102
1200 31.452912 -20.792985 5.4901357 1.1966759 1.0083102
1300 32.276549 -21.245929 6.4153084 1.2077562 1.0193906
1400 29.452751 -20.724401 2.174752 1.1855956 1.0083102
1500 28.014757 -18.893532 1.7482766 1.1634349 1.0083102
1600 26.222645 -16.78953 0.93944237 1.1966759 1.0304709
1700 25.711888 -15.792639 0.20021405 1.0969529 1.0083102
1800 24.412639 -13.217606 0.7091708 1.1966759 1.0083102
1900 25.644324 -13.020594 1.3661224 1.1412742 1.0083102
2000 24.556667 -13.580087 0.80121134 1.0637119 1.0083102
2100 25.23657 -13.560862 1.2349706 1.1191136 1.0193906
2200 26.456985 -13.804729 1.27046 1.1412742 1.0193906
2300 26.416685 -13.212452 1.4096744 1.1412742 1.0083102
2400 25.472914 -12.472527 1.5408641 1.1412742 1.0083102
2500 25.216305 -12.597474 0.84328282 1.1412742 1.0083102
2600 24.107024 -12.455199 1.5587978 1.2409972 1.0193906
2700 26.840175 -15.533209 1.2944973 1.1745152 1.0083102
2800 26.149759 -14.83948 4.0371126 1.0747922 1.0083102
2900 24.651151 -14.934342 2.7634302 1.0747922 1.0193906
3000 21.873123 -13.366381 -0.18605935 1.1301939 1.0083102
3100 19.974658 -10.620844 -0.16366371 1.0637119 1.0193906
3200 20.926558 -10.336663 -0.73116364 1.1080332 1.0083102
3300 20.473772 -10.588752 -0.66017168 1.0858726 1.0304709
3400 22.476649 -11.87982 1.0141731 1.0747922 1.0083102
3500 24.02361 -12.532787 1.4116935 1.1191136 1.0083102
3600 22.922792 -12.328391 -0.27783338 1.0969529 1.0083102
3700 21.772971 -10.716922 0.95739835 1.1523546 1.0083102
3800 21.597174 -10.839031 0.67958603 1.1191136 1.0193906
3900 21.883448 -11.258422 -0.40592732 1.0637119 1.0193906
4000 22.815486 -10.891868 1.6123322 1.1301939 1.0193906
4100 23.276599 -11.400134 0.65653972 1.0415512 1.0193906
4200 22.543441 -11.530245 0.074132899 1.1523546 1.0193906
4300 22.863379 -10.809451 0.27552824 1.1412742 1.0193906
4400 22.475073 -11.125735 1.7708547 1.1191136 1.0193906
4500 23.500125 -11.680919 0.91347563 1.0858726 1.0083102
4600 21.1812 -11.767353 0.095659263 1.1191136 1.0193906
4700 22.950759 -12.108158 0.083009642 1.1966759 1.0083102
4800 22.12306 -11.455893 0.47932308 1.1080332 1.0083102
4900 23.297573 -11.823246 0.93733479 1.0969529 1.0083102
5000 22.98743 -12.014836 0.36186604 1.1080332 1.0083102
5100 23.081456 -11.54226 0.73473004 1.0747922 1.0193906
5200 20.980311 -11.493036 -0.71555187 1.0637119 1.0193906
5300 21.468406 -11.18497 0.54579843 1.0304709 1.0193906
5400 22.75839 -10.856825 0.94407228 1.1191136 1.0083102
5500 22.705652 -12.112469 0.4753399 1.1412742 1.0083102
5600 22.391177 -12.530712 1.0180383 1.1412742 1.0083102
5700 21.832834 -11.368512 0.88281166 1.0415512 1.0083102
5800 22.850002 -11.948876 -0.46874747 1.0747922 1.0083102
5900 21.135991 -12.358431 -0.48932559 1.0526316 1.0193906
6000 22.071115 -11.433484 0.49653696 1.0747922 1.0304709
6100 21.91427 -11.458553 -0.030708226 1.0637119 1.0193906
6200 24.173206 -13.110269 -0.13661363 1.1412742 1.0083102
6300 22.204413 -11.373556 1.6254012 1.0747922 1.0304709
6400 23.259022 -11.634614 1.4472592 1.1412742 1.0193906
6500 22.185287 -11.606998 0.66488201 1.0415512 1.0083102
6600 21.329653 -10.989853 0.31700842 1.1301939 1.0083102
6700 21.903749 -10.335477 1.3749575 1.0637119 1.0083102
6800 21.188714 -10.545014 1.3448408 1.0415512 1.0083102
6900 22.683005 -11.254371 0.5048545 1.1523546 1.0193906
7000 21.224439 -9.7325551 0.71666112 1.0637119 1.0083102
7100 21.712624 -10.594397 0.3657261 1.0858726 1.0193906
7200 22.115857 -10.479237 0.95528164 1.0969529 1.0193906
7300 22.075732 -11.255 -0.35340754 1.0526316 1.0193906
7400 21.659767 -10.238454 -0.063639729 1.1523546 1.0083102
7500 21.966354 -10.654264 0.36298903 1.0747922 1.0083102
7600 21.541195 -11.151416 0.96453416 1.1080332 1.0193906
7700 23.517228 -12.266781 0.49603585 1.1523546 1.0193906
7800 21.665911 -11.832323 0.47104209 1.1080332 1.0083102
7900 23.469372 -12.358423 -0.757413 1.0747922 1.0193906
8000 21.699467 -11.462824 -0.73009236 1.0415512 1.0083102
8100 21.583783 -10.21474 0.98837038 1.0969529 1.0193906
8200 21.804998 -10.916922 -0.53268178 1.0858726 1.0083102
8300 21.291145 -10.875356 0.81277146 1.0858726 1.0193906
8400 21.939964 -10.726547 0.95830844 1.0415512 1.0193906
8500 23.600157 -11.041255 -0.14583876 1.0747922 1.0083102
8600 22.37787 -10.946852 1.0360646 1.0415512 1.0083102
8700 23.591205 -11.524803 1.1877377 1.0526316 1.0304709
8800 22.567007 -11.4629 0.4360461 1.0526316 1.0083102
8900 22.11289 -11.772849 -0.019132631 1.0304709 1.0193906
9000 22.814946 -11.705633 0.59029789 1.0747922 1.0083102
9100 22.58487 -11.431283 0.9884223 1.1634349 1.0083102
9200 23.283939 -11.825534 0.68358625 1.0637119 1.0083102
9300 23.292444 -11.365494 0.78631005 1.0526316 1.0083102
9400 21.748634 -10.16176 0.59185916 1.0969529 1.0083102
9500 21.644797 -10.00944 1.1450108 1.0637119 1.0304709
9600 23.01957 -10.683211 1.5735291 1.0637119 1.0193906
9700 21.207989 -10.344668 0.34401867 1.0969529 1.0083102
9800 22.035363 -10.849581 -0.14118639 1.0304709 1.0083102
9900 21.839653 -10.008407 0.96570633 1.0526316 1.0193906
10000 22.845561 -10.238723 0.74236932 1.0858726 1.0083102
Loop time of 0.812716 on 4 procs for 10000 steps with 361 atoms
Performance: 5315508.362 tau/day, 12304.418 timesteps/s
98.9% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.12434 | 0.13482 | 0.14506 | 2.5 | 16.59
Bond | 0.053339 | 0.058165 | 0.062916 | 1.9 | 7.16
Neigh | 0.28554 | 0.29233 | 0.29933 | 0.9 | 35.97
Comm | 0.16602 | 0.19226 | 0.21833 | 4.3 | 23.66
Output | 0.0017536 | 0.0019155 | 0.0022504 | 0.4 | 0.24
Modify | 0.040126 | 0.040341 | 0.04054 | 0.1 | 4.96
Other | | 0.09288 | | | 11.43
Nlocal: 90.25 ave 91 max 90 min
Histogram: 3 0 0 0 0 0 0 0 0 1
Nghost: 198.25 ave 206 max 191 min
Histogram: 1 1 0 0 0 0 0 0 1 1
Neighs: 667.75 ave 751 max 627 min
Histogram: 2 0 1 0 0 0 0 0 0 1
Total # of neighbors = 2671
Ave neighs/atom = 7.39889
Ave special neighs/atom = 5.61773
Neighbor list builds = 4832
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -1,4 +1,4 @@
LAMMPS (15 Feb 2016)
LAMMPS (26 Sep 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
@ -91,7 +91,7 @@ Neighbor list info ...
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 6.41878 Mbytes
Step Temp E_pair Press 10[3] 10
Step Temp E_pair Press f_10[3] f_10
0 0.57437856 0 0.26099453 3.2354571 1.0526316
100 0.29756515 0 0.10149401 1.0193906 1.0083102
200 0.35394813 0 0.075159099 1.0304709 1.0083102
@ -108,9 +108,9 @@ Step Temp E_pair Press 10[3] 10
1300 0.32952819 0 0.124902 1.0083102 1.0083102
1400 0.34497365 0 0.12662081 1.0193906 1.0083102
1500 0.33429243 0 0.096230972 1.0526316 1.0193906
1600 0.33765387 0 0.025800542 1.0304709 1.0083102
1700 0.35134464 0 -0.04422593 1.0415512 1.0193906
1800 0.35003859 0 -0.096745576 1.0304709 1.0193906
1600 0.33765387 0 0.025800542 1.0304709 1.0193906
1700 0.35134464 0 -0.04422593 1.0415512 1.0083102
1800 0.35003859 0 -0.096745576 1.0304709 1.0083102
1900 0.33839618 0 -0.095465943 1.0193906 1.0083102
2000 0.33732078 0 -0.094652802 1.0083102 1.0083102
2100 0.34552238 0 -0.076729261 1.0304709 1.0083102
@ -179,7 +179,7 @@ Step Temp E_pair Press 10[3] 10
8400 0.30619282 0 -0.12952879 1.0193906 1.0193906
8500 0.34446484 0 -0.098084709 1.0083102 1.0083102
8600 0.33761673 0 -0.07069818 1.0193906 1.0083102
8700 0.34495452 0 -0.022458056 1.0193906 1.0083102
8700 0.34495452 0 -0.022458056 1.0193906 1.0193906
8800 0.33502983 0 0.027742411 1.0304709 1.0083102
8900 0.35418591 0 0.092390134 1.0083102 1.0193906
9000 0.31648387 0 0.12467398 1.0193906 1.0083102
@ -192,12 +192,12 @@ Step Temp E_pair Press 10[3] 10
9700 0.32088235 0 -0.12027075 1.0193906 1.0083102
9800 0.3320823 0 -0.11602794 1.0415512 1.0083102
9900 0.33916442 0 -0.080281044 1.0083102 1.0083102
10000 0.34852268 0 -0.01000914 1.0193906 1.0193906
10000 0.34852268 0 -0.01000914 1.0193906 1.0083102
10100 0.32955942 0 0.04258493 1.0083102 1.0083102
10200 0.34487898 0 0.086971308 1.0304709 1.0193906
10200 0.34487898 0 0.086971308 1.0304709 1.0083102
10300 0.32325593 0 0.11558149 1.0304709 1.0193906
10400 0.30927871 0 0.12239437 1.0083102 1.0083102
10500 0.33176799 0 0.12285937 1.0193906 1.0193906
10500 0.33176799 0 0.12285937 1.0193906 1.0083102
10600 0.35120027 0 0.084897432 1.0083102 1.0083102
10700 0.33129697 0 0.0053089279 1.0193906 1.0193906
10800 0.36028769 0 -0.04280715 1.0193906 1.0083102
@ -214,7 +214,7 @@ Step Temp E_pair Press 10[3] 10
11900 0.33836678 0 0.067253864 1.0193906 1.0193906
12000 0.34853314 0 0.03201448 1.0193906 1.0083102
12100 0.34600048 0 -0.034833402 1.0304709 1.0083102
12200 0.33145631 0 -0.09865675 1.0193906 1.0193906
12200 0.33145631 0 -0.09865675 1.0193906 1.0083102
12300 0.32848884 0 -0.1248489 1.0193906 1.0193906
12400 0.3321344 0 -0.11266575 1.0083102 1.0083102
12500 0.32622305 0 -0.061634993 1.0304709 1.0083102
@ -225,11 +225,11 @@ Step Temp E_pair Press 10[3] 10
13000 0.31993287 0 0.13879926 1.0193906 1.0193906
13100 0.3422918 0 0.11978905 1.0083102 1.0083102
13200 0.33055236 0 0.062620483 1.0193906 1.0083102
13300 0.34652207 0 0.0043833459 1.0304709 1.0193906
13300 0.34652207 0 0.0043833459 1.0304709 1.0083102
13400 0.33574661 0 -0.04691024 1.0304709 1.0083102
13500 0.33940837 0 -0.074241604 1.0304709 1.0083102
13600 0.32093414 0 -0.1078027 1.0193906 1.0083102
13700 0.34336597 0 -0.10544097 1.0193906 1.0083102
13600 0.32093414 0 -0.1078027 1.0193906 1.0193906
13700 0.34336597 0 -0.10544097 1.0193906 1.0193906
13800 0.35806461 0 -0.072531559 1.0193906 1.0083102
13900 0.35209713 0 -0.018851408 1.0083102 1.0083102
14000 0.35702629 0 0.061046366 1.0083102 1.0083102
@ -243,13 +243,13 @@ Step Temp E_pair Press 10[3] 10
14800 0.33679845 0 -0.10067728 1.0193906 1.0193906
14900 0.32790966 0 -0.10925568 1.0193906 1.0083102
15000 0.34208495 0 -0.09568004 1.0193906 1.0083102
15100 0.33647529 0 -0.055652929 1.0083102 1.0193906
15100 0.33647529 0 -0.055652929 1.0083102 1.0083102
15200 0.35328398 0 -0.020236536 1.0193906 1.0193906
15300 0.34252669 0 0.026434179 1.0083102 1.0193906
15400 0.34409435 0 0.094410599 1.0304709 1.0083102
15500 0.32288994 0 0.12034455 1.0415512 1.0193906
15600 0.32109689 0 0.13645185 1.0193906 1.0193906
15700 0.33681572 0 0.098607746 1.0415512 1.0083102
15600 0.32109689 0 0.13645185 1.0193906 1.0083102
15700 0.33681572 0 0.098607746 1.0415512 1.0193906
15800 0.33635195 0 0.05570715 1.0193906 1.0193906
15900 0.34289757 0 0.013849092 1.0304709 1.0083102
16000 0.34225547 0 -0.035597548 1.0304709 1.0083102
@ -261,7 +261,7 @@ Step Temp E_pair Press 10[3] 10
16600 0.35109001 0 0.041251169 1.0304709 1.0083102
16700 0.34336905 0 0.077996627 1.0193906 1.0083102
16800 0.33277414 0 0.11053634 1.0083102 1.0083102
16900 0.32183338 0 0.11680626 1.0193906 1.0083102
16900 0.32183338 0 0.11680626 1.0193906 1.0193906
17000 0.34044352 0 0.10806555 1.0193906 1.0083102
17100 0.32967873 0 0.067759786 1.0304709 1.0193906
17200 0.36172278 0 -0.0048631904 1.0304709 1.0083102
@ -293,17 +293,17 @@ Step Temp E_pair Press 10[3] 10
19800 0.34880695 0 0.042483681 1.0193906 1.0083102
19900 0.33903644 0 0.034788638 1.0083102 1.0193906
20000 0.32590125 0 0.011383785 1.0193906 1.0083102
20100 0.30358859 0 0.0030743554 1.0526316 1.0083102
20100 0.30358859 0 0.0030743554 1.0526316 1.0193906
20200 0.31830224 0 0.017637826 1.0193906 1.0193906
20300 0.34195438 0 0.072811099 1.0304709 1.0193906
20400 0.31249563 0 0.10063541 1.0415512 1.0083102
20500 0.31544938 0 0.1405794 1.0083102 1.0083102
20600 0.30071644 0 0.12763486 1.0193906 1.0193906
20700 0.2890265 0 0.1136651 1.0083102 1.0083102
20700 0.2890265 0 0.1136651 1.0083102 1.0193906
20800 0.28962296 0 0.094481978 1.0193906 1.0083102
20900 0.29447212 0 0.0967165 1.0193906 1.0193906
21000 0.31159961 0 0.067307231 1.0083102 1.0193906
21100 0.30490648 0 0.017689358 1.0083102 1.0304709
21000 0.31159961 0 0.067307231 1.0083102 1.0083102
21100 0.30490648 0 0.017689358 1.0083102 1.0193906
21200 0.30687262 0 -0.016055512 1.0193906 1.0193906
21300 0.30083286 0 -0.0014988997 1.0193906 1.0083102
21400 0.32070426 0 0.015960302 1.0083102 1.0083102
@ -314,7 +314,7 @@ Step Temp E_pair Press 10[3] 10
21900 0.32451958 0 0.068935768 1.0304709 1.0193906
22000 0.35219298 0 0.067161227 1.0193906 1.0193906
22100 0.34857705 0 0.032731746 1.0193906 1.0083102
22200 0.34750227 0 0.0056917695 1.0193906 1.0083102
22200 0.34750227 0 0.0056917695 1.0193906 1.0193906
22300 0.34766017 0 -0.0027090483 1.0193906 1.0083102
22400 0.33426062 0 -0.023196063 1.0304709 1.0193906
22500 0.34174625 0 -0.025019717 1.0083102 1.0083102
@ -328,11 +328,11 @@ Step Temp E_pair Press 10[3] 10
23300 0.32965664 0 0.035989589 1.0193906 1.0083102
23400 0.30927749 0 0.024581106 1.0193906 1.0083102
23500 0.32890632 0 0.01092479 1.0304709 1.0193906
23600 0.34137438 0 0.0094839745 1.0193906 1.0083102
23600 0.34137438 0 0.0094839745 1.0193906 1.0193906
23700 0.34512638 0 -0.012392771 1.0304709 1.0193906
23800 0.31781354 0 -0.012908449 1.0193906 1.0193906
23900 0.32405513 0 -0.015018071 1.0415512 1.0193906
24000 0.33549728 0 -0.012812915 1.0193906 1.0083102
23900 0.32405513 0 -0.015018071 1.0415512 1.0083102
24000 0.33549728 0 -0.012812915 1.0193906 1.0193906
24100 0.31368736 0 -0.020818372 1.0304709 1.0193906
24200 0.33533836 0 0.0056121057 1.0083102 1.0193906
24300 0.32530627 0 0.018183931 1.0415512 1.0083102
@ -352,12 +352,12 @@ Step Temp E_pair Press 10[3] 10
25700 0.34048065 0 0.022513032 1.0193906 1.0193906
25800 0.33029079 0 0.038733531 1.0193906 1.0083102
25900 0.33031324 0 0.026156982 1.0304709 1.0193906
26000 0.32967371 0 0.028727383 1.0083102 1.0083102
26000 0.32967371 0 0.028727383 1.0083102 1.0193906
26100 0.33775718 0 0.015607478 1.0083102 1.0193906
26200 0.35097144 0 0.012291703 1.0083102 1.0083102
26300 0.34303792 0 0.00094823191 1.0083102 1.0193906
26400 0.33632665 0 -0.0026904889 1.0193906 1.0193906
26500 0.33580127 0 -0.0074168555 1.0193906 1.0193906
26500 0.33580127 0 -0.0074168555 1.0193906 1.0083102
26600 0.33063188 0 -0.020378601 1.0083102 1.0193906
26700 0.33581846 0 -0.00084397268 1.0083102 1.0193906
26800 0.32998532 0 0.015932208 1.0304709 1.0193906
@ -375,12 +375,12 @@ Step Temp E_pair Press 10[3] 10
28000 0.32300727 0 -0.0004153384 1.0304709 1.0083102
28100 0.32147461 0 -0.0058543412 1.0083102 1.0083102
28200 0.35532383 0 0.013646951 1.0304709 1.0083102
28300 0.31507942 0 0.026532255 1.0415512 1.0193906
28300 0.31507942 0 0.026532255 1.0415512 1.0083102
28400 0.32711006 0 0.033214981 1.0193906 1.0083102
28500 0.34472462 0 0.028050837 1.0304709 1.0193906
28600 0.33708059 0 0.019115676 1.0083102 1.0083102
28700 0.34478087 0 0.023743689 1.0304709 1.0083102
28800 0.34546686 0 0.0081772997 1.0304709 1.0193906
28700 0.34478087 0 0.023743689 1.0304709 1.0193906
28800 0.34546686 0 0.0081772997 1.0304709 1.0083102
28900 0.34004886 0 0.017771865 1.0415512 1.0193906
29000 0.33604232 0 -0.010505671 1.0304709 1.0193906
29100 0.33541374 0 -0.016273261 1.0083102 1.0083102
@ -411,14 +411,14 @@ Step Temp E_pair Press 10[3] 10
31600 0.34273493 0 -0.013456537 1.0083102 1.0083102
31700 0.32723905 0 -0.019243766 1.0193906 1.0083102
31800 0.33636488 0 0.0027814902 1.0083102 1.0083102
31900 0.32834805 0 0.00706877 1.0083102 1.0083102
31900 0.32834805 0 0.00706877 1.0083102 1.0193906
32000 0.33995148 0 0.0018383309 1.0193906 1.0193906
32100 0.33412282 0 0.0076455933 1.0083102 1.0083102
32200 0.34334884 0 0.023586129 1.0083102 1.0083102
32300 0.32778925 0 0.020564321 1.0193906 1.0083102
32400 0.33163443 0 0.038878463 1.0193906 1.0083102
32500 0.32290345 0 0.022247461 1.0193906 1.0193906
32600 0.34113954 0 0.010966365 1.0304709 1.0083102
32600 0.34113954 0 0.010966365 1.0304709 1.0193906
32700 0.33390633 0 0.0037777555 1.0193906 1.0083102
32800 0.34385341 0 0.010556575 1.0193906 1.0193906
32900 0.32137047 0 0.00022027143 1.0526316 1.0193906
@ -443,15 +443,15 @@ Step Temp E_pair Press 10[3] 10
34800 0.33902329 0 0.030037037 1.0415512 1.0193906
34900 0.3216153 0 0.027996689 1.0304709 1.0083102
35000 0.32701056 0 0.024778517 1.0193906 1.0193906
35100 0.3124942 0 0.011316548 1.0193906 1.0304709
35100 0.3124942 0 0.011316548 1.0193906 1.0193906
35200 0.34486416 0 0.011670127 1.0193906 1.0193906
35300 0.33275353 0 0.020491246 1.0193906 1.0193906
35400 0.33618763 0 0.014678874 1.0083102 1.0083102
35400 0.33618763 0 0.014678874 1.0083102 1.0193906
35500 0.32352282 0 -0.018568683 1.0193906 1.0193906
35600 0.32617903 0 -0.012796912 1.0193906 1.0193906
35700 0.32378048 0 -0.021318585 1.0193906 1.0083102
35800 0.3371086 0 -0.0023678632 1.0193906 1.0193906
35900 0.33818476 0 0.011197742 1.0193906 1.0193906
35900 0.33818476 0 0.011197742 1.0193906 1.0083102
36000 0.35142144 0 0.022520935 1.0083102 1.0193906
36100 0.35147297 0 0.020277852 1.0193906 1.0083102
36200 0.33489465 0 0.014564878 1.0415512 1.0083102
@ -464,10 +464,10 @@ Step Temp E_pair Press 10[3] 10
36900 0.35003816 0 -0.0021184393 1.0083102 1.0193906
37000 0.32965041 0 -0.020900951 1.0193906 1.0083102
37100 0.34653095 0 -0.013667977 1.0193906 1.0083102
37200 0.35019871 0 -0.0071740923 1.0083102 1.0304709
37200 0.35019871 0 -0.0071740923 1.0083102 1.0193906
37300 0.34859745 0 0.02006041 1.0304709 1.0083102
37400 0.35739859 0 0.020892822 1.0193906 1.0083102
37500 0.34128859 0 0.041072111 1.0193906 1.0193906
37500 0.34128859 0 0.041072111 1.0193906 1.0083102
37600 0.33781905 0 0.023376738 1.0193906 1.0083102
37700 0.32961874 0 0.030953741 1.0193906 1.0083102
37800 0.343987 0 0.029579795 1.0083102 1.0083102
@ -481,7 +481,7 @@ Step Temp E_pair Press 10[3] 10
38600 0.32322402 0 0.053453832 1.0193906 1.0304709
38700 0.33843057 0 0.076264534 1.0083102 1.0193906
38800 0.31350741 0 0.064733869 1.0415512 1.0083102
38900 0.31943061 0 0.067836769 1.0304709 1.0193906
38900 0.31943061 0 0.067836769 1.0304709 1.0083102
39000 0.33775583 0 0.0788316 1.0193906 1.0193906
39100 0.34256036 0 0.075874935 1.0083102 1.0193906
39200 0.33128527 0 0.071610976 1.0193906 1.0083102
@ -491,23 +491,23 @@ Step Temp E_pair Press 10[3] 10
39600 0.34000737 0 0.016149089 1.0304709 1.0083102
39700 0.34587892 0 0.021619621 1.0526316 1.0083102
39800 0.34878036 0 0.0092881327 1.0083102 1.0193906
39900 0.35225411 0 -0.011341599 1.0083102 1.0083102
39900 0.35225411 0 -0.011341599 1.0083102 1.0193906
40000 0.36309266 0 0.0050869295 1.0304709 1.0083102
Loop time of 1.06031 on 4 procs for 40000 steps with 361 atoms
Loop time of 1.07961 on 4 procs for 40000 steps with 361 atoms
Performance: 16297104.069 tau/day, 37724.778 timesteps/s
99.2% CPU use with 4 MPI tasks x no OpenMP threads
Performance: 16005824.195 tau/day, 37050.519 timesteps/s
99.1% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.019866 | 0.021036 | 0.024189 | 1.3 | 1.98
Bond | 0.21436 | 0.24183 | 0.27259 | 5.1 | 22.81
Neigh | 0.16022 | 0.16068 | 0.16101 | 0.1 | 15.15
Comm | 0.2742 | 0.31331 | 0.3498 | 5.6 | 29.55
Output | 0.0070348 | 0.0075188 | 0.0087383 | 0.8 | 0.71
Modify | 0.14238 | 0.14861 | 0.15484 | 1.3 | 14.02
Other | | 0.1673 | | | 15.78
Pair | 0.019289 | 0.021061 | 0.024797 | 1.5 | 1.95
Bond | 0.21005 | 0.23732 | 0.26838 | 5.0 | 21.98
Neigh | 0.15978 | 0.16143 | 0.16328 | 0.4 | 14.95
Comm | 0.2817 | 0.32626 | 0.36457 | 5.8 | 30.22
Output | 0.0069985 | 0.0075181 | 0.0087821 | 0.8 | 0.70
Modify | 0.1463 | 0.15235 | 0.16128 | 1.5 | 14.11
Other | | 0.1737 | | | 16.09
Nlocal: 90.25 ave 91 max 89 min
Histogram: 1 0 0 0 0 1 0 0 0 2

View File

@ -0,0 +1,221 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
compute p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 shift x 10 1.0 weight time 1.0 weight store WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
Memory usage per processor = 3.0442 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778 4738.2137
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606 4738.2137
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568 4738.2137
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104 4738.2137
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842 4738.2137
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056 4738.2137
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594 4738.2137
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161 4738.2137
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
Loop time of 2.31899 on 4 procs for 500 steps with 4000 atoms
Performance: 93143.824 tau/day, 215.611 timesteps/s
99.4% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1238 | 1.43 | 1.6724 | 19.4 | 61.66
Neigh | 0.26414 | 0.3845 | 0.55604 | 20.2 | 16.58
Comm | 0.36444 | 0.48475 | 0.61759 | 15.3 | 20.90
Output | 0.00027871 | 0.00032145 | 0.00035334 | 0.2 | 0.01
Modify | 0.0064867 | 0.0086303 | 0.011487 | 2.3 | 0.37
Other | | 0.01078 | | | 0.46
Nlocal: 1000 ave 1565 max 584 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8752 ave 9835 max 8078 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 149308 ave 161748 max 133300 min
Histogram: 1 0 0 1 0 0 0 0 1 1
Total # of neighbors = 597231
Ave neighs/atom = 149.308
Neighbor list builds = 50
Dangerous builds = 0
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
550 0.53879347 -6.2554274 0 -5.4474393 -1.9756834 4738.2137
600 0.54275982 -6.2616799 0 -5.4477437 -1.9939993 4738.2137
650 0.54526651 -6.265098 0 -5.4474027 -2.0303672 4738.2137
700 0.54369381 -6.263201 0 -5.4478642 -1.9921967 4738.2137
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675 4738.2137
800 0.55061744 -6.2725556 0 -5.4468359 -2.0100922 4738.2137
850 0.55371614 -6.2763992 0 -5.4460326 -2.0065329 4738.2137
900 0.54756622 -6.2668303 0 -5.4456863 -1.9796122 4738.2137
950 0.54791593 -6.2673161 0 -5.4456477 -1.9598278 4738.2137
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
Loop time of 2.32391 on 4 procs for 500 steps with 4000 atoms
Performance: 92946.753 tau/day, 215.155 timesteps/s
99.4% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1054 | 1.4081 | 1.6402 | 19.8 | 60.59
Neigh | 0.28061 | 0.4047 | 0.57291 | 19.7 | 17.41
Comm | 0.38485 | 0.4918 | 0.62503 | 15.5 | 21.16
Output | 0.00028014 | 0.00031483 | 0.00032997 | 0.1 | 0.01
Modify | 0.0064781 | 0.0084658 | 0.011106 | 2.2 | 0.36
Other | | 0.01051 | | | 0.45
Nlocal: 1000 ave 1560 max 593 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8716.25 ave 9788 max 8009 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 150170 ave 164293 max 129469 min
Histogram: 1 0 0 0 1 0 0 0 0 2
Total # of neighbors = 600678
Ave neighs/atom = 150.169
Neighbor list builds = 53
Dangerous builds = 0
fix 0 all balance 50 1.0 shift x 5 1.0 weight neigh 0.5 weight time 0.66 weight store WEIGHT
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
1050 0.54629742 -6.2657526 0 -5.4465113 -1.945821 4738.2137
1100 0.55427881 -6.2781733 0 -5.446963 -2.0021027 4738.2137
1150 0.54730654 -6.267257 0 -5.4465025 -1.9420678 4738.2137
1200 0.5388281 -6.2547963 0 -5.4467562 -1.890178 4738.2137
1250 0.54848768 -6.2694237 0 -5.4468979 -1.9636797 4738.2137
1300 0.54134321 -6.2590728 0 -5.447261 -1.9170271 4738.2137
1350 0.53564389 -6.2501521 0 -5.4468871 -1.8642306 4738.2137
1400 0.53726924 -6.2518379 0 -5.4461355 -1.8544028 4738.2137
1450 0.54525935 -6.2632653 0 -5.4455808 -1.9072158 4738.2137
1500 0.54223346 -6.2591057 0 -5.4459588 -1.8866985 4738.2137
Loop time of 2.13659 on 4 procs for 500 steps with 4000 atoms
Performance: 101095.806 tau/day, 234.018 timesteps/s
99.6% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.3372 | 1.3773 | 1.4155 | 2.5 | 64.46
Neigh | 0.22376 | 0.37791 | 0.57496 | 25.4 | 17.69
Comm | 0.20357 | 0.36123 | 0.52777 | 25.5 | 16.91
Output | 0.00029254 | 0.00034094 | 0.00039411 | 0.2 | 0.02
Modify | 0.0056622 | 0.0082379 | 0.01147 | 2.9 | 0.39
Other | | 0.01156 | | | 0.54
Nlocal: 1000 ave 1629 max 525 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Nghost: 8647.25 ave 9725 max 7935 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 150494 ave 161009 max 143434 min
Histogram: 1 1 0 0 1 0 0 0 0 1
Total # of neighbors = 601974
Ave neighs/atom = 150.494
Neighbor list builds = 51
Dangerous builds = 0
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1500 0.54223346 -6.2591057 0 -5.4459588 -1.8866985 4738.2137
1550 0.55327017 -6.2750125 0 -5.4453148 -1.9506584 4738.2137
1600 0.54419003 -6.2612622 0 -5.4451812 -1.8559437 4738.2137
1650 0.54710034 -6.2661978 0 -5.4457525 -1.8882831 4738.2137
1700 0.53665689 -6.2504958 0 -5.4457117 -1.8068004 4738.2137
1750 0.54864706 -6.2681124 0 -5.4453476 -1.8662646 4738.2137
1800 0.54476202 -6.2615083 0 -5.4445696 -1.8352824 4738.2137
1850 0.54142953 -6.2555505 0 -5.4436093 -1.8005654 4738.2137
1900 0.53992431 -6.254135 0 -5.444451 -1.7768688 4738.2137
1950 0.54665954 -6.2640971 0 -5.4443128 -1.7947032 4738.2137
2000 0.54557798 -6.2625416 0 -5.4443793 -1.8072514 4738.2137
Loop time of 2.17499 on 4 procs for 500 steps with 4000 atoms
Performance: 99310.978 tau/day, 229.887 timesteps/s
99.6% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.3333 | 1.3705 | 1.397 | 2.0 | 63.01
Neigh | 0.24071 | 0.41014 | 0.62928 | 26.6 | 18.86
Comm | 0.19069 | 0.37486 | 0.53972 | 26.6 | 17.23
Output | 0.00031614 | 0.00035483 | 0.00040388 | 0.2 | 0.02
Modify | 0.0057304 | 0.0083074 | 0.01159 | 2.8 | 0.38
Other | | 0.01083 | | | 0.50
Nlocal: 1000 ave 1628 max 523 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Nghost: 8641.5 ave 9769 max 7941 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Neighs: 151654 ave 163181 max 145045 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Total # of neighbors = 606616
Ave neighs/atom = 151.654
Neighbor list builds = 56
Dangerous builds = 0
Total wall time: 0:00:09

View File

@ -0,0 +1,188 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
2600 atoms in group fast
group slow type 2
1400 atoms in group slow
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
rebalancing time: 0.000447989 seconds
iteration count = 2
time weight factor: 1
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.6875 1
y cuts: 0 1
z cuts: 0 1
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
Memory usage per processor = 2.77892 Mbytes
Step Temp E_pair E_mol TotEng Press
0 1 -6.9453205 0 -5.4456955 -5.6812358
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995
Loop time of 1.42972 on 4 procs for 250 steps with 4000 atoms
Performance: 75539.346 tau/day, 174.860 timesteps/s
98.9% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.34009 | 0.65732 | 1.1925 | 42.3 | 45.98
Neigh | 0.1324 | 0.17067 | 0.19962 | 6.6 | 11.94
Comm | 0.03502 | 0.5933 | 0.88766 | 45.1 | 41.50
Output | 0.0001173 | 0.00012749 | 0.00013947 | 0.1 | 0.01
Modify | 0.0024164 | 0.0032778 | 0.0040991 | 1.0 | 0.23
Other | | 0.00502 | | | 0.35
Nlocal: 1000 ave 1263 max 712 min
Histogram: 1 0 0 0 1 0 1 0 0 1
Nghost: 8711.5 ave 9045 max 8325 min
Histogram: 1 0 0 0 0 1 1 0 0 1
Neighs: 149325 ave 275165 max 77227 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Total # of neighbors = 597299
Ave neighs/atom = 149.325
Neighbor list builds = 23
Dangerous builds = 0
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
rebalancing time: 0.000354052 seconds
iteration count = 4
time weight factor: 1
initial/final max load/proc = 1673.83 1097.18
initial/final imbalance factor = 1.67383 1.09718
x cuts: 0 0.296875 0.453125 0.605469 1
y cuts: 0 1
z cuts: 0 1
run 250
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015
Loop time of 1.10579 on 4 procs for 250 steps with 4000 atoms
Performance: 97667.971 tau/day, 226.083 timesteps/s
99.2% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.47383 | 0.65917 | 0.86391 | 21.2 | 59.61
Neigh | 0.12071 | 0.17144 | 0.23972 | 11.6 | 15.50
Comm | 0.10061 | 0.26652 | 0.39924 | 24.8 | 24.10
Output | 0.00012779 | 0.00014991 | 0.00018096 | 0.2 | 0.01
Modify | 0.0021801 | 0.0032307 | 0.0047314 | 1.8 | 0.29
Other | | 0.005272 | | | 0.48
Nlocal: 1000 ave 1479 max 635 min
Histogram: 1 1 0 0 0 0 1 0 0 1
Nghost: 8759.5 ave 9918 max 7969 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 149356 ave 195930 max 110209 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Total # of neighbors = 597424
Ave neighs/atom = 149.356
Neighbor list builds = 24
Dangerous builds = 0
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
rebalancing time: 0.000221968 seconds
iteration count = 4
time weight factor: 1
initial/final max load/proc = 1200.06 1176.79
initial/final imbalance factor = 1.20006 1.17679
x cuts: 0 0.306641 0.443359 0.595947 1
y cuts: 0 1
z cuts: 0 1
run 250
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015
550 0.53879347 -6.2554274 0 -5.4474393 -1.9756834
600 0.54275982 -6.2616799 0 -5.4477437 -1.9939993
650 0.54526651 -6.265098 0 -5.4474027 -2.0303672
700 0.54369381 -6.263201 0 -5.4478642 -1.9921967
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675
Loop time of 1.10659 on 4 procs for 250 steps with 4000 atoms
Performance: 97597.325 tau/day, 225.920 timesteps/s
99.5% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.59596 | 0.67205 | 0.81576 | 10.9 | 60.73
Neigh | 0.098 | 0.18193 | 0.2707 | 16.7 | 16.44
Comm | 0.15524 | 0.24375 | 0.40352 | 19.4 | 22.03
Output | 0.00013709 | 0.00017041 | 0.00020695 | 0.2 | 0.02
Modify | 0.0016487 | 0.0032793 | 0.0050011 | 2.4 | 0.30
Other | | 0.005414 | | | 0.49
Nlocal: 1000 ave 1580 max 493 min
Histogram: 1 1 0 0 0 0 0 1 0 1
Nghost: 8736.5 ave 9808 max 8009 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 149124 ave 178715 max 132100 min
Histogram: 2 0 0 1 0 0 0 0 0 1
Total # of neighbors = 596497
Ave neighs/atom = 149.124
Neighbor list builds = 25
Dangerous builds = 0
Total wall time: 0:00:03

View File

@ -0,0 +1,202 @@
LAMMPS (26 Sep 2016)
# 2d circle of particles inside a box with LJ walls
variable b index 0
variable x index 50
variable y index 20
variable d index 20
variable v index 5
variable w index 2
units lj
dimension 2
atom_style atomic
boundary f f p
lattice hex 0.85
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
region box block 0 $x 0 $y -0.5 0.5
region box block 0 50 0 $y -0.5 0.5
region box block 0 50 0 20 -0.5 0.5
create_box 1 box
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
2 by 2 by 1 MPI processor grid
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
region circle sphere 11 6.7735026918962581988 0.0 10
create_atoms 1 region circle
Created 361 atoms
mass 1 1.0
velocity all create 0.5 87287 loop geom
velocity all set $v $w 0 sum yes
velocity all set 5 $w 0 sum yes
velocity all set 5 2 0 sum yes
pair_style lj/cut 2.5
pair_coeff 1 1 10.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 1 check yes
fix 1 all nve
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
comm_style tiled
fix 10 all balance 50 0.9 rcb
#compute 1 all property/atom proc
#variable p atom c_1%10
#dump 2 all custom 50 tmp.dump id v_p x y z
#dump 3 all image 50 image.*.jpg v_p type # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
thermo_style custom step temp epair press f_10[3] f_10
thermo 100
run 10000
Neighbor list info ...
1 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 2.8
ghost atom cutoff = 2.8
binsize = 1.4 -> bins = 42 29 1
Memory usage per processor = 2.48839 Mbytes
Step Temp E_pair Press f_10[3] f_10
0 25.701528 -29.143179 -1.2407285 3.2354571 1.0526316
100 26.269576 -29.713313 7.9052334 1.2742382 1.0304709
200 26.368336 -29.809962 1.6412462 1.2520776 1.0083102
300 26.479082 -29.920083 2.3678653 1.2299169 1.0193906
400 26.522239 -29.965537 6.6787858 1.1855956 1.0193906
500 25.725591 -29.168034 0.67065285 1.2520776 1.0083102
600 26.247693 -29.692706 7.9887712 1.3074792 1.0083102
700 26.237368 -29.676926 1.5987214 1.2409972 1.0083102
800 25.889643 -29.431589 4.6160859 1.2631579 1.0083102
900 23.635295 -27.372963 9.029962 1.1634349 1.0083102
1000 22.571904 -25.87422 1.8936085 1.1301939 1.0193906
1100 17.493795 -21.447274 9.502619 1.0858726 1.0193906
1200 17.214459 -20.726965 6.3578917 1.0304709 1.0193906
1300 16.424084 -19.757322 3.9028131 1.1191136 1.0083102
1400 15.026954 -18.109911 1.7623684 1.0858726 1.0193906
1500 13.640678 -16.740794 1.5347425 1.0858726 1.0193906
1600 13.618211 -16.610276 1.9480883 1.0747922 1.0083102
1700 13.266465 -16.300632 1.6890777 1.0637119 1.0193906
1800 12.178444 -15.175544 2.1018989 1.0304709 1.0083102
1900 12.131633 -15.075269 2.0174899 1.0526316 1.0193906
2000 12.290785 -15.185923 1.8747772 1.0415512 1.0193906
2100 12.02255 -14.947108 1.086185 1.0747922 1.0083102
2200 11.733238 -14.620414 0.93934447 1.0526316 1.0193906
2300 12.180779 -15.092283 1.1969416 1.0526316 1.0083102
2400 11.721247 -14.503377 1.3759878 1.1080332 1.0083102
2500 11.609116 -14.371603 2.0315139 1.0747922 1.0083102
2600 11.712503 -14.494711 1.7236598 1.0415512 1.0193906
2700 10.932816 -13.665751 1.2772732 1.0415512 1.0083102
2800 10.418752 -13.183889 1.2940564 1.0415512 1.0193906
2900 10.668297 -13.404525 0.90378659 1.0304709 1.0083102
3000 10.562215 -13.581566 1.0507999 1.0083102 1.0193906
3100 10.283188 -13.016565 1.0685664 1.0526316 1.0193906
3200 10.424678 -13.136756 1.4038511 1.0193906 1.0083102
3300 10.207304 -12.901323 1.3077174 1.0415512 1.0193906
3400 10.143301 -12.802915 1.2776266 1.0415512 1.0193906
3500 9.8449452 -12.507639 1.5455496 1.0637119 1.0083102
3600 9.5629038 -12.204164 0.84971204 1.0304709 1.0083102
3700 9.1851938 -11.809431 1.0102805 1.0304709 1.0193906
3800 9.3305969 -11.989086 0.69923461 1.0193906 1.0083102
3900 9.2415243 -11.880498 1.2471235 1.0637119 1.0193906
4000 8.8240051 -11.417696 0.60781901 1.0304709 1.0083102
4100 8.9126422 -11.503716 0.96900558 1.0083102 1.0083102
4200 8.3738185 -10.93925 0.84927158 1.0193906 1.0083102
4300 8.2401487 -10.90291 0.97775564 1.0083102 1.0083102
4400 8.061288 -10.722169 1.4106859 1.0193906 1.0193906
4500 7.8900038 -10.422818 0.67651486 1.0193906 1.0193906
4600 7.8306694 -10.363812 0.83437455 1.0193906 1.0193906
4700 8.1116499 -10.712008 0.58885383 1.0304709 1.0193906
4800 8.0508103 -10.576232 0.52562827 1.0193906 1.0083102
4900 7.8161815 -10.368333 0.89724847 1.0415512 1.0083102
5000 7.4940002 -9.9763835 1.215446 1.0304709 1.0083102
5100 7.9981403 -10.510786 1.0948502 1.0304709 1.0193906
5200 7.7674668 -10.259031 0.81850586 1.0304709 1.0193906
5300 7.9627913 -10.465018 0.75004253 1.0304709 1.0083102
5400 7.8093696 -10.371624 0.75451812 1.0193906 1.0083102
5500 8.1189569 -10.623288 0.91908416 1.0304709 1.0083102
5600 7.5970957 -10.070305 0.84265844 1.0415512 1.0083102
5700 7.4322203 -9.9176252 0.32608772 1.0304709 1.0083102
5800 7.8210607 -10.311444 0.95696619 1.0304709 1.0083102
5900 7.6181913 -10.111225 1.1341946 1.0193906 1.0083102
6000 7.2217555 -9.7122281 0.75858423 1.0637119 1.0083102
6100 7.3643302 -9.851242 0.5240439 1.0193906 1.0193906
6200 7.0281589 -9.4834454 0.59523945 1.0526316 1.0193906
6300 7.1383115 -9.6099868 0.87558078 1.0193906 1.0193906
6400 7.2136999 -9.6965877 0.88426542 1.0304709 1.0083102
6500 7.1710521 -9.7082917 1.2055959 1.0415512 1.0193906
6600 7.4150515 -9.9376614 0.48201097 1.0304709 1.0083102
6700 6.8701427 -9.3844769 0.72785561 1.0526316 1.0193906
6800 6.8486978 -9.3256413 0.93231327 1.0193906 1.0083102
6900 6.583533 -9.0068813 0.51281911 1.0193906 1.0193906
7000 6.7199396 -9.1773668 0.12636874 1.0193906 1.0083102
7100 6.5193695 -8.9553058 1.0423295 1.0083102 1.0193906
7200 6.4868896 -8.9090695 0.49867926 1.0083102 1.0193906
7300 6.2975635 -8.7775483 0.49072731 1.0415512 1.0083102
7400 6.4966155 -8.9410837 0.52952897 1.0193906 1.0083102
7500 6.7100139 -9.166691 0.82930078 1.0193906 1.0083102
7600 6.3569418 -8.7843554 0.93473251 1.0193906 1.0083102
7700 6.122789 -8.5434369 0.33725874 1.0526316 1.0083102
7800 6.0249595 -8.4453069 0.52784464 1.0193906 1.0083102
7900 6.6673238 -9.1166487 0.93753595 1.0193906 1.0083102
8000 6.4177253 -8.8896071 0.57421674 1.0193906 1.0193906
8100 5.965959 -8.3655023 0.42043964 1.0304709 1.0193906
8200 6.3325216 -8.758339 0.76723151 1.0193906 1.0193906
8300 6.4992751 -8.943922 0.86331769 1.0526316 1.0193906
8400 6.1834495 -8.6059885 0.43133079 1.0415512 1.0193906
8500 6.2567239 -8.6758815 0.8551113 1.0083102 1.0193906
8600 6.1232623 -8.5905174 0.6014726 1.0304709 1.0083102
8700 6.6650376 -9.0949995 0.46866086 1.0637119 1.0193906
8800 6.6103957 -9.0116868 0.84371859 1.0083102 1.0193906
8900 5.8867946 -8.3162884 0.64216189 1.0415512 1.0193906
9000 5.685369 -8.0652138 0.32067903 1.0304709 1.0083102
9100 6.2783881 -8.6826466 0.36419567 1.0415512 1.0304709
9200 6.0162211 -8.4584809 0.58707128 1.0083102 1.0083102
9300 5.9900511 -8.3949266 0.62037401 1.0304709 1.0193906
9400 6.2686573 -8.6713334 0.81204427 1.0415512 1.0083102
9500 6.0317917 -8.4325112 0.63221293 1.0304709 1.0193906
9600 5.8217003 -8.256407 0.816143 1.0304709 1.0083102
9700 5.6011023 -7.9966077 0.4114902 1.0304709 1.0193906
9800 5.6339982 -8.0317639 0.32315576 1.0083102 1.0083102
9900 5.8044743 -8.1942271 0.62892477 1.0193906 1.0083102
10000 6.1722678 -8.5642925 0.80423557 1.0304709 1.0083102
Loop time of 0.39332 on 4 procs for 10000 steps with 361 atoms
Performance: 10983420.832 tau/day, 25424.585 timesteps/s
98.9% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.067888 | 0.075593 | 0.091022 | 3.3 | 19.22
Neigh | 0.071147 | 0.075568 | 0.085203 | 2.1 | 19.21
Comm | 0.10841 | 0.12918 | 0.14463 | 4.0 | 32.84
Output | 0.0017445 | 0.001877 | 0.0022032 | 0.4 | 0.48
Modify | 0.038837 | 0.039568 | 0.040469 | 0.3 | 10.06
Other | | 0.07153 | | | 18.19
Nlocal: 90.25 ave 91 max 90 min
Histogram: 3 0 0 0 0 0 0 0 0 1
Nghost: 22.25 ave 27 max 16 min
Histogram: 1 0 0 0 0 0 2 0 0 1
Neighs: 268.25 ave 400 max 133 min
Histogram: 1 0 1 0 0 0 0 1 0 1
Total # of neighbors = 1073
Ave neighs/atom = 2.9723
Neighbor list builds = 3611
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1,103 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
2600 atoms in group fast
group slow type 2
1400 atoms in group slow
balance 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow ${factor} # out weighted.txt
balance 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow 1.0
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
rebalancing time: 0.000452042 seconds
iteration count = 2
group weights: fast=1 slow=1
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.6875 1
y cuts: 0 1
z cuts: 0 1
fix 0 all balance 10 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow ${factor}
fix 0 all balance 10 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow 1.0
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
Memory usage per processor = 2.9192 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778 4738.2137
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606 4738.2137
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568 4738.2137
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104 4738.2137
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
Loop time of 1.48606 on 4 procs for 250 steps with 4000 atoms
Performance: 72675.623 tau/day, 168.231 timesteps/s
99.0% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.23243 | 0.67 | 1.2235 | 47.4 | 45.09
Neigh | 0.17043 | 0.18781 | 0.21572 | 4.1 | 12.64
Comm | 0.036635 | 0.61802 | 1.0727 | 51.6 | 41.59
Output | 0.00011992 | 0.00013161 | 0.00015426 | 0.1 | 0.01
Modify | 0.005506 | 0.0055596 | 0.0056329 | 0.1 | 0.37
Other | | 0.004531 | | | 0.30
Nlocal: 1000 ave 1001 max 999 min
Histogram: 1 0 0 0 0 2 0 0 0 1
Nghost: 8727 ave 8761 max 8674 min
Histogram: 1 0 0 0 0 0 1 1 0 1
Neighs: 149349 ave 260848 max 51191 min
Histogram: 1 1 0 0 0 0 1 0 0 1
Total # of neighbors = 597396
Ave neighs/atom = 149.349
Neighbor list builds = 25
Dangerous builds = 0
Total wall time: 0:00:01

View File

@ -0,0 +1,139 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
balance 1.0 shift x 5 1.1 # out unweighted.txt
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
rebalancing time: 0.000433922 seconds
iteration count = 2
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.6875 1
y cuts: 0 1
z cuts: 0 1
balance 1.0 x uniform
rebalancing time: 0.000152826 seconds
iteration count = 0
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.75 1
y cuts: 0 1
z cuts: 0 1
variable weight atom (type==1)*1.0+(type==2)*v_factor
balance 1.0 shift x 5 1.1 weight var weight # out weighted_var.txt
rebalancing time: 0.000287056 seconds
iteration count = 2
weight variable: weight
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.6875 1
y cuts: 0 1
z cuts: 0 1
balance 1.0 x uniform
rebalancing time: 0.00011611 seconds
iteration count = 0
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.75 1
y cuts: 0 1
z cuts: 0 1
group fast type 1
2600 atoms in group fast
group slow type 2
1400 atoms in group slow
balance 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow ${factor} # out weighted_group.txt
balance 1.0 shift x 5 1.1 weight group 2 fast 1.0 slow 1.0
rebalancing time: 0.000248909 seconds
iteration count = 2
group weights: fast=1 slow=1
initial/final max load/proc = 1200 1200
initial/final imbalance factor = 1.2 1.2
x cuts: 0 0.25 0.5 0.6875 1
y cuts: 0 1
z cuts: 0 1
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
Memory usage per processor = 2.77892 Mbytes
Step Temp E_pair E_mol TotEng Press
0 1 -6.9453205 0 -5.4456955 -5.6812358
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995
Loop time of 1.41033 on 4 procs for 250 steps with 4000 atoms
Performance: 76577.913 tau/day, 177.264 timesteps/s
98.7% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.33785 | 0.6592 | 1.1713 | 41.7 | 46.74
Neigh | 0.14133 | 0.17129 | 0.19681 | 5.6 | 12.15
Comm | 0.039078 | 0.57085 | 0.87566 | 45.3 | 40.48
Output | 0.00022721 | 0.00024492 | 0.00026417 | 0.1 | 0.02
Modify | 0.0025113 | 0.0033261 | 0.0040808 | 1.0 | 0.24
Other | | 0.005427 | | | 0.38
Nlocal: 1000 ave 1263 max 712 min
Histogram: 1 0 0 0 1 0 1 0 0 1
Nghost: 8711.5 ave 9045 max 8325 min
Histogram: 1 0 0 0 0 1 1 0 0 1
Neighs: 149325 ave 275165 max 77227 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Total # of neighbors = 597299
Ave neighs/atom = 149.325
Neighbor list builds = 23
Dangerous builds = 0
Total wall time: 0:00:01

View File

@ -0,0 +1,110 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
#atom_style charge
processors * 1 1
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
#set type 1:2 charge 0.0
velocity all create 1.0 87287
pair_style lj/long/coul/long long off 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
kspace_style pppm/disp 1.0e-4
kspace_modify gewald/disp 0.1
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
group fast type 1
2600 atoms in group fast
group slow type 2
1400 atoms in group slow
fix 0 all balance 20 1.0 shift x 5 1.0 weight group 2 fast 1.0 slow 2.0 weight time 0.66
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500
PPPMDisp initialization ...
Dispersion G vector (1/distance) = 0.1
Dispersion grid = 2 2 2
Dispersion stencil order = 5
Dispersion estimated absolute RMS force accuracy = 1.01251
Dispersion estimated absolute real space RMS force accuracy = 1.01251
Dispersion estimated absolute kspace RMS force accuracy = 7.29446e-07
Disperion estimated relative force accuracy = 1.01251
using double precision FFTs
3d grid and FFT values/proc dispersion = 294 4
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
Memory usage per processor = 3.32692 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 52.148338 0 53.647963 94.09503 4738.2137
50 17.850656 42.620113 0 69.389403 142.80556 4738.2137
100 9.4607189 49.700118 0 63.887649 117.51739 4738.2137
150 13.992056 47.731988 0 68.714825 140.56926 4738.2137
200 11.617635 52.509395 0 69.931491 142.6933 4738.2137
250 13.536262 48.330072 0 68.629389 133.91619 4738.2137
300 12.619724 50.326376 0 69.25123 132.46494 4738.2137
350 14.513005 50.110693 0 71.874758 143.39284 4738.2137
400 12.429702 49.690909 0 68.3308 130.0808 4738.2137
450 13.928225 50.969523 0 71.856637 144.44675 4738.2137
500 13.286368 50.355522 0 70.280091 137.2389 4738.2137
Loop time of 4.79482 on 4 procs for 500 steps with 4000 atoms
Performance: 45048.596 tau/day, 104.279 timesteps/s
99.1% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.85927 | 1.571 | 2.2092 | 51.0 | 32.76
Kspace | 0.61247 | 1.982 | 3.2697 | 85.3 | 41.34
Neigh | 0.2976 | 0.98099 | 1.8525 | 68.1 | 20.46
Comm | 0.090759 | 0.23335 | 0.34356 | 22.4 | 4.87
Output | 0.00027442 | 0.00034857 | 0.0004065 | 0.3 | 0.01
Modify | 0.013081 | 0.016089 | 0.0201 | 2.3 | 0.34
Other | | 0.01104 | | | 0.23
Nlocal: 1000 ave 1853 max 359 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Nghost: 7773.5 ave 9196 max 6355 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Neighs: 127368 ave 180948 max 71698 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 509471
Ave neighs/atom = 127.368
Neighbor list builds = 124
Dangerous builds = 97
Total wall time: 0:00:04

View File

@ -0,0 +1,221 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 shift x 5 1.0 weight neigh 0.8 weight store WEIGHT
compute p all property/atom d_WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mp4 c_p type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3 amap 0.0 2.0 cf 0.1 3 min blue 0.5 green max red
thermo 50
run 500
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
WARNING: No suitable neighbor list found. Neighbor weighted balancing skipped (../imbalance_neigh.cpp:65)
Memory usage per processor = 3.0442 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778 4738.2137
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606 4738.2137
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568 4738.2137
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104 4738.2137
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842 4738.2137
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056 4738.2137
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594 4738.2137
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161 4738.2137
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
Loop time of 2.27598 on 4 procs for 500 steps with 4000 atoms
Performance: 94904.173 tau/day, 219.686 timesteps/s
99.4% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1158 | 1.4132 | 1.6545 | 19.0 | 62.09
Neigh | 0.25541 | 0.38197 | 0.55281 | 20.3 | 16.78
Comm | 0.33626 | 0.46086 | 0.58471 | 14.7 | 20.25
Output | 0.00030327 | 0.00033396 | 0.0003922 | 0.2 | 0.01
Modify | 0.0061643 | 0.0082641 | 0.011169 | 2.4 | 0.36
Other | | 0.01137 | | | 0.50
Nlocal: 1000 ave 1551 max 604 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8754.75 ave 9849 max 8074 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 149308 ave 163995 max 129030 min
Histogram: 1 0 0 1 0 0 0 0 0 2
Total # of neighbors = 597231
Ave neighs/atom = 149.308
Neighbor list builds = 50
Dangerous builds = 0
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
550 0.53879347 -6.2554274 0 -5.4474393 -1.9756834 4738.2137
600 0.54275982 -6.2616799 0 -5.4477437 -1.9939993 4738.2137
650 0.54526651 -6.265098 0 -5.4474027 -2.0303672 4738.2137
700 0.54369381 -6.263201 0 -5.4478642 -1.9921967 4738.2137
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675 4738.2137
800 0.55061744 -6.2725556 0 -5.4468359 -2.0100922 4738.2137
850 0.55371614 -6.2763992 0 -5.4460326 -2.0065329 4738.2137
900 0.54756622 -6.2668303 0 -5.4456863 -1.9796122 4738.2137
950 0.54791593 -6.2673161 0 -5.4456477 -1.9598278 4738.2137
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
Loop time of 2.14853 on 4 procs for 500 steps with 4000 atoms
Performance: 100533.652 tau/day, 232.717 timesteps/s
99.5% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1688 | 1.3591 | 1.5126 | 13.1 | 63.26
Neigh | 0.24981 | 0.38774 | 0.57835 | 22.5 | 18.05
Comm | 0.36101 | 0.38157 | 0.41179 | 3.0 | 17.76
Output | 0.00031686 | 0.00034499 | 0.00040627 | 0.2 | 0.02
Modify | 0.0059092 | 0.0082516 | 0.011432 | 2.6 | 0.38
Other | | 0.01149 | | | 0.53
Nlocal: 1000 ave 1559 max 601 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8717.25 ave 9789 max 8011 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 150170 ave 165071 max 129263 min
Histogram: 1 0 0 1 0 0 0 0 0 2
Total # of neighbors = 600678
Ave neighs/atom = 150.169
Neighbor list builds = 53
Dangerous builds = 0
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
1050 0.54629742 -6.2657526 0 -5.4465113 -1.945821 4738.2137
1100 0.55427881 -6.2781733 0 -5.446963 -2.0021027 4738.2137
1150 0.54730654 -6.267257 0 -5.4465025 -1.9420678 4738.2137
1200 0.5388281 -6.2547963 0 -5.4467562 -1.890178 4738.2137
1250 0.54848768 -6.2694237 0 -5.4468979 -1.9636797 4738.2137
1300 0.54134321 -6.2590728 0 -5.447261 -1.9170271 4738.2137
1350 0.53564389 -6.2501521 0 -5.4468871 -1.8642306 4738.2137
1400 0.53726925 -6.2518379 0 -5.4461355 -1.8544028 4738.2137
1450 0.54525935 -6.2632653 0 -5.4455808 -1.9072158 4738.2137
1500 0.54223342 -6.2591056 0 -5.4459588 -1.886698 4738.2137
Loop time of 2.13806 on 4 procs for 500 steps with 4000 atoms
Performance: 101026.160 tau/day, 233.857 timesteps/s
99.5% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1911 | 1.3674 | 1.5133 | 12.4 | 63.95
Neigh | 0.2394 | 0.37334 | 0.55622 | 22.2 | 17.46
Comm | 0.36084 | 0.37761 | 0.409 | 3.0 | 17.66
Output | 0.00030899 | 0.00033534 | 0.00039768 | 0.2 | 0.02
Modify | 0.0060141 | 0.0083458 | 0.011389 | 2.6 | 0.39
Other | | 0.01105 | | | 0.52
Nlocal: 1000 ave 1545 max 604 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8704 ave 9801 max 7983 min
Histogram: 2 0 0 0 0 1 0 0 0 1
Neighs: 150494 ave 165851 max 129789 min
Histogram: 1 0 0 1 0 0 0 0 0 2
Total # of neighbors = 601974
Ave neighs/atom = 150.494
Neighbor list builds = 51
Dangerous builds = 0
run 500
Memory usage per processor = 3.06519 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1500 0.54223342 -6.2591056 0 -5.4459588 -1.886698 4738.2137
1550 0.55327017 -6.2750125 0 -5.4453147 -1.9506581 4738.2137
1600 0.54419032 -6.2612626 0 -5.4451812 -1.8559458 4738.2137
1650 0.54710059 -6.2661984 0 -5.4457527 -1.8882842 4738.2137
1700 0.53665689 -6.2504959 0 -5.4457118 -1.8067985 4738.2137
1750 0.54864916 -6.2681196 0 -5.4453516 -1.8662894 4738.2137
1800 0.54476391 -6.2615108 0 -5.4445692 -1.8352746 4738.2137
1850 0.54142945 -6.2555553 0 -5.4436142 -1.8005732 4738.2137
1900 0.53992253 -6.2541407 0 -5.4444594 -1.7768992 4738.2137
1950 0.54663678 -6.2640967 0 -5.4443465 -1.7945736 4738.2137
2000 0.54563235 -6.2626431 0 -5.4443992 -1.807693 4738.2137
Loop time of 2.18212 on 4 procs for 500 steps with 4000 atoms
Performance: 98986.300 tau/day, 229.135 timesteps/s
99.7% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.1776 | 1.3712 | 1.5256 | 13.4 | 62.84
Neigh | 0.26314 | 0.4065 | 0.59956 | 22.6 | 18.63
Comm | 0.36859 | 0.3845 | 0.41286 | 2.7 | 17.62
Output | 0.00031281 | 0.00033575 | 0.00039792 | 0.2 | 0.02
Modify | 0.0058827 | 0.0082896 | 0.011639 | 2.7 | 0.38
Other | | 0.01133 | | | 0.52
Nlocal: 1000 ave 1544 max 605 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8676.25 ave 9831 max 7985 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Neighs: 151653 ave 166956 max 130753 min
Histogram: 1 0 0 1 0 0 0 0 0 2
Total # of neighbors = 606611
Ave neighs/atom = 151.653
Neighbor list builds = 56
Dangerous builds = 0
Total wall time: 0:00:08

View File

@ -0,0 +1,134 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
comm_style tiled
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
fix 0 all balance 50 1.0 rcb weight neigh 0.8 weight store WEIGHT
compute p all property/atom d_WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
WARNING: No suitable neighbor list found. Neighbor weighted balancing skipped (../imbalance_neigh.cpp:65)
Memory usage per processor = 2.90262 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778 4738.2137
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606 4738.2137
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568 4738.2137
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104 4738.2137
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
Loop time of 0.943947 on 4 procs for 250 steps with 4000 atoms
Performance: 114413.252 tau/day, 264.845 timesteps/s
99.4% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.64601 | 0.66027 | 0.67403 | 1.2 | 69.95
Neigh | 0.18111 | 0.18828 | 0.1953 | 1.2 | 19.95
Comm | 0.072217 | 0.084395 | 0.096822 | 3.4 | 8.94
Output | 0.00016904 | 0.00018668 | 0.00020409 | 0.1 | 0.02
Modify | 0.005301 | 0.0055165 | 0.0056343 | 0.2 | 0.58
Other | | 0.005294 | | | 0.56
Nlocal: 1000 ave 1004 max 996 min
Histogram: 1 0 0 1 0 0 1 0 0 1
Nghost: 7674 ave 7678 max 7668 min
Histogram: 1 0 0 0 0 0 1 0 1 1
Neighs: 149349 ave 150214 max 148735 min
Histogram: 1 0 1 0 1 0 0 0 0 1
Total # of neighbors = 597396
Ave neighs/atom = 149.349
Neighbor list builds = 25
Dangerous builds = 0
run 250
Memory usage per processor = 2.9031 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842 4738.2137
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056 4738.2137
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594 4738.2137
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161 4738.2137
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
Loop time of 0.886707 on 4 procs for 250 steps with 4000 atoms
Performance: 121798.994 tau/day, 281.942 timesteps/s
99.7% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.6277 | 0.63292 | 0.64433 | 0.8 | 71.38
Neigh | 0.1778 | 0.17937 | 0.18309 | 0.5 | 20.23
Comm | 0.05461 | 0.06445 | 0.070518 | 2.3 | 7.27
Output | 0.00015926 | 0.00017142 | 0.00018311 | 0.1 | 0.02
Modify | 0.0050013 | 0.0050754 | 0.0051844 | 0.1 | 0.57
Other | | 0.004719 | | | 0.53
Nlocal: 1000 ave 1008 max 990 min
Histogram: 1 0 0 1 0 0 0 0 1 1
Nghost: 7665.5 ave 7675 max 7650 min
Histogram: 1 0 0 0 0 1 0 0 0 2
Neighs: 149308 ave 149883 max 148467 min
Histogram: 1 0 0 0 1 0 0 0 1 1
Total # of neighbors = 597231
Ave neighs/atom = 149.308
Neighbor list builds = 25
Dangerous builds = 0
Total wall time: 0:00:01

View File

@ -0,0 +1,207 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
variable factor index 1.0
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
4 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
balance 1.0 shift x 10 1.0 weight neigh 0.8 # out weighted_var.txt
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
WARNING: No suitable neighbor list found. Neighbor weighted balancing skipped (../imbalance_neigh.cpp:65)
rebalancing time: 0.00040102 seconds
iteration count = 3
neigh weight factor: 0.8
initial/final max load/proc = 1200 1000
initial/final imbalance factor = 1.2 1
x cuts: 0 0.25 0.5 0.71875 1
y cuts: 0 1
z cuts: 0 1
fix 1 all nve
#dump id all atom 50 dump.melt
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 250 post no
Memory usage per processor = 2.77892 Mbytes
Step Temp E_pair E_mol TotEng Press
0 1 -6.9453205 0 -5.4456955 -5.6812358
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995
Loop time of 1.42566 on 4 procs for 250 steps with 4000 atoms
99.0% CPU use with 4 MPI tasks x no OpenMP threads
balance 1.0 shift x 10 1.0 weight neigh 0.8
rebalancing time: 0.000426054 seconds
iteration count = 10
neigh weight factor: 0.8
initial/final max load/proc = 1687.06 1002.87
initial/final imbalance factor = 1.68662 1.0026
x cuts: 0 0.306885 0.452881 0.599335 1
y cuts: 0 1
z cuts: 0 1
run 250 post no
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015
Loop time of 1.02512 on 4 procs for 250 steps with 4000 atoms
99.4% CPU use with 4 MPI tasks x no OpenMP threads
balance 1.0 shift x 10 1.0 weight neigh 0.8
rebalancing time: 0.000252008 seconds
iteration count = 10
neigh weight factor: 0.8
initial/final max load/proc = 1054.41 1008.56
initial/final imbalance factor = 1.05567 1.00976
x cuts: 0 0.303588 0.449887 0.597189 1
y cuts: 0 1
z cuts: 0 1
run 250 post no
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015
550 0.53879347 -6.2554274 0 -5.4474393 -1.9756834
600 0.54275982 -6.2616799 0 -5.4477437 -1.9939993
650 0.54526651 -6.265098 0 -5.4474027 -2.0303672
700 0.54369381 -6.263201 0 -5.4478642 -1.9921967
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675
Loop time of 1.03672 on 4 procs for 250 steps with 4000 atoms
99.5% CPU use with 4 MPI tasks x no OpenMP threads
balance 1.0 shift x 10 1.0 weight neigh 0.8 weight time 0.6
rebalancing time: 0.000267982 seconds
iteration count = 10
neigh weight factor: 0.8
time weight factor: 0.6
initial/final max load/proc = 1393.27 1116.61
initial/final imbalance factor = 1.25201 1.0034
x cuts: 0 0.337163 0.448601 0.555904 1
y cuts: 0 1
z cuts: 0 1
run 250
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675
800 0.55061744 -6.2725556 0 -5.4468359 -2.0100922
850 0.55371614 -6.2763992 0 -5.4460326 -2.0065329
900 0.54756622 -6.2668303 0 -5.4456863 -1.9796122
950 0.54791593 -6.2673161 0 -5.4456477 -1.9598278
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466
Loop time of 1.07042 on 4 procs for 250 steps with 4000 atoms
Performance: 100895.237 tau/day, 233.554 timesteps/s
99.3% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.56894 | 0.64706 | 0.72522 | 8.1 | 60.45
Neigh | 0.091286 | 0.17756 | 0.29256 | 20.9 | 16.59
Comm | 0.042178 | 0.23721 | 0.40194 | 31.6 | 22.16
Output | 0.00012493 | 0.0001505 | 0.00017571 | 0.1 | 0.01
Modify | 0.0016253 | 0.0032219 | 0.0054028 | 2.9 | 0.30
Other | | 0.005214 | | | 0.49
Nlocal: 1000 ave 1695 max 489 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Nghost: 8733.5 ave 10199 max 7650 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Neighs: 150170 ave 166473 max 132232 min
Histogram: 1 1 0 0 0 0 0 0 0 2
Total # of neighbors = 600681
Ave neighs/atom = 150.17
Neighbor list builds = 25
Dangerous builds = 0
balance 1.0 shift x 10 1.0 weight neigh 0.8 weight time 0.6
rebalancing time: 0.000238895 seconds
iteration count = 10
neigh weight factor: 0.8
time weight factor: 0.6
initial/final max load/proc = 1167.62 1095.43
initial/final imbalance factor = 1.07395 1.00755
x cuts: 0 0.345978 0.449963 0.551398 1
y cuts: 0 1
z cuts: 0 1
run 250
Memory usage per processor = 2.7999 Mbytes
Step Temp E_pair E_mol TotEng Press
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466
1050 0.54629742 -6.2657526 0 -5.4465113 -1.945821
1100 0.55427881 -6.2781733 0 -5.446963 -2.0021027
1150 0.54730654 -6.267257 0 -5.4465025 -1.9420678
1200 0.5388281 -6.2547963 0 -5.4467562 -1.890178
1250 0.54848768 -6.2694237 0 -5.4468979 -1.9636797
Loop time of 1.11596 on 4 procs for 250 steps with 4000 atoms
Performance: 96777.859 tau/day, 224.023 timesteps/s
99.4% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.56315 | 0.66085 | 0.76319 | 10.9 | 59.22
Neigh | 0.085606 | 0.18033 | 0.29805 | 21.9 | 16.16
Comm | 0.044225 | 0.2661 | 0.4596 | 35.4 | 23.84
Output | 0.00015068 | 0.0001756 | 0.00020194 | 0.1 | 0.02
Modify | 0.0015557 | 0.0032289 | 0.0054245 | 3.0 | 0.29
Other | | 0.005279 | | | 0.47
Nlocal: 1000 ave 1694 max 462 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Nghost: 8755.25 ave 10227 max 7675 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Neighs: 149995 ave 173733 max 125545 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 599979
Ave neighs/atom = 149.995
Neighbor list builds = 25
Dangerous builds = 0
Total wall time: 0:00:05

View File

@ -0,0 +1,250 @@
LAMMPS (26 Sep 2016)
# 3d Lennard-Jones melt
units lj
atom_style atomic
processors * 1 1
lattice fcc 0.8442
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
region box block 0 10 0 10 0 10
create_box 3 box
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
2 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 4000 atoms
mass * 1.0
region long block 3 6 0 10 0 10
set region long type 2
1400 settings made for type
velocity all create 1.0 87287
pair_style lj/cut 2.5
pair_coeff * * 1.0 1.0 2.5
pair_coeff * 2 1.0 1.0 5.0
neighbor 0.3 bin
neigh_modify every 2 delay 4 check yes
fix p all property/atom d_WEIGHT
compute p all property/atom d_WEIGHT
group fast type 1
2600 atoms in group fast
group slow type 2
1400 atoms in group slow
balance 1.0 shift x 10 1.0 weight group 2 fast 0.8 slow 2.5 weight store WEIGHT
Neighbor list info ...
1 neighbor list requests
update every 2 steps, delay 4 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.3
ghost atom cutoff = 5.3
binsize = 2.65 -> bins = 7 7 7
rebalancing time: 0.000465155 seconds
iteration count = 10
group weights: fast=0.8 slow=2.5
storing weight in atom property d_WEIGHT
initial/final max load/proc = 2960 3120
initial/final imbalance factor = 1.06093 1.11828
x cuts: 0 0.449707 1
y cuts: 0 1
z cuts: 0 1
variable lastweight atom c_p
fix 0 all balance 50 1.0 shift x 10 1.0 weight var lastweight weight time 0.5 weight store WEIGHT
variable maximb equal f_0[1]
variable iter equal f_0[2]
variable prev equal f_0[3]
variable final equal f_0
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
fix 1 all nve
#dump id all atom 50 dump.melt
#dump id all custom 50 dump.lammpstrj id type x y z c_p
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 2 pad 3
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
#dump_modify 3 pad 3
thermo 50
run 500
Memory usage per processor = 3.23652 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
50 0.49578514 -6.1929216 0 -5.4494298 -1.6668039 4738.2137
100 0.53275389 -6.2475932 0 -5.4486622 -1.9063885 4738.2137
150 0.53316457 -6.2483202 0 -5.4487733 -1.9476162 4738.2137
200 0.536665 -6.2530113 0 -5.448215 -1.933468 4738.2137
250 0.55006273 -6.27163 0 -5.4467422 -2.0438847 4738.2137
300 0.55111476 -6.2727642 0 -5.4462987 -2.0384873 4738.2137
350 0.55211503 -6.274054 0 -5.4460885 -2.0116976 4738.2137
400 0.54638463 -6.2661715 0 -5.4467995 -1.992248 4738.2137
450 0.55885307 -6.2852263 0 -5.4471563 -2.0669747 4738.2137
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802 4738.2137
Loop time of 3.69088 on 2 procs for 500 steps with 4000 atoms
Performance: 58522.605 tau/day, 135.469 timesteps/s
99.7% CPU use with 2 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.3504 | 2.5517 | 2.7529 | 12.6 | 69.13
Neigh | 0.64397 | 0.73493 | 0.82589 | 10.6 | 19.91
Comm | 0.084433 | 0.37799 | 0.67156 | 47.7 | 10.24
Output | 0.00024199 | 0.00026727 | 0.00029254 | 0.2 | 0.01
Modify | 0.013371 | 0.014984 | 0.016598 | 1.3 | 0.41
Other | | 0.01102 | | | 0.30
Nlocal: 2000 ave 2358 max 1642 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 10463 ave 11178 max 9748 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 298070 ave 345748 max 250391 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Total # of neighbors = 596139
Ave neighs/atom = 149.035
Neighbor list builds = 51
Dangerous builds = 0
run 500
Memory usage per processor = 3.24081 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802 4738.2137
550 0.54137926 -6.2592773 0 -5.4474115 -1.9770236 4738.2137
600 0.54022886 -6.2573307 0 -5.44719 -1.9619637 4738.2137
650 0.54709009 -6.2678862 0 -5.4474562 -1.9958342 4738.2137
700 0.54590044 -6.2656903 0 -5.4470444 -1.9957108 4738.2137
750 0.55098488 -6.2724831 0 -5.4462124 -2.0287523 4738.2137
800 0.5520987 -6.2739184 0 -5.4459774 -2.0084991 4738.2137
850 0.54963958 -6.2702473 0 -5.445994 -1.9740031 4738.2137
900 0.54390586 -6.2615476 0 -5.4458927 -1.9400871 4738.2137
950 0.54741732 -6.2665755 0 -5.4456548 -1.9466417 4738.2137
1000 0.54200867 -6.2591246 0 -5.4463148 -1.8881624 4738.2137
Loop time of 4.04546 on 2 procs for 500 steps with 4000 atoms
Performance: 53393.133 tau/day, 123.595 timesteps/s
99.4% CPU use with 2 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.0718 | 2.5709 | 3.0701 | 31.1 | 63.55
Neigh | 0.58891 | 0.73311 | 0.87732 | 16.8 | 18.12
Comm | 0.068946 | 0.71436 | 1.3598 | 76.4 | 17.66
Output | 0.00024986 | 0.00027978 | 0.00030971 | 0.2 | 0.01
Modify | 0.012742 | 0.015146 | 0.01755 | 2.0 | 0.37
Other | | 0.01163 | | | 0.29
Nlocal: 2000 ave 2384 max 1616 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 10412.5 ave 11172 max 9653 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 300836 ave 358757 max 242914 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Total # of neighbors = 601671
Ave neighs/atom = 150.418
Neighbor list builds = 51
Dangerous builds = 0
balance 1.0 shift x 10 1.0 weight group 2 fast 0.8 slow 2.5 weight store WEIGHT
rebalancing time: 0.000392914 seconds
iteration count = 10
group weights: fast=0.8 slow=2.5
storing weight in atom property d_WEIGHT
initial/final max load/proc = 3464.4 2800.6
initial/final imbalance factor = 1.24172 1.0038
x cuts: 0 0.454927 1
y cuts: 0 1
z cuts: 0 1
fix 0 all balance 50 1.0 shift x 5 1.0 weight var lastweight weight neigh 0.5 weight store WEIGHT
run 500
Memory usage per processor = 3.24081 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1000 0.54200867 -6.2591246 0 -5.4463148 -1.8881624 4738.2137
1050 0.54633412 -6.2656384 0 -5.4463421 -1.9012895 4738.2137
1100 0.54325667 -6.2612166 0 -5.4465353 -1.8870463 4738.2137
1150 0.55057583 -6.2719187 0 -5.4462614 -1.9575881 4738.2137
1200 0.53728175 -6.251744 0 -5.4460228 -1.8124097 4738.2137
1250 0.54077561 -6.2567544 0 -5.4457938 -1.8418134 4738.2137
1300 0.54430333 -6.260995 0 -5.4447442 -1.856351 4738.2137
1350 0.55097839 -6.2715909 0 -5.4453299 -1.9014337 4738.2137
1400 0.53858139 -6.2526781 0 -5.445008 -1.7965773 4738.2137
1450 0.54218439 -6.2574683 0 -5.444395 -1.7901189 4738.2137
1500 0.54200616 -6.2571433 0 -5.4443373 -1.8000345 4738.2137
Loop time of 3.50707 on 2 procs for 500 steps with 4000 atoms
Performance: 61589.821 tau/day, 142.569 timesteps/s
99.8% CPU use with 2 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.4976 | 2.5822 | 2.6669 | 5.3 | 73.63
Neigh | 0.69706 | 0.73285 | 0.76865 | 4.2 | 20.90
Comm | 0.11878 | 0.16671 | 0.21464 | 11.7 | 4.75
Output | 0.00026321 | 0.00028443 | 0.00030565 | 0.1 | 0.01
Modify | 0.013662 | 0.014432 | 0.015203 | 0.6 | 0.41
Other | | 0.01054 | | | 0.30
Nlocal: 2000 ave 2113 max 1887 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 10348.5 ave 10873 max 9824 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 302958 ave 314826 max 291091 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Total # of neighbors = 605917
Ave neighs/atom = 151.479
Neighbor list builds = 51
Dangerous builds = 0
run 500
Memory usage per processor = 3.24081 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
1500 0.54200616 -6.2571433 0 -5.4443373 -1.8000345 4738.2137
1550 0.5371361 -6.250403 0 -5.4449003 -1.7647032 4738.2137
1600 0.54679572 -6.2646443 0 -5.4446558 -1.8115723 4738.2137
1650 0.53806586 -6.2519009 0 -5.4450039 -1.7409151 4738.2137
1700 0.53479442 -6.2469034 0 -5.4449123 -1.7162447 4738.2137
1750 0.53714075 -6.2506513 0 -5.4451416 -1.7340207 4738.2137
1800 0.52750518 -6.2358818 0 -5.4448219 -1.6875359 4738.2137
1850 0.54585315 -6.2629365 0 -5.4443615 -1.7758587 4738.2137
1900 0.53011039 -6.238762 0 -5.4437952 -1.6381988 4738.2137
1950 0.54287744 -6.2583143 0 -5.4442018 -1.7367676 4738.2137
2000 0.52770954 -6.2349628 0 -5.4435964 -1.5593554 4738.2137
Loop time of 3.46214 on 2 procs for 500 steps with 4000 atoms
Performance: 62389.230 tau/day, 144.420 timesteps/s
99.9% CPU use with 2 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.5495 | 2.5809 | 2.6123 | 2.0 | 74.55
Neigh | 0.68762 | 0.72466 | 0.7617 | 4.4 | 20.93
Comm | 0.12518 | 0.13173 | 0.13829 | 1.8 | 3.80
Output | 0.00024581 | 0.00026357 | 0.00028133 | 0.1 | 0.01
Modify | 0.013486 | 0.014313 | 0.015139 | 0.7 | 0.41
Other | | 0.01028 | | | 0.30
Nlocal: 2000 ave 2135 max 1865 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 10311.5 ave 10838 max 9785 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 303996 ave 309135 max 298857 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Total # of neighbors = 607992
Ave neighs/atom = 151.998
Neighbor list builds = 51
Dangerous builds = 0
Total wall time: 0:00:14

View File

@ -1,12 +1,18 @@
Run these examples as:
mpirun -np 4 lmp_linux -partition 4x1 -in in.neb.hop1
mpirun -np 4 lmp_linux -partition 4x1 -in in.neb.hop2
mpirun -np 3 lmp_linux -partition 3x1 -in in.neb.sivac
mpirun -np 4 lmp_g++ -partition 4x1 -in in.neb.hop1
mpirun -np 4 lmp_g++ -partition 4x1 -in in.neb.hop2
mpirun -np 3 lmp_g++ -partition 3x1 -in in.neb.sivac
Create dump files to do visualization from via Python tools:
(see lammps/tools/README and lammps/tools/python/README
for more info on these Python scripts)
mpirun -np 8 lmp_g++ -partition 4x2 -in in.neb.hop1
mpirun -np 8 lmp_g++ -partition 4x2 -in in.neb.hop2
mpirun -np 6 lmp_g++ -partition 3x2 -in in.neb.sivac
mpirun -np 9 lmp_g++ -partition 3x3 -in in.neb.sivac
If you uncomment the dump command lines in the input scripts, you can
create dump files to do visualization from via Python tools: (see
lammps/tools/README and lammps/tools/python/README for more info on
these Python scripts)
python ~/lammps/tools/python/neb_combine.py -o dump.hop1.combine
-b dump.nonneb.1

View File

@ -14,10 +14,13 @@ variable u uloop 20
lattice hex 0.9
region box block 0 20 0 10 -0.25 0.25
create_box 3 box
create_atoms 1 box
mass * 1.0
#create_box 3 box
#create_atoms 1 box
#mass * 1.0
#write_data initial.hop1
read_data initial.hop1
# LJ potentials

View File

@ -15,11 +15,14 @@ variable u uloop 20
lattice hex 0.9
region box block 0 20 0 11 -0.25 0.25
region box1 block 0 20 0 10 -0.25 0.25
create_box 3 box
create_atoms 1 region box1
create_atoms 1 single 11.5 10.5 0
mass * 1.0
#create_box 3 box
#create_atoms 1 region box1
#create_atoms 1 single 11.5 10.5 0
#mass * 1.0
#write_data initial.hop2
read_data initial.hop2
# LJ potentials

View File

@ -30,17 +30,20 @@ lattice custom $a &
region myreg block 0 4 &
0 4 &
0 4
create_box 1 myreg
create_atoms 1 region myreg
mass 1 28.06
#create_box 1 myreg
#create_atoms 1 region myreg
#mass 1 28.06
#write_data initial.sivac
group Si type 1
read_data initial.sivac
# make a vacancy
group Si type 1
group del id 300
delete_atoms group del
delete_atoms group del compress no
group vacneigh id 174 175 301 304 306 331 337
# choose potential
@ -54,7 +57,7 @@ variable u uloop 20
# only output atoms near vacancy
dump events vacneigh custom 1000 dump.neb.sivac.$u id type x y z
#dump events vacneigh custom 1000 dump.neb.sivac.$u id type x y z
# initial minimization to relax vacancy
@ -72,5 +75,4 @@ thermo 100
timestep 0.01
min_style quickmin
neb 0.0 0.01 50 100 10 final final.sivac
neb 0.0 0.01 100 100 10 final final.sivac

860
examples/neb/initial.hop1 Normal file
View File

@ -0,0 +1,860 @@
LAMMPS data file via write_data, version 27 Sep 2016, timestep = 0
420 atoms
3 atom types
0.0000000000000000e+00 2.2653923264628304e+01 xlo xhi
-1.9618873042551413e-03 1.9620834929855668e+01 ylo yhi
-2.8317404080785380e-01 2.8317404080785380e-01 zlo zhi
Masses
1 1
2 1
3 1
Atoms # atomic
1 1 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
2 1 5.6634808161570760e-01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
3 1 1.1326961632314152e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
4 1 1.6990442448471228e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
5 1 2.2653923264628304e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
6 1 2.8317404080785380e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
7 1 3.3980884896942456e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
8 1 3.9644365713099532e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
9 1 4.5307846529256608e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
10 1 5.0971327345413684e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
11 1 5.6634808161570760e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
12 1 6.2298288977727836e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
13 1 6.7961769793884912e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
14 1 7.3625250610041988e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
15 1 7.9288731426199064e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
16 1 8.4952212242356140e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
17 1 9.0615693058513216e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
18 1 9.6279173874670292e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
19 1 1.0194265469082737e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
20 1 1.0760613550698444e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
21 1 1.1326961632314152e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
22 1 1.1893309713929860e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
23 1 1.2459657795545567e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
24 1 1.3026005877161275e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
25 1 1.3592353958776982e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
26 1 1.4158702040392690e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
27 1 1.4725050122008398e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
28 1 1.5291398203624105e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
29 1 1.5857746285239813e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
30 1 1.6424094366855520e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
31 1 1.6990442448471228e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
32 1 1.7556790530086936e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
33 1 1.8123138611702643e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
34 1 1.8689486693318351e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
35 1 1.9255834774934058e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
36 1 1.9822182856549766e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
37 1 2.0388530938165474e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
38 1 2.0954879019781181e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
39 1 2.1521227101396889e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
40 1 2.2087575183012596e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
41 1 0.0000000000000000e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
42 1 5.6634808161570760e-01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
43 1 1.1326961632314152e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
44 1 1.6990442448471228e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
45 1 2.2653923264628304e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
46 1 2.8317404080785380e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
47 1 3.3980884896942456e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
48 1 3.9644365713099532e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
49 1 4.5307846529256608e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
50 1 5.0971327345413684e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
51 1 5.6634808161570760e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
52 1 6.2298288977727836e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
53 1 6.7961769793884912e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
54 1 7.3625250610041988e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
55 1 7.9288731426199064e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
56 1 8.4952212242356140e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
57 1 9.0615693058513216e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
58 1 9.6279173874670292e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
59 1 1.0194265469082737e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
60 1 1.0760613550698444e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
61 1 1.1326961632314152e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
62 1 1.1893309713929860e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
63 1 1.2459657795545567e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
64 1 1.3026005877161275e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
65 1 1.3592353958776982e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
66 1 1.4158702040392690e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
67 1 1.4725050122008398e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
68 1 1.5291398203624105e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
69 1 1.5857746285239813e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
70 1 1.6424094366855520e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
71 1 1.6990442448471228e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
72 1 1.7556790530086936e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
73 1 1.8123138611702643e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
74 1 1.8689486693318351e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
75 1 1.9255834774934058e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
76 1 1.9822182856549766e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
77 1 2.0388530938165474e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
78 1 2.0954879019781181e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
79 1 2.1521227101396889e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
80 1 2.2087575183012596e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
81 1 0.0000000000000000e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
82 1 5.6634808161570760e-01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
83 1 1.1326961632314152e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
84 1 1.6990442448471228e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
85 1 2.2653923264628304e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
86 1 2.8317404080785380e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
87 1 3.3980884896942456e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
88 1 3.9644365713099532e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
89 1 4.5307846529256608e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
90 1 5.0971327345413684e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
91 1 5.6634808161570760e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
92 1 6.2298288977727836e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
93 1 6.7961769793884912e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
94 1 7.3625250610041988e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
95 1 7.9288731426199064e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
96 1 8.4952212242356140e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
97 1 9.0615693058513216e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
98 1 9.6279173874670292e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
99 1 1.0194265469082737e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
100 1 1.0760613550698444e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
101 1 1.1326961632314152e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
102 1 1.1893309713929860e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
103 1 1.2459657795545567e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
104 1 1.3026005877161275e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
105 1 1.3592353958776982e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
106 1 1.4158702040392690e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
107 1 1.4725050122008398e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
108 1 1.5291398203624105e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
109 1 1.5857746285239813e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
110 1 1.6424094366855520e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
111 1 1.6990442448471228e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
112 1 1.7556790530086936e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
113 1 1.8123138611702643e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
114 1 1.8689486693318351e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
115 1 1.9255834774934058e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
116 1 1.9822182856549766e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
117 1 2.0388530938165474e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
118 1 2.0954879019781181e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
119 1 2.1521227101396889e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
120 1 2.2087575183012596e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
121 1 0.0000000000000000e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
122 1 5.6634808161570760e-01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
123 1 1.1326961632314152e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
124 1 1.6990442448471228e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
125 1 2.2653923264628304e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
126 1 2.8317404080785380e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
127 1 3.3980884896942456e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
128 1 3.9644365713099532e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
129 1 4.5307846529256608e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
130 1 5.0971327345413684e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
131 1 5.6634808161570760e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
132 1 6.2298288977727836e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
133 1 6.7961769793884912e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
134 1 7.3625250610041988e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
135 1 7.9288731426199064e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
136 1 8.4952212242356140e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
137 1 9.0615693058513216e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
138 1 9.6279173874670292e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
139 1 1.0194265469082737e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
140 1 1.0760613550698444e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
141 1 1.1326961632314152e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
142 1 1.1893309713929860e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
143 1 1.2459657795545567e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
144 1 1.3026005877161275e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
145 1 1.3592353958776982e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
146 1 1.4158702040392690e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
147 1 1.4725050122008398e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
148 1 1.5291398203624105e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
149 1 1.5857746285239813e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
150 1 1.6424094366855520e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
151 1 1.6990442448471228e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
152 1 1.7556790530086936e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
153 1 1.8123138611702643e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
154 1 1.8689486693318351e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
155 1 1.9255834774934058e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
156 1 1.9822182856549766e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
157 1 2.0388530938165474e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
158 1 2.0954879019781181e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
159 1 2.1521227101396889e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
160 1 2.2087575183012596e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
161 1 0.0000000000000000e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
162 1 5.6634808161570760e-01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
163 1 1.1326961632314152e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
164 1 1.6990442448471228e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
165 1 2.2653923264628304e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
166 1 2.8317404080785380e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
167 1 3.3980884896942456e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
168 1 3.9644365713099532e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
169 1 4.5307846529256608e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
170 1 5.0971327345413684e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
171 1 5.6634808161570760e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
172 1 6.2298288977727836e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
173 1 6.7961769793884912e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
174 1 7.3625250610041988e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
175 1 7.9288731426199064e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
176 1 8.4952212242356140e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
177 1 9.0615693058513216e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
178 1 9.6279173874670292e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
179 1 1.0194265469082737e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
180 1 1.0760613550698444e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
181 1 1.1326961632314152e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
182 1 1.1893309713929860e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
183 1 1.2459657795545567e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
184 1 1.3026005877161275e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
185 1 1.3592353958776982e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
186 1 1.4158702040392690e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
187 1 1.4725050122008398e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
188 1 1.5291398203624105e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
189 1 1.5857746285239813e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
190 1 1.6424094366855520e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
191 1 1.6990442448471228e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
192 1 1.7556790530086936e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
193 1 1.8123138611702643e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
194 1 1.8689486693318351e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
195 1 1.9255834774934058e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
196 1 1.9822182856549766e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
197 1 2.0388530938165474e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
198 1 2.0954879019781181e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
199 1 2.1521227101396889e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
200 1 2.2087575183012596e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
201 1 0.0000000000000000e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
202 1 5.6634808161570760e-01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
203 1 1.1326961632314152e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
204 1 1.6990442448471228e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
205 1 2.2653923264628304e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
206 1 2.8317404080785380e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
207 1 3.3980884896942456e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
208 1 3.9644365713099532e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
209 1 4.5307846529256608e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
210 1 5.0971327345413684e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
211 1 5.6634808161570760e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
212 1 6.2298288977727836e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
213 1 6.7961769793884912e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
214 1 7.3625250610041988e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
215 1 7.9288731426199064e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
216 1 8.4952212242356140e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
217 1 9.0615693058513216e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
218 1 9.6279173874670292e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
219 1 1.0194265469082737e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
220 1 1.0760613550698444e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
221 1 1.1326961632314152e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
222 1 1.1893309713929860e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
223 1 1.2459657795545567e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
224 1 1.3026005877161275e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
225 1 1.3592353958776982e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
226 1 1.4158702040392690e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
227 1 1.4725050122008398e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
228 1 1.5291398203624105e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
229 1 1.5857746285239813e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
230 1 1.6424094366855520e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
231 1 1.6990442448471228e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
232 1 1.7556790530086936e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
233 1 1.8123138611702643e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
234 1 1.8689486693318351e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
235 1 1.9255834774934058e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
236 1 1.9822182856549766e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
237 1 2.0388530938165474e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
238 1 2.0954879019781181e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
239 1 2.1521227101396889e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
240 1 2.2087575183012596e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
241 1 0.0000000000000000e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
242 1 5.6634808161570760e-01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
243 1 1.1326961632314152e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
244 1 1.6990442448471228e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
245 1 2.2653923264628304e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
246 1 2.8317404080785380e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
247 1 3.3980884896942456e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
248 1 3.9644365713099532e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
249 1 4.5307846529256608e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
250 1 5.0971327345413684e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
251 1 5.6634808161570760e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
252 1 6.2298288977727836e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
253 1 6.7961769793884912e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
254 1 7.3625250610041988e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
255 1 7.9288731426199064e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
256 1 8.4952212242356140e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
257 1 9.0615693058513216e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
258 1 9.6279173874670292e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
259 1 1.0194265469082737e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
260 1 1.0760613550698444e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
261 1 1.1326961632314152e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
262 1 1.1893309713929860e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
263 1 1.2459657795545567e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
264 1 1.3026005877161275e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
265 1 1.3592353958776982e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
266 1 1.4158702040392690e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
267 1 1.4725050122008398e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
268 1 1.5291398203624105e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
269 1 1.5857746285239813e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
270 1 1.6424094366855520e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
271 1 1.6990442448471228e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
272 1 1.7556790530086936e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
273 1 1.8123138611702643e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
274 1 1.8689486693318351e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
275 1 1.9255834774934058e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
276 1 1.9822182856549766e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
277 1 2.0388530938165474e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
278 1 2.0954879019781181e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
279 1 2.1521227101396889e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
280 1 2.2087575183012596e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
281 1 0.0000000000000000e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
282 1 5.6634808161570760e-01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
283 1 1.1326961632314152e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
284 1 1.6990442448471228e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
285 1 2.2653923264628304e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
286 1 2.8317404080785380e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
287 1 3.3980884896942456e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
288 1 3.9644365713099532e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
289 1 4.5307846529256608e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
290 1 5.0971327345413684e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
291 1 5.6634808161570760e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
292 1 6.2298288977727836e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
293 1 6.7961769793884912e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
294 1 7.3625250610041988e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
295 1 7.9288731426199064e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
296 1 8.4952212242356140e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
297 1 9.0615693058513216e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
298 1 9.6279173874670292e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
299 1 1.0194265469082737e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
300 1 1.0760613550698444e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
301 1 1.1326961632314152e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
302 1 1.1893309713929860e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
303 1 1.2459657795545567e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
304 1 1.3026005877161275e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
305 1 1.3592353958776982e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
306 1 1.4158702040392690e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
307 1 1.4725050122008398e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
308 1 1.5291398203624105e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
309 1 1.5857746285239813e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
310 1 1.6424094366855520e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
311 1 1.6990442448471228e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
312 1 1.7556790530086936e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
313 1 1.8123138611702643e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
314 1 1.8689486693318351e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
315 1 1.9255834774934058e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
316 1 1.9822182856549766e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
317 1 2.0388530938165474e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
318 1 2.0954879019781181e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
319 1 2.1521227101396889e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
320 1 2.2087575183012596e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
321 1 0.0000000000000000e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
322 1 5.6634808161570760e-01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
323 1 1.1326961632314152e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
324 1 1.6990442448471228e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
325 1 2.2653923264628304e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
326 1 2.8317404080785380e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
327 1 3.3980884896942456e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
328 1 3.9644365713099532e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
329 1 4.5307846529256608e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
330 1 5.0971327345413684e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
331 1 5.6634808161570760e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
332 1 6.2298288977727836e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
333 1 6.7961769793884912e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
334 1 7.3625250610041988e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
335 1 7.9288731426199064e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
336 1 8.4952212242356140e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
337 1 9.0615693058513216e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
338 1 9.6279173874670292e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
339 1 1.0194265469082737e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
340 1 1.0760613550698444e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
341 1 1.1326961632314152e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
342 1 1.1893309713929860e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
343 1 1.2459657795545567e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
344 1 1.3026005877161275e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
345 1 1.3592353958776982e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
346 1 1.4158702040392690e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
347 1 1.4725050122008398e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
348 1 1.5291398203624105e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
349 1 1.5857746285239813e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
350 1 1.6424094366855520e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
351 1 1.6990442448471228e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
352 1 1.7556790530086936e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
353 1 1.8123138611702643e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
354 1 1.8689486693318351e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
355 1 1.9255834774934058e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
356 1 1.9822182856549766e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
357 1 2.0388530938165474e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
358 1 2.0954879019781181e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
359 1 2.1521227101396889e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
360 1 2.2087575183012596e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
361 1 0.0000000000000000e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
362 1 5.6634808161570760e-01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
363 1 1.1326961632314152e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
364 1 1.6990442448471228e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
365 1 2.2653923264628304e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
366 1 2.8317404080785380e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
367 1 3.3980884896942456e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
368 1 3.9644365713099532e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
369 1 4.5307846529256608e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
370 1 5.0971327345413684e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
371 1 5.6634808161570760e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
372 1 6.2298288977727836e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
373 1 6.7961769793884912e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
374 1 7.3625250610041988e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
375 1 7.9288731426199064e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
376 1 8.4952212242356140e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
377 1 9.0615693058513216e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
378 1 9.6279173874670292e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
379 1 1.0194265469082737e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
380 1 1.0760613550698444e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
381 1 1.1326961632314152e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
382 1 1.1893309713929860e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
383 1 1.2459657795545567e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
384 1 1.3026005877161275e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
385 1 1.3592353958776982e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
386 1 1.4158702040392690e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
387 1 1.4725050122008398e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
388 1 1.5291398203624105e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
389 1 1.5857746285239813e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
390 1 1.6424094366855520e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
391 1 1.6990442448471228e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
392 1 1.7556790530086936e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
393 1 1.8123138611702643e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
394 1 1.8689486693318351e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
395 1 1.9255834774934058e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
396 1 1.9822182856549766e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
397 1 2.0388530938165474e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
398 1 2.0954879019781181e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
399 1 2.1521227101396889e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
400 1 2.2087575183012596e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
401 1 0.0000000000000000e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
402 1 1.1326961632314152e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
403 1 2.2653923264628304e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
404 1 3.3980884896942456e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
405 1 4.5307846529256608e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
406 1 5.6634808161570760e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
407 1 6.7961769793884912e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
408 1 7.9288731426199064e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
409 1 9.0615693058513216e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
410 1 1.0194265469082737e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
411 1 1.1326961632314152e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
412 1 1.2459657795545567e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
413 1 1.3592353958776982e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
414 1 1.4725050122008398e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
415 1 1.5857746285239813e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
416 1 1.6990442448471228e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
417 1 1.8123138611702643e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
418 1 1.9255834774934058e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
419 1 2.0388530938165474e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
420 1 2.1521227101396889e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
Velocities
1 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
2 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
3 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
4 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
5 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
6 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
7 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
8 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
9 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
10 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
11 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
12 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
13 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
14 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
15 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
16 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
17 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
18 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
19 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
21 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
22 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
23 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
24 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
25 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
26 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
27 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
28 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
29 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
30 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
31 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
32 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
33 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
34 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
35 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
36 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
37 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
38 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
39 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
40 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
41 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
42 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
43 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
44 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
45 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
46 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
47 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
48 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
49 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
50 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
51 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
52 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
53 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
54 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
55 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
56 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
57 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
58 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
59 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
60 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
61 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
62 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
63 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
64 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
65 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
66 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
67 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
68 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
69 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
70 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
71 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
72 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
73 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
74 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
75 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
76 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
77 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
78 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
79 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
80 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
81 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
82 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
83 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
84 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
85 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
86 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
87 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
88 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
89 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
90 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
91 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
92 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
93 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
94 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
95 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
96 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
97 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
98 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
99 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
100 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
101 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
102 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
103 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
104 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
105 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
106 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
107 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
108 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
109 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
110 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
111 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
112 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
113 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
114 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
115 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
116 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
117 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
118 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
119 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
120 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
121 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
122 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
123 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
124 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
125 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
126 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
127 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
128 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
129 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
130 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
131 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
132 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
133 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
134 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
135 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
136 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
137 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
138 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
139 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
140 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
141 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
142 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
143 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
144 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
145 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
146 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
147 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
148 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
149 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
150 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
151 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
152 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
153 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
154 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
155 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
156 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
157 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
158 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
159 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
160 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
161 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
162 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
163 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
164 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
165 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
166 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
167 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
168 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
169 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
170 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
171 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
172 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
173 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
174 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
175 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
176 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
177 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
178 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
179 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
180 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
181 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
182 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
183 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
184 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
185 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
186 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
187 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
188 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
189 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
190 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
191 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
192 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
193 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
194 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
195 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
196 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
197 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
198 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
199 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
200 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
201 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
202 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
203 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
204 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
205 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
206 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
207 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
208 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
209 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
210 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
211 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
212 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
213 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
214 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
215 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
216 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
217 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
218 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
219 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
220 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
221 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
222 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
223 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
224 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
225 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
226 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
227 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
228 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
229 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
230 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
231 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
232 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
233 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
234 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
235 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
236 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
237 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
238 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
239 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
240 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
241 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
242 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
243 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
244 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
245 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
246 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
247 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
248 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
249 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
250 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
251 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
252 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
253 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
254 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
255 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
256 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
257 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
258 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
259 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
260 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
261 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
262 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
263 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
264 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
265 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
266 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
267 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
268 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
269 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
270 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
271 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
272 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
273 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
274 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
275 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
276 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
277 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
278 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
279 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
280 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
281 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
282 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
283 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
284 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
285 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
286 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
287 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
288 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
289 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
290 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
291 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
292 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
293 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
294 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
295 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
296 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
297 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
298 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
299 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
300 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
301 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
302 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
303 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
304 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
305 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
306 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
307 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
308 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
309 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
310 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
311 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
312 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
313 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
314 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
315 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
316 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
317 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
318 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
319 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
320 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
321 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
322 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
323 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
324 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
325 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
326 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
327 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
328 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
329 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
330 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
331 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
332 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
333 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
334 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
335 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
336 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
337 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
338 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
339 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
340 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
341 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
342 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
343 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
344 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
345 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
346 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
347 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
348 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
349 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
350 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
351 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
352 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
353 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
354 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
355 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
356 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
357 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
358 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
359 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
360 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
361 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
362 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
363 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
364 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
365 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
366 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
367 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
368 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
369 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
370 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
371 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
372 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
373 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
374 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
375 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
376 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
377 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
378 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
379 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
380 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
381 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
382 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
383 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
384 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
385 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
386 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
387 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
388 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
389 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
390 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
391 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
392 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
393 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
394 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
395 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
396 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
397 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
398 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
399 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
400 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
401 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
402 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
403 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
404 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
405 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
406 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
407 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
408 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
409 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
410 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
411 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
412 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
413 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
414 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
415 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
416 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
417 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
418 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
419 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
420 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00

862
examples/neb/initial.hop2 Normal file
View File

@ -0,0 +1,862 @@
LAMMPS data file via write_data, version 27 Sep 2016, timestep = 0
421 atoms
3 atom types
0.0000000000000000e+00 2.2653923264628304e+01 xlo xhi
-2.1580760346806556e-03 2.0601974770713667e+01 ylo yhi
-2.8317404080785380e-01 2.8317404080785380e-01 zlo zhi
Masses
1 1
2 1
3 1
Atoms # atomic
1 1 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
2 1 5.6634808161570760e-01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
3 1 1.1326961632314152e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
4 1 1.6990442448471228e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
5 1 2.2653923264628304e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
6 1 2.8317404080785380e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
7 1 3.3980884896942456e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
8 1 3.9644365713099532e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
9 1 4.5307846529256608e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
10 1 5.0971327345413684e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
11 1 5.6634808161570760e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
12 1 6.2298288977727836e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
13 1 6.7961769793884912e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
14 1 7.3625250610041988e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
15 1 7.9288731426199064e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
16 1 8.4952212242356140e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
17 1 9.0615693058513216e+00 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
18 1 9.6279173874670292e+00 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
19 1 1.0194265469082737e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
20 1 1.0760613550698444e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
21 1 1.1326961632314152e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
22 1 1.1893309713929860e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
23 1 1.2459657795545567e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
24 1 1.3026005877161275e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
25 1 1.3592353958776982e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
26 1 1.4158702040392690e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
27 1 1.4725050122008398e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
28 1 1.5291398203624105e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
29 1 1.5857746285239813e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
30 1 1.6424094366855520e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
31 1 1.6990442448471228e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
32 1 1.7556790530086936e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
33 1 1.8123138611702643e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
34 1 1.8689486693318351e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
35 1 1.9255834774934058e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
36 1 1.9822182856549766e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
37 1 2.0388530938165474e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
38 1 2.0954879019781181e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
39 1 2.1521227101396889e+01 0.0000000000000000e+00 0.0000000000000000e+00 0 0 0
40 1 2.2087575183012596e+01 9.8094365212757073e-01 0.0000000000000000e+00 0 0 0
41 1 0.0000000000000000e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
42 1 5.6634808161570760e-01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
43 1 1.1326961632314152e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
44 1 1.6990442448471228e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
45 1 2.2653923264628304e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
46 1 2.8317404080785380e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
47 1 3.3980884896942456e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
48 1 3.9644365713099532e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
49 1 4.5307846529256608e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
50 1 5.0971327345413684e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
51 1 5.6634808161570760e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
52 1 6.2298288977727836e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
53 1 6.7961769793884912e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
54 1 7.3625250610041988e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
55 1 7.9288731426199064e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
56 1 8.4952212242356140e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
57 1 9.0615693058513216e+00 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
58 1 9.6279173874670292e+00 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
59 1 1.0194265469082737e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
60 1 1.0760613550698444e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
61 1 1.1326961632314152e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
62 1 1.1893309713929860e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
63 1 1.2459657795545567e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
64 1 1.3026005877161275e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
65 1 1.3592353958776982e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
66 1 1.4158702040392690e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
67 1 1.4725050122008398e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
68 1 1.5291398203624105e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
69 1 1.5857746285239813e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
70 1 1.6424094366855520e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
71 1 1.6990442448471228e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
72 1 1.7556790530086936e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
73 1 1.8123138611702643e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
74 1 1.8689486693318351e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
75 1 1.9255834774934058e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
76 1 1.9822182856549766e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
77 1 2.0388530938165474e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
78 1 2.0954879019781181e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
79 1 2.1521227101396889e+01 1.9618873042551415e+00 0.0000000000000000e+00 0 0 0
80 1 2.2087575183012596e+01 2.9428309563827124e+00 0.0000000000000000e+00 0 0 0
81 1 0.0000000000000000e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
82 1 5.6634808161570760e-01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
83 1 1.1326961632314152e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
84 1 1.6990442448471228e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
85 1 2.2653923264628304e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
86 1 2.8317404080785380e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
87 1 3.3980884896942456e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
88 1 3.9644365713099532e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
89 1 4.5307846529256608e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
90 1 5.0971327345413684e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
91 1 5.6634808161570760e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
92 1 6.2298288977727836e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
93 1 6.7961769793884912e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
94 1 7.3625250610041988e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
95 1 7.9288731426199064e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
96 1 8.4952212242356140e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
97 1 9.0615693058513216e+00 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
98 1 9.6279173874670292e+00 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
99 1 1.0194265469082737e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
100 1 1.0760613550698444e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
101 1 1.1326961632314152e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
102 1 1.1893309713929860e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
103 1 1.2459657795545567e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
104 1 1.3026005877161275e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
105 1 1.3592353958776982e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
106 1 1.4158702040392690e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
107 1 1.4725050122008398e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
108 1 1.5291398203624105e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
109 1 1.5857746285239813e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
110 1 1.6424094366855520e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
111 1 1.6990442448471228e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
112 1 1.7556790530086936e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
113 1 1.8123138611702643e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
114 1 1.8689486693318351e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
115 1 1.9255834774934058e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
116 1 1.9822182856549766e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
117 1 2.0388530938165474e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
118 1 2.0954879019781181e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
119 1 2.1521227101396889e+01 3.9237746085102829e+00 0.0000000000000000e+00 0 0 0
120 1 2.2087575183012596e+01 4.9047182606378534e+00 0.0000000000000000e+00 0 0 0
121 1 0.0000000000000000e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
122 1 5.6634808161570760e-01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
123 1 1.1326961632314152e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
124 1 1.6990442448471228e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
125 1 2.2653923264628304e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
126 1 2.8317404080785380e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
127 1 3.3980884896942456e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
128 1 3.9644365713099532e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
129 1 4.5307846529256608e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
130 1 5.0971327345413684e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
131 1 5.6634808161570760e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
132 1 6.2298288977727836e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
133 1 6.7961769793884912e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
134 1 7.3625250610041988e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
135 1 7.9288731426199064e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
136 1 8.4952212242356140e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
137 1 9.0615693058513216e+00 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
138 1 9.6279173874670292e+00 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
139 1 1.0194265469082737e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
140 1 1.0760613550698444e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
141 1 1.1326961632314152e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
142 1 1.1893309713929860e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
143 1 1.2459657795545567e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
144 1 1.3026005877161275e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
145 1 1.3592353958776982e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
146 1 1.4158702040392690e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
147 1 1.4725050122008398e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
148 1 1.5291398203624105e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
149 1 1.5857746285239813e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
150 1 1.6424094366855520e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
151 1 1.6990442448471228e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
152 1 1.7556790530086936e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
153 1 1.8123138611702643e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
154 1 1.8689486693318351e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
155 1 1.9255834774934058e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
156 1 1.9822182856549766e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
157 1 2.0388530938165474e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
158 1 2.0954879019781181e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
159 1 2.1521227101396889e+01 5.8856619127654248e+00 0.0000000000000000e+00 0 0 0
160 1 2.2087575183012596e+01 6.8666055648929953e+00 0.0000000000000000e+00 0 0 0
161 1 0.0000000000000000e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
162 1 5.6634808161570760e-01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
163 1 1.1326961632314152e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
164 1 1.6990442448471228e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
165 1 2.2653923264628304e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
166 1 2.8317404080785380e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
167 1 3.3980884896942456e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
168 1 3.9644365713099532e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
169 1 4.5307846529256608e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
170 1 5.0971327345413684e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
171 1 5.6634808161570760e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
172 1 6.2298288977727836e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
173 1 6.7961769793884912e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
174 1 7.3625250610041988e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
175 1 7.9288731426199064e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
176 1 8.4952212242356140e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
177 1 9.0615693058513216e+00 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
178 1 9.6279173874670292e+00 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
179 1 1.0194265469082737e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
180 1 1.0760613550698444e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
181 1 1.1326961632314152e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
182 1 1.1893309713929860e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
183 1 1.2459657795545567e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
184 1 1.3026005877161275e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
185 1 1.3592353958776982e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
186 1 1.4158702040392690e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
187 1 1.4725050122008398e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
188 1 1.5291398203624105e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
189 1 1.5857746285239813e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
190 1 1.6424094366855520e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
191 1 1.6990442448471228e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
192 1 1.7556790530086936e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
193 1 1.8123138611702643e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
194 1 1.8689486693318351e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
195 1 1.9255834774934058e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
196 1 1.9822182856549766e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
197 1 2.0388530938165474e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
198 1 2.0954879019781181e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
199 1 2.1521227101396889e+01 7.8475492170205658e+00 0.0000000000000000e+00 0 0 0
200 1 2.2087575183012596e+01 8.8284928691481355e+00 0.0000000000000000e+00 0 0 0
201 1 0.0000000000000000e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
202 1 5.6634808161570760e-01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
203 1 1.1326961632314152e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
204 1 1.6990442448471228e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
205 1 2.2653923264628304e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
206 1 2.8317404080785380e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
207 1 3.3980884896942456e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
208 1 3.9644365713099532e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
209 1 4.5307846529256608e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
210 1 5.0971327345413684e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
211 1 5.6634808161570760e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
212 1 6.2298288977727836e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
213 1 6.7961769793884912e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
214 1 7.3625250610041988e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
215 1 7.9288731426199064e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
216 1 8.4952212242356140e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
217 1 9.0615693058513216e+00 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
218 1 9.6279173874670292e+00 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
219 1 1.0194265469082737e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
220 1 1.0760613550698444e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
221 1 1.1326961632314152e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
222 1 1.1893309713929860e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
223 1 1.2459657795545567e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
224 1 1.3026005877161275e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
225 1 1.3592353958776982e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
226 1 1.4158702040392690e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
227 1 1.4725050122008398e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
228 1 1.5291398203624105e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
229 1 1.5857746285239813e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
230 1 1.6424094366855520e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
231 1 1.6990442448471228e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
232 1 1.7556790530086936e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
233 1 1.8123138611702643e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
234 1 1.8689486693318351e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
235 1 1.9255834774934058e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
236 1 1.9822182856549766e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
237 1 2.0388530938165474e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
238 1 2.0954879019781181e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
239 1 2.1521227101396889e+01 9.8094365212757069e+00 0.0000000000000000e+00 0 0 0
240 1 2.2087575183012596e+01 1.0790380173403278e+01 0.0000000000000000e+00 0 0 0
241 1 0.0000000000000000e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
242 1 5.6634808161570760e-01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
243 1 1.1326961632314152e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
244 1 1.6990442448471228e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
245 1 2.2653923264628304e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
246 1 2.8317404080785380e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
247 1 3.3980884896942456e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
248 1 3.9644365713099532e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
249 1 4.5307846529256608e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
250 1 5.0971327345413684e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
251 1 5.6634808161570760e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
252 1 6.2298288977727836e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
253 1 6.7961769793884912e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
254 1 7.3625250610041988e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
255 1 7.9288731426199064e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
256 1 8.4952212242356140e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
257 1 9.0615693058513216e+00 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
258 1 9.6279173874670292e+00 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
259 1 1.0194265469082737e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
260 1 1.0760613550698444e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
261 1 1.1326961632314152e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
262 1 1.1893309713929860e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
263 1 1.2459657795545567e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
264 1 1.3026005877161275e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
265 1 1.3592353958776982e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
266 1 1.4158702040392690e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
267 1 1.4725050122008398e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
268 1 1.5291398203624105e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
269 1 1.5857746285239813e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
270 1 1.6424094366855520e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
271 1 1.6990442448471228e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
272 1 1.7556790530086936e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
273 1 1.8123138611702643e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
274 1 1.8689486693318351e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
275 1 1.9255834774934058e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
276 1 1.9822182856549766e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
277 1 2.0388530938165474e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
278 1 2.0954879019781181e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
279 1 2.1521227101396889e+01 1.1771323825530850e+01 0.0000000000000000e+00 0 0 0
280 1 2.2087575183012596e+01 1.2752267477658419e+01 0.0000000000000000e+00 0 0 0
281 1 0.0000000000000000e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
282 1 5.6634808161570760e-01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
283 1 1.1326961632314152e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
284 1 1.6990442448471228e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
285 1 2.2653923264628304e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
286 1 2.8317404080785380e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
287 1 3.3980884896942456e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
288 1 3.9644365713099532e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
289 1 4.5307846529256608e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
290 1 5.0971327345413684e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
291 1 5.6634808161570760e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
292 1 6.2298288977727836e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
293 1 6.7961769793884912e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
294 1 7.3625250610041988e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
295 1 7.9288731426199064e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
296 1 8.4952212242356140e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
297 1 9.0615693058513216e+00 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
298 1 9.6279173874670292e+00 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
299 1 1.0194265469082737e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
300 1 1.0760613550698444e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
301 1 1.1326961632314152e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
302 1 1.1893309713929860e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
303 1 1.2459657795545567e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
304 1 1.3026005877161275e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
305 1 1.3592353958776982e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
306 1 1.4158702040392690e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
307 1 1.4725050122008398e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
308 1 1.5291398203624105e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
309 1 1.5857746285239813e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
310 1 1.6424094366855520e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
311 1 1.6990442448471228e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
312 1 1.7556790530086936e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
313 1 1.8123138611702643e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
314 1 1.8689486693318351e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
315 1 1.9255834774934058e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
316 1 1.9822182856549766e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
317 1 2.0388530938165474e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
318 1 2.0954879019781181e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
319 1 2.1521227101396889e+01 1.3733211129785991e+01 0.0000000000000000e+00 0 0 0
320 1 2.2087575183012596e+01 1.4714154781913560e+01 0.0000000000000000e+00 0 0 0
321 1 0.0000000000000000e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
322 1 5.6634808161570760e-01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
323 1 1.1326961632314152e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
324 1 1.6990442448471228e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
325 1 2.2653923264628304e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
326 1 2.8317404080785380e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
327 1 3.3980884896942456e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
328 1 3.9644365713099532e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
329 1 4.5307846529256608e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
330 1 5.0971327345413684e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
331 1 5.6634808161570760e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
332 1 6.2298288977727836e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
333 1 6.7961769793884912e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
334 1 7.3625250610041988e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
335 1 7.9288731426199064e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
336 1 8.4952212242356140e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
337 1 9.0615693058513216e+00 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
338 1 9.6279173874670292e+00 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
339 1 1.0194265469082737e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
340 1 1.0760613550698444e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
341 1 1.1326961632314152e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
342 1 1.1893309713929860e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
343 1 1.2459657795545567e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
344 1 1.3026005877161275e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
345 1 1.3592353958776982e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
346 1 1.4158702040392690e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
347 1 1.4725050122008398e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
348 1 1.5291398203624105e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
349 1 1.5857746285239813e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
350 1 1.6424094366855520e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
351 1 1.6990442448471228e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
352 1 1.7556790530086936e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
353 1 1.8123138611702643e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
354 1 1.8689486693318351e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
355 1 1.9255834774934058e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
356 1 1.9822182856549766e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
357 1 2.0388530938165474e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
358 1 2.0954879019781181e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
359 1 2.1521227101396889e+01 1.5695098434041132e+01 0.0000000000000000e+00 0 0 0
360 1 2.2087575183012596e+01 1.6676042086168703e+01 0.0000000000000000e+00 0 0 0
361 1 0.0000000000000000e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
362 1 5.6634808161570760e-01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
363 1 1.1326961632314152e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
364 1 1.6990442448471228e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
365 1 2.2653923264628304e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
366 1 2.8317404080785380e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
367 1 3.3980884896942456e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
368 1 3.9644365713099532e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
369 1 4.5307846529256608e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
370 1 5.0971327345413684e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
371 1 5.6634808161570760e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
372 1 6.2298288977727836e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
373 1 6.7961769793884912e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
374 1 7.3625250610041988e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
375 1 7.9288731426199064e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
376 1 8.4952212242356140e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
377 1 9.0615693058513216e+00 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
378 1 9.6279173874670292e+00 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
379 1 1.0194265469082737e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
380 1 1.0760613550698444e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
381 1 1.1326961632314152e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
382 1 1.1893309713929860e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
383 1 1.2459657795545567e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
384 1 1.3026005877161275e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
385 1 1.3592353958776982e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
386 1 1.4158702040392690e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
387 1 1.4725050122008398e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
388 1 1.5291398203624105e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
389 1 1.5857746285239813e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
390 1 1.6424094366855520e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
391 1 1.6990442448471228e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
392 1 1.7556790530086936e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
393 1 1.8123138611702643e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
394 1 1.8689486693318351e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
395 1 1.9255834774934058e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
396 1 1.9822182856549766e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
397 1 2.0388530938165474e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
398 1 2.0954879019781181e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
399 1 2.1521227101396889e+01 1.7656985738296271e+01 0.0000000000000000e+00 0 0 0
400 1 2.2087575183012596e+01 1.8637929390423842e+01 0.0000000000000000e+00 0 0 0
401 1 0.0000000000000000e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
402 1 1.1326961632314152e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
403 1 2.2653923264628304e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
404 1 3.3980884896942456e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
405 1 4.5307846529256608e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
406 1 5.6634808161570760e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
407 1 6.7961769793884912e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
408 1 7.9288731426199064e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
409 1 9.0615693058513216e+00 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
410 1 1.0194265469082737e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
411 1 1.1326961632314152e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
412 1 1.2459657795545567e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
413 1 1.3592353958776982e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
414 1 1.4725050122008398e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
415 1 1.5857746285239813e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
416 1 1.6990442448471228e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
417 1 1.8123138611702643e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
418 1 1.9255834774934058e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
419 1 2.0388530938165474e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
420 1 2.1521227101396889e+01 1.9618873042551414e+01 0.0000000000000000e+00 0 0 0
421 1 1.3026005877161275e+01 2.0599816694678985e+01 0.0000000000000000e+00 0 0 0
Velocities
1 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
2 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
3 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
4 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
5 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
6 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
7 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
8 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
9 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
10 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
11 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
12 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
13 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
14 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
15 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
16 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
17 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
18 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
19 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
21 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
22 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
23 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
24 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
25 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
26 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
27 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
28 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
29 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
30 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
31 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
32 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
33 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
34 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
35 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
36 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
37 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
38 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
39 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
40 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
41 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
42 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
43 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
44 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
45 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
46 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
47 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
48 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
49 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
50 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
51 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
52 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
53 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
54 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
55 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
56 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
57 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
58 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
59 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
60 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
61 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
62 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
63 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
64 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
65 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
66 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
67 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
68 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
69 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
70 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
71 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
72 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
73 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
74 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
75 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
76 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
77 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
78 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
79 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
80 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
81 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
82 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
83 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
84 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
85 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
86 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
87 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
88 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
89 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
90 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
91 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
92 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
93 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
94 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
95 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
96 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
97 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
98 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
99 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
100 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
101 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
102 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
103 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
104 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
105 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
106 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
107 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
108 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
109 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
110 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
111 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
112 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
113 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
114 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
115 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
116 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
117 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
118 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
119 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
120 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
121 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
122 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
123 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
124 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
125 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
126 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
127 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
128 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
129 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
130 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
131 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
132 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
133 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
134 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
135 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
136 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
137 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
138 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
139 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
140 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
141 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
142 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
143 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
144 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
145 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
146 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
147 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
148 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
149 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
150 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
151 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
152 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
153 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
154 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
155 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
156 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
157 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
158 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
159 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
160 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
161 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
162 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
163 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
164 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
165 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
166 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
167 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
168 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
169 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
170 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
171 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
172 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
173 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
174 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
175 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
176 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
177 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
178 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
179 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
180 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
181 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
182 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
183 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
184 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
185 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
186 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
187 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
188 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
189 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
190 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
191 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
192 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
193 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
194 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
195 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
196 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
197 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
198 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
199 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
200 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
201 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
202 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
203 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
204 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
205 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
206 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
207 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
208 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
209 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
210 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
211 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
212 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
213 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
214 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
215 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
216 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
217 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
218 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
219 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
220 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
221 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
222 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
223 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
224 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
225 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
226 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
227 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
228 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
229 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
230 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
231 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
232 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
233 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
234 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
235 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
236 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
237 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
238 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
239 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
240 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
241 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
242 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
243 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
244 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
245 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
246 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
247 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
248 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
249 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
250 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
251 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
252 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
253 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
254 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
255 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
256 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
257 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
258 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
259 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
260 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
261 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
262 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
263 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
264 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
265 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
266 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
267 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
268 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
269 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
270 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
271 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
272 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
273 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
274 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
275 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
276 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
277 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
278 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
279 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
280 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
281 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
282 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
283 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
284 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
285 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
286 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
287 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
288 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
289 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
290 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
291 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
292 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
293 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
294 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
295 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
296 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
297 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
298 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
299 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
300 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
301 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
302 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
303 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
304 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
305 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
306 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
307 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
308 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
309 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
310 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
311 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
312 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
313 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
314 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
315 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
316 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
317 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
318 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
319 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
320 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
321 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
322 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
323 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
324 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
325 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
326 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
327 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
328 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
329 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
330 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
331 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
332 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
333 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
334 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
335 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
336 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
337 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
338 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
339 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
340 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
341 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
342 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
343 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
344 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
345 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
346 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
347 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
348 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
349 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
350 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
351 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
352 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
353 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
354 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
355 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
356 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
357 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
358 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
359 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
360 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
361 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
362 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
363 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
364 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
365 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
366 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
367 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
368 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
369 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
370 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
371 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
372 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
373 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
374 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
375 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
376 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
377 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
378 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
379 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
380 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
381 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
382 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
383 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
384 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
385 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
386 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
387 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
388 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
389 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
390 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
391 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
392 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
393 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
394 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
395 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
396 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
397 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
398 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
399 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
400 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
401 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
402 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
403 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
404 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
405 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
406 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
407 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
408 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
409 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
410 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
411 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
412 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
413 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
414 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
415 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
416 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
417 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
418 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
419 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
420 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
421 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00

1042
examples/neb/initial.sivac Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
LAMMPS (15 Feb 2016)
LAMMPS (27 Sep 2016)
Running on 4 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 4327.2753 2746.3378 0.3387091 5.0075576 4514.5424 0.42933428 0.42323635 1.8941131 0 -3.0535948 0.33333333 -2.6242605 0.66666667 -2.7623811 1 -3.0474969

View File

@ -0,0 +1,10 @@
LAMMPS (27 Sep 2016)
Running on 4 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 4327.2753 2746.3378 0.3387091 5.0075576 4514.5424 0.42933428 0.42323635 1.8941131 0 -3.0535948 0.33333333 -2.6242605 0.66666667 -2.7623811 1 -3.0474969
100 0.10482171 0.085218406 0.014588234 0.066178435 0.19602242 0.0070900401 0.0022691875 2.3031875 0 -3.0535967 0.31839181 -3.0473647 0.639876 -3.0465067 1 -3.0487759
111 0.096708718 0.078036984 0.013922966 0.054175505 0.20234693 0.0070871172 0.0022668002 2.3052946 0 -3.0535968 0.31853431 -3.0473633 0.64178873 -3.0465096 1 -3.0487764
Climbing replica = 3
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
111 0.20234693 0.17770387 0.013922966 0.054175505 0.20234693 0.0070871172 0.0022668002 2.3052946 0 -3.0535968 0.31853431 -3.0473633 0.64178873 -3.0465096 1 -3.0487764
178 0.09975409 0.093814031 0.010577358 0.024247224 0.09975409 0.0071042931 0.0022851195 2.312004 0 -3.0535969 0.31607934 -3.0473923 0.618931 -3.0464926 1 -3.0487777

View File

@ -1,4 +1,4 @@
LAMMPS (15 Feb 2016)
LAMMPS (27 Sep 2016)
Running on 4 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 14.104748 10.419633 0.24852044 5.0039071 8.2116049 0.0018276223 0.00064050211 0.98401186 0 -3.0514921 0.33333333 -3.0496673 0.66666667 -3.0496645 1 -3.050305

View File

@ -0,0 +1,18 @@
LAMMPS (27 Sep 2016)
Running on 4 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 14.104748 10.419633 0.24852044 5.0039071 8.2116049 0.0018276223 0.00064050211 0.98401186 0 -3.0514921 0.33333333 -3.0496673 0.66666667 -3.0496645 1 -3.050305
100 0.24646695 0.10792196 0.01781018 0.098854684 0.63725646 0.001516756 0.0015151635 1.165391 0 -3.0514939 0.2890334 -3.0503533 0.59718494 -3.0499771 1 -3.0514923
200 0.061777741 0.050288749 0.012466513 0.020420207 0.88741041 0.0014465772 0.0014462528 1.1692938 0 -3.0514941 0.29975094 -3.0503052 0.62768286 -3.0500476 1 -3.0514938
300 0.056346766 0.030000618 0.0093152917 0.013765031 1.0101529 0.0014069751 0.0014068154 1.1699608 0 -3.0514942 0.30992449 -3.0502613 0.64174291 -3.0500873 1 -3.0514941
400 0.025589489 0.015671005 0.0061287063 0.008588518 1.1136424 0.001370987 0.0013709154 1.1704204 0 -3.0514943 0.32016645 -3.0502198 0.65324019 -3.0501233 1 -3.0514943
500 0.014778626 0.0092108366 0.0042668521 0.0059963914 1.1636579 0.0013527466 0.0013527072 1.1706283 0 -3.0514944 0.32550275 -3.0501993 0.65875414 -3.0501416 1 -3.0514943
600 0.08786211 0.020876327 0.0031421548 0.0051657363 1.1898894 0.0013430848 0.0013430599 1.1707681 0 -3.0514944 0.32831927 -3.0501889 0.66160681 -3.0501513 1 -3.0514944
633 0.0098132678 0.0055392541 0.0030063464 0.0043091323 1.1924486 0.0013420127 0.0013419893 1.1707818 0 -3.0514944 0.32862625 -3.0501878 0.66191769 -3.0501524 1 -3.0514944
Climbing replica = 3
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
633 1.1924486 1.1648685 0.0030063464 0.0043091323 1.1924486 0.0013420127 0.0013419893 1.1707818 0 -3.0514944 0.32862625 -3.0501878 0.66191769 -3.0501524 1 -3.0514944
733 0.095331134 0.089136608 0.0021551441 0.0031844438 0.043042998 0.0016022317 0.0016022168 1.170789 0 -3.0514944 0.29157063 -3.0503375 0.50358402 -3.0498922 1 -3.0514944
833 0.10539135 0.030724373 0.0013749699 0.002221013 0.10539135 0.0016019798 0.001601971 1.1732118 0 -3.0514944 0.26249002 -3.0504848 0.50415223 -3.0498924 1 -3.0514944
933 0.01883894 0.011496399 0.0011058925 0.0018178041 0.014621806 0.0016018934 0.0016018865 1.173866 0 -3.0514944 0.25788763 -3.0505113 0.50466375 -3.0498925 1 -3.0514944
996 0.0082457876 0.0036336551 0.00077325986 0.0013910671 0.0068823708 0.0016018293 0.0016018244 1.174511 0 -3.0514944 0.2544553 -3.0505324 0.50520462 -3.0498926 1 -3.0514944

View File

@ -0,0 +1,14 @@
LAMMPS (27 Sep 2016)
Running on 3 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 7.5525391 1.6345605 0.16683659 7.5525391 7.5525391 1.5383951 0 1.6207355 0 -2213.3343 0.5 -2212.4096 1 -2211.7959
10 0.27332818 0.040944923 0.039164338 0.27332818 0.17804882 0.51235911 0.497084 1.6790474 0 -2213.3364 0.49024121 -2212.824 1 -2213.3211
20 0.1820396 0.018049916 0.024428411 0.1820396 0.08601739 0.51038174 0.5080746 1.7224961 0 -2213.337 0.49199582 -2212.8266 1 -2213.3347
30 0.043288796 0.0068108825 0.017372479 0.043288796 0.049466709 0.51032316 0.5095943 1.7304745 0 -2213.3371 0.49553568 -2212.8268 1 -2213.3364
40 0.0421393 0.0037035761 0.01173707 0.0421393 0.026104735 0.51022733 0.5100163 1.7366752 0 -2213.3373 0.49838067 -2212.8271 1 -2213.3371
50 0.025897844 0.0022804241 0.0081056535 0.025897844 0.016908913 0.5101712 0.51008591 1.739143 0 -2213.3373 0.49923344 -2212.8272 1 -2213.3373
59 0.00962839 0.0012946076 0.005657505 0.009365729 0.012040803 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955698 -2212.8272 1 -2213.3373
Climbing replica = 2
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
59 0.012040803 0.0031505502 0.005657505 0.009365729 0.012040803 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955698 -2212.8272 1 -2213.3373
63 0.009152118 0.0016692472 0.0049645771 0.0081967836 0.009152118 0.51013743 0.51010776 1.7409028 0 -2213.3374 0.50022239 -2212.8272 1 -2213.3373

View File

@ -0,0 +1,14 @@
LAMMPS (27 Sep 2016)
Running on 3 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 7.5525391 1.6345605 0.16683659 7.5525391 7.5525391 1.5383951 0 1.6207355 0 -2213.3343 0.5 -2212.4096 1 -2211.7959
10 0.27332818 0.040944923 0.039164338 0.27332818 0.17804882 0.51235911 0.497084 1.6790474 0 -2213.3364 0.49024121 -2212.824 1 -2213.3211
20 0.1820396 0.018049916 0.024428411 0.1820396 0.08601739 0.51038174 0.5080746 1.7224961 0 -2213.337 0.49199582 -2212.8266 1 -2213.3347
30 0.043288796 0.0068108825 0.017372479 0.043288796 0.049466709 0.51032316 0.5095943 1.7304745 0 -2213.3371 0.49553568 -2212.8268 1 -2213.3364
40 0.042139305 0.0037035764 0.01173707 0.042139305 0.026104735 0.51022733 0.5100163 1.7366752 0 -2213.3373 0.49838067 -2212.8271 1 -2213.3371
50 0.025899631 0.0022805513 0.0081057075 0.025899631 0.016908929 0.5101712 0.51008591 1.739143 0 -2213.3373 0.49923345 -2212.8272 1 -2213.3373
59 0.0096285044 0.0012946258 0.0056576061 0.0093678253 0.012040919 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955698 -2212.8272 1 -2213.3373
Climbing replica = 2
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
59 0.012040919 0.0031505771 0.0056576061 0.0093678253 0.012040919 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955698 -2212.8272 1 -2213.3373
63 0.0091523813 0.0016692845 0.0049647607 0.0081998372 0.0091523813 0.51013743 0.51010775 1.7409028 0 -2213.3374 0.50022236 -2212.8272 1 -2213.3373

View File

@ -1,4 +1,4 @@
LAMMPS (15 Feb 2016)
LAMMPS (27 Sep 2016)
Running on 3 partitions of processors
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
0 7.5525391 1.6345605 0.16683659 7.5525391 7.5525391 1.5383951 0 1.6207355 0 -2213.3343 0.5 -2212.4096 1 -2211.7959
@ -6,9 +6,9 @@ Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 P
20 0.1820396 0.018049916 0.024428411 0.1820396 0.08601739 0.51038174 0.5080746 1.7224961 0 -2213.337 0.49199582 -2212.8266 1 -2213.3347
30 0.043288796 0.0068108825 0.017372479 0.043288796 0.049466709 0.51032316 0.5095943 1.7304745 0 -2213.3371 0.49553568 -2212.8268 1 -2213.3364
40 0.042139318 0.0037035773 0.011737071 0.042139318 0.026104737 0.51022733 0.5100163 1.7366752 0 -2213.3373 0.49838067 -2212.8271 1 -2213.3371
50 0.025904252 0.0022808801 0.008105847 0.025904252 0.016908971 0.5101712 0.51008591 1.7391431 0 -2213.3373 0.49923347 -2212.8272 1 -2213.3373
50 0.025904121 0.0022808707 0.0081058431 0.025904121 0.016908969 0.5101712 0.51008591 1.7391431 0 -2213.3373 0.49923346 -2212.8272 1 -2213.3373
59 0.0096287928 0.0012946716 0.005657861 0.0093731008 0.01204121 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955696 -2212.8272 1 -2213.3373
Climbing replica = 2
Step MaxReplicaForce MaxAtomForce GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... RDN PEN
50 0.025904252 0.0044134315 0.008105847 0.025904252 0.016908971 0.5101712 0.51008591 1.7391431 0 -2213.3373 0.49923347 -2212.8272 1 -2213.3373
60 0.011518317 0.0013089596 0.0054472815 0.011518317 0.0091629734 0.51014415 0.51010903 1.7406815 0 -2213.3374 0.50065207 -2212.8272 1 -2213.3373
61 0.0089525108 0.0012703829 0.0052524345 0.0088142351 0.0089525108 0.51014321 0.51010962 1.7407173 0 -2213.3374 0.50065779 -2212.8272 1 -2213.3373
59 0.01204121 0.0031506449 0.005657861 0.0093731008 0.01204121 0.51014185 0.51010207 1.7404554 0 -2213.3374 0.49955696 -2212.8272 1 -2213.3373
63 0.0091530442 0.0016693787 0.0049652227 0.0082075097 0.0091530442 0.51013743 0.51010775 1.7409027 0 -2213.3374 0.50022228 -2212.8272 1 -2213.3373

View File

@ -9,9 +9,9 @@ variable zblz equal 73
# Specify hybrid with SNAP, ZBL
pair_style hybrid/overlay &
zbl ${zblcutinner} ${zblcutouter} &
snap
pair_style hybrid/overlay snap &
zbl ${zblcutinner} ${zblcutouter}
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff * * snap Ta06A.snapcoeff Ta Ta06A.snapparam Ta

1
python/examples/ipython/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
*.orig

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -18,10 +18,12 @@
#include "fix_neb.h"
#include "universe.h"
#include "update.h"
#include "atom.h"
#include "domain.h"
#include "comm.h"
#include "modify.h"
#include "compute.h"
#include "atom.h"
#include "group.h"
#include "memory.h"
#include "error.h"
#include "force.h"
@ -29,6 +31,8 @@
using namespace LAMMPS_NS;
using namespace FixConst;
enum{SINGLE_PROC_DIRECT,SINGLE_PROC_MAP,MULTI_PROC};
/* ---------------------------------------------------------------------- */
FixNEB::FixNEB(LAMMPS *lmp, int narg, char **arg) :
@ -41,8 +45,13 @@ FixNEB::FixNEB(LAMMPS *lmp, int narg, char **arg) :
// nreplica = number of partitions
// ireplica = which world I am in universe
// nprocs_universe = # of procs in all replicase
// procprev,procnext = root proc in adjacent replicas
me = comm->me;
nprocs = comm->nprocs;
nprocs_universe = universe->nprocs;
nreplica = universe->nworlds;
ireplica = universe->iworld;
@ -67,7 +76,17 @@ FixNEB::FixNEB(LAMMPS *lmp, int narg, char **arg) :
modify->add_compute(3,newarg);
delete [] newarg;
// initialize local storage
maxlocal = 0;
ntotal = 0;
xprev = xnext = tangent = NULL;
xsend = xrecv = NULL;
tagsend = tagrecv = NULL;
xsendall = xrecvall = NULL;
tagsendall = tagrecvall = NULL;
counts = displacements = NULL;
}
/* ---------------------------------------------------------------------- */
@ -80,6 +99,19 @@ FixNEB::~FixNEB()
memory->destroy(xprev);
memory->destroy(xnext);
memory->destroy(tangent);
memory->destroy(xsend);
memory->destroy(xrecv);
memory->destroy(tagsend);
memory->destroy(tagrecv);
memory->destroy(xsendall);
memory->destroy(xrecvall);
memory->destroy(tagsendall);
memory->destroy(tagrecvall);
memory->destroy(counts);
memory->destroy(displacements);
}
/* ---------------------------------------------------------------------- */
@ -104,15 +136,35 @@ void FixNEB::init()
rclimber = -1;
// setup xprev and xnext arrays
// nebatoms = # of atoms in fix group = atoms with inter-replica forces
memory->destroy(xprev);
memory->destroy(xnext);
memory->destroy(tangent);
nebatoms = atom->nlocal;
memory->create(xprev,nebatoms,3,"neb:xprev");
memory->create(xnext,nebatoms,3,"neb:xnext");
memory->create(tangent,nebatoms,3,"neb:tangent");
bigint count = group->count(igroup);
if (count > MAXSMALLINT) error->all(FLERR,"Too many active NEB atoms");
nebatoms = count;
// comm style for inter-replica exchange of coords
if (nreplica == nprocs_universe &&
nebatoms == atom->natoms && atom->sortfreq == 0)
cmode = SINGLE_PROC_DIRECT;
else if (nreplica == nprocs_universe) cmode = SINGLE_PROC_MAP;
else cmode = MULTI_PROC;
// ntotal = total # of atoms in system, NEB atoms or not
if (atom->natoms > MAXSMALLINT) error->all(FLERR,"Too many atoms for NEB");
ntotal = atom->natoms;
if (atom->nlocal > maxlocal) reallocate();
if (MULTI_PROC && counts == NULL) {
memory->create(xsendall,ntotal,3,"neb:xsendall");
memory->create(xrecvall,ntotal,3,"neb:xrecvall");
memory->create(tagsendall,ntotal,"neb:tagsendall");
memory->create(tagrecvall,ntotal,"neb:tagrecvall");
memory->create(counts,nprocs,"neb:counts");
memory->create(displacements,nprocs,"neb:displacements");
}
}
/* ---------------------------------------------------------------------- */
@ -133,40 +185,31 @@ void FixNEB::min_post_force(int vflag)
double vprev,vnext,vmax,vmin;
double delx,dely,delz;
double delta1[3],delta2[3];
MPI_Request request;
// veng = PE of this replica
// vprev,vnext = PEs of adjacent replicas
// only proc 0 in each replica communicates
vprev = vnext = veng = pe->compute_scalar();
if (ireplica < nreplica-1) MPI_Send(&veng,1,MPI_DOUBLE,procnext,0,uworld);
if (ireplica > 0) MPI_Recv(&vprev,1,MPI_DOUBLE,procprev,0,uworld,MPI_STATUS_IGNORE);
if (ireplica < nreplica-1 && me == 0)
MPI_Send(&veng,1,MPI_DOUBLE,procnext,0,uworld);
if (ireplica > 0 && me == 0)
MPI_Recv(&vprev,1,MPI_DOUBLE,procprev,0,uworld,MPI_STATUS_IGNORE);
if (ireplica > 0) MPI_Send(&veng,1,MPI_DOUBLE,procprev,0,uworld);
if (ireplica < nreplica-1)
if (ireplica > 0 && me == 0)
MPI_Send(&veng,1,MPI_DOUBLE,procprev,0,uworld);
if (ireplica < nreplica-1 && me == 0)
MPI_Recv(&vnext,1,MPI_DOUBLE,procnext,0,uworld,MPI_STATUS_IGNORE);
// xprev,xnext = atom coords of adjacent replicas
// assume order of atoms in all replicas is the same
// check that number of atoms hasn't changed
if (cmode == MULTI_PROC) {
MPI_Bcast(&vprev,1,MPI_DOUBLE,0,world);
MPI_Bcast(&vnext,1,MPI_DOUBLE,0,world);
}
double **x = atom->x;
int *mask = atom->mask;
int nlocal = atom->nlocal;
if (nlocal != nebatoms) error->one(FLERR,"Atom count changed in fix neb");
// communicate atoms to/from adjacent replicas to fill xprev,xnext
if (ireplica > 0)
MPI_Irecv(xprev[0],3*nlocal,MPI_DOUBLE,procprev,0,uworld,&request);
if (ireplica < nreplica-1)
MPI_Send(x[0],3*nlocal,MPI_DOUBLE,procnext,0,uworld);
if (ireplica > 0) MPI_Wait(&request,MPI_STATUS_IGNORE);
if (ireplica < nreplica-1)
MPI_Irecv(xnext[0],3*nlocal,MPI_DOUBLE,procnext,0,uworld,&request);
if (ireplica > 0)
MPI_Send(x[0],3*nlocal,MPI_DOUBLE,procprev,0,uworld);
if (ireplica < nreplica-1) MPI_Wait(&request,MPI_STATUS_IGNORE);
inter_replica_comm();
// trigger potential energy computation on next timestep
@ -175,11 +218,13 @@ void FixNEB::min_post_force(int vflag)
// compute norm of GradV for log output
double **f = atom->f;
int nlocal = atom->nlocal;
double fsq = 0.0;
for (int i = 0; i < nlocal; i++)
fsq += f[i][0]*f[i][0] + f[i][1]*f[i][1] + f[i][2]*f[i][2];
MPI_Allreduce(&fsq,&gradvnorm,1,MPI_DOUBLE,MPI_MAX,world);
MPI_Allreduce(&fsq,&gradvnorm,1,MPI_DOUBLE,MPI_SUM,world);
gradvnorm = sqrt(gradvnorm);
// first or last replica has no change to forces, just return
@ -195,6 +240,9 @@ void FixNEB::min_post_force(int vflag)
// depending on relative PEs of 3 replicas
// see Henkelman & Jonsson 2000 paper, eqs 8-11
double **x = atom->x;
int *mask = atom->mask;
if (vnext > veng && veng > vprev) {
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
@ -260,9 +308,15 @@ void FixNEB::min_post_force(int vflag)
nlen += delx*delx + dely*dely + delz*delz;
}
tlen = sqrt(tlen);
plen = sqrt(plen);
nlen = sqrt(nlen);
double lenall;
MPI_Allreduce(&tlen,&lenall,1,MPI_DOUBLE,MPI_SUM,world);
tlen = sqrt(lenall);
MPI_Allreduce(&plen,&lenall,1,MPI_DOUBLE,MPI_SUM,world);
plen = sqrt(lenall);
MPI_Allreduce(&nlen,&lenall,1,MPI_DOUBLE,MPI_SUM,world);
nlen = sqrt(lenall);
// normalize tangent vector
@ -295,9 +349,12 @@ void FixNEB::min_post_force(int vflag)
f[i][2]*tangent[i][2];
}
double dotall;
MPI_Allreduce(&dot,&dotall,1,MPI_DOUBLE,MPI_SUM,world);
double prefactor;
if (ireplica == rclimber) prefactor = -2.0*dot;
else prefactor = -dot + kspring*(nlen-plen);
if (ireplica == rclimber) prefactor = -2.0*dotall;
else prefactor = -dotall + kspring*(nlen-plen);
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
@ -306,3 +363,222 @@ void FixNEB::min_post_force(int vflag)
f[i][2] += prefactor*tangent[i][2];
}
}
/* ----------------------------------------------------------------------
send/recv NEB atoms to/from adjacent replicas
received atoms matching my local atoms are stored in xprev,xnext
replicas 0 and N-1 send but do not receive any atoms
------------------------------------------------------------------------- */
void FixNEB::inter_replica_comm()
{
int i,m;
MPI_Request request;
MPI_Request requests[2];
MPI_Status statuses[2];
// reallocate memory if necessary
if (atom->nlocal > maxlocal) reallocate();
double **x = atom->x;
tagint *tag = atom->tag;
int *mask = atom->mask;
int nlocal = atom->nlocal;
// -----------------------------------------------------
// 3 cases: two for single proc per replica
// one for multiple procs per replica
// -----------------------------------------------------
// single proc per replica
// all atoms are NEB atoms and no atom sorting is enabled
// direct comm of x -> xprev and x -> xnext
if (cmode == SINGLE_PROC_DIRECT) {
if (ireplica > 0)
MPI_Irecv(xprev[0],3*nlocal,MPI_DOUBLE,procprev,0,uworld,&request);
if (ireplica < nreplica-1)
MPI_Send(x[0],3*nlocal,MPI_DOUBLE,procnext,0,uworld);
if (ireplica > 0) MPI_Wait(&request,MPI_STATUS_IGNORE);
if (ireplica < nreplica-1)
MPI_Irecv(xnext[0],3*nlocal,MPI_DOUBLE,procnext,0,uworld,&request);
if (ireplica > 0)
MPI_Send(x[0],3*nlocal,MPI_DOUBLE,procprev,0,uworld);
if (ireplica < nreplica-1) MPI_Wait(&request,MPI_STATUS_IGNORE);
return;
}
// single proc per replica
// but only some atoms are NEB atoms or atom sorting is enabled
// send atom IDs and coords of only NEB atoms to prev/next proc
// recv proc uses atom->map() to match received coords to owned atoms
if (cmode == SINGLE_PROC_MAP) {
m = 0;
for (i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
tagsend[m] = tag[i];
xsend[m][0] = x[i][0];
xsend[m][1] = x[i][1];
xsend[m][2] = x[i][2];
m++;
}
if (ireplica > 0) {
MPI_Irecv(xrecv[0],3*nebatoms,MPI_DOUBLE,procprev,0,uworld,&requests[0]);
MPI_Irecv(tagrecv,nebatoms,MPI_LMP_TAGINT,procprev,0,uworld,&requests[1]);
}
if (ireplica < nreplica-1) {
MPI_Send(xsend[0],3*nebatoms,MPI_DOUBLE,procnext,0,uworld);
MPI_Send(tagsend,nebatoms,MPI_LMP_TAGINT,procnext,0,uworld);
}
if (ireplica > 0) {
MPI_Waitall(2,requests,statuses);
for (i = 0; i < nebatoms; i++) {
m = atom->map(tagrecv[i]);
xprev[m][0] = xrecv[i][0];
xprev[m][1] = xrecv[i][1];
xprev[m][2] = xrecv[i][2];
}
}
if (ireplica < nreplica-1) {
MPI_Irecv(xrecv[0],3*nebatoms,MPI_DOUBLE,procnext,0,uworld,&requests[0]);
MPI_Irecv(tagrecv,nebatoms,MPI_LMP_TAGINT,procnext,0,uworld,&requests[1]);
}
if (ireplica > 0) {
MPI_Send(xsend[0],3*nebatoms,MPI_DOUBLE,procprev,0,uworld);
MPI_Send(tagsend,nebatoms,MPI_LMP_TAGINT,procprev,0,uworld);
}
if (ireplica < nreplica-1) {
MPI_Waitall(2,requests,statuses);
for (i = 0; i < nebatoms; i++) {
m = atom->map(tagrecv[i]);
xnext[m][0] = xrecv[i][0];
xnext[m][1] = xrecv[i][1];
xnext[m][2] = xrecv[i][2];
}
}
return;
}
// multiple procs per replica
// MPI_Gather all coords and atom IDs to root proc of each replica
// send to root of adjacent replicas
// bcast within each replica
// each proc extracts info for atoms it owns via atom->map()
m = 0;
for (i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
tagsend[m] = tag[i];
xsend[m][0] = x[i][0];
xsend[m][1] = x[i][1];
xsend[m][2] = x[i][2];
m++;
}
MPI_Gather(&m,1,MPI_INT,counts,1,MPI_INT,0,world);
displacements[0] = 0;
for (i = 0; i < nprocs-1; i++)
displacements[i+1] = displacements[i] + counts[i];
MPI_Gatherv(tagsend,m,MPI_LMP_TAGINT,
tagsendall,counts,displacements,MPI_LMP_TAGINT,0,world);
for (i = 0; i < nprocs; i++) counts[i] *= 3;
for (i = 0; i < nprocs-1; i++)
displacements[i+1] = displacements[i] + counts[i];
if (xsend)
MPI_Gatherv(xsend[0],3*m,MPI_DOUBLE,
xsendall[0],counts,displacements,MPI_DOUBLE,0,world);
else
MPI_Gatherv(NULL,3*m,MPI_DOUBLE,
xsendall[0],counts,displacements,MPI_DOUBLE,0,world);
if (ireplica > 0 && me == 0) {
MPI_Irecv(xrecvall[0],3*nebatoms,MPI_DOUBLE,procprev,0,uworld,&requests[0]);
MPI_Irecv(tagrecvall,nebatoms,MPI_LMP_TAGINT,procprev,0,uworld,
&requests[1]);
}
if (ireplica < nreplica-1 && me == 0) {
MPI_Send(xsendall[0],3*nebatoms,MPI_DOUBLE,procnext,0,uworld);
MPI_Send(tagsendall,nebatoms,MPI_LMP_TAGINT,procnext,0,uworld);
}
if (ireplica > 0) {
if (me == 0) MPI_Waitall(2,requests,statuses);
MPI_Bcast(tagrecvall,nebatoms,MPI_INT,0,world);
MPI_Bcast(xrecvall[0],3*nebatoms,MPI_DOUBLE,0,world);
for (i = 0; i < nebatoms; i++) {
m = atom->map(tagrecvall[i]);
if (m < 0 || m >= nlocal) continue;
xprev[m][0] = xrecvall[i][0];
xprev[m][1] = xrecvall[i][1];
xprev[m][2] = xrecvall[i][2];
}
}
if (ireplica < nreplica-1 && me == 0) {
MPI_Irecv(xrecvall[0],3*nebatoms,MPI_DOUBLE,procnext,0,uworld,&requests[0]);
MPI_Irecv(tagrecvall,nebatoms,MPI_LMP_TAGINT,procnext,0,uworld,
&requests[1]);
}
if (ireplica > 0 && me == 0) {
MPI_Send(xsendall[0],3*nebatoms,MPI_DOUBLE,procprev,0,uworld);
MPI_Send(tagsendall,nebatoms,MPI_LMP_TAGINT,procprev,0,uworld);
}
if (ireplica < nreplica-1) {
if (me == 0) MPI_Waitall(2,requests,statuses);
MPI_Bcast(tagrecvall,nebatoms,MPI_INT,0,world);
MPI_Bcast(xrecvall[0],3*nebatoms,MPI_DOUBLE,0,world);
for (i = 0; i < nebatoms; i++) {
m = atom->map(tagrecvall[i]);
if (m < 0 || m >= nlocal) continue;
xnext[m][0] = xrecvall[i][0];
xnext[m][1] = xrecvall[i][1];
xnext[m][2] = xrecvall[i][2];
}
}
}
/* ----------------------------------------------------------------------
reallocate xprev,xnext,tangent arrays if necessary
reallocate communication arrays if necessary
------------------------------------------------------------------------- */
void FixNEB::reallocate()
{
memory->destroy(xprev);
memory->destroy(xnext);
memory->destroy(tangent);
if (cmode != SINGLE_PROC_DIRECT) {
memory->destroy(xsend);
memory->destroy(xrecv);
memory->destroy(tagsend);
memory->destroy(tagrecv);
}
maxlocal = atom->nmax;
memory->create(xprev,maxlocal,3,"neb:xprev");
memory->create(xnext,maxlocal,3,"neb:xnext");
memory->create(tangent,maxlocal,3,"neb:tangent");
if (cmode != SINGLE_PROC_DIRECT) {
memory->create(xsend,maxlocal,3,"neb:xsend");
memory->create(xrecv,maxlocal,3,"neb:xrecv");
memory->create(tagsend,maxlocal,"neb:tagsend");
memory->create(tagrecv,maxlocal,"neb:tagrecv");
}
}

View File

@ -38,17 +38,34 @@ class FixNEB : public Fix {
void min_post_force(int);
private:
int me,nprocs,nprocs_universe;
double kspring;
int ireplica,nreplica;
int procnext,procprev;
int cmode;
MPI_Comm uworld;
char *id_pe;
class Compute *pe;
int nebatoms;
double **xprev,**xnext;
double **tangent;
int nebatoms; // # of active NEB atoms
int ntotal; // total # of atoms, NEB or not
int maxlocal; // size of xprev,xnext,tangent arrays
double **xprev,**xnext; // coords of my owned atoms in neighbor replicas
double **tangent; // work vector for inter-replica forces
double **xsend,**xrecv; // coords to send/recv to/from other replica
tagint *tagsend,*tagrecv; // ditto for atom IDs
// info gathered from all procs in my replica
double **xsendall,**xrecvall; // coords to send/recv to/from other replica
tagint *tagsendall,*tagrecvall; // ditto for atom IDs
int *counts,*displacements; // used for MPI_Gather
void inter_replica_comm();
void reallocate();
};
}

View File

@ -137,10 +137,6 @@ void NEB::command(int narg, char **arg)
// error checks
if (nreplica == 1) error->all(FLERR,"Cannot use NEB with a single replica");
if (nreplica != universe->nprocs)
error->all(FLERR,"Can only use NEB with 1-processor replicas");
if (atom->sortfreq > 0)
error->all(FLERR,"Cannot use NEB with atom_modify sort enabled");
if (atom->map_style == 0)
error->all(FLERR,"Cannot use NEB unless atom map exists");
@ -228,7 +224,7 @@ void NEB::run()
// perform regular NEB for n1steps or until replicas converge
// retrieve PE values from fix NEB and print every nevery iterations
// break induced if converged
// break out of while loop early if converged
// damped dynamic min styles insure all replicas converge together
timer->init();
@ -531,7 +527,7 @@ void NEB::open(char *file)
/* ----------------------------------------------------------------------
query fix NEB for info on each replica
proc 0 prints current NEB status
universe proc 0 prints current NEB status
------------------------------------------------------------------------- */
void NEB::print_status()
@ -552,6 +548,7 @@ void NEB::print_status()
if (output->thermo->normflag) one[0] /= atom->natoms;
if (me == 0)
MPI_Allgather(one,nall,MPI_DOUBLE,&all[0][0],nall,MPI_DOUBLE,roots);
MPI_Bcast(&all[0][0],nall*nreplica,MPI_DOUBLE,0,world);
rdist[0] = 0.0;
for (int i = 1; i < nreplica; i++)

View File

@ -765,10 +765,10 @@ void PRD::log_event()
/* ----------------------------------------------------------------------
communicate atom coords and image flags in ireplica to all other replicas
one proc per replica:
if one proc per replica:
direct overwrite via bcast
else atoms could be stored in different order or on different procs:
collect to root proc of event replica
else atoms could be stored in different order on a proc or on different procs:
gather to root proc of event replica
bcast to roots of other replicas
bcast within each replica
each proc extracts info for atoms it owns using atom IDs

View File

@ -11,6 +11,11 @@
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
Contributing authors, for weighted balancing:
Axel Kohlmeyer (Temple U), Iain Bethune (EPCC)
------------------------------------------------------------------------- */
//#define BALANCE_DEBUG 1
#include <mpi.h>
@ -25,6 +30,16 @@
#include "domain.h"
#include "force.h"
#include "update.h"
#include "group.h"
#include "modify.h"
#include "fix_store.h"
#include "imbalance.h"
#include "imbalance_group.h"
#include "imbalance_time.h"
#include "imbalance_neigh.h"
#include "imbalance_store.h"
#include "imbalance_var.h"
#include "timer.h"
#include "memory.h"
#include "error.h"
@ -42,14 +57,16 @@ Balance::Balance(LAMMPS *lmp) : Pointers(lmp)
MPI_Comm_rank(world,&me);
MPI_Comm_size(world,&nprocs);
memory->create(proccount,nprocs,"balance:proccount");
memory->create(allproccount,nprocs,"balance:allproccount");
user_xsplit = user_ysplit = user_zsplit = NULL;
shift_allocate = 0;
proccost = allproccost = NULL;
rcb = NULL;
nimbalance = 0;
imbalances = NULL;
fixstore = NULL;
fp = NULL;
firststep = 1;
}
@ -58,8 +75,8 @@ Balance::Balance(LAMMPS *lmp) : Pointers(lmp)
Balance::~Balance()
{
memory->destroy(proccount);
memory->destroy(allproccount);
memory->destroy(proccost);
memory->destroy(allproccost);
delete [] user_xsplit;
delete [] user_ysplit;
@ -67,10 +84,10 @@ Balance::~Balance()
if (shift_allocate) {
delete [] bdim;
delete [] count;
delete [] onecost;
delete [] allcost;
delete [] sum;
delete [] target;
delete [] onecount;
delete [] lo;
delete [] hi;
delete [] losum;
@ -79,6 +96,14 @@ Balance::~Balance()
delete rcb;
for (int i = 0; i < nimbalance; i++) delete imbalances[i];
delete [] imbalances;
// check nfix in case all fixes have already been deleted
if (fixstore && modify->nfix) modify->delete_fix(fixstore->id);
fixstore = NULL;
if (fp) fclose(fp);
}
@ -91,9 +116,9 @@ void Balance::command(int narg, char **arg)
if (domain->box_exist == 0)
error->all(FLERR,"Balance command before simulation box is defined");
if (comm->me == 0 && screen) fprintf(screen,"Balancing ...\n");
if (me == 0 && screen) fprintf(screen,"Balancing ...\n");
// parse arguments
// parse required arguments
if (narg < 2) error->all(FLERR,"Illegal balance command");
@ -187,24 +212,7 @@ void Balance::command(int narg, char **arg)
} else break;
}
// optional keywords
outflag = 0;
while (iarg < narg) {
if (strcmp(arg[iarg],"out") == 0) {
if (iarg+2 > narg) error->all(FLERR,"Illegal balance command");
if (outflag) error->all(FLERR,"Illegal balance command");
outflag = 1;
if (me == 0) {
fp = fopen(arg[iarg+1],"w");
if (fp == NULL) error->one(FLERR,"Cannot open balance output file");
}
iarg += 2;
} else error->all(FLERR,"Illegal balance command");
}
// error check
// error checks
if (style == XYZ) {
if (zflag != NONE && dimension == 2)
@ -240,10 +248,18 @@ void Balance::command(int narg, char **arg)
if (style == BISECTION && comm->style == 0)
error->all(FLERR,"Balance rcb cannot be used with comm_style brick");
// insure atoms are in current box & update box via shrink-wrap
// process remaining optional args
options(iarg,narg,arg);
if (wtflag) weight_storage(NULL);
// insure particles are in current box & update box via shrink-wrap
// init entire system since comm->setup is done
// comm::init needs neighbor::init needs pair::init needs kspace::init, etc
MPI_Barrier(world);
double start_time = MPI_Wtime();
lmp->init();
if (domain->triclinic) domain->x2lamda(atom->nlocal);
@ -255,8 +271,10 @@ void Balance::command(int narg, char **arg)
// imbinit = initial imbalance
int maxinit;
double imbinit = imbalance_nlocal(maxinit);
double maxinit;
init_imbalance();
set_weights();
double imbinit = imbalance_factor(maxinit);
// no load-balance if imbalance doesn't exceed threshhold
// unless switching from tiled to non tiled layout, then force rebalance
@ -267,11 +285,11 @@ void Balance::command(int narg, char **arg)
// debug output of initial state
#ifdef BALANCE_DEBUG
if (outflag) dumpout(update->ntimestep,fp);
if (outflag) dumpout(update->ntimestep);
#endif
int niter = 0;
// perform load-balance
// style XYZ = explicit setting of cutting planes of logical 3d grid
@ -331,20 +349,22 @@ void Balance::command(int narg, char **arg)
if (domain->triclinic) domain->set_lamda_box();
domain->set_local_box();
// move atoms to new processors via irregular()
// move particles to new processors via irregular()
if (domain->triclinic) domain->x2lamda(atom->nlocal);
Irregular *irregular = new Irregular(lmp);
if (wtflag) fixstore->disable = 0;
if (style == BISECTION) irregular->migrate_atoms(1,1,rcb->sendproc);
else irregular->migrate_atoms(1);
if (wtflag) fixstore->disable = 1;
delete irregular;
if (domain->triclinic) domain->lamda2x(atom->nlocal);
// output of final result
if (outflag) dumpout(update->ntimestep,fp);
if (outflag) dumpout(update->ntimestep);
// check if any atoms were lost
// check if any particles were lost
bigint natoms;
bigint nblocal = atom->nlocal;
@ -356,22 +376,30 @@ void Balance::command(int narg, char **arg)
error->all(FLERR,str);
}
// imbfinal = final imbalance based on final nlocal
// imbfinal = final imbalance
int maxfinal;
double imbfinal = imbalance_nlocal(maxfinal);
double maxfinal;
double imbfinal = imbalance_factor(maxfinal);
// stats output
double stop_time = MPI_Wtime();
if (me == 0) {
if (screen) {
fprintf(screen," rebalancing time: %g seconds\n",stop_time-start_time);
fprintf(screen," iteration count = %d\n",niter);
fprintf(screen," initial/final max atoms/proc = %d %d\n",
for (int i = 0; i < nimbalance; ++i) imbalances[i]->info(screen);
fprintf(screen," initial/final max load/proc = %g %g\n",
maxinit,maxfinal);
fprintf(screen," initial/final imbalance factor = %g %g\n",
imbinit,imbfinal);
}
if (logfile) {
fprintf(logfile," rebalancing time: %g seconds\n",stop_time-start_time);
fprintf(logfile," iteration count = %d\n",niter);
fprintf(logfile," initial/final max atoms/proc = %d %d\n",
for (int i = 0; i < nimbalance; ++i) imbalances[i]->info(logfile);
fprintf(logfile," initial/final max load/proc = %g %g\n",
maxinit,maxfinal);
fprintf(logfile," initial/final imbalance factor = %g %g\n",
imbinit,imbfinal);
@ -413,61 +441,162 @@ void Balance::command(int narg, char **arg)
}
/* ----------------------------------------------------------------------
calculate imbalance based on nlocal
return max = max atom per proc
return imbalance factor = max atom per proc / ave atom per proc
process optional command args for Balance and FixBalance
------------------------------------------------------------------------- */
double Balance::imbalance_nlocal(int &max)
void Balance::options(int iarg, int narg, char **arg)
{
MPI_Allreduce(&atom->nlocal,&max,1,MPI_INT,MPI_MAX,world);
double imbalance = 1.0;
if (max) imbalance = max / (1.0 * atom->natoms / nprocs);
return imbalance;
// count max number of weight settings
nimbalance = 0;
for (int i = iarg; i < narg; i++)
if (strcmp(arg[i],"weight") == 0) nimbalance++;
if (nimbalance) imbalances = new Imbalance*[nimbalance];
nimbalance = 0;
wtflag = 0;
varflag = 0;
outflag = 0;
int outarg = 0;
fp = NULL;
while (iarg < narg) {
if (strcmp(arg[iarg],"weight") == 0) {
wtflag = 1;
Imbalance *imb;
int nopt = 0;
if (strcmp(arg[iarg+1],"group") == 0) {
imb = new ImbalanceGroup(lmp);
nopt = imb->options(narg-iarg,arg+iarg+2);
imbalances[nimbalance++] = imb;
} else if (strcmp(arg[iarg+1],"time") == 0) {
imb = new ImbalanceTime(lmp);
nopt = imb->options(narg-iarg,arg+iarg+2);
imbalances[nimbalance++] = imb;
} else if (strcmp(arg[iarg+1],"neigh") == 0) {
imb = new ImbalanceNeigh(lmp);
nopt = imb->options(narg-iarg,arg+iarg+2);
imbalances[nimbalance++] = imb;
} else if (strcmp(arg[iarg+1],"var") == 0) {
varflag = 1;
imb = new ImbalanceVar(lmp);
nopt = imb->options(narg-iarg,arg+iarg+2);
imbalances[nimbalance++] = imb;
} else if (strcmp(arg[iarg+1],"store") == 0) {
imb = new ImbalanceStore(lmp);
nopt = imb->options(narg-iarg,arg+iarg+2);
imbalances[nimbalance++] = imb;
} else {
error->all(FLERR,"Unknown (fix) balance weight method");
}
iarg += 2+nopt;
} else if (strcmp(arg[iarg],"out") == 0) {
if (iarg+2 > narg) error->all(FLERR,"Illegal (fix) balance command");
outflag = 1;
outarg = iarg+1;
iarg += 2;
} else error->all(FLERR,"Illegal (fix) balance command");
}
// output file
if (outflag && comm->me == 0) {
fp = fopen(arg[outarg],"w");
if (fp == NULL) error->one(FLERR,"Cannot open (fix) balance output file");
}
}
/* ----------------------------------------------------------------------
calculate imbalance based on processor splits in 3 dims
atoms must be in lamda coords (0-1) before called
map atoms to 3d grid of procs
return max = max atom per proc
return imbalance factor = max atom per proc / ave atom per proc
allocate per-particle weight storage via FixStore
use prefix to distinguish Balance vs FixBalance storage
fix could already be allocated if fix balance is re-specified
------------------------------------------------------------------------- */
double Balance::imbalance_splits(int &max)
void Balance::weight_storage(char *prefix)
{
double *xsplit = comm->xsplit;
double *ysplit = comm->ysplit;
double *zsplit = comm->zsplit;
char *fixargs[6];
int nx = comm->procgrid[0];
int ny = comm->procgrid[1];
int nz = comm->procgrid[2];
if (prefix) {
int n = strlen(prefix) + 32;
fixargs[0] = new char[n];
strcpy(fixargs[0],prefix);
strcat(fixargs[0],"IMBALANCE_WEIGHTS");
} else fixargs[0] = (char *) "IMBALANCE_WEIGHTS";
for (int i = 0; i < nprocs; i++) proccount[i] = 0;
fixargs[1] = (char *) "all";
fixargs[2] = (char *) "STORE";
fixargs[3] = (char *) "peratom";
fixargs[4] = (char *) "0";
fixargs[5] = (char *) "1";
int ifix = modify->find_fix(fixargs[0]);
if (ifix < 1) {
modify->add_fix(6,fixargs);
fixstore = (FixStore *) modify->fix[modify->nfix-1];
} else fixstore = (FixStore *) modify->fix[ifix];
fixstore->disable = 1;
if (prefix) delete [] fixargs[0];
}
/* ----------------------------------------------------------------------
invoke init() for each Imbalance class
------------------------------------------------------------------------- */
void Balance::init_imbalance()
{
if (!wtflag) return;
for (int n = 0; n < nimbalance; n++) imbalances[n]->init();
}
/* ----------------------------------------------------------------------
set weight for each particle
via list of Nimbalance classes
------------------------------------------------------------------------- */
void Balance::set_weights()
{
if (!wtflag) return;
weight = fixstore->vstore;
double **x = atom->x;
int nlocal = atom->nlocal;
int ix,iy,iz;
for (int i = 0; i < nlocal; i++) weight[i] = 1.0;
for (int n = 0; n < nimbalance; n++) imbalances[n]->compute(weight);
}
for (int i = 0; i < nlocal; i++) {
ix = binary(x[i][0],nx,xsplit);
iy = binary(x[i][1],ny,ysplit);
iz = binary(x[i][2],nz,zsplit);
proccount[iz*nx*ny + iy*nx + ix]++;
}
/* ----------------------------------------------------------------------
calculate imbalance factor based on particle count or particle weights
return max = max load per proc
return imbalance = max load per proc / ave load per proc
------------------------------------------------------------------------- */
double Balance::imbalance_factor(double &maxcost)
{
double mycost,totalcost;
if (wtflag) {
weight = fixstore->vstore;
int nlocal = atom->nlocal;
mycost = 0.0;
for (int i = 0; i < nlocal; i++) mycost += weight[i];
} else mycost = atom->nlocal;
MPI_Allreduce(&mycost,&maxcost,1,MPI_DOUBLE,MPI_MAX,world);
MPI_Allreduce(&mycost,&totalcost,1,MPI_DOUBLE,MPI_SUM,world);
MPI_Allreduce(proccount,allproccount,nprocs,MPI_INT,MPI_SUM,world);
max = 0;
for (int i = 0; i < nprocs; i++) max = MAX(max,allproccount[i]);
double imbalance = 1.0;
if (max) imbalance = max / (1.0 * atom->natoms / nprocs);
if (maxcost > 0.0) imbalance = maxcost / (totalcost/nprocs);
return imbalance;
}
/* ----------------------------------------------------------------------
perform balancing via RCB class
sortflag = flag for sorting order of received messages by proc ID
return list of procs to send my atoms to
------------------------------------------------------------------------- */
int *Balance::bisection(int sortflag)
@ -512,8 +641,11 @@ int *Balance::bisection(int sortflag)
// invoke RCB
// then invert() to create list of proc assignements for my atoms
//rcb->compute(dim,atom->nlocal,atom->x,NULL,boxlo,boxhi);
rcb->compute(dim,atom->nlocal,atom->x,NULL,shrinklo,shrinkhi);
if (wtflag) {
weight = fixstore->vstore;
rcb->compute(dim,atom->nlocal,atom->x,weight,shrinklo,shrinkhi);
} else rcb->compute(dim,atom->nlocal,atom->x,NULL,shrinklo,shrinkhi);
rcb->invert(sortflag);
// reset RCB lo/hi bounding box to full simulation box as needed
@ -530,9 +662,9 @@ int *Balance::bisection(int sortflag)
// store RCB cut, dim, lo/hi box in CommTiled
// cut and lo/hi need to be in fractional form so can
// OK if changes by epsilon from what RCB used since particles
// OK if changes by epsilon from what RCB used since atoms
// will subsequently migrate to new owning procs by exchange() anyway
// ditto for particles exactly on lo/hi RCB box boundaries due to ties
// ditto for atoms exactly on lo/hi RCB box boundaries due to ties
comm->rcbnew = 1;
@ -570,6 +702,9 @@ void Balance::shift_setup_static(char *str)
{
shift_allocate = 1;
memory->create(proccost,nprocs,"balance:proccost");
memory->create(allproccost,nprocs,"balance:allproccost");
ndim = strlen(str);
bdim = new int[ndim];
@ -582,14 +717,14 @@ void Balance::shift_setup_static(char *str)
int max = MAX(comm->procgrid[0],comm->procgrid[1]);
max = MAX(max,comm->procgrid[2]);
count = new bigint[max];
onecount = new bigint[max];
sum = new bigint[max+1];
target = new bigint[max+1];
onecost = new double[max];
allcost = new double[max];
sum = new double[max+1];
target = new double[max+1];
lo = new double[max+1];
hi = new double[max+1];
losum = new bigint[max+1];
hisum = new bigint[max+1];
losum = new double[max+1];
hisum = new double[max+1];
// if current layout is TILED, set initial uniform splits in Comm
// this gives starting point to subsequent shift balancing
@ -632,6 +767,7 @@ void Balance::shift_setup(char *str, int nitermax_in, double thresh_in)
int Balance::shift()
{
int i,j,k,m,np,max;
double mycost,totalcost;
double *split;
// no balancing if no atoms
@ -661,24 +797,32 @@ int Balance::shift()
else if (bdim[idim] == Z) split = comm->zsplit;
else continue;
// intial count and sum
// initial count and sum
np = procgrid[bdim[idim]];
tally(bdim[idim],np,split);
// target[i] = desired sum at split I
for (i = 0; i < np; i++)
target[i] = static_cast<int> (1.0*natoms/np * i + 0.5);
target[np] = natoms;
if (wtflag) {
weight = fixstore->vstore;
int nlocal = atom->nlocal;
mycost = 0.0;
for (i = 0; i < nlocal; i++) mycost += weight[i];
} else mycost = atom->nlocal;
MPI_Allreduce(&mycost,&totalcost,1,MPI_DOUBLE,MPI_SUM,world);
for (i = 0; i < np; i++) target[i] = totalcost/np * i;
target[np] = totalcost;
// lo[i] = closest split <= split[i] with a sum <= target
// hi[i] = closest split >= split[i] with a sum >= target
lo[0] = hi[0] = 0.0;
lo[np] = hi[np] = 1.0;
losum[0] = hisum[0] = 0;
losum[np] = hisum[np] = natoms;
losum[0] = hisum[0] = 0.0;
losum[np] = hisum[np] = totalcost;
for (i = 1; i < np; i++) {
for (j = i; j >= 0; j--)
@ -710,7 +854,7 @@ int Balance::shift()
#ifdef BALANCE_DEBUG
if (me == 0) debug_shift_output(idim,m+1,np,split);
if (outflag) dumpout(update->ntimestep,fp);
if (outflag) dumpout(update->ntimestep);
#endif
// stop if no change in splits, b/c all targets are met exactly
@ -792,28 +936,36 @@ int Balance::shift()
N = # of slices
split = N+1 cuts between N slices
return updated count = particles per slice
retrun updated sum = cummulative count below each of N+1 splits
return updated sum = cummulative count below each of N+1 splits
use binary search to find which slice each atom is in
------------------------------------------------------------------------- */
void Balance::tally(int dim, int n, double *split)
{
for (int i = 0; i < n; i++) onecount[i] = 0;
for (int i = 0; i < n; i++) onecost[i] = 0.0;
double **x = atom->x;
int nlocal = atom->nlocal;
int index;
for (int i = 0; i < nlocal; i++) {
index = binary(x[i][dim],n,split);
onecount[index]++;
if (wtflag) {
weight = fixstore->vstore;
for (int i = 0; i < nlocal; i++) {
index = binary(x[i][dim],n,split);
onecost[index] += weight[i];
}
} else {
for (int i = 0; i < nlocal; i++) {
index = binary(x[i][dim],n,split);
onecost[index] += 1.0;
}
}
MPI_Allreduce(onecount,count,n,MPI_LMP_BIGINT,MPI_SUM,world);
MPI_Allreduce(onecost,allcost,n,MPI_DOUBLE,MPI_SUM,world);
sum[0] = 0;
sum[0] = 0.0;
for (int i = 1; i < n+1; i++)
sum[i] = sum[i-1] + count[i-1];
sum[i] = sum[i-1] + allcost[i-1];
}
/* ----------------------------------------------------------------------
@ -875,6 +1027,63 @@ int Balance::adjust(int n, double *split)
return change;
}
/* ----------------------------------------------------------------------
calculate imbalance based on processor splits in 3 dims
atoms must be in lamda coords (0-1) before called
map particles to 3d grid of procs
return maxcost = max load per proc
return imbalance factor = max load per proc / ave load per proc
------------------------------------------------------------------------- */
double Balance::imbalance_splits(int &maxcost)
{
double *xsplit = comm->xsplit;
double *ysplit = comm->ysplit;
double *zsplit = comm->zsplit;
int nx = comm->procgrid[0];
int ny = comm->procgrid[1];
int nz = comm->procgrid[2];
for (int i = 0; i < nprocs; i++) proccost[i] = 0.0;
double **x = atom->x;
int nlocal = atom->nlocal;
int ix,iy,iz;
if (wtflag) {
weight = fixstore->vstore;
for (int i = 0; i < nlocal; i++) {
ix = binary(x[i][0],nx,xsplit);
iy = binary(x[i][1],ny,ysplit);
iz = binary(x[i][2],nz,zsplit);
proccost[iz*nx*ny + iy*nx + ix] += weight[i];
}
} else {
for (int i = 0; i < nlocal; i++) {
ix = binary(x[i][0],nx,xsplit);
iy = binary(x[i][1],ny,ysplit);
iz = binary(x[i][2],nz,zsplit);
proccost[iz*nx*ny + iy*nx + ix] += 1.0;
}
}
// one proc's particles may map to many partitions, so must Allreduce
MPI_Allreduce(proccost,allproccost,nprocs,MPI_DOUBLE,MPI_SUM,world);
maxcost = 0.0;
double totalcost = 0.0;
for (int i = 0; i < nprocs; i++) {
maxcost = MAX(maxcost,allproccost[i]);
totalcost += allproccost[i];
}
double imbalance = 1.0;
if (maxcost > 0.0) imbalance = maxcost / (totalcost/nprocs);
return imbalance;
}
/* ----------------------------------------------------------------------
binary search for where value falls in N-length vec
note that vec actually has N+1 values, but ignore last one
@ -917,7 +1126,7 @@ int Balance::binary(double value, int n, double *vec)
NOTE: only implemented for orthogonal boxes, not triclinic
------------------------------------------------------------------------- */
void Balance::dumpout(bigint tstep, FILE *fp)
void Balance::dumpout(bigint tstep)
{
int dimension = domain->dimension;
int triclinic = domain->triclinic;

View File

@ -28,15 +28,23 @@ namespace LAMMPS_NS {
class Balance : protected Pointers {
public:
class RCB *rcb;
class FixStore *fixstore; // per-atom weights stored in FixStore
int wtflag; // 1 if particle weighting is used
int varflag; // 1 if weight style var(iable) is used
int outflag; // 1 for output of balance results to file
Balance(class LAMMPS *);
~Balance();
void command(int, char **);
void options(int, int, char **);
void weight_storage(char *);
void init_imbalance();
void set_weights();
double imbalance_factor(double &);
void shift_setup(char *, int, double);
int shift();
int *bisection(int sortflag = 0);
double imbalance_nlocal(int &);
void dumpout(bigint, FILE *);
void dumpout(bigint);
private:
int me,nprocs;
@ -53,20 +61,23 @@ class Balance : protected Pointers {
int shift_allocate; // 1 if SHIFT vectors have been allocated
int ndim; // length of balance string bstr
int *bdim; // XYZ for each character in bstr
bigint *count; // counts for slices in one dim
bigint *onecount; // work vector of counts in one dim
bigint *sum; // cummulative count for slices in one dim
bigint *target; // target sum for slices in one dim
double *onecost; // work vector of counts in one dim
double *allcost; // counts for slices in one dim
double *sum; // cummulative count for slices in one dim
double *target; // target sum for slices in one dim
double *lo,*hi; // lo/hi split coords that bound each target
bigint *losum,*hisum; // cummulative counts at lo/hi coords
double *losum,*hisum; // cummulative counts at lo/hi coords
int rho; // 0 for geometric recursion
// 1 for density weighted recursion
int *proccount; // particle count per processor
int *allproccount;
double *proccost; // particle cost per processor
double *allproccost; // proccost summed across procs
int outflag; // for output of balance results to file
FILE *fp;
int nimbalance; // number of user-specified weight styles
class Imbalance **imbalances; // list of Imb classes, one per weight style
double *weight; // ptr to FixStore weight vector
FILE *fp; // balance output file
int firststep;
double imbalance_splits(int &);

View File

@ -23,6 +23,8 @@
#include "irregular.h"
#include "force.h"
#include "kspace.h"
#include "modify.h"
#include "fix_store.h"
#include "rcb.h"
#include "error.h"
@ -35,7 +37,7 @@ enum{LAYOUT_UNIFORM,LAYOUT_NONUNIFORM,LAYOUT_TILED}; // several files
/* ---------------------------------------------------------------------- */
FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) :
Fix(lmp, narg, arg), fp(NULL)
Fix(lmp, narg, arg), balance(NULL), irregular(NULL)
{
if (narg < 6) error->all(FLERR,"Illegal fix balance command");
@ -47,7 +49,7 @@ FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) :
extvector = 0;
global_freq = 1;
// parse arguments
// parse required arguments
int dimension = domain->dimension;
@ -62,7 +64,8 @@ FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) :
int iarg = 5;
if (lbstyle == SHIFT) {
if (iarg+4 > narg) error->all(FLERR,"Illegal fix balance command");
if (strlen(arg[iarg+1]) > 3) error->all(FLERR,"Illegal fix balance command");
if (strlen(arg[iarg+1]) > 3)
error->all(FLERR,"Illegal fix balance command");
strcpy(bstr,arg[iarg+1]);
nitermax = force->inumeric(FLERR,arg[iarg+2]);
if (nitermax <= 0) error->all(FLERR,"Illegal fix balance command");
@ -73,22 +76,7 @@ FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) :
iarg++;
}
// optional args
outflag = 0;
int outarg = 0;
fp = NULL;
while (iarg < narg) {
if (strcmp(arg[iarg],"out") == 0) {
if (iarg+2 > narg) error->all(FLERR,"Illegal fix balance command");
outflag = 1;
outarg = iarg+1;
iarg += 2;
} else error->all(FLERR,"Illegal fix balance command");
}
// error check
// error checks
if (lbstyle == SHIFT) {
int blen = strlen(bstr);
@ -108,37 +96,35 @@ FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) :
// create instance of Balance class
// if SHIFT, initialize it with params
// process remaining optional args via Balance
balance = new Balance(lmp);
if (lbstyle == SHIFT) balance->shift_setup(bstr,nitermax,thresh);
balance->options(iarg,narg,arg);
wtflag = balance->wtflag;
if (balance->varflag && nevery == 0)
error->all(FLERR,"Fix balance nevery = 0 cannot be used with weight var");
// create instance of Irregular class
irregular = new Irregular(lmp);
// output file
if (outflag && comm->me == 0) {
fp = fopen(arg[outarg],"w");
if (fp == NULL) error->one(FLERR,"Cannot open fix balance output file");
}
// only force reneighboring if nevery > 0
if (nevery) force_reneighbor = 1;
// compute initial outputs
imbfinal = imbprev = balance->imbalance_nlocal(maxperproc);
itercount = 0;
pending = 0;
imbfinal = imbprev = maxloadperproc = 0.0;
}
/* ---------------------------------------------------------------------- */
FixBalance::~FixBalance()
{
if (fp) fclose(fp);
delete balance;
delete irregular;
}
@ -155,10 +141,19 @@ int FixBalance::setmask()
/* ---------------------------------------------------------------------- */
void FixBalance::post_constructor()
{
if (wtflag) balance->weight_storage(id);
}
/* ---------------------------------------------------------------------- */
void FixBalance::init()
{
if (force->kspace) kspace_flag = 1;
else kspace_flag = 0;
balance->init_imbalance();
}
/* ---------------------------------------------------------------------- */
@ -188,10 +183,11 @@ void FixBalance::setup_pre_exchange()
// perform a rebalance if threshhold exceeded
imbnow = balance->imbalance_nlocal(maxperproc);
balance->set_weights();
imbnow = balance->imbalance_factor(maxloadperproc);
if (imbnow > thresh) rebalance();
// next_reneighbor = next time to force reneighboring
// next timestep to rebalance
if (nevery) next_reneighbor = (update->ntimestep/nevery)*nevery + nevery;
}
@ -214,15 +210,15 @@ void FixBalance::pre_exchange()
domain->reset_box();
if (domain->triclinic) domain->lamda2x(atom->nlocal);
// return if imbalance < threshhold
// perform a rebalance if threshhold exceeded
// if weight variable is used, wrap weight setting in clear/add compute
imbnow = balance->imbalance_nlocal(maxperproc);
if (imbnow <= thresh) {
if (nevery) next_reneighbor = (update->ntimestep/nevery)*nevery + nevery;
return;
}
if (balance->varflag) modify->clearstep_compute();
balance->set_weights();
if (balance->varflag) modify->addstep_compute(update->ntimestep + nevery);
rebalance();
imbnow = balance->imbalance_factor(maxloadperproc);
if (imbnow > thresh) rebalance();
// next timestep to rebalance
@ -237,7 +233,7 @@ void FixBalance::pre_exchange()
void FixBalance::pre_neighbor()
{
if (!pending) return;
imbfinal = balance->imbalance_nlocal(maxperproc);
imbfinal = balance->imbalance_factor(maxloadperproc);
pending = 0;
}
@ -262,7 +258,7 @@ void FixBalance::rebalance()
// output of new decomposition
if (outflag) balance->dumpout(update->ntimestep,fp);
if (balance->outflag) balance->dumpout(update->ntimestep);
// reset proc sub-domains
// check and warn if any proc's subbox is smaller than neigh skin
@ -277,8 +273,10 @@ void FixBalance::rebalance()
// else allow caller's comm->exchange() to do it
if (domain->triclinic) domain->x2lamda(atom->nlocal);
if (wtflag) balance->fixstore->disable = 0;
if (lbstyle == BISECTION) irregular->migrate_atoms(0,1,sendproc);
else if (irregular->migrate_check()) irregular->migrate_atoms();
if (wtflag) balance->fixstore->disable = 1;
if (domain->triclinic) domain->lamda2x(atom->nlocal);
// invoke KSpace setup_grid() to adjust to new proc sub-domains
@ -306,7 +304,7 @@ double FixBalance::compute_scalar()
double FixBalance::compute_vector(int i)
{
if (i == 0) return (double) maxperproc;
if (i == 0) return maxloadperproc;
if (i == 1) return (double) itercount;
return imbprev;
}

View File

@ -30,6 +30,7 @@ class FixBalance : public Fix {
FixBalance(class LAMMPS *, int, char **);
~FixBalance();
int setmask();
void post_constructor();
void init();
void setup(int);
void setup_pre_exchange();
@ -40,15 +41,15 @@ class FixBalance : public Fix {
double memory_usage();
private:
int nevery,lbstyle,nitermax,outflag;
int nevery,lbstyle,nitermax;
double thresh,stopthresh;
char bstr[4];
FILE *fp;
int wtflag; // 1 for weighted balancing
double imbnow; // current imbalance factor
double imbprev; // imbalance factor before last rebalancing
double imbfinal; // imbalance factor after last rebalancing
int maxperproc; // max atoms on any processor
double maxloadperproc; // max load on any processor
int itercount; // iteration count of last call to Balance
int kspace_flag; // 1 if KSpace solver defined
int pending;

20
src/imbalance.cpp Normal file
View File

@ -0,0 +1,20 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include "imbalance.h"
using namespace LAMMPS_NS;
/* ---------------------------------------------------------------------- */
Imbalance::Imbalance(LAMMPS *lmp) : Pointers(lmp) {}

45
src/imbalance.h Normal file
View File

@ -0,0 +1,45 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_H
#define LMP_IMBALANCE_H
#include <stdio.h>
#include "pointers.h"
namespace LAMMPS_NS {
class Imbalance : protected Pointers {
public:
Imbalance(class LAMMPS *);
virtual ~Imbalance() {};
// parse options. return number of arguments consumed (required)
virtual int options(int narg, char **arg) = 0;
// reinitialize internal data (needed for fix balance) (optional)
virtual void init() {};
// compute and apply weight factors to local atom array (required)
virtual void compute(double *weights) = 0;
// print information about the state of this imbalance compute (required)
virtual void info(FILE *fp) = 0;
// disallow default and copy constructor, assignment operator
// private:
//Imbalance() {};
//Imbalance(const Imbalance &) {};
//Imbalance &operator=(const Imbalance &) {return *this;};
};
}
#endif

89
src/imbalance_group.cpp Normal file
View File

@ -0,0 +1,89 @@
/* ----------------------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include "imbalance_group.h"
#include "atom.h"
#include "force.h"
#include "group.h"
#include "error.h"
using namespace LAMMPS_NS;
/* -------------------------------------------------------------------- */
ImbalanceGroup::ImbalanceGroup(LAMMPS *lmp) : Imbalance(lmp), id(0), factor(0)
{}
/* -------------------------------------------------------------------- */
ImbalanceGroup::~ImbalanceGroup()
{
delete [] id;
delete [] factor;
}
/* -------------------------------------------------------------------- */
int ImbalanceGroup::options(int narg, char **arg)
{
if (narg < 3) error->all(FLERR,"Illegal balance weight command");
num = force->inumeric(FLERR,arg[0]);
if (num < 1) error->all(FLERR,"Illegal balance weight command");
if (2*num+1 > narg) error->all(FLERR,"Illegal balance weight command");
id = new int[num];
factor = new double[num];
for (int i = 0; i < num; ++i) {
id[i] = group->find(arg[2*i+1]);
if (id[i] < 0)
error->all(FLERR,"Unknown group in balance weight command");
factor[i] = force->numeric(FLERR,arg[2*i+2]);
}
return 2*num+1;
}
/* -------------------------------------------------------------------- */
void ImbalanceGroup::compute(double *weight)
{
const int * const mask = atom->mask;
const int * const bitmask = group->bitmask;
const int nlocal = atom->nlocal;
if (num == 0) return;
for (int i = 0; i < nlocal; ++i) {
const int imask = mask[i];
double iweight = weight[i];
for (int j = 0; j < num; ++j) {
if (imask & bitmask[id[j]])
iweight *= factor[j];
}
weight[i] = iweight;
}
}
/* -------------------------------------------------------------------- */
void ImbalanceGroup::info(FILE *fp)
{
if (num > 0) {
const char * const * const names = group->names;
fprintf(fp," group weights:");
for (int i = 0; i < num; ++i)
fprintf(fp," %s=%g",names[id[i]],factor[i]);
fputs("\n",fp);
}
}

41
src/imbalance_group.h Normal file
View File

@ -0,0 +1,41 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_GROUP_H
#define LMP_IMBALANCE_GROUP_H
#include "imbalance.h"
namespace LAMMPS_NS {
class ImbalanceGroup : public Imbalance {
public:
ImbalanceGroup(class LAMMPS *);
virtual ~ImbalanceGroup();
// parse options, return number of arguments consumed
virtual int options(int, char **);
// compute and apply weight factors to local atom array
virtual void compute(double *);
// print information about the state of this imbalance compute
virtual void info(FILE *);
private:
int num; // number of groups with weights
int *id; // numerical IDs of groups
double *factor; // group weight factors
};
}
#endif

102
src/imbalance_neigh.cpp Normal file
View File

@ -0,0 +1,102 @@
/* ----------------------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include <mpi.h>
#include "imbalance_neigh.h"
#include "atom.h"
#include "comm.h"
#include "force.h"
#include "neighbor.h"
#include "neigh_request.h"
#include "neigh_list.h"
#include "error.h"
using namespace LAMMPS_NS;
/* -------------------------------------------------------------------- */
ImbalanceNeigh::ImbalanceNeigh(LAMMPS *lmp) : Imbalance(lmp)
{
did_warn = 0;
}
/* -------------------------------------------------------------------- */
int ImbalanceNeigh::options(int narg, char **arg)
{
if (narg < 1) error->all(FLERR,"Illegal balance weight command");
factor = force->numeric(FLERR,arg[0]);
if (factor < 0.0) error->all(FLERR,"Illegal balance weight command");
return 1;
}
/* -------------------------------------------------------------------- */
void ImbalanceNeigh::compute(double *weight)
{
int req;
if (factor == 0.0) return;
// find suitable neighbor list
// we can only make use of certain (conventional) neighbor lists
for (req = 0; req < neighbor->old_nrequest; ++req) {
if ((neighbor->old_requests[req]->half ||
neighbor->old_requests[req]->gran ||
neighbor->old_requests[req]->respaouter ||
neighbor->old_requests[req]->half_from_full) &&
neighbor->old_requests[req]->skip == 0 &&
neighbor->lists[req] && neighbor->lists[req]->numneigh) break;
}
if (req >= neighbor->old_nrequest || neighbor->ago < 0) {
if (comm->me == 0 && !did_warn)
error->warning(FLERR,"No suitable neighbor list found. "
"Neighbor weighted balancing skipped");
did_warn = 1;
return;
}
NeighList *list = neighbor->lists[req];
bigint neighsum = 0;
const int inum = list->inum;
const int * const ilist = list->ilist;
const int * const numneigh = list->numneigh;
// first pass: get local number of neighbors
for (int i = 0; i < inum; ++i) neighsum += numneigh[ilist[i]];
double allatoms = static_cast <double>(atom->natoms);
if (allatoms == 0.0) allatoms = 1.0;
double allavg;
double myavg = static_cast<double>(neighsum)/allatoms;
MPI_Allreduce(&myavg,&allavg,1,MPI_DOUBLE,MPI_SUM,world);
// second pass: compute and apply weights
double scale = 1.0/allavg;
for (int ii = 0; ii < inum; ++ii) {
const int i = ilist[ii];
weight[i] *= (1.0-factor) + factor*scale*numneigh[i];
}
}
/* -------------------------------------------------------------------- */
void ImbalanceNeigh::info(FILE *fp)
{
fprintf(fp," neigh weight factor: %g\n",factor);
}

41
src/imbalance_neigh.h Normal file
View File

@ -0,0 +1,41 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_NEIGH_H
#define LMP_IMBALANCE_NEIGH_H
#include "imbalance.h"
namespace LAMMPS_NS {
class ImbalanceNeigh : public Imbalance {
public:
ImbalanceNeigh(class LAMMPS *);
virtual ~ImbalanceNeigh() {}
public:
// parse options, return number of arguments consumed
virtual int options(int, char **);
// compute and apply weight factors to local atom array
virtual void compute(double *);
// print information about the state of this imbalance compute
virtual void info(FILE *);
private:
double factor; // weight factor for neighbor imbalance
int did_warn; // 1 if warned about no suitable neighbor list
};
}
#endif

69
src/imbalance_store.cpp Normal file
View File

@ -0,0 +1,69 @@
/* ----------------------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include <string.h>
#include "imbalance_store.h"
#include "atom.h"
#include "input.h"
#include "error.h"
using namespace LAMMPS_NS;
/* -------------------------------------------------------------------- */
ImbalanceStore::ImbalanceStore(LAMMPS *lmp) : Imbalance(lmp), name(0) {}
/* -------------------------------------------------------------------- */
ImbalanceStore::~ImbalanceStore()
{
delete [] name;
}
/* -------------------------------------------------------------------- */
int ImbalanceStore::options(int narg, char **arg)
{
if (narg < 1) error->all(FLERR,"Illegal balance weight command");
int len = strlen(arg[0]) + 1;
name = new char[len];
memcpy(name,arg[0],len);
return 1;
}
/* -------------------------------------------------------------------- */
void ImbalanceStore::compute(double *weight)
{
int dflag = 0;
int idx = atom->find_custom(name,dflag);
// property does not exist
if (idx < 0 || dflag != 1) return;
double *prop = atom->dvector[idx];
const int nlocal = atom->nlocal;
for (int i = 0; i < nlocal; ++i)
prop[i] = weight[i];
}
/* -------------------------------------------------------------------- */
void ImbalanceStore::info(FILE *fp)
{
fprintf(fp," storing weight in atom property d_%s\n",name);
}

40
src/imbalance_store.h Normal file
View File

@ -0,0 +1,40 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_STORE_H
#define LMP_IMBALANCE_STORE_H
#include "imbalance.h"
namespace LAMMPS_NS {
class ImbalanceStore : public Imbalance {
public:
ImbalanceStore(class LAMMPS *);
virtual ~ImbalanceStore();
public:
// parse options, return number of arguments consumed
virtual int options(int, char **);
// compute per-atom imbalance and apply to weight array
virtual void compute(double *);
// print information about the state of this imbalance compute (required)
virtual void info(FILE *);
private:
char *name; // property name
};
}
#endif

86
src/imbalance_time.cpp Normal file
View File

@ -0,0 +1,86 @@
/* ----------------------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include <mpi.h>
#include "imbalance_time.h"
#include "atom.h"
#include "comm.h"
#include "force.h"
#include "timer.h"
#include "error.h"
using namespace LAMMPS_NS;
/* -------------------------------------------------------------------- */
ImbalanceTime::ImbalanceTime(LAMMPS *lmp) : Imbalance(lmp) {}
/* -------------------------------------------------------------------- */
int ImbalanceTime::options(int narg, char **arg)
{
if (narg < 1) error->all(FLERR,"Illegal balance weight command");
factor = force->numeric(FLERR,arg[0]);
if (factor < 0.0) error->all(FLERR,"Illegal balance weight command");
return 1;
}
/* ----------------------------------------------------------------------
reset last, needed for fix balance caller
------------------------------------------------------------------------- */
void ImbalanceTime::init()
{
last = 0.0;
}
/* -------------------------------------------------------------------- */
void ImbalanceTime::compute(double *weight)
{
const int nlocal = atom->nlocal;
const bigint natoms = atom->natoms;
if (factor == 0.0) return;
// compute the cost function of based on relevant timers
if (timer->has_normal()) {
double cost = -last;
cost += timer->get_wall(Timer::PAIR);
cost += timer->get_wall(Timer::NEIGH);
cost += timer->get_wall(Timer::BOND);
cost += timer->get_wall(Timer::KSPACE);
double allcost;
MPI_Allreduce(&cost,&allcost,1,MPI_DOUBLE,MPI_SUM,world);
if ((allcost > 0.0) && (nlocal > 0)) {
const double avgcost = allcost/natoms;
const double localcost = cost/nlocal;
const double scale = (1.0-factor) + factor*localcost/avgcost;
for (int i = 0; i < nlocal; ++i) weight[i] *= scale;
}
// record time up to this point
last += cost;
}
}
/* -------------------------------------------------------------------- */
void ImbalanceTime::info(FILE *fp)
{
fprintf(fp," time weight factor: %g\n",factor);
}

43
src/imbalance_time.h Normal file
View File

@ -0,0 +1,43 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_TIME_H
#define LMP_IMBALANCE_TIME_H
#include "imbalance.h"
namespace LAMMPS_NS {
class ImbalanceTime : public Imbalance {
public:
ImbalanceTime(class LAMMPS *);
virtual ~ImbalanceTime() {}
public:
// parse options, return number of arguments consumed
virtual int options(int, char **);
// reinitialize internal data
virtual void init();
// compute and apply weight factors to local atom array
virtual void compute(double *);
// print information about the state of this imbalance compute
virtual void info(FILE *);
private:
double factor; // weight factor for time imbalance
double last; // combined wall time from last call
};
}
#endif

88
src/imbalance_var.cpp Normal file
View File

@ -0,0 +1,88 @@
/* ----------------------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#include <string.h>
#include "imbalance_var.h"
#include "atom.h"
#include "group.h"
#include "input.h"
#include "variable.h"
#include "memory.h"
#include "error.h"
// DEBUG
#include "update.h"
using namespace LAMMPS_NS;
/* -------------------------------------------------------------------- */
ImbalanceVar::ImbalanceVar(LAMMPS *lmp) : Imbalance(lmp), name(0) {}
/* -------------------------------------------------------------------- */
ImbalanceVar::~ImbalanceVar()
{
delete [] name;
}
/* -------------------------------------------------------------------- */
int ImbalanceVar::options(int narg, char **arg)
{
if (narg < 1) error->all(FLERR,"Illegal balance weight command");
int len = strlen(arg[0]) + 1;
name = new char[len];
memcpy(name,arg[0],len);
init();
return 1;
}
/* -------------------------------------------------------------------- */
void ImbalanceVar::init()
{
id = input->variable->find(name);
if (id < 0) {
error->all(FLERR,"Variable name for balance weight does not exist");
} else {
if (input->variable->atomstyle(id) == 0)
error->all(FLERR,"Variable for balance weight has invalid style");
}
}
/* -------------------------------------------------------------------- */
void ImbalanceVar::compute(double *weight)
{
const int all = group->find("all");
if (all < 0) return;
double *values;
const int nlocal = atom->nlocal;
memory->create(values,nlocal,"imbalance:values");
input->variable->compute_atom(id,all,values,1,0);
for (int i = 0; i < nlocal; ++i) weight[i] *= values[i];
memory->destroy(values);
}
/* -------------------------------------------------------------------- */
void ImbalanceVar::info(FILE *fp)
{
fprintf(fp," weight variable: %s\n",name);
}

43
src/imbalance_var.h Normal file
View File

@ -0,0 +1,43 @@
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifndef LMP_IMBALANCE_VAR_H
#define LMP_IMBALANCE_VAR_H
#include "imbalance.h"
namespace LAMMPS_NS {
class ImbalanceVar : public Imbalance {
public:
ImbalanceVar(class LAMMPS *);
virtual ~ImbalanceVar();
public:
// parse options. return number of arguments consumed.
virtual int options(int, char **);
// re-initialize internal data, e.g. variable ID
virtual void init();
// compute per-atom imbalance and apply to weight array
virtual void compute(double *);
// print information about the state of this imbalance compute (required)
virtual void info(FILE *);
private:
char *name; // variable name
int id; // variable index
};
}
#endif

View File

@ -1 +1 @@
#define LAMMPS_VERSION "26 Sep 2016"
#define LAMMPS_VERSION "28 Sep 2016"