Compare commits
199 Commits
develop
...
granular-t
| Author | SHA1 | Date | |
|---|---|---|---|
| 1cc2d0739e | |||
| f378416131 | |||
| 5737eddfbf | |||
| 30cf2a9197 | |||
| 6bfec2a52b | |||
| 24b449a455 | |||
| 4b5f2aca49 | |||
| a9b3923b26 | |||
| 872b29e5cf | |||
| 5db41ec62b | |||
| ab1ceec3bf | |||
| e8d29d0575 | |||
| 2f04f04f8b | |||
| 27c38788fb | |||
| 49d45fd46c | |||
| 0de52e6950 | |||
| 175696cc9e | |||
| ac143f6c40 | |||
| aa70a3affc | |||
| a86784ff20 | |||
| 0022a6de9d | |||
| 2a85dfd45b | |||
| 20c0769c5d | |||
| 333136edda | |||
| 1f617ad2d0 | |||
| 5bc6bc9b87 | |||
| 80f70627b0 | |||
| 28043145b9 | |||
| adb58182a6 | |||
| 19e7d47566 | |||
| 82eeba6504 | |||
| 0fdf10dbf1 | |||
| ee26d6c857 | |||
| 9d0f0c51b6 | |||
| 7ba480a0e3 | |||
| ef3645c194 | |||
| b2a24fd013 | |||
| 6ddb823ed3 | |||
| 418a7a1b1d | |||
| 667a426075 | |||
| bdd013a6b8 | |||
| b31c93bc9d | |||
| 9f90dc8a23 | |||
| 776b4abeff | |||
| 62ce5757ae | |||
| ff40a235dd | |||
| a7f1ea0e15 | |||
| 3a983696e1 | |||
| fd84afebc4 | |||
| 151e8a9b21 | |||
| 7d788b9754 | |||
| ed75527069 | |||
| 9b4ed82c05 | |||
| 11aec5561b | |||
| a7ded8f9dd | |||
| fffd70b8b6 | |||
| 00036f65e0 | |||
| a92ef0750d | |||
| c80d95b607 | |||
| 86cf903276 | |||
| 5869be7b1a | |||
| a914d7fecf | |||
| 63e3d2f3f8 | |||
| f7b6cb120d | |||
| 352dee0d27 | |||
| cf11722c7d | |||
| 6ff458759f | |||
| 5a7abccd28 | |||
| 9f58ef5cc8 | |||
| 244b3cdae9 | |||
| 2a63d04aff | |||
| 4167b0a00d | |||
| 94109e606e | |||
| b9aa11b547 | |||
| bc1c2378b2 | |||
| af5315e173 | |||
| 6ec3883b1e | |||
| a4429ed0ed | |||
| 5fba482c82 | |||
| 0f2e097886 | |||
| 9a634612f4 | |||
| c6a1805c38 | |||
| 3a8d5d194e | |||
| 6221a61aeb | |||
| 6112cc46e1 | |||
| 19376ede6b | |||
| 7af138a224 | |||
| 8593aef74c | |||
| 0e8f0be587 | |||
| f90aead385 | |||
| 8356f093cd | |||
| e91cb95ca5 | |||
| d55743e5ad | |||
| b32e3c3d94 | |||
| 6a8bfc4236 | |||
| bfb5e31bef | |||
| 5c64405338 | |||
| 07a8b3d22d | |||
| 1b8601fbd4 | |||
| 2e81dc228e | |||
| 5e12b52b54 | |||
| 856eda6c57 | |||
| 2a8ae96eb4 | |||
| daa963faa6 | |||
| 9b646a5ab4 | |||
| e78586bb7d | |||
| 785b7424ac | |||
| f74b4dbe92 | |||
| d6db102581 | |||
| 573c34932c | |||
| 3d27bc2262 | |||
| f50e2a0323 | |||
| f4af405347 | |||
| 287125f198 | |||
| df4b41cbff | |||
| d724324189 | |||
| 5977d5e169 | |||
| 6bad252cc4 | |||
| 1fae0ed6bd | |||
| ee10b8f51e | |||
| c8b05e50bd | |||
| a64a5f2b4e | |||
| e6789c8336 | |||
| c5cfa0ea95 | |||
| 6e4a02e898 | |||
| ed77f400bd | |||
| 62f2bb0643 | |||
| acb80365fa | |||
| c65e3a95fa | |||
| 1e65ec4049 | |||
| 966b74e4f1 | |||
| 174159cc22 | |||
| 32d6c14df0 | |||
| 814b6cd83c | |||
| 798b264f1c | |||
| 18f19f0ef0 | |||
| c817b3fe07 | |||
| dbe9d3d07b | |||
| 85d3abbacf | |||
| a64770d3b4 | |||
| 2563f636e8 | |||
| 9770267e1d | |||
| 4ebba64003 | |||
| 52e1f5addd | |||
| 6f8b352459 | |||
| 7db2cd5979 | |||
| 8b860515ab | |||
| ad0ed5acf0 | |||
| 1cd3f859e7 | |||
| afe393706c | |||
| 382b738092 | |||
| ef3fbf08b7 | |||
| 953f7110f6 | |||
| dd3875d9b2 | |||
| 697a3a67b3 | |||
| 38fe7d8d2b | |||
| cab9219587 | |||
| 6f63b7ce1c | |||
| 2aa9077403 | |||
| 83fda0a19d | |||
| b4c9bace70 | |||
| fd336b3925 | |||
| c18c911ea7 | |||
| c781d11146 | |||
| 6644a75519 | |||
| 0305b08e82 | |||
| cdcffeb3f5 | |||
| 64bf2f838b | |||
| 197db837e1 | |||
| 10a08a7d07 | |||
| cb1c6a07ed | |||
| 196ddd391d | |||
| b889df7535 | |||
| 53b3bd69c0 | |||
| 6fe6a0b8f2 | |||
| 0812e77d27 | |||
| 04490971e4 | |||
| d6364f99b1 | |||
| dc86c3b3a1 | |||
| e03f0ac54e | |||
| 88a1720ece | |||
| 0604b8911c | |||
| 1e238362a7 | |||
| b3ae1ecee6 | |||
| 33d9454216 | |||
| dbded994f8 | |||
| 83fd64b362 | |||
| 5d4481c82d | |||
| b603fc663b | |||
| 289e2622c2 | |||
| bc8381ff78 | |||
| 7d5d8d4f49 | |||
| a26038e1ad | |||
| 9cc0b7d793 | |||
| 489e80151a | |||
| 8ec5d83540 | |||
| aa75fe2584 | |||
| 44b861bf92 | |||
| f0cd399836 |
@ -234,6 +234,8 @@ OPT.
|
||||
* :doc:`srd <fix_srd>`
|
||||
* :doc:`store/force <fix_store_force>`
|
||||
* :doc:`store/state <fix_store_state>`
|
||||
* :doc:`surface/global <fix_surface_global>`
|
||||
* :doc:`surface/local <fix_surface_local>`
|
||||
* :doc:`tdpd/source <fix_dpd_source>`
|
||||
* :doc:`temp/berendsen (k) <fix_temp_berendsen>`
|
||||
* :doc:`temp/csld <fix_temp_csvr>`
|
||||
|
||||
@ -23,7 +23,6 @@ General howto
|
||||
Howto_library
|
||||
Howto_couple
|
||||
Howto_mdi
|
||||
Howto_broken_bonds
|
||||
|
||||
Settings howto
|
||||
==============
|
||||
@ -49,6 +48,7 @@ Analysis howto
|
||||
:maxdepth: 1
|
||||
|
||||
Howto_output
|
||||
Howto_structured_data
|
||||
Howto_chunk
|
||||
Howto_grid
|
||||
Howto_temperature
|
||||
@ -56,7 +56,6 @@ Analysis howto
|
||||
Howto_kappa
|
||||
Howto_viscosity
|
||||
Howto_diffusion
|
||||
Howto_structured_data
|
||||
|
||||
Force fields howto
|
||||
==================
|
||||
@ -65,6 +64,7 @@ Force fields howto
|
||||
:name: force_howto
|
||||
:maxdepth: 1
|
||||
|
||||
Howto_broken_bonds
|
||||
Howto_bioFF
|
||||
Howto_amoeba
|
||||
Howto_tip3p
|
||||
@ -81,6 +81,7 @@ Packages howto
|
||||
|
||||
Howto_spherical
|
||||
Howto_granular
|
||||
Howto_granular_surfaces
|
||||
Howto_body
|
||||
Howto_bpm
|
||||
Howto_polarizable
|
||||
|
||||
@ -1,10 +1,28 @@
|
||||
Granular models
|
||||
===============
|
||||
|
||||
Granular system are composed of spherical particles with a diameter,
|
||||
Granular systems are composed of spherical particles with a diameter,
|
||||
as opposed to point particles. This means they have an angular
|
||||
velocity and torque can be imparted to them to cause them to rotate.
|
||||
|
||||
The various atom, pair, fix, and compute styles listed below are
|
||||
useful for creaeting granular models.
|
||||
|
||||
You can also define granular surfaces which are a collection of line
|
||||
segments (2d systems) or triangles (3d systems), which act as
|
||||
boundaries interacting with the particles. Particle/surface
|
||||
interactions can be specified with similar options as the pair styles
|
||||
listed below.
|
||||
|
||||
This Howto doc page and two fixes explain how to define and use
|
||||
granular surfaces:
|
||||
|
||||
* :doc:`Howto granular surfaces <Howto_granular_surfaces>`
|
||||
* :doc:`fix surface/global <fix_surface_global>`
|
||||
* :doc:`fix surface/local <fix_surface_local>`
|
||||
|
||||
----------
|
||||
|
||||
To run a simulation of a granular model, you will want to use
|
||||
the following commands:
|
||||
|
||||
@ -16,12 +34,15 @@ This compute
|
||||
|
||||
* :doc:`compute erotate/sphere <compute_erotate_sphere>`
|
||||
|
||||
calculates rotational kinetic energy which can be :doc:`output with thermodynamic info <Howto_output>`.
|
||||
The compute
|
||||
calculates rotational kinetic energy which can be :doc:`output with
|
||||
thermodynamic info <Howto_output>`.
|
||||
|
||||
This compute
|
||||
|
||||
* :doc:`compute fabric <compute_fabric>`
|
||||
|
||||
calculates various versions of the fabric tensor for granular and non-granular pair styles.
|
||||
calculates various versions of the fabric tensor for granular and
|
||||
non-granular pair styles.
|
||||
|
||||
Use one of these 4 pair potentials, which compute forces and torques
|
||||
between interacting pairs of particles:
|
||||
@ -31,8 +52,13 @@ between interacting pairs of particles:
|
||||
* :doc:`pair_style gran/hertzian <pair_gran>`
|
||||
* :doc:`pair_style granular <pair_granular>`
|
||||
|
||||
To add your own custom granular contact model to the :doc:`pair_style
|
||||
granular <pair_granular>` command, see the :doc:`Modifying granular
|
||||
sub-models <Modify_gran_sub_mod>` doc page.
|
||||
|
||||
These commands implement fix options specific to granular systems:
|
||||
|
||||
* :doc:`fix freeze <fix_freeze>`
|
||||
* :doc:`fix freeze <fix_freeze>`
|
||||
* :doc:`fix pour <fix_pour>`
|
||||
* :doc:`fix viscous <fix_viscous>`
|
||||
@ -69,6 +95,3 @@ computations between frozen atoms by using this command:
|
||||
will be the same as in 3d. If you wish to model granular particles in
|
||||
2d as 2d discs, see the note on this topic on the :doc:`Howto 2d <Howto_2d>`
|
||||
doc page, where 2d simulations are discussed.
|
||||
|
||||
To add custom granular contact models, see the
|
||||
:doc:`modifying granular sub-models page <Modify_gran_sub_mod>`.
|
||||
|
||||
289
doc/src/Howto_granular_surfaces.rst
Normal file
289
doc/src/Howto_granular_surfaces.rst
Normal file
@ -0,0 +1,289 @@
|
||||
Granular surfaces
|
||||
=================
|
||||
|
||||
As explained on the :doc:`Howto granular <Howto_granular>` doc page,
|
||||
granular systems are composed of spherical particles with a diameter,
|
||||
as opposed to point particles. This means they have an angular
|
||||
velocity and torque can be imparted to them to cause them to rotate.
|
||||
|
||||
The :doc:`Howto granular <Howto_granular>` doc page lists various
|
||||
atom, pair, fix, and compute styles useful for creaeting granular
|
||||
models.
|
||||
|
||||
This page explains how you can also define granular surfaces which are
|
||||
a collection of triangles (3d systems) or line segments (2d systems),
|
||||
which act as boundaries interacting with the particles. Different
|
||||
kinds of particle/surface interactions can be specified with similar
|
||||
options as the pair styles listed on the :doc:`Howto granular
|
||||
<Howto_granular>` doc page.
|
||||
|
||||
----------
|
||||
|
||||
Global versus local surfaces
|
||||
""""""""""""""""""""""""""""
|
||||
A key point to understand is that LAMMPS supports two forms of
|
||||
granular surfaces. You cannot use both in the same simulation.
|
||||
|
||||
The first is *global* which means that each processor stores a copy of
|
||||
all the triangles/lines. This is suitable when a modest number of
|
||||
triangles/lines is needed. They can be large triangles/lines, any of
|
||||
which span a significant fraction of the simulation box size in one or
|
||||
more dimensions.
|
||||
|
||||
The second is *local* which means that the collection of
|
||||
triangles/lines is distributed across processers in the same manner
|
||||
that particles are distributed. Each processor is assigned to
|
||||
sub-domain of the simulation box and owns whichever triangles/lines
|
||||
have their center point in the processor's sub-domain. Similar to
|
||||
particles, each processor may also own ghost copies of triangles/lines
|
||||
whose finite size overlaps with the processor's sub-domain. The
|
||||
number of triangles/lines can now be very large. For effective
|
||||
distribution and minimal communication all the triangles/lines should
|
||||
be small, no more than a few particle diameters in size. If even one
|
||||
larger triangle or line is defined then the neighbor list cutoff and
|
||||
communication cutoff will be set correspondingly larger, which can
|
||||
slow down the simulation.
|
||||
|
||||
One of these two commands must be specified to use *global* or *local*
|
||||
surfaces in your granular simulation:
|
||||
|
||||
* :doc:`fix surface/global <fix_surface_global>`
|
||||
* :doc:`fix surface/local <fix_surface_local>`
|
||||
|
||||
The :doc:`fix surface/global <fix_surface_global>` command reads in
|
||||
the global surfaces in one of two ways. The first option is from a
|
||||
molecule file(s) previously defined by the :doc:`molecule <molecule>`
|
||||
command. The file should define triangles or lines with header
|
||||
keywords and a Triangles or Lines section. The second option is from
|
||||
a text or binary STL (strereolithogray) file which defines a set of
|
||||
triangles. It can only be used with 3d simulations.
|
||||
|
||||
The :doc:`fix surface/local <fix_surface_local>` command defines local
|
||||
surface in one of three ways. The first two options are the same
|
||||
molecule and STL files explained in the previous paragraph. In this
|
||||
case, the list of triangles/lines is distributed across processors
|
||||
based on the center point of each triangle/line. The third option is
|
||||
to include them in a LAMMPS data file which has been previously read
|
||||
in via the :doc:`read_data <read_data>` command. If the file has a
|
||||
Triangles or Lines section, then triangles/lines will be read in and
|
||||
distributed along with any particles the data file includes.
|
||||
|
||||
----------
|
||||
|
||||
Surface attributes
|
||||
""""""""""""""""""
|
||||
|
||||
For both global and local surfaces, each triangle/line is assigned a
|
||||
*type* and a *molecule ID*. This is done when surfaces are read-in
|
||||
from a molecule, STL, or data file. Since STL files do not define
|
||||
types or molecule IDs, the :doc:`fix surface/global
|
||||
<fix_surface_global>` and :doc:`fix surface/local <fix_surface_local>`
|
||||
commands specify the type that will be assigned to the read-in
|
||||
triangles. The molecule ID for each triangle is set to 1. The
|
||||
:doc:`fix surface/global <fix_surface_global>` command also allows use
|
||||
of the :doc:`fix_modify type/region <fix_modify>` command to assign
|
||||
types based on a geometric region. Since local surfaces are
|
||||
effectively particles, the :doc:`set <set>` command can be used to
|
||||
alter the *type* or *molecule ID* of any triangle or line.
|
||||
|
||||
For both global and local surfaces, types are used to define the style
|
||||
of granular interactions for individual triangles/lines. Different
|
||||
styles can be used within a single object consisting of connected
|
||||
triangles/lines. See the Surface Connectivity section below.
|
||||
|
||||
Molecule IDs are not currently used by granular surface interactions,
|
||||
though they may be in the future. They are intended to be assigned
|
||||
uniquely to each inter-connected set of triangles/lines, as if each
|
||||
object were a "molecule". However, this is not required, and LAMMPS
|
||||
does not check that this is the case. LAMMPS will issue a warning if
|
||||
a set of inter-connected triangles/lines do not all have the same
|
||||
molecule ID, in case this was not intentional.
|
||||
|
||||
For local surfaces, the molecule ID can be used to define groups and
|
||||
thus assign different motions to different surface objects. See the
|
||||
Surface Motion section below. Various other LAMMPS commands operate
|
||||
on groups or molecules and can thus be used to gather statistics about
|
||||
or output information about individual surface objects.
|
||||
|
||||
----------
|
||||
|
||||
Atom styles for granular surfaces
|
||||
"""""""""""""""""""""""""""""""""
|
||||
|
||||
For all three ways of defining *local* surfaces, the triangles/lines
|
||||
are stored internally in LAMMPS as triangle-style or line-style
|
||||
particles. This means you must use a hybrid atom style which includes
|
||||
one of these two sub-styles (for 3d or 2d):
|
||||
|
||||
* :doc:`atom_style tri <atom_style>` for 3d simulations
|
||||
* :doc:`atom_style line <atom_style>` for 2d simulations
|
||||
|
||||
Typically, the atom_style hybrid command will also define a
|
||||
:doc:`atom_style sphere <atom_style>` sub-style for the granular
|
||||
particles which interact with the surfaces.
|
||||
|
||||
Note that for molecule or STL file input, the :doc:`fix surface/local
|
||||
<fix_surface_local>` command reads the file(s) and uses the values for
|
||||
each surface to creat a single new triangle or line particle. For
|
||||
data file input, the triangle/line particles are created when the data
|
||||
file is read.
|
||||
|
||||
For granular simluations with *global* surfaces, a hybrid atom style
|
||||
which defines triangle-style or line-style particles should NOT be
|
||||
used. The triangles/lines are stored by the :doc:`fix surface/global
|
||||
<fix_surface_global>` command and not as triangle-style or line-style
|
||||
particles.
|
||||
|
||||
----------
|
||||
|
||||
Rules for surface topology
|
||||
""""""""""""""""""""""""""
|
||||
|
||||
For both *global* and *local* surfaces, granular particles interact
|
||||
with both sides of each triangle or line segment.
|
||||
|
||||
No check is made to see if two triangles or line segments intersect
|
||||
each other; this is allowed if it makes sense for the geometry of the
|
||||
collection of surfaces.
|
||||
|
||||
As an example, consider a 2d simulation which mixes a container of
|
||||
granular particles. *Global* line segments are used to define both
|
||||
the box-shaped container and the mixer in the center. The 4 mixer
|
||||
blades are in the shape of a large X and are made to rotate using the
|
||||
:doc:`fix_modify <fix_modify>` command (see below).
|
||||
|
||||
The 2 blades could be defined by 2 line segments which cross each
|
||||
other at their centers. Or the 2 blades could be defined by 4 line
|
||||
segments, all of which have a common endpoint at the center of the
|
||||
mixer. Or the 2 blades could be defined by 4 non-touching line
|
||||
segments, all of which have a distinct endpoint near the center of the
|
||||
mixer, but displaced from it by a distance less than the radius of a
|
||||
granular particle. In any of these cases, when a particle gets very
|
||||
close to the center of the mixer it will interact with both nearby
|
||||
line segments as expected.
|
||||
|
||||
See the next section on connectivity for how two triangles or line
|
||||
segemnts are treated if they share a common edge (triangle) or point
|
||||
(triange or line).
|
||||
|
||||
----------
|
||||
|
||||
Surface connectivity
|
||||
""""""""""""""""""""
|
||||
|
||||
If multiple triangles/lines are used to define a contiguous surface
|
||||
which is flat or gently curved or has sharp edges or corners, LAMMPS
|
||||
will detect when two or more line segments (2d) share the same
|
||||
endpoint. Or when two or more triangles (3d) share the same edge or
|
||||
same corner point.
|
||||
|
||||
This connectivity is stored internally and is used when appropriate to
|
||||
calculate accurate forces on particles which simultaneously overlap
|
||||
with 2 or more connected triangles or line segments.
|
||||
|
||||
Consider the simulation model of the previous section for a 2d mixer
|
||||
now defined by *local* line segments. The flat surface of each mixer
|
||||
blade (and container box faces) is defined by multiple small line
|
||||
segments. It is imporant that these line segments be "connected" so
|
||||
that when a particle contacts two adjacent line segments at the same
|
||||
time, the resulting force on the particle is the same as it would be
|
||||
if it were contacting the middle of a single long line segment.
|
||||
|
||||
Here is how to ensure that LAMMPS detects the appropriate connections.
|
||||
|
||||
For either *global* or *local* surfaces, if the triangles/lines are
|
||||
defined in a molecule or STL file, then 3 corner points (triangle) or
|
||||
2 end points (line) will be listed for each triangle/line in the file.
|
||||
LAMMPS will only make a connection between 2 triangles or lines if a
|
||||
shared point is EXACTLY the same in both. This is a single point in
|
||||
both for a corner point or end point connection. It is two points in
|
||||
both triangles for an edge connection.
|
||||
|
||||
For *local* surfaces, if the triangles/lines are defined in a data
|
||||
file, then 3 corner points (triangle) or 2 end points (line) will be
|
||||
listed for each triangle/line in the file. However in this case,
|
||||
LAMMPS will allow for an INEXACT match of a shared point to make a
|
||||
connection between 2 triangles or lines. Again, this is a single
|
||||
point in both for a corner point or end point connection. It is two
|
||||
points in both triangles for an edge connection.
|
||||
|
||||
An INEXACT match means that the two points can be EPSILON apart.
|
||||
EPSILON is defined as a tiny fraction (1.0e-4) of the size of
|
||||
the smallest triangle or line in the system.
|
||||
|
||||
The reason INEXACT matches are allowed is that data files can be
|
||||
created in a variety of manners, including by LAMMPS itself as a
|
||||
simulation runs via the :doc:`write_data <write_data>` command.
|
||||
Interally, triangle-style and line-style particles do not store their
|
||||
corner points directly. Instead, the center point of the
|
||||
triangle/line is stored, along with an orientation of the
|
||||
triangle/line and a displacement vector from the center point for each
|
||||
corner point. This means that when new corner points values are
|
||||
written to a data file for two different triangles/line, they may
|
||||
differ by epsilon due to round-offs in finite-precision arithmetic.
|
||||
|
||||
Note that due to how connectivity is defined, two triangles/lines will
|
||||
not be connected if their corner points are separted by even small
|
||||
distances (greater than EPSILON). Likewise they will not be connected
|
||||
if the corner point of one triangle/line is very close to (or even on)
|
||||
the surface of another triangle or middle of another line segment. In
|
||||
general these kinds of granular surfaces could be problematic and
|
||||
should be avoided, but LAMMPS does not check for these conditions.
|
||||
|
||||
NOTE: maybe add a picture of T-shaped surf with 2 line segments (not
|
||||
3). Explain why it could be bad?
|
||||
|
||||
Note that if a triangle or line segment has a free edge or free
|
||||
corner/end point (not connected to any other triangle/line), granular
|
||||
particles will still interact with the triangle/line if the nearest
|
||||
contact point to the spherical particle center is on the free edge or
|
||||
is the free corner/end point.
|
||||
|
||||
----------
|
||||
|
||||
Surface motion
|
||||
""""""""""""""
|
||||
|
||||
By default, surface triangles/lines are motionless during a
|
||||
simulation, whether they are *global* or *local*. Triangles/lines
|
||||
impart forces and torques to granular particles, but the inverse
|
||||
forces/torques on the triangles/lines do not cause them to move.
|
||||
|
||||
However, triangles/lines can be made to move in a prescribed manner.
|
||||
E.g. the rotation of 2d mixer blades in the example described above.
|
||||
These two commands can be used for that purpose:
|
||||
|
||||
* :doc:`fix_modify move <fix_modify>` for *global* surfaces
|
||||
* :doc:`fix move <fix_move>` for *local* surfaces
|
||||
|
||||
For *global* surfaces, the :doc:`fix_modify move <fix_modify>` command
|
||||
can move a specified subest of the triangles/lines in various ways
|
||||
(translation, rotation, etc). Which triangles move is specified based
|
||||
on the *type* of each triangle. Types are specified when surfaces are
|
||||
defined by the :doc:`fix surface/global <fix_surface_global>` command.
|
||||
They can also be defined by the :doc:`fix_modify typre/region
|
||||
<fix_modify>` command.
|
||||
|
||||
For *local* surfaces, the :doc:`fix move <fix_move>` command can move
|
||||
a specified subset of the triangles/lines in various ways
|
||||
(translation, rotation, etc). Which triangles move is specified based
|
||||
on the group-ID argument to the :doc:`fix move <fix_move>` command.
|
||||
Groups can be defined by the :doc:`group <group>` command.
|
||||
|
||||
Note that for an object defined by two or more connected
|
||||
triangles/lines, it is an error to assign a motion and not include all
|
||||
the connected triangles/lines, since this would break the connections.
|
||||
LAMMPS does NOT check that this requirement is met.
|
||||
|
||||
----------
|
||||
|
||||
Example scripts
|
||||
"""""""""""""""
|
||||
|
||||
The examples/gransurf directory has example input scripts which use
|
||||
both *global* and *local* surfaces. Both 2d and 3d models are included.
|
||||
|
||||
Each script produces a series of snapshot images using the :doc:`dump
|
||||
image <dump_image>` command. The snapshots visualize both the
|
||||
particles and granular surfaces. The snaphost can be animated to view
|
||||
a movie of the simulation.
|
||||
@ -61,6 +61,7 @@ gives those details.
|
||||
* :ref:`FEP <PKG-FEP>`
|
||||
* :ref:`GPU <PKG-GPU>`
|
||||
* :ref:`GRANULAR <PKG-GRANULAR>`
|
||||
* :ref:`GRANSURF <PKG-GRANSURF>`
|
||||
* :ref:`H5MD <PKG-H5MD>`
|
||||
* :ref:`INTEL <PKG-INTEL>`
|
||||
* :ref:`INTERLAYER <PKG-INTERLAYER>`
|
||||
@ -1099,6 +1100,31 @@ potentials.
|
||||
|
||||
----------
|
||||
|
||||
.. _PKG-GRANSURF:
|
||||
|
||||
GRANSURF package
|
||||
----------------
|
||||
|
||||
**Contents:**
|
||||
|
||||
Granular surfaces consisting of triangles (3d) or line segments (2d).
|
||||
These interact with finite-size granular particles as static or moving
|
||||
boundary conditions and support the same kind of interaction models as
|
||||
granular pair styles do for particle/particle interactions. The
|
||||
collection of triangles or lines can be "global" with each processor
|
||||
storing all of them. Or it can be "local" where the triangles/lines
|
||||
are distributed across processors.
|
||||
|
||||
**Supporting info:**
|
||||
|
||||
* src/GRANSURF: filenames -> commands
|
||||
* :doc:`Howto granular surfaces <Howto_granular_surfaces>`
|
||||
* :doc:`fix surface/global <fix_surface_global>`
|
||||
* :doc:`fix surface_local <fix_surface_local>`
|
||||
* examples/gransurf
|
||||
|
||||
----------
|
||||
|
||||
.. _PKG-H5MD:
|
||||
|
||||
H5MD package
|
||||
|
||||
@ -203,6 +203,11 @@ whether an extra library is needed to build and use the package:
|
||||
- :doc:`Howto granular <Howto_granular>`
|
||||
- pour
|
||||
- no
|
||||
* - :ref:`GRANSURF <PKG-GRANSURF>`
|
||||
- granular surfaces
|
||||
- :doc:`Howto granular surfaces <Howto_granular_surfaces>`
|
||||
- pour
|
||||
- no
|
||||
* - :ref:`H5MD <PKG-H5MD>`
|
||||
- dump output via HDF5
|
||||
- :doc:`dump h5md <dump_h5md>`
|
||||
|
||||
@ -413,6 +413,8 @@ accelerated styles exist.
|
||||
* :doc:`srd <fix_srd>` - stochastic rotation dynamics (SRD)
|
||||
* :doc:`store/force <fix_store_force>` - store force on each atom
|
||||
* :doc:`store/state <fix_store_state>` - store attributes for each atom
|
||||
* :doc:`surface/global <fix_surface_global>` - global granular surface model, each proc has copy
|
||||
* :doc:`surface/local <fix_surface_local>` - local granular surface model, distributed across procs
|
||||
* :doc:`tdpd/source <fix_dpd_source>` - add external concentration source
|
||||
* :doc:`temp/berendsen <fix_temp_berendsen>` - temperature control by Berendsen thermostat
|
||||
* :doc:`temp/csld <fix_temp_csvr>` - canonical sampling thermostat with Langevin dynamics
|
||||
|
||||
@ -43,10 +43,12 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Modify one or more parameters of a previously defined fix. Only
|
||||
specific fix styles support specific parameters. See the doc pages
|
||||
for individual fix commands for info on which ones support which
|
||||
fix_modify parameters.
|
||||
Modify one or more parameters of a previously defined fix. Specific
|
||||
fix styles support specific parameters. See the doc pages of an
|
||||
individual fix command for info on which fix_modify keywords it
|
||||
supports. This doc page only describes fix_modify keywords which are
|
||||
supported by multiple fixes. Additional keywords, specific to a
|
||||
single fix, are only described on that fix's doc page.
|
||||
|
||||
The *temp* keyword is used to determine how a fix computes
|
||||
temperature. The specified compute ID must have been previously
|
||||
@ -171,7 +173,6 @@ will have no effect on the motion of the rigid bodies if they are
|
||||
specified in the input script after the fix rigid command. LAMMPS
|
||||
will give a warning if that is the case.
|
||||
|
||||
|
||||
The *colname* keyword can be used to change the default header keywords
|
||||
in output files of fix styles that support it: currently only :doc:`fix
|
||||
ave/time <fix_ave_time>` is supported. The setting for *ID string*
|
||||
@ -184,7 +185,6 @@ replaces the string for that specific keyword. The *colname* keyword can
|
||||
be used multiple times. If multiple *colname* settings refer to the same
|
||||
keyword, the last setting has precedence.
|
||||
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
@ -31,13 +31,13 @@ Description
|
||||
|
||||
Perform plain time integration to update position and velocity for
|
||||
atoms in the group each timestep. This creates a system trajectory
|
||||
consistent with the microcanonical ensemble (NVE) provided there
|
||||
are (full) periodic boundary conditions and no other "manipulations"
|
||||
of the system (e.g. fixes that modify forces or velocities).
|
||||
consistent with the microcanonical ensemble (NVE) provided there are
|
||||
(full) periodic boundary conditions and no other "manipulations" of
|
||||
the system (e.g. fixes that modify forces or velocities).
|
||||
|
||||
This fix invokes the velocity form of the
|
||||
Stoermer-Verlet time integration algorithm (velocity-Verlet). Other
|
||||
time integration options can be invoked using the :doc:`run_style <run_style>` command.
|
||||
This fix invokes the velocity form of the Stoermer-Verlet time
|
||||
integration algorithm (velocity-Verlet). Other time integration
|
||||
options can be invoked using the :doc:`run_style <run_style>` command.
|
||||
|
||||
----------
|
||||
|
||||
@ -48,15 +48,18 @@ time integration options can be invoked using the :doc:`run_style <run_style>` c
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
||||
are relevant to this fix. No global or per-atom quantities are stored
|
||||
by this fix for access by various :doc:`output commands <Howto_output>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. None of the :doc:`fix_modify <fix_modify>` options are
|
||||
relevant to this fix. No global or per-atom quantities are stored by
|
||||
this fix for access by various :doc:`output commands <Howto_output>`.
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
none
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
372
doc/src/fix_surface_global.rst
Normal file
372
doc/src/fix_surface_global.rst
Normal file
@ -0,0 +1,372 @@
|
||||
.. index:: fix surface/global
|
||||
|
||||
fix surface/global command
|
||||
===============
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix ID group-ID surface/global input args input args ... model args model args ... keyword value ...
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* surface/global = style name of this fix command
|
||||
* input = one or more input keywords can be specified
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*input* args = source source-args
|
||||
*source* = *mol* or *stl*
|
||||
*mol* arg = template-ID
|
||||
template-ID = ID of molecule template specified in a separate :doc:`molecule <molecule>` command, which defines a set of triangles or lines
|
||||
*stl* args = stype stlfile
|
||||
stype = numeric type assigned to all triangles in STL file
|
||||
stlfile = STL filename which defines a set of triangles
|
||||
|
||||
* model = one or more model keywords can be specified
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*model* args = ptype stype fstyle fstyle-args
|
||||
ptype = numeric particle type (see asterisk form below)
|
||||
stype = numeric surface type (see asterisk form below)
|
||||
*fstyle* = *hooke* or *hooke/history* or *hertz/history* or *granular*
|
||||
*hooke* or *hooke/history* or *hertz/history* args = Kn Kt gamma_n gamma_t xmu dampflag (limit_damping)
|
||||
Kn = elastic constant for normal particle repulsion (force/distance units or pressure units - see discussion below)
|
||||
Kt = elastic constant for tangential contact (force/distance units or pressure units - see discussion below)
|
||||
gamma_n = damping coefficient for collisions in normal direction (1/time units or 1/time-distance units - see discussion below)
|
||||
gamma_t = damping coefficient for collisions in tangential direction (1/time units or 1/time-distance units - see discussion below)
|
||||
xmu = static yield criterion (unitless value between 0.0 and 1.0e4)
|
||||
dampflag = 0 or 1 if tangential damping force is excluded or included
|
||||
limit_damping = optional argument to prevent attractive interactions
|
||||
*granular* args = same syntax for args as *pair_coeff* command of :doc:`pair_style granular <pair_granular>`
|
||||
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *smax* or *flat* or *temperature*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*smax* value = smaxtype
|
||||
smaxtype = maximum surface type allowed
|
||||
*flat* value = maxangle
|
||||
maxangle = maximum angle (degrees) between a pair of connected triangles/lines for a flat connection
|
||||
*temperature* value = Tsurf
|
||||
Tsurf = surface temperature (degrees Kelvin), required if model with heat is used
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
molecule lines surf.line
|
||||
fix 1 all surface/global input mol linesurf model 1 1 hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 1 all surface/global input stl 1 object.stl model * 1 hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Enable granular surfaces to be used as boundary conditions on
|
||||
particles in a granular simulation. Granular surfaces are defined as
|
||||
a set of triangles (3d) or a set of line segments (2d).
|
||||
|
||||
The :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page
|
||||
gives an overview of granular surfaces of two types, *global* and
|
||||
*local*, with guidelines for how to use them.
|
||||
|
||||
This command is used for models with *global* surfaces. The :doc:`fix
|
||||
surface/local <fix_surface_local>` command is used for models with
|
||||
*local* surfaces. As explained on the :doc:`Howto granular surfaces
|
||||
<Howto_granular_surfaces>` doc page, *global* surfaces are most
|
||||
appropriate when there is a modest number of them. Each surface
|
||||
(triangle/line) can be of any size, even as large as a dimension of
|
||||
the simulation box. A copy of the list of *global* surfaces is stored
|
||||
by each processor.
|
||||
|
||||
*Global* triangles or line segments are not stored as particles and
|
||||
distributed across processors. Rather, they are stored by this fix
|
||||
and each processor stores a copy of all of them. This fix also
|
||||
computes forces between the global surfaces and all the particles.
|
||||
|
||||
*Global* surfaces can be defined in 2 ways, which correspond to the 2
|
||||
options listed above for the *source* argument of the *input* keyword:
|
||||
|
||||
* via a molecule file(s), read by the :doc:`molecule <molecule>` command
|
||||
* via an STL file(s), read by this command
|
||||
|
||||
If triangles or lines were previously read in by the :doc:`molecule
|
||||
<molecule>` command, the *source* argument of the *input* keyword is
|
||||
*mol* and its *template-ID* argument is the molecule template ID used
|
||||
with the :doc:`molecule <molecule>` command. Note that a
|
||||
doc:`molecule <molecule>` command can read and assign serveral
|
||||
molecule files to the same template-ID. Each molecule file must
|
||||
define triangles or lines, not atoms. For multiple molecule files,
|
||||
the set of triangles or lines defined used by this input option will
|
||||
be the union of the triangles and lines from all the molecule files.
|
||||
Note that each line/triangle in a molecule file is assigned a type and
|
||||
molecule ID.
|
||||
|
||||
An STL (stereolithography) file defines a set of triangles. For use
|
||||
with this command, the *source* argument of the *input* keyword is
|
||||
*stl*. The *stype* argument is the numeric type assigned to all the
|
||||
triangles from the file. Note that STL files do not contain types or
|
||||
other flags for each triangle. The *stlfile* argument is the name of
|
||||
the STL file. It can be in text or binary format; this command
|
||||
auto-detects the format. Note that STL files cannot be used for 2d
|
||||
simulations since they only define triangles. Each triangle from an
|
||||
STL file is assigned a molecule ID = 1.
|
||||
|
||||
This `Wikepedia page
|
||||
<https://en.wikipedia.org/wiki/STL_(file_format)>`_ describes the
|
||||
format of both text and binary STL files. Binary STL files can be
|
||||
converted to ASCII for editing with the stl_bin2txt tool in the
|
||||
lammps/tools directory. Examples of text-based STL files are included
|
||||
in the examples/gransurf directory.
|
||||
|
||||
Note that this command allows for multiple uses of the *input*
|
||||
keyword, each with a *source* argument as either *mol* or *stl*. The
|
||||
surfaces used by this command are the union of the triangles and lines
|
||||
from all the input keywords.
|
||||
|
||||
Once surfaces are defined, this command calculates their connectivity.
|
||||
Two triangles are "connected" if they have a single corner point in
|
||||
common or an edge in common (2 corner points). Two line segments are
|
||||
"connected" if the they have an end point in common. More technical
|
||||
details on connectivity and its significance for granular surface
|
||||
simulations is given on :doc:`Howto granular surfaces
|
||||
<Howto_granular_surfaces>` doc page. In brief, a pair of connected
|
||||
surfaces interact with a particle which contacts both of them
|
||||
simultaneously according to a set of rules which are designed to
|
||||
generate physically sensible forces on the particle.
|
||||
|
||||
Note that there is no requirement that all the surfaces be connected
|
||||
to one another. The surfaces can represent the surface of one or more
|
||||
independent objects. Particles in the specified group-ID interact
|
||||
with the surface when they are close enough to overlap (touch) one or
|
||||
more individual triangles or lines. Both sides of a triangle or line
|
||||
interact with particles. Thus a surface can be infinitely thin,
|
||||
e.g. the blade of a mixer. See the :doc:`Howto granular surfaces
|
||||
<Howto_granular_surfaces>` doc page for restrictions on the geometry
|
||||
of a collection of triangles or lines.
|
||||
|
||||
The nature of individual surface/particle interactions are determined
|
||||
by the *model* keyword. Each use of the model keyword is applied to
|
||||
one or more particle types interacting with one or more surface types.
|
||||
The *ptype* argument is the particle type, *stype* is the surface
|
||||
type.
|
||||
|
||||
Either *ptype* and *stype* can be specified as a single numeric value.
|
||||
Or a wildcard asterisk can be used to specify multiple particle or
|
||||
surface types. This takes the form "\*" or "\*n" or "n\*" or "m\*n".
|
||||
If :math:`N` is the number of particle or surface types, then an
|
||||
asterisk with no numeric values means all types from 1 to :math:`N`.
|
||||
A leading asterisk means all types from 1 to n (inclusive). A
|
||||
trailing asterisk means all types from n to :math:`N` (inclusive). A
|
||||
middle asterisk means all types from m to n (inclusive).
|
||||
|
||||
The model keywords must specify an interactions for each particle type
|
||||
interacting with each surface type, otherwise an error is flagged.
|
||||
If use of the model keywords specifies an individual particle/surface
|
||||
type pair more than once, then the final specification is used.
|
||||
|
||||
The number of particle types is the number of atom types in the
|
||||
system. The number of surface types is determined by the maximum
|
||||
surface type in any of files read by the *input* keyword(s) or by the
|
||||
optional *smaxtype* keyword. The latter can be useful if the
|
||||
:doc:`fix_modify type/region <fix_modify>` command (described below)
|
||||
is used to assign new types to surfaces after they are read in. As
|
||||
for particles, there is no requirement that triangles/lines exist for
|
||||
every surface type.
|
||||
|
||||
The *fstyle* argument (for force style) can be any of the styles
|
||||
defined by the :doc:`pair_style gran/\* <pair_gran>` or the more
|
||||
general :doc:`pair_style granular <pair_granular>` commands.
|
||||
Currently the options are *hooke*, *hooke/history*, or *hertz/history*
|
||||
for the former, and *granular* with all the possible options of the
|
||||
associated *pair_coeff* command for the latter. The equation for the
|
||||
force between a triangle/line and a particle touching it is the same
|
||||
as the corresponding equation on the :doc:`pair_style gran/\*
|
||||
<pair_gran>` and :doc:`pair_style granular <pair_granular>` doc pages,
|
||||
in the limit of one of the two particles going to infinite radius and
|
||||
mass (flat surface). Specifically, delta = radius - r = overlap of
|
||||
particle with triangle/line, m_eff = mass of particle, and the
|
||||
effective radius of contact = RiRj/Ri+Rj is set to the radius of the
|
||||
particle.
|
||||
|
||||
The parameters *Kn*, *Kt*, *gamma_n*, *gamma_t*, *xmu*, *dampflag*,
|
||||
and the optional keyword *limit_damping* have the same meaning and
|
||||
units as those specified with the :doc:`pair_style gran/\*
|
||||
<pair_gran>` commands. This means a NULL can be used for either *Kt*
|
||||
or *gamma_t* as described on that page. If a NULL is used for *Kt*,
|
||||
then a default value is used where *Kt* = 2/7 *Kn*\ . If a NULL is
|
||||
used for *gamma_t*, then a default value is used where *gamma_t* = 1/2
|
||||
*gamma_n*.
|
||||
|
||||
Note that the fix surface/global command can be used multiple times
|
||||
though it is not typically necessary to do so. Note that if it is
|
||||
used multiple times, the surfaces defined by the different commands
|
||||
will NOT be "connected" to each other in the manner described above or
|
||||
on the :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc
|
||||
page.
|
||||
|
||||
----------
|
||||
|
||||
These are the optional keywords and values.
|
||||
|
||||
The *smax* keyword sets the maximum value *smaxtype* of a surface type
|
||||
which can be used. By default, this is the maximum type of any
|
||||
surface defined by the *input* keyword(s). If the :doc:`fix_modify
|
||||
type/region <fix_modify>` command (described below) will be used later
|
||||
to change a surface type to a larger value than the default, then the
|
||||
*smax* keyword can allow this.
|
||||
|
||||
The *flat* keyword sets a *maxangle* threshold for the angle (in
|
||||
degrees) between two connected surfaces (triangles or line segments)
|
||||
which will be treated as "flat" by the particle/surface interaction
|
||||
models. A flat connection means a single force will be applied to the
|
||||
particle even if it is contact with both surfaces simultaneously. See
|
||||
the :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page
|
||||
for more details. The default for *maxangle* is one degree.
|
||||
|
||||
The *temperature* keyword is required if any of the granular models
|
||||
used includes a heat model which depends on the surface temperature.
|
||||
Otherwise it is ignored. Its *Tsurf* value is the temperature of the
|
||||
surface in degrees Kelvin.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
This fix defines two new keywords for the doc:`fix_modify
|
||||
<fix_modify>` command, *move* and *type/region*. Because they are
|
||||
specific to this command, they are only described here, not on the
|
||||
doc:`fix_modify <fix_modify>` doc page. Both keywords can be used
|
||||
multiple times. In the description that follows, a surface means a
|
||||
triangle (3d) or line segment (2d).
|
||||
|
||||
The *move* keyword can be used to make all or a subset of the surfaces
|
||||
move in a prescribed manner, similar to the :doc:`fix move <fix_move>`
|
||||
command. The *type/region* keyword can be used to change the types of
|
||||
surfaces which are within a geometric region. Their syntax is as follows:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix_modify fix-ID keyword values ...
|
||||
|
||||
* fix-ID = ID of the fix to modify
|
||||
* keyword (specific to this fix) = *move* or *type/region*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*move* values = stype mstyle args
|
||||
stype = numeric surface type(s) (see comma-separated, asterisk form below)
|
||||
mstyle = *none* or *linear* or *wiggle* or *rotate* or *transrot* or *variable*
|
||||
*none* args = none
|
||||
*linear* args = Vx Vy Vz
|
||||
*wiggle* args = Ax Ay Az period
|
||||
*rotate* args = Px Py Pz Rx Ry Rz period
|
||||
*transrot* args = Vx Vy Vz Px Py Pz Rx Ry Rz period
|
||||
*variable* args = v_dx v_dy v_dz v_vx v_vy v_vz
|
||||
*type/region* values = stype region-ID
|
||||
stype = numeric surface type
|
||||
region-ID = ID of a region previously defined by the :doc:`region <region>` command
|
||||
|
||||
The *stype* argument can specify one or more surface types. It must
|
||||
specify all the surface types within a connecte object(s). If an
|
||||
object is composed of surfaces of 2 or more types, it is an error to
|
||||
use the *move* keyword and not specify all those types, since this
|
||||
would break the connections. Note that LAMMPS does NOT check that
|
||||
this requirement is met. It is likewise an error to use the *move*
|
||||
keyword multiple times to induce motion which overlaps surfaces in
|
||||
ways that violate the surface geometry restrictions explained on the
|
||||
:doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page.
|
||||
Again, LAMMPS does NOT check that this requirement is met.
|
||||
|
||||
The general format of *stype* is st,st,...,st where one or more *st*
|
||||
sub-arguments are separated by commas. A single *st* sub-argument is
|
||||
either a single numeric value or contains a wildcard asterisk. The
|
||||
asterisk is used in place of or in conjunction with numeric arguments
|
||||
to specify multiple type values. This takes the form "\*" or "\*n" or
|
||||
"n\*" or "m\*n". If :math:`N` is the number of atom types, then an
|
||||
asterisk with no numeric values means all types from 1 to :math:`N`.
|
||||
A leading asterisk means all types from 1 to n (inclusive). A
|
||||
trailing asterisk means all types from n to :math:`N` (inclusive). A
|
||||
middle asterisk means all types from m to n (inclusive).
|
||||
|
||||
The *mstyle* argument is one of the listed styles above. The *none*
|
||||
style turns off motion which was previously enabled, e.g. stops the
|
||||
rotation of an object. Again, the list of surface types must include
|
||||
all the surfaces in a connected object. The other *move* styles and
|
||||
their effects on motion are the same as those defined by the :doc:`fix
|
||||
move <fix_move>` command. Their arguments are also the same as those
|
||||
documented by the :doc:`fix move <fix_move>` command.
|
||||
|
||||
The move *variable* style for this command is more limited than for
|
||||
the :doc:`fix move <fix_move>` command. Only an equal-style variable
|
||||
can be used, as defined by the :doc:`variable <variable>`. Atom-style
|
||||
variables cannot be used. Also, if both the displacement and velocity
|
||||
variables for a particular x,y,z component are specified as NULL, then
|
||||
no change is made to those position or velococity components of an
|
||||
individual triangle/line, which is different than the explanation
|
||||
given by the :doc:`fix move <fix_move>` command for individual
|
||||
particles.
|
||||
|
||||
Note that for *local* surfaces the same motion operations can be
|
||||
performed using the :doc:`fix move <fix_move>` command with a group-ID
|
||||
defined by the :doc:`group <group>` which includes the appropriate
|
||||
particle types for triangle and line-segment particles.
|
||||
|
||||
The *type/region* keyword can be used to re-assign surface types to
|
||||
surfaces after they have been initialized by the *input* keyword.
|
||||
This is most useful for STL triangles since STL files do not allow for
|
||||
assignment of types to individual triangles.
|
||||
|
||||
The *stype* argument is a single numeric value, which must be between
|
||||
1 and maxtype inclusive. Maxtype is either the maximum type of all
|
||||
surfaces read in by the *input* keyword or the setting of the optional
|
||||
*smax* keyword. The *region-ID* is the ID of a geometric region
|
||||
defined by the :doc:`region <region>` command. Note that regions can
|
||||
be the inside or outside of a geometric object, such as a sphere or
|
||||
block. The geometric center point of a triangle or line segment is
|
||||
used to determine where a surface is in the region or not. If it is,
|
||||
its type is reset to *stype*.
|
||||
|
||||
Examples for both keywords are as follows:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix_modify 1 move 2 rotate 0 0 0 0 0 1 25
|
||||
fix_modify 1 move 1,3*5,8* rotate 0 0 0 0 0 1 25
|
||||
fix_modify 1 type/region 3 myBlock
|
||||
|
||||
No global or per-atom quantities are stored by this fix for access by
|
||||
various :doc:`output commands <Howto_output>`. No parameter of this
|
||||
fix can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization
|
||||
<minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
Molecule IDs are not currently used by granular surface interactions,
|
||||
though they may be in the future. They are intended to be assigned
|
||||
uniquely to each inter-connected set of triangles/lines, as if each
|
||||
object were a "molecule". However, this is not required, and LAMMPS
|
||||
does not check that this is the case. LAMMPS will issue a warning if
|
||||
a set of inter-connected triangles/lines do not all have the same
|
||||
molecule ID, in case this was not intentional.
|
||||
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix surface/local <fix_surface_local>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The keyword defaults are smax = max type of all surfaces defined by
|
||||
the input keyword(s), flat = one degree, temperaure = none.
|
||||
220
doc/src/fix_surface_local.rst
Normal file
220
doc/src/fix_surface_local.rst
Normal file
@ -0,0 +1,220 @@
|
||||
.. index:: fix surface/local
|
||||
|
||||
fix surface/local command
|
||||
===============
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix ID group-ID surface/local input args input args ... keyword value ...
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* surface/local = style name of this fix command
|
||||
* input = zero or more input keywords can be specified
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*input* args = source source-args
|
||||
*source* = *mol* or *stl*
|
||||
*mol* arg = template-ID
|
||||
template-ID = ID of molecule template specified in a
|
||||
separate :doc:`molecule <molecule>` command, which defines a set of triangles or lines
|
||||
*stl* args = stype stlfile
|
||||
stype = numeric type assigned to all triangles in STL file
|
||||
stlfile = STL filename which defines a set of triangles
|
||||
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *flat*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*flat* value = maxangle
|
||||
maxangle = maximum angle (degrees) between a pair of connected triangles/lines for a flat connection
|
||||
|
||||
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
read_data data.tris
|
||||
fix 1 all surface/local NULL
|
||||
|
||||
molecule tris surf.tri
|
||||
fix 1 all surface/local tris
|
||||
|
||||
fix 1 all surface/local surf.tri.stl
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Enable granular surfaces to be used as boundary conditions on
|
||||
particles in a granular simulation. Granular surfaces are defined as
|
||||
a set of triangles (for 3d models) or a set of line segments (for 2d
|
||||
models).
|
||||
|
||||
The :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page
|
||||
gives an overview of granular surfaces of two types, *global* and
|
||||
*local*, and gives guidelines for how they should be defined.
|
||||
|
||||
This command is used for models with *local* surfaces. The :doc:`fix
|
||||
surface/global <fix_surface_global>` command is used for models with
|
||||
*global* surfaces. As explained on the :doc:`Howto granular surfaces
|
||||
<Howto_granular_surfaces>` doc page, *local* surfaces are most
|
||||
appropriate when there is a large number of them. They should
|
||||
typically use surfaces (triangles/lines) whose size is no more than a
|
||||
few times larger than the spherical particles used in a granular
|
||||
model. There can be as many surfaces as needed to describe one or
|
||||
more physical surfaces at high resolution.
|
||||
|
||||
*Local* triangles or line segments are stored as triangle or line
|
||||
particles and are distributed across processors in the same manner as
|
||||
other particles, based on which processor's sub-domain the center of
|
||||
the triangle or line segment is inside of.
|
||||
|
||||
*Local* triangles/lines can be defined in 3 ways. The latter two
|
||||
correspond to the 2 options listed above for the *source* argument of
|
||||
the *input* keyword:
|
||||
|
||||
* via a data file, read by the :doc:`read_data <read_data>` command
|
||||
* via a molecule file(s), read by the :doc:`molecule <molecule>` command
|
||||
* via an STL file(s), read by this commmand
|
||||
|
||||
If triangles/lines were previously read in by the :doc:`read_data
|
||||
<read_data>` command, then distributed triangles or lines already
|
||||
exist. As explained on the :doc:`Howto granular surfaces
|
||||
<Howto_granular_surfaces>` doc page, these are "particles" as defined
|
||||
by the :doc:`atom_style tri or line <atom_style>` command, typically
|
||||
as a sub-style of the :doc:`atom_style hybrid <atom_style>` command.
|
||||
|
||||
Use of the *input* keyword adds new triangle/line particles to the
|
||||
system.
|
||||
|
||||
If triangles or lines were previously read in by the :doc:`molecule
|
||||
<molecule>` command, the *source* keyword of the *input* keyword is
|
||||
*mol* and tts *template-ID* argument is the molecule template ID used
|
||||
with the :doc:`molecule <molecule>` command. Note that a
|
||||
doc:`molecule <molecule>` command can read and assign serveral
|
||||
molecule files to the same template-ID. Each molecule file must
|
||||
define triangles or lines, not atoms. For multiple molecule files,
|
||||
the set of triangle or line particles defined by this input option
|
||||
will be the union of the triangles and lines from all the molecule
|
||||
files. Note that each line/triangle in a molecule file is assigned a
|
||||
type and molecule ID.
|
||||
|
||||
An STL (stereolithography) file defines a set of triangles. For use
|
||||
with this command, the *source* argument of the *input* keyword is
|
||||
*stl*. The *stype* argument is the numeric type assigned to all the
|
||||
triangles from the file. Note that STL files do not contain types or
|
||||
other flags for each triangle. The *stlfile* argument is the name of
|
||||
the STL file. It can be in text or binary format; this command
|
||||
auto-detects the format. One triangle particle is created for each
|
||||
triangle in the STL file(s). Note that STL files cannot be used for
|
||||
2d simulations since they only define triangles. Each triangle
|
||||
partilce from an STL file is assigned a molecule ID = 1.
|
||||
|
||||
This `Wikepedia page
|
||||
<https://en.wikipedia.org/wiki/STL_(file_format)>`_ describes the
|
||||
format of both text and binary STL files. Binary STL files can be
|
||||
converted to ASCII for editing with the stl_bin2txt tool in the
|
||||
lammps/tools directory. Examples of text STL files are included in
|
||||
the examples/gransurf directory.
|
||||
|
||||
Note that this command allows for pre-defined triangle/line particles
|
||||
read in by the :doc:`read_data <read_data>` command as well as ultiple
|
||||
uses of the *input* keyword, each with a *source* argument as either
|
||||
*mol* or *stl*. The number of triangle/line particles created by this
|
||||
command will be the union of those already read by the :doc:`read_data
|
||||
<read_data>` command and those specified by the *input* keywords.
|
||||
|
||||
Once all the distributed triangle/line particles are defined, this
|
||||
command calculates their connectivity. Two triangles are "connected"
|
||||
if they have a single corner point in common or an edge in common (2
|
||||
corner points). Two line segments are "connected" if the they have an
|
||||
end point in common. More technical details on connectivity and its
|
||||
significance for granular surface simulations is given on :doc:`Howto
|
||||
granular surfaces <Howto_granular_surfaces>` doc page. In brief, a
|
||||
pair of connected surfaces interact with a particle which contacts
|
||||
both of them simultaneously according to a set of rules which are
|
||||
designed to generate physically sensible forces on the particle.
|
||||
|
||||
Note that there is no requirement that all the surfaces be connected
|
||||
to one another. The surfaces can represent the surface of one or more
|
||||
independent objects. Particles interact with the surface when they
|
||||
are close enough to overlap (touch) one or more individual triangles
|
||||
or lines. Both sides of a triangle or line interact with particles.
|
||||
Thus a surface can be infinitely thin, e.g. the blade of a mixer. See
|
||||
the :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page
|
||||
for restrictions on the geometry of a collection of triangles or
|
||||
lines.
|
||||
|
||||
The nature of individual surface/particle interactions are determined
|
||||
by the :doc:`pair_coeff <pair_coeff>` command which specifies
|
||||
interaction parameeters for each pair of particle types. It is thus
|
||||
important to specify different types for granular particles and
|
||||
granular surfaces (triangle/line particles). Typically a granular
|
||||
simulation with local surfaces uses the :doc:`pair_style hybrid
|
||||
<pair_hybrid>` command so that multiple sub-styles can be defined by
|
||||
the :doc:`pair_coeff <pair_coeff>` command, one or more for
|
||||
particle/particle interactions, and one or more for particle/surface
|
||||
interactions. Similar to the :doc:`fix surface/global
|
||||
<fix_surface_global>` command this allows multiple particle/surface
|
||||
granular interaction models to be used, based on the surface particle
|
||||
types.
|
||||
|
||||
----------
|
||||
|
||||
These are the optional keywords and values.
|
||||
|
||||
The *flat* keyword sets a *maxangle* threshold for the angle (in
|
||||
degrees) between two connected surfaces (triangles or line segments)
|
||||
which will be treated as "flat" by the particle/surface interaction
|
||||
models. A flat connection means a single force will be applied to the
|
||||
particle even if it is contact with both surfaces simultaneously. See
|
||||
the :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc page
|
||||
for more details. The default for *maxangle* is one degree.
|
||||
|
||||
The *temperature* keyword is required if any of the granular models
|
||||
defined by the :doc:`pair_coeff <pair_coeff>` command includes a heat
|
||||
model which depends on the surface temperature. Otherwise it is
|
||||
ignored. Its *Tsurf* value is the temperature of the surface in
|
||||
degrees Kelvin.
|
||||
|
||||
Note that the *temperature* keyword used by the :doc:`fix
|
||||
surface/global <fix_surface_global>` command is not used by this
|
||||
command. This is because the particle/surf interactions are computed
|
||||
by pair styles and that is where the temperature is applicable.
|
||||
|
||||
Note that the *smax* keyword used by the :doc:`fix surface/global
|
||||
<fix_surface_global>` command is not used by this command. This is
|
||||
because local triangles and lines are already particles and their type
|
||||
is limited by the maximum number of particle types.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. None of the :doc:`fix_modify <fix_modify>` options are
|
||||
relevant to this fix. No global or per-atom quantities are stored by
|
||||
this fix for access by various :doc:`output commands <Howto_output>`.
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
none
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix surface/global <fix_surface_global>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
@ -112,7 +112,9 @@ to a group.
|
||||
The *region* style puts all atoms in the region volume into the group.
|
||||
Note that this is a static one-time assignment. The atoms remain
|
||||
assigned (or not assigned) to the group even in they later move out of
|
||||
the region volume.
|
||||
the region volume. For extended triangle or line-segment particle,
|
||||
the center point of the triangle or line-segment is used to determine
|
||||
whether the particle is in the region or not.
|
||||
|
||||
The *type*, *id*, and *molecule* styles put all atoms with the
|
||||
specified atom types, atom IDs, or molecule IDs into the group. These
|
||||
|
||||
@ -64,6 +64,16 @@ templates include:
|
||||
* :doc:`create_atoms <create_atoms>`
|
||||
* :doc:`atom_style template <atom_style>`
|
||||
|
||||
It can also be used to define a collection of line segments (2d) or
|
||||
triangles (3d) which define an object's surface or a boundary
|
||||
condition for granular particles to interact with, via these commands:
|
||||
|
||||
* :doc:`fix surface/global <fix_surface_global>`
|
||||
* :doc:`fix surface/local <fix_surface_local>`
|
||||
|
||||
See the :doc:`Howto granular surfaces <Howto_granular_surfaces>` doc
|
||||
page for more details on these kinds of models.
|
||||
|
||||
The ID of a molecule template can only contain alphanumeric characters
|
||||
and underscores.
|
||||
|
||||
@ -95,6 +105,11 @@ use that attribute (e.g. no bonds).
|
||||
labels will determine the actual types directly depending on the
|
||||
current :doc:`labelmap <labelmap>` settings.
|
||||
|
||||
.. note::
|
||||
|
||||
For molecule files defining line segments or triangles, only the
|
||||
*toff* keyword is relevant; the other offset keywords are ignored.
|
||||
|
||||
The *scale* keyword scales the size of the molecule. This can be
|
||||
useful for modeling polydisperse granular rigid bodies. The scale
|
||||
factor is applied to each of these properties in the molecule file, if
|
||||
@ -105,21 +120,26 @@ mass of the molecule (header keyword = mass), the center-of-mass of
|
||||
the molecule (header keyword = com), and the moments of inertia of the
|
||||
molecule (header keyword = inertia).
|
||||
|
||||
.. note::
|
||||
|
||||
For molecule files defining line segments or triangles, the *scale*
|
||||
keyword is ignored.
|
||||
|
||||
.. note::
|
||||
|
||||
The molecule command can be used to define molecules with bonds,
|
||||
angles, dihedrals, impropers, or special bond lists of neighbors
|
||||
within a molecular topology, so that you can later add the molecules
|
||||
to your simulation, via one or more of the commands listed above.
|
||||
Since this topology-related information requires that suitable storage
|
||||
is reserved when LAMMPS creates the simulation box (e.g. when using
|
||||
the :doc:`create_box <create_box>` command or the
|
||||
:doc:`read_data <read_data>` command) suitable space has to be reserved
|
||||
so you do not overflow those pre-allocated data structures when adding
|
||||
molecules later. Both the :doc:`create_box <create_box>` command and
|
||||
the :doc:`read_data <read_data>` command have "extra" options which
|
||||
ensure space is allocated for storing topology info for molecules that
|
||||
are added later.
|
||||
within a molecular topology, so that you can later add the
|
||||
molecules to your simulation, via one or more of the commands
|
||||
listed above. Since this topology-related information requires
|
||||
that suitable storage is reserved when LAMMPS creates the
|
||||
simulation box (e.g. when using the :doc:`create_box <create_box>`
|
||||
command or the :doc:`read_data <read_data>` command) suitable space
|
||||
has to be reserved so you do not overflow those pre-allocated data
|
||||
structures when adding molecules later. Both the :doc:`create_box
|
||||
<create_box>` command and the :doc:`read_data <read_data>` command
|
||||
have "extra" options which ensure space is allocated for storing
|
||||
topology info for molecules that are added later.
|
||||
|
||||
----------
|
||||
|
||||
@ -166,18 +186,18 @@ commands. Here is a simple example for a TIP3P water molecule:
|
||||
|
||||
1 1 2 1 3
|
||||
|
||||
A molecule file has a header and a body. The header appears first. The
|
||||
first line of the header and thus of the molecule file is *always*
|
||||
A molecule file has a header and a body. The header appears first.
|
||||
The first line of the header and thus of the molecule file is *always*
|
||||
skipped; it typically contains a description of the file or a comment
|
||||
from the software that created the file.
|
||||
|
||||
Then lines are read one line at a time. Lines can have a trailing
|
||||
comment starting with '#' that is ignored. There *must* be at least one
|
||||
blank between any valid content and the comment. If the line is blank
|
||||
(i.e. contains only white-space after comments are deleted), it is
|
||||
skipped. If the line contains a header keyword, the corresponding
|
||||
value(s) is/are read from the line. A line that is *not* blank and does
|
||||
*not* contains a header keyword begins the body of the file.
|
||||
comment starting with '#' that is ignored. There *must* be at least
|
||||
one blank between any valid content and the comment. If the line is
|
||||
blank (i.e. contains only white-space after comments are deleted), it
|
||||
is skipped. If the line contains a header keyword, the corresponding
|
||||
value(s) is/are read from the line. A line that is *not* blank and
|
||||
does *not* contains a header keyword begins the body of the file.
|
||||
|
||||
The body of the file contains zero or more sections. The first line
|
||||
of a section has only a keyword. The next line is skipped. The
|
||||
@ -192,7 +212,8 @@ line. The keyword should appear at the end of the line. All these
|
||||
settings have default values, as explained below. A line need only
|
||||
appear if the value(s) are different than the default, except when
|
||||
defining a *body* particle, which requires setting the number of
|
||||
*atoms* to 1, and setting the *inertia* in a specific section (see below).
|
||||
*atoms* to 1, and setting the *inertia* in a specific section (see
|
||||
below).
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
@ -242,6 +263,18 @@ defining a *body* particle, which requires setting the number of
|
||||
- inertia
|
||||
- 6 components of inertia tensor of molecule
|
||||
- computed
|
||||
* - Nlines
|
||||
- lines
|
||||
- # of lines Nlines in molecule
|
||||
- 0
|
||||
* - Ntris
|
||||
- triangles
|
||||
- # of triangle Ntris in molecule
|
||||
- 0
|
||||
|
||||
A molecule file can contain only either the *atoms*, *lines*, or
|
||||
*triangles* keyword. All the other keywords can only be used for
|
||||
a molecule file containing the *atoms* keyword.
|
||||
|
||||
For *mass*, *com*, and *inertia*, the default is for LAMMPS to calculate
|
||||
this quantity itself if needed, assuming the molecules consist of a set
|
||||
@ -266,6 +299,11 @@ These are the allowed section keywords for the body of the file.
|
||||
* *Special Bond Counts, Special Bonds* = special neighbor info
|
||||
* *Shake Flags, Shake Atoms, Shake Bond Types* = SHAKE info
|
||||
* *Body Integers, Body Doubles* = body-property sections
|
||||
* *Lines, Triangles* = corner points of lines or triangles
|
||||
|
||||
Similar to the corresponding keywords, a molecule file can only
|
||||
contain either a Coords, Lines, or Triangles section. All of the
|
||||
other sections can only be used in molecule files for atoms.
|
||||
|
||||
For the Types, Bonds, Angles, Dihedrals, and Impropers sections, each
|
||||
atom/bond/angle/etc type can be specified either as a number (numeric
|
||||
@ -669,6 +707,68 @@ the file format.
|
||||
|
||||
----------
|
||||
|
||||
*Lines* section:
|
||||
|
||||
* one line per line segment
|
||||
* line syntax: ID molecule-ID type x1 y1 x2 y2
|
||||
* molecule-ID = molecule-ID of the line segment
|
||||
* type = type of the line segment
|
||||
* x1,y1,x2,y2 = coords of two endpoints of line segment
|
||||
|
||||
Each line segment is assigned a molecule-ID and type, similar to an
|
||||
atom type. This allows a collection of lines to represent multiple 2d
|
||||
bodies, e.g. a collection of squares. Line-segments in each could
|
||||
have a different molecule-ID, or the left-facing edges could have a
|
||||
unique atom type.
|
||||
|
||||
The coords of two different line segments which are connected by a
|
||||
common point should list the exact same coordinates for the common
|
||||
point. This allows a command like :doc:`fix surface/local
|
||||
<fix_surface_local>` to infer connectivity of the two line segments.
|
||||
|
||||
The ordering of the two points defines the direction of an outward
|
||||
normal for the line segment. This is defined by a right-hand rule.
|
||||
The outward normal N = (0,0,1) x (p2-p1), where p1 and p2 are the 2
|
||||
points. In other words, a unit z-direction vector is crossed into the
|
||||
vector from p1 to p2 to determine the normal.
|
||||
|
||||
It depends on how the line segments are used by other commands in
|
||||
LAMMPS whether the normal direction matters or not.
|
||||
|
||||
----------
|
||||
|
||||
*Triangles* section:
|
||||
|
||||
* one line per triangle
|
||||
* line syntax: ID molecule-ID type x1 y1 z1 x2 y2 z2 x3 y3 z3
|
||||
* molecule-ID = molecule-ID assigned triangle
|
||||
* type = type assigned to triangle
|
||||
* x1,y1,z1,x2,y2,z2,x3,y3,z3 = coords of three corner points of triangle
|
||||
|
||||
Each triangle is assigned a molecule-ID and type, similar to an atom
|
||||
type. This allows a collection of triangles to represent multiple 3d
|
||||
objects, e.g. a curved surface on the left and right of the simulation
|
||||
box. Triangles in each could have a different molecule-ID, or the the
|
||||
triangles in the upper half could have a different type than those in
|
||||
the lower half.
|
||||
|
||||
The coords of two different triangles which share a common edge (2
|
||||
points) or corner point (single point) should list the exact same
|
||||
coordinates for the common points. This allows a command like
|
||||
:doc:`fix surface/local <fix_surface_local>` to infer connectivity of
|
||||
the two triangles.
|
||||
|
||||
The ordering of the three points defines the direction of the outward
|
||||
normal for the triangle. This is defined by a right-hand rule. The
|
||||
outward normal N = (p2-p1) x (p3-p1), where p1, p2, p3 are the 3
|
||||
point. In other words, the edge from p1 to p2 is crossed into the
|
||||
edge from p1 to p3 to determine the normal.
|
||||
|
||||
It depends on how the triangles are used by other commands in LAMMPS
|
||||
whether the normal direction matters or not.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
32
examples/gransurf/data.line
Normal file
32
examples/gransurf/data.line
Normal file
@ -0,0 +1,32 @@
|
||||
LAMMPS data file for line box
|
||||
|
||||
9 atoms
|
||||
9 lines
|
||||
2 atom types
|
||||
-15 15 xlo xhi
|
||||
-15 15 ylo yhi
|
||||
-0.5 0.5 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
1 1 2 1 1 8.5 5 0
|
||||
2 1 2 1 1 5 8.5 0
|
||||
3 1 2 1 1 -5 8.5 0
|
||||
4 1 2 1 1 -8.5 5 0
|
||||
5 1 2 1 1 -8.5 -5 0
|
||||
6 1 2 1 1 -5 -10 0
|
||||
7 1 2 1 1 5 -10 0
|
||||
8 1 2 1 1 10 -5 0
|
||||
9 1 2 1 1 0 -6.95 0
|
||||
|
||||
Lines
|
||||
|
||||
1 7 0 10 10
|
||||
2 10 10 0 7
|
||||
3 0 7 -10 10
|
||||
4 -10 10 -7 0
|
||||
5 -7 0 -10 -10
|
||||
6 -10 -10 0 -10
|
||||
7 0 -10 10 -10
|
||||
8 10 -10 10 0
|
||||
9 0 -9.9 0 -4
|
||||
22
examples/gransurf/data.tri
Normal file
22
examples/gransurf/data.tri
Normal file
@ -0,0 +1,22 @@
|
||||
LAMMPS data file for tri box
|
||||
|
||||
4 atoms
|
||||
4 triangles
|
||||
2 atom types
|
||||
-7.0 7.0 xlo xhi
|
||||
-7.0 7.0 ylo yhi
|
||||
0.0 9.0 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
1 1 2 1 1 0 -4 0
|
||||
2 1 2 1 1 4 0 0
|
||||
3 1 2 1 1 0 4 0
|
||||
4 1 2 1 1 -4 0 0
|
||||
|
||||
Triangles
|
||||
|
||||
1 -6 -6 0 6 -6 0 0 0 0
|
||||
2 6 -6 0 6 6 0 0 0 0
|
||||
3 6 6 0 -6 6 0 0 0 0
|
||||
4 -6 -6 0 0 0 0 -6 6 0
|
||||
62
examples/gransurf/data.tribox
Normal file
62
examples/gransurf/data.tribox
Normal file
@ -0,0 +1,62 @@
|
||||
LAMMPS data file generated from box24.stl
|
||||
|
||||
24 atoms
|
||||
24 triangles
|
||||
2 atom types
|
||||
-9.0 9.0 xlo xhi
|
||||
-9.0 9.0 ylo yhi
|
||||
-9.0 9.0 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
1 1 2 1 1 4.0 0.0 -6.0
|
||||
2 1 2 1 1 4.0 0.0 6.0
|
||||
3 1 2 1 1 0.0 -4.0 6.0
|
||||
4 1 2 1 1 -4.0 0.0 6.0
|
||||
5 1 2 1 1 0.0 -4.0 -6.0
|
||||
6 1 2 1 1 -4.0 0.0 -6.0
|
||||
7 1 2 1 1 0.0 4.0 6.0
|
||||
8 1 2 1 1 0.0 4.0 -6.0
|
||||
9 1 2 1 1 4.0 6.0 0.0
|
||||
10 1 2 1 1 0.0 6.0 4.0
|
||||
11 1 2 1 1 4.0 -6.0 0.0
|
||||
12 1 2 1 1 0.0 -6.0 4.0
|
||||
13 1 2 1 1 0.0 6.0 -4.0
|
||||
14 1 2 1 1 -4.0 6.0 0.0
|
||||
15 1 2 1 1 0.0 -6.0 -4.0
|
||||
16 1 2 1 1 -4.0 -6.0 0.0
|
||||
17 1 2 1 1 6.0 4.0 0.0
|
||||
18 1 2 1 1 6.0 0.0 -4.0
|
||||
19 1 2 1 1 -6.0 4.0 0.0
|
||||
20 1 2 1 1 -6.0 0.0 -4.0
|
||||
21 1 2 1 1 6.0 0.0 4.0
|
||||
22 1 2 1 1 6.0 -4.0 0.0
|
||||
23 1 2 1 1 -6.0 0.0 4.0
|
||||
24 1 2 1 1 -6.0 -4.0 0.0
|
||||
|
||||
Triangles
|
||||
|
||||
1 0.0 0.0 -6.0 6.0 6.0 -6.0 6.0 -6.0 -6.0
|
||||
2 0.0 0.0 6.0 6.0 -6.0 6.0 6.0 6.0 6.0
|
||||
3 0.0 0.0 6.0 -6.0 -6.0 6.0 6.0 -6.0 6.0
|
||||
4 -6.0 6.0 6.0 -6.0 -6.0 6.0 0.0 0.0 6.0
|
||||
5 -6.0 -6.0 -6.0 0.0 0.0 -6.0 6.0 -6.0 -6.0
|
||||
6 0.0 0.0 -6.0 -6.0 -6.0 -6.0 -6.0 6.0 -6.0
|
||||
7 0.0 0.0 6.0 6.0 6.0 6.0 -6.0 6.0 6.0
|
||||
8 6.0 6.0 -6.0 0.0 0.0 -6.0 -6.0 6.0 -6.0
|
||||
9 6.0 6.0 -6.0 0.0 6.0 0.0 6.0 6.0 6.0
|
||||
10 0.0 6.0 0.0 -6.0 6.0 6.0 6.0 6.0 6.0
|
||||
11 6.0 -6.0 6.0 0.0 -6.0 0.0 6.0 -6.0 -6.0
|
||||
12 0.0 -6.0 0.0 6.0 -6.0 6.0 -6.0 -6.0 6.0
|
||||
13 0.0 6.0 0.0 6.0 6.0 -6.0 -6.0 6.0 -6.0
|
||||
14 -6.0 6.0 6.0 0.0 6.0 0.0 -6.0 6.0 -6.0
|
||||
15 0.0 -6.0 0.0 -6.0 -6.0 -6.0 6.0 -6.0 -6.0
|
||||
16 0.0 -6.0 0.0 -6.0 -6.0 6.0 -6.0 -6.0 -6.0
|
||||
17 6.0 6.0 6.0 6.0 0.0 0.0 6.0 6.0 -6.0
|
||||
18 6.0 0.0 0.0 6.0 -6.0 -6.0 6.0 6.0 -6.0
|
||||
19 -6.0 6.0 -6.0 -6.0 0.0 0.0 -6.0 6.0 6.0
|
||||
20 -6.0 0.0 0.0 -6.0 6.0 -6.0 -6.0 -6.0 -6.0
|
||||
21 6.0 0.0 0.0 6.0 6.0 6.0 6.0 -6.0 6.0
|
||||
22 6.0 -6.0 -6.0 6.0 0.0 0.0 6.0 -6.0 6.0
|
||||
23 -6.0 0.0 0.0 -6.0 -6.0 6.0 -6.0 6.0 6.0
|
||||
24 -6.0 0.0 0.0 -6.0 -6.0 -6.0 -6.0 -6.0 6.0
|
||||
59
examples/gransurf/in.line.gran.data
Normal file
59
examples/gransurf/in.line.gran.data
Normal file
@ -0,0 +1,59 @@
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.line
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group line type 2
|
||||
|
||||
fix fsl all surface/local
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
59
examples/gransurf/in.line.gran.global
Normal file
59
examples/gransurf/in.line.gran.global
Normal file
@ -0,0 +1,59 @@
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
molecule lines surf.line
|
||||
|
||||
fix 20 all surface/global input mol lines &
|
||||
model * * hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global lines hooke/history &
|
||||
# 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 -1 0
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
#fix ins all pour 100 1 4767548 vol 0.4 10 &
|
||||
# diam one 1.0 region slab
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.6 adiam 1.0 fix 20 type 0.5 0.0
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
61
examples/gransurf/in.line.gran.surf
Normal file
61
examples/gransurf/in.line.gran.surf
Normal file
@ -0,0 +1,61 @@
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
|
||||
molecule lines surf.line
|
||||
fix 20 all surface/local input mol lines
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group line type 2
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
64
examples/gransurf/in.tri.gran.data
Normal file
64
examples/gransurf/in.tri.gran.data
Normal file
@ -0,0 +1,64 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tri
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
fix fsl all surface/local
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
62
examples/gransurf/in.tri.gran.global
Normal file
62
examples/gransurf/in.tri.gran.global
Normal file
@ -0,0 +1,62 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tri
|
||||
|
||||
fix 20 all surface/global input mol tris &
|
||||
model * * hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history &
|
||||
# 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
#fix ins all pour 100 1 4767548 vol 0.4 10 &
|
||||
# diam one 1.0 region slab ignore
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
60
examples/gransurf/in.tri.gran.global.stl
Normal file
60
examples/gransurf/in.tri.gran.global.stl
Normal file
@ -0,0 +1,60 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global input stl 2 surf.tri.stl &
|
||||
model * * hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global surf.tri.stl hooke/history &
|
||||
# 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
#fix ins all pour 100 1 4767548 vol 0.4 10 &
|
||||
# diam one 1.0 region slab ignore
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
66
examples/gransurf/in.tri.gran.surf
Normal file
66
examples/gransurf/in.tri.gran.surf
Normal file
@ -0,0 +1,66 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
|
||||
molecule tris surf.tri
|
||||
fix 20 all surface/local input mol tris
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
65
examples/gransurf/in.tri.gran.surf.stl
Normal file
65
examples/gransurf/in.tri.gran.surf.stl
Normal file
@ -0,0 +1,65 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
|
||||
fix 20 all surface/local input stl 2 surf.tri.stl
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
70
examples/gransurf/in.tribox.gran.data
Normal file
70
examples/gransurf/in.tribox.gran.data
Normal file
@ -0,0 +1,70 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tribox
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
fix fsl all surface/local
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
65
examples/gransurf/in.tribox.gran.global
Normal file
65
examples/gransurf/in.tribox.gran.global
Normal file
@ -0,0 +1,65 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tribox
|
||||
|
||||
fix 20 all surface/global input mol tris &
|
||||
model * * hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history &
|
||||
# 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
#fix ins all pour 100 1 4767548 vol 0.4 10 &
|
||||
# diam one 1.0 region slab ignore
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
63
examples/gransurf/in.tribox.gran.global.stl
Normal file
63
examples/gransurf/in.tribox.gran.global.stl
Normal file
@ -0,0 +1,63 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global input stl 2 surf.tri.stl &
|
||||
model * * hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global surf.tribox.stl hooke/history &
|
||||
# 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
#fix ins all pour 100 1 4767548 vol 0.4 10 &
|
||||
# diam one 1.0 region slab ignore
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
|
||||
fix_modify 20 move * none
|
||||
run 5000
|
||||
72
examples/gransurf/in.tribox.gran.surf
Normal file
72
examples/gransurf/in.tribox.gran.surf
Normal file
@ -0,0 +1,72 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
|
||||
molecule tris surf.tribox
|
||||
fix 20 all surface/local input mol tris
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
71
examples/gransurf/in.tribox.gran.surf.stl
Normal file
71
examples/gransurf/in.tribox.gran.surf.stl
Normal file
@ -0,0 +1,71 @@
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
|
||||
fix 20 all surface/local input stl 2 surf.tribox.stl
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 &
|
||||
tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
group tri type 2
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 &
|
||||
diam one 1.0 region slab ignore
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type &
|
||||
zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
|
||||
unfix 1
|
||||
set group tri angmom 0.0 0.0 0.0
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
|
||||
246
examples/gransurf/log.1Jul24.line.gran.data.g++.1
Normal file
246
examples/gransurf/log.1Jul24.line.gran.data.g++.1
Normal file
@ -0,0 +1,246 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.line
|
||||
Reading data file ...
|
||||
orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
9 atoms
|
||||
9 lines
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group line type 2
|
||||
9 atoms in group line
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.0201533
|
||||
ghost atom cutoff = 6.0201533
|
||||
binsize = 3.0100766, bins = 10 10 1
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair line/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.08 | 12.08 | 12.08 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 9 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 16 19.603933 1.0483784 0.66213376 0.32673222
|
||||
200 16 19.831299 1.6167923 1.0211319 0.33052165
|
||||
300 16 20.119751 2.3379224 1.4765825 0.33532918
|
||||
400 16 20.469289 3.2117688 2.0284855 0.34115482
|
||||
500 16 20.879914 4.2383315 2.676841 0.34799857
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 27 12.449543 2.1129055 1.3869354 0.35243867
|
||||
700 27 12.770891 2.6043792 1.7214254 0.38349742
|
||||
800 27 12.943117 2.8677827 1.9147069 0.37516936
|
||||
900 27 13.109917 3.1228891 2.1263001 0.38019376
|
||||
1000 27 12.990208 2.9398046 2.0739419 0.42599315
|
||||
1100 27 12.719767 2.5261889 1.8187978 0.45457071
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 35 9.8597994 1.8985781 1.2816098 0.38022839
|
||||
1300 35 9.7545391 1.7554241 1.2048448 0.37276257
|
||||
1400 35 9.7769878 1.7859543 1.2306073 0.37760148
|
||||
1500 35 9.9443391 2.013552 1.3984072 0.38116488
|
||||
1600 35 10.108938 2.2374064 1.548047 0.38622523
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 45 8.2127721 2.1026641 1.4164548 0.41493848
|
||||
1800 45 8.3070246 2.221153 1.4818344 0.48996397
|
||||
1900 45 8.3176349 2.2344917 1.4850053 0.47813979
|
||||
2000 45 8.2600241 2.1620667 1.4483974 0.43264606
|
||||
2100 45 8.1701045 2.0490249 1.3718091 0.42642557
|
||||
2200 45 8.1506342 2.0245479 1.3453729 0.41836911
|
||||
2300 57 6.4845955 1.6035877 1.0816884 0.47342846
|
||||
2400 57 6.4586802 1.5727098 1.0558623 0.46664067
|
||||
2500 57 6.4961252 1.6173252 1.0834364 0.44274885
|
||||
2600 57 6.6039251 1.7457676 1.176221 0.41973624
|
||||
2700 57 6.5554483 1.688008 1.1497303 0.44701076
|
||||
2800 57 6.5567541 1.6895638 1.1752899 0.43024349
|
||||
2900 69 5.8154825 1.8251539 1.249261 0.48033376
|
||||
3000 69 6.0391782 2.0829727 1.4327472 0.47214476
|
||||
3100 69 6.1705005 2.2343272 1.5419433 0.48474059
|
||||
3200 69 6.132184 2.1901659 1.4819192 0.55938449
|
||||
3300 69 5.8754263 1.8942417 1.2793954 0.49963347
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 76 5.2906822 1.6520066 1.1205016 0.45528549
|
||||
3500 76 5.3445576 1.7132287 1.1601016 0.47797559
|
||||
3600 76 5.4367165 1.8179547 1.2411665 0.48683301
|
||||
3700 76 5.4872464 1.875375 1.273533 0.498041
|
||||
3800 76 5.4740601 1.8603906 1.266449 0.48678074
|
||||
3900 76 5.1850894 1.5320148 1.0615263 0.54254269
|
||||
4000 88 4.6518362 1.4992438 1.0244353 0.4970414
|
||||
4100 88 4.7393433 1.596848 1.1075633 0.5183373
|
||||
4200 88 4.5210383 1.3533539 0.95365012 0.45549812
|
||||
4300 88 4.7560439 1.6154755 1.0954535 0.50256618
|
||||
4400 88 4.9238859 1.8026839 1.219188 0.55797132
|
||||
4500 88 4.9156862 1.7935381 1.225359 0.55455375
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 96 4.553808 1.6842213 1.1456065 0.49939928
|
||||
4700 96 4.6015699 1.7369816 1.1986257 0.4988626
|
||||
4800 96 4.6404333 1.7799121 1.2251247 0.55167427
|
||||
4900 96 4.7241213 1.872358 1.2735481 0.71833717
|
||||
5000 96 4.7796445 1.9336918 1.3156784 0.66606358
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
5100 104 4.5227739 1.894436 1.2925792 0.68747814
|
||||
5200 104 4.5828 1.9602093 1.3495676 0.72748168
|
||||
5300 104 4.2544924 1.600468 1.1051773 0.60419007
|
||||
5400 104 4.3514327 1.7066898 1.1556029 0.64443629
|
||||
5500 104 4.3561805 1.7118922 1.1567283 0.64063026
|
||||
5600 104 4.4135092 1.7747098 1.2134595 0.64422908
|
||||
5700 109 4.1731736 1.6457981 1.1165517 0.62979315
|
||||
5800 109 4.2360976 1.7144426 1.1586539 0.59262337
|
||||
5900 109 4.3212416 1.8073269 1.2143855 0.63775197
|
||||
6000 109 4.4240471 1.9194784 1.2958061 0.60804743
|
||||
6100 109 4.5373715 2.043105 1.3752433 0.63992905
|
||||
6200 109 4.4471074 1.9446351 1.3287311 0.69275635
|
||||
6300 109 4.4126755 1.9070729 1.3022258 0.62040671
|
||||
6400 109 4.5165479 2.0203883 1.3863072 0.63682236
|
||||
6500 109 4.2755226 1.7574517 1.2024768 0.61086932
|
||||
6600 109 4.1690976 1.6413517 1.1235094 0.5863121
|
||||
6700 109 4.0973952 1.5631308 1.0585691 0.64655034
|
||||
6800 109 4.106546 1.5731135 1.0593334 0.59742247
|
||||
6900 109 4.09205 1.5572998 1.0468541 0.54449389
|
||||
7000 109 4.1494965 1.6199687 1.0886876 0.58703636
|
||||
7100 109 4.220005 1.696887 1.1346313 0.58309534
|
||||
7200 109 4.2559993 1.7361535 1.1633567 0.59963725
|
||||
7300 109 4.3570648 1.8464068 1.2394663 0.59299795
|
||||
7400 109 4.5559427 2.0633645 1.3860772 0.5985101
|
||||
7500 109 4.7538736 2.2792891 1.5322837 0.60614702
|
||||
7600 109 4.9145244 2.4545446 1.6536668 0.63147745
|
||||
7700 109 5.0299608 2.5804752 1.757645 0.69057802
|
||||
7800 109 5.3520062 2.9317973 2.000564 0.66812054
|
||||
7900 109 5.4070924 2.9918914 2.0567247 0.7668346
|
||||
8000 109 4.9680652 2.5129527 1.7229154 0.65816251
|
||||
8100 108 4.8654372 2.3758475 1.6345121 0.6217302
|
||||
8200 108 4.9502871 2.4684897 1.6821321 0.67733955
|
||||
8300 106 5.1164153 2.5984884 1.7604625 0.65703214
|
||||
8400 104 5.1073874 2.5350232 1.7227477 0.61775984
|
||||
8500 103 5.1173391 2.518278 1.7205254 0.63856204
|
||||
8600 101 4.9892171 2.3203624 1.5725655 0.66092676
|
||||
8700 101 4.9544942 2.2822054 1.5445523 0.63575204
|
||||
8800 98 4.7811294 2.0000094 1.360531 0.59490375
|
||||
8900 98 4.5866354 1.7856239 1.2179755 0.5479866
|
||||
9000 97 4.5098376 1.668686 1.1480979 0.51766609
|
||||
9100 96 4.4900228 1.6137609 1.1001152 0.58261959
|
||||
9200 96 4.5323564 1.6605248 1.1250204 0.52446222
|
||||
9300 96 4.6268095 1.7648625 1.1909651 0.51122536
|
||||
9400 94 4.6951589 1.7723935 1.2009448 0.51084023
|
||||
9500 94 4.7977809 1.8860106 1.2743862 0.55202711
|
||||
9600 92 4.9195403 1.9501151 1.3186129 0.52289861
|
||||
9700 92 5.0437791 2.0879899 1.4123366 0.69726187
|
||||
9800 92 4.9557322 1.9902793 1.3693209 0.63183721
|
||||
9900 92 5.0579303 2.1036943 1.4503547 0.5525547
|
||||
10000 92 4.9127294 1.9425566 1.3361772 0.54682786
|
||||
Loop time of 0.370625 on 1 procs for 10000 steps with 92 atoms
|
||||
|
||||
Performance: 11655971.193 tau/day, 26981.415 timesteps/s, 2.482 Matom-step/s
|
||||
88.3% 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.031333 | 0.031333 | 0.031333 | 0.0 | 8.45
|
||||
Neigh | 0.02915 | 0.02915 | 0.02915 | 0.0 | 7.87
|
||||
Comm | 0.0011333 | 0.0011333 | 0.0011333 | 0.0 | 0.31
|
||||
Output | 0.29072 | 0.29072 | 0.29072 | 0.0 | 78.44
|
||||
Modify | 0.015871 | 0.015871 | 0.015871 | 0.0 | 4.28
|
||||
Other | | 0.002418 | | | 0.65
|
||||
|
||||
Nlocal: 92 ave 92 max 92 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
|
||||
Neighbor list builds = 1464
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
248
examples/gransurf/log.1Jul24.line.gran.data.g++.4
Normal file
248
examples/gransurf/log.1Jul24.line.gran.data.g++.4
Normal file
@ -0,0 +1,248 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.line
|
||||
Reading data file ...
|
||||
orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
9 atoms
|
||||
9 lines
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group line type 2
|
||||
9 atoms in group line
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.0201533
|
||||
ghost atom cutoff = 6.0201533
|
||||
binsize = 3.0100766, bins = 10 10 1
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair line/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.09 | 12.09 | 12.09 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 9 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 16 19.603933 1.0483784 0.66213376 0.32673222
|
||||
200 16 19.831299 1.6167923 1.0211319 0.33052165
|
||||
300 16 20.119751 2.3379224 1.4765825 0.33532918
|
||||
400 16 20.469289 3.2117688 2.0284855 0.34115482
|
||||
500 16 20.879914 4.2383315 2.676841 0.34799857
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 27 12.449543 2.1129055 1.3869354 0.35243867
|
||||
700 27 12.770891 2.6043792 1.7214254 0.38349742
|
||||
800 27 12.943117 2.8677827 1.9147069 0.37516936
|
||||
900 27 13.108843 3.121247 2.1253115 0.38032946
|
||||
1000 27 12.984928 2.9317288 2.0698845 0.41762763
|
||||
1100 27 12.721952 2.5295302 1.8183899 0.45463442
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 35 9.8620936 1.9016982 1.2818983 0.38031565
|
||||
1300 35 9.7562992 1.7578179 1.2054393 0.37155987
|
||||
1400 35 9.7634141 1.7674941 1.2257167 0.40489503
|
||||
1500 35 9.9265493 1.9893579 1.3730689 0.44243147
|
||||
1600 35 10.124257 2.2582409 1.5638344 0.3881931
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 45 8.17872 2.0598558 1.4054749 0.40405845
|
||||
1800 45 8.3495746 2.2746444 1.5611373 0.4161154
|
||||
1900 45 8.3549118 2.281354 1.5264615 0.58558494
|
||||
2000 45 8.466023 2.4210367 1.6128843 0.43527142
|
||||
2100 45 8.3019659 2.2147934 1.4788849 0.40709585
|
||||
2200 45 8.3935397 2.3299148 1.5526831 0.42713391
|
||||
2300 57 6.6026997 1.7443076 1.1713462 0.44233027
|
||||
2400 57 6.5994805 1.7404719 1.1751702 0.43246067
|
||||
2500 57 6.5640783 1.6982905 1.1368997 0.46168872
|
||||
2600 57 6.6039644 1.7458144 1.1747368 0.43261873
|
||||
2700 57 6.4602492 1.5745793 1.0736669 0.44103997
|
||||
2800 57 6.5736746 1.7097244 1.1669705 0.42453827
|
||||
2900 69 5.8037651 1.8116491 1.2327379 0.45474569
|
||||
3000 69 6.0851724 2.135983 1.4490384 0.4768338
|
||||
3100 69 6.2646568 2.3428464 1.5760684 0.59595364
|
||||
3200 69 6.1537104 2.2149759 1.4941616 0.5329903
|
||||
3300 69 6.1499191 2.2106063 1.487616 0.49067642
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 79 5.285068 1.8038634 1.2153135 0.54139582
|
||||
3500 79 5.2666274 1.7830175 1.1995458 0.55459427
|
||||
3600 79 5.3876859 1.9198663 1.293578 0.49850619
|
||||
3700 79 5.1383103 1.6379635 1.1293018 0.47695008
|
||||
3800 79 5.2440711 1.7575191 1.2055687 0.48710695
|
||||
3900 79 5.2012402 1.7091016 1.1822768 0.47985425
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4000 86 4.7629755 1.5405815 1.0729745 0.50168305
|
||||
4100 86 4.8116324 1.5950004 1.1107717 0.483217
|
||||
4200 86 4.698988 1.4690165 1.0162879 0.67403453
|
||||
4300 86 4.8348111 1.6209239 1.105696 0.48548859
|
||||
4400 86 4.9124435 1.7077496 1.1582583 0.51373609
|
||||
4500 86 4.9206356 1.7169118 1.1667418 0.48432388
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 92 4.831251 1.8521355 1.2581902 0.50814475
|
||||
4700 92 4.9541337 1.9885054 1.3496439 0.5518164
|
||||
4800 92 5.0387054 2.0823594 1.425245 0.56425459
|
||||
4900 92 4.8856072 1.9124576 1.3459733 0.5410045
|
||||
5000 92 4.8601367 1.8841916 1.3063393 0.57580057
|
||||
5100 104 4.3795169 1.7374629 1.2066873 0.58493857
|
||||
5200 104 4.380644 1.7386979 1.2509659 0.50835208
|
||||
5300 104 4.4901754 1.8587164 1.3020409 0.55360586
|
||||
5400 104 4.4454236 1.8096798 1.2487279 0.90957267
|
||||
5500 104 4.3141875 1.6658786 1.138758 0.53403954
|
||||
5600 104 4.2764169 1.6244916 1.1094266 0.65043467
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
5700 108 4.2683501 1.7239258 1.1727672 0.67160605
|
||||
5800 108 4.4204385 1.8899816 1.2769697 0.67686418
|
||||
5900 108 4.4764852 1.9511754 1.3107129 0.64264496
|
||||
6000 108 4.5530001 2.0347172 1.3710873 0.87709467
|
||||
6100 108 4.5436906 2.0245527 1.3721167 0.66133934
|
||||
6200 108 4.4256297 1.8956495 1.28211 0.61859323
|
||||
6300 109 4.4477168 1.9452998 1.3215253 0.65196709
|
||||
6400 109 4.5512937 2.0582928 1.4082655 0.63769354
|
||||
6500 109 4.1366008 1.6059006 1.0940711 0.73216085
|
||||
6600 109 4.0674318 1.5304435 1.0397138 0.54093108
|
||||
6700 109 4.1348468 1.6039871 1.0852573 0.56630918
|
||||
6800 109 4.1430428 1.6129282 1.0943172 0.69178634
|
||||
6900 109 4.0543146 1.5161338 1.0197644 0.63108285
|
||||
7000 109 4.0838002 1.5482999 1.0407391 0.5748685
|
||||
7100 109 4.1521096 1.6228193 1.0928425 0.56509731
|
||||
7200 109 4.2124442 1.6886388 1.1348358 0.57024309
|
||||
7300 109 4.3441285 1.8322944 1.2309535 0.55057491
|
||||
7400 109 4.4552392 1.9535062 1.3185298 0.57664423
|
||||
7500 109 4.6386117 2.1535488 1.4543864 0.59727363
|
||||
7600 109 4.8049773 2.3350386 1.5852377 0.61684981
|
||||
7700 109 5.0774428 2.6322737 1.7974351 0.6717935
|
||||
7800 109 5.137687 2.6979946 1.8459588 0.71615719
|
||||
7900 109 5.2761666 2.8490633 1.9573222 0.66913482
|
||||
8000 108 5.2408428 2.7857291 1.9179915 0.70758627
|
||||
8100 107 4.9219903 2.4119819 1.6414735 0.67384853
|
||||
8200 105 4.88649 2.3202761 1.5738581 0.58235547
|
||||
8300 105 5.1910655 2.6537061 1.7940904 0.64215432
|
||||
8400 103 5.2358927 2.6483047 1.8075842 0.65624924
|
||||
8500 101 5.1028866 2.445274 1.6730309 0.91849673
|
||||
8600 100 4.8817968 2.1725461 1.4906124 0.59208611
|
||||
8700 97 4.7804409 1.9672828 1.3520376 0.5666713
|
||||
8800 97 4.6872197 1.8644179 1.2830232 0.62172034
|
||||
8900 97 4.5268118 1.6874162 1.159267 0.55290924
|
||||
9000 95 4.5196336 1.6126686 1.1077501 0.58828852
|
||||
9100 95 4.4232371 1.5060654 1.0318533 0.49357574
|
||||
9200 94 4.5096768 1.5670383 1.0651294 0.52806219
|
||||
9300 94 4.5673055 1.6308414 1.1051788 0.60308191
|
||||
9400 94 4.7375978 1.8193794 1.235354 0.52984284
|
||||
9500 94 4.8870798 1.9848774 1.3398669 0.54526912
|
||||
9600 94 5.1128471 2.2348339 1.504691 0.58238093
|
||||
9700 94 5.0933367 2.2132331 1.499447 0.64046557
|
||||
9800 94 4.9158399 2.0167189 1.377884 0.61716162
|
||||
9900 93 4.905138 1.9699273 1.3392297 0.56563086
|
||||
10000 93 4.7728825 1.8233309 1.2460043 0.62103726
|
||||
Loop time of 0.670914 on 4 procs for 10000 steps with 93 atoms
|
||||
|
||||
Performance: 6438981.671 tau/day, 14905.050 timesteps/s, 1.386 Matom-step/s
|
||||
92.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.0060352 | 0.012089 | 0.021126 | 5.2 | 1.80
|
||||
Neigh | 0.0047076 | 0.0094254 | 0.015055 | 3.9 | 1.40
|
||||
Comm | 0.063432 | 0.075753 | 0.083566 | 3.0 | 11.29
|
||||
Output | 0.27651 | 0.39883 | 0.54452 | 16.3 | 59.45
|
||||
Modify | 0.015515 | 0.016152 | 0.01725 | 0.5 | 2.41
|
||||
Other | | 0.1587 | | | 23.65
|
||||
|
||||
Nlocal: 23.25 ave 49 max 7 min
|
||||
Histogram: 1 0 1 1 0 0 0 0 0 1
|
||||
Nghost: 23.25 ave 32 max 14 min
|
||||
Histogram: 1 0 0 1 0 0 1 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 1467
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
219
examples/gransurf/log.1Jul24.line.gran.global.g++.1
Normal file
219
examples/gransurf/log.1Jul24.line.gran.global.g++.1
Normal file
@ -0,0 +1,219 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
molecule lines surf.line
|
||||
Read molecule template lines:
|
||||
LAMMPS molecule file for line box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
9 lines with 11 points
|
||||
|
||||
fix 20 all surface/global lines hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global lines hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 -1 0
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 fix 20 type 0.5 0.0
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 47 47 2
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.757 | 5.757 | 5.757 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 7 1.0483784 1.0483784 0.66213376 0.0069891897
|
||||
200 7 1.6167923 1.6167923 1.0211319 0.010778615
|
||||
300 7 2.3379224 2.3379224 1.4765825 0.015586149
|
||||
400 7 3.2117688 3.2117688 2.0284855 0.021411792
|
||||
500 7 4.2383315 4.2383315 2.676841 0.028255543
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 18 2.1129055 2.1129055 1.3869354 0.039910437
|
||||
700 18 2.6043792 2.6043792 1.7214254 0.063754392
|
||||
800 18 2.8677827 2.8677827 1.9147069 0.054169228
|
||||
900 18 3.1228891 3.1228891 2.1263001 0.059201028
|
||||
1000 18 2.9398046 2.9398046 2.0739419 0.086537278
|
||||
1100 18 2.5261889 2.5261889 1.8187978 0.12454808
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 26 1.8985781 1.8985781 1.2816098 0.058565477
|
||||
1300 26 1.7554241 1.7554241 1.2048448 0.050988843
|
||||
1400 26 1.7859543 1.7859543 1.2306073 0.054608317
|
||||
1500 26 2.013552 2.013552 1.3984072 0.058664544
|
||||
1600 26 2.2374064 2.2374064 1.548047 0.063825039
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 36 2.1026641 2.1026641 1.4164548 0.090879302
|
||||
1800 36 2.221153 2.221153 1.4818344 0.14617071
|
||||
1900 36 2.2344917 2.2344917 1.4850053 0.14491866
|
||||
2000 36 2.162057 2.162057 1.4483877 0.10962255
|
||||
2100 36 2.0490205 2.0490205 1.371803 0.10269632
|
||||
2200 36 2.0245485 2.0245485 1.3453701 0.089476431
|
||||
2300 48 1.6035919 1.6035919 1.0816887 0.1462717
|
||||
2400 48 1.5727178 1.5727178 1.0558651 0.13036507
|
||||
2500 48 1.6133884 1.6133884 1.0809644 0.11153652
|
||||
2600 48 1.7297828 1.7297828 1.1672461 0.11279238
|
||||
2700 48 1.6146016 1.6146016 1.1097429 0.11088332
|
||||
2800 48 1.6951748 1.6951748 1.166744 0.096514604
|
||||
2900 60 1.8416564 1.8416564 1.2540668 0.14915168
|
||||
3000 60 2.1003861 2.1003861 1.4392908 0.14801032
|
||||
3100 60 2.2828232 2.2828232 1.556736 0.15616608
|
||||
3200 60 2.1222828 2.1222828 1.4349318 0.20907466
|
||||
3300 60 1.9967087 1.9967087 1.3527156 0.33475251
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 67 1.7019207 1.7019207 1.1573194 0.21087521
|
||||
3500 67 1.7833499 1.7833499 1.2070513 0.1780625
|
||||
3600 67 1.7577191 1.7577191 1.1996856 0.28041006
|
||||
3700 67 1.7607556 1.7607556 1.2011069 0.15554549
|
||||
3800 67 1.8033884 1.8033884 1.2321274 0.17400045
|
||||
3900 67 1.6362949 1.6362949 1.1260761 0.17584879
|
||||
4000 79 1.6044993 1.6044993 1.095751 0.15524341
|
||||
4100 79 1.6440518 1.6440518 1.1367568 0.18985067
|
||||
4200 79 1.4972418 1.4972418 1.0384732 0.18741202
|
||||
4300 79 1.6170109 1.6170109 1.1016272 0.15651659
|
||||
4400 79 1.8928159 1.8928159 1.2782002 0.18144602
|
||||
4500 79 1.9936679 1.9936679 1.3475771 0.20164039
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 90 1.8140729 1.8140729 1.24197 0.31384373
|
||||
4700 90 2.0254763 2.0254763 1.384261 0.23627572
|
||||
4800 90 1.9114718 1.9114718 1.2955738 0.24021925
|
||||
4900 90 1.9776905 1.9776905 1.3575896 0.31285969
|
||||
5000 90 1.970076 1.970076 1.3376466 0.25423539
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
5100 97 1.7820291 1.7820291 1.2227938 0.36718321
|
||||
5200 97 1.7597485 1.7597485 1.2119527 0.27764658
|
||||
5300 97 1.8501223 1.8501223 1.2722665 0.2360191
|
||||
5400 97 1.6078405 1.6078405 1.0908201 0.32910986
|
||||
5500 97 1.6928997 1.6928997 1.1522543 0.25113312
|
||||
5600 97 1.7992766 1.7992766 1.2196839 0.34494996
|
||||
5700 100 1.7649055 1.7649055 1.1911619 0.36582075
|
||||
5800 100 1.9223565 1.9223565 1.2879921 0.28447504
|
||||
5900 100 1.9444004 1.9444004 1.3064959 0.3754893
|
||||
6000 100 1.9270809 1.9270809 1.3050329 0.37763816
|
||||
6100 100 2.0085556 2.0085556 1.3508579 0.28069022
|
||||
6200 100 1.8722285 1.8722285 1.270563 0.39005335
|
||||
6300 100 1.8274778 1.8274778 1.2443066 0.28375094
|
||||
6400 100 1.8520157 1.8520157 1.2633763 0.27216291
|
||||
6500 100 1.787681 1.787681 1.2218869 0.25732165
|
||||
6600 100 1.7226268 1.7226268 1.1638035 0.27501256
|
||||
6700 100 1.5680255 1.5680255 1.0574623 0.20532645
|
||||
6800 100 1.5457817 1.5457817 1.0457377 0.20982707
|
||||
6900 100 1.5847886 1.5847886 1.0652338 0.26944126
|
||||
7000 100 1.6088044 1.6088044 1.0792231 0.2316201
|
||||
7100 100 1.7081624 1.7081624 1.1436866 0.33210417
|
||||
7200 100 1.8245918 1.8245918 1.2219392 0.2337092
|
||||
7300 100 1.9177685 1.9177685 1.2897955 0.30095141
|
||||
7400 100 2.0540287 2.0540287 1.3801642 0.25456251
|
||||
7500 100 2.2039085 2.2039085 1.4820949 0.28834324
|
||||
7600 100 2.259514 2.259514 1.5282738 0.28491233
|
||||
7700 100 2.5155549 2.5155549 1.7074936 0.3152297
|
||||
7800 100 2.6870643 2.6870643 1.8312269 0.35440174
|
||||
7900 100 2.4727714 2.4727714 1.703333 0.36829004
|
||||
8000 100 2.6276081 2.6276081 1.7884458 0.32525675
|
||||
8100 99 2.5924836 2.5924836 1.7709533 0.37086875
|
||||
8200 99 2.7395551 2.7395551 1.8614194 0.38872251
|
||||
8300 96 2.6217174 2.6217174 1.7750969 0.29386994
|
||||
8400 94 2.3453973 2.3453973 1.5915715 0.25246126
|
||||
8500 92 2.2746092 2.2746092 1.5522863 0.31979019
|
||||
8600 91 2.0971668 2.0971668 1.4441167 0.23164239
|
||||
8700 90 1.9520436 1.9520436 1.3407037 0.2267317
|
||||
8800 88 1.6031029 1.6031029 1.1075422 0.22893706
|
||||
8900 88 1.3714136 1.3714136 0.95329267 0.1449532
|
||||
9000 88 1.3999833 1.3999833 0.96786566 0.17754279
|
||||
9100 88 1.5308757 1.5308757 1.0447361 0.1886558
|
||||
9200 88 1.5573847 1.5573847 1.0593305 0.16600982
|
||||
9300 86 1.5666806 1.5666806 1.065567 0.18426275
|
||||
9400 86 1.7748404 1.7748404 1.1960622 0.19566408
|
||||
9500 86 1.8680619 1.8680619 1.2596475 0.2541481
|
||||
9600 86 2.0507836 2.0507836 1.3819586 0.27903247
|
||||
9700 86 2.1304474 2.1304474 1.4467793 0.36641932
|
||||
9800 85 2.0665993 2.0665993 1.4185404 0.21957531
|
||||
9900 85 2.2152558 2.2152558 1.5009933 0.2464896
|
||||
10000 85 2.2236372 2.2236372 1.5032593 0.2873953
|
||||
Loop time of 0.330199 on 1 procs for 10000 steps with 85 atoms
|
||||
|
||||
Performance: 13083014.205 tau/day, 30284.755 timesteps/s, 2.574 Matom-step/s
|
||||
91.3% 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.014535 | 0.014535 | 0.014535 | 0.0 | 4.40
|
||||
Neigh | 0.0077843 | 0.0077843 | 0.0077843 | 0.0 | 2.36
|
||||
Comm | 0.0007947 | 0.0007947 | 0.0007947 | 0.0 | 0.24
|
||||
Output | 0.27492 | 0.27492 | 0.27492 | 0.0 | 83.26
|
||||
Modify | 0.029972 | 0.029972 | 0.029972 | 0.0 | 9.08
|
||||
Other | | 0.002194 | | | 0.66
|
||||
|
||||
Nlocal: 85 ave 85 max 85 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: 125 ave 125 max 125 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 125
|
||||
Ave neighs/atom = 1.4705882
|
||||
Neighbor list builds = 1465
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
220
examples/gransurf/log.1Jul24.line.gran.global.g++.4
Normal file
220
examples/gransurf/log.1Jul24.line.gran.global.g++.4
Normal file
@ -0,0 +1,220 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
molecule lines surf.line
|
||||
Read molecule template lines:
|
||||
LAMMPS molecule file for line box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
9 lines with 11 points
|
||||
|
||||
fix 20 all surface/global lines hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global lines hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 -1 0
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 fix 20 type 0.5 0.0
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 47 47 2
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.765 | 5.765 | 5.765 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 7 1.0483784 1.0483784 0.66213376 0.0069891897
|
||||
200 7 1.6167923 1.6167923 1.0211319 0.010778615
|
||||
300 7 2.3379224 2.3379224 1.4765825 0.015586149
|
||||
400 7 3.2117688 3.2117688 2.0284855 0.021411792
|
||||
500 7 4.2383315 4.2383315 2.676841 0.028255543
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 18 2.1129055 2.1129055 1.3869354 0.039910437
|
||||
700 18 2.6043792 2.6043792 1.7214254 0.063754392
|
||||
800 18 2.8677827 2.8677827 1.9147069 0.054169228
|
||||
900 18 3.1228891 3.1228891 2.1263001 0.059201028
|
||||
1000 18 2.9398046 2.9398046 2.0739419 0.086537278
|
||||
1100 18 2.5261889 2.5261889 1.8187978 0.12454808
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 26 1.8985781 1.8985781 1.2816098 0.058565477
|
||||
1300 26 1.7554241 1.7554241 1.2048448 0.050988843
|
||||
1400 26 1.7859543 1.7859543 1.2306073 0.054608317
|
||||
1500 26 2.013552 2.013552 1.3984072 0.058664544
|
||||
1600 26 2.2374064 2.2374064 1.548047 0.063825039
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 36 2.1026641 2.1026641 1.4164548 0.090879302
|
||||
1800 36 2.221153 2.221153 1.4818344 0.14617071
|
||||
1900 36 2.2344917 2.2344917 1.4850053 0.14491866
|
||||
2000 36 2.162057 2.162057 1.4483877 0.10962255
|
||||
2100 36 2.0490205 2.0490205 1.371803 0.10269632
|
||||
2200 36 2.0245485 2.0245485 1.3453701 0.089476431
|
||||
2300 48 1.6035919 1.6035919 1.0816887 0.1462717
|
||||
2400 48 1.5727178 1.5727178 1.0558651 0.13036507
|
||||
2500 48 1.6133884 1.6133884 1.0809644 0.11153652
|
||||
2600 48 1.7297828 1.7297828 1.1672461 0.11279238
|
||||
2700 48 1.6146016 1.6146016 1.1097429 0.11088332
|
||||
2800 48 1.6951748 1.6951748 1.166744 0.096514605
|
||||
2900 60 1.8416564 1.8416564 1.2540668 0.14915169
|
||||
3000 60 2.100386 2.100386 1.4392907 0.1480102
|
||||
3100 60 2.2828225 2.2828225 1.5567356 0.15616606
|
||||
3200 60 2.1222644 2.1222644 1.4349199 0.20907562
|
||||
3300 60 1.9966845 1.9966845 1.3527006 0.33472885
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 67 1.7019235 1.7019235 1.1573204 0.2108847
|
||||
3500 67 1.7833138 1.7833138 1.2070182 0.17801747
|
||||
3600 67 1.7569994 1.7569994 1.1991783 0.28231225
|
||||
3700 67 1.7571831 1.7571831 1.1993044 0.14987615
|
||||
3800 67 1.8019878 1.8019878 1.2311475 0.16225609
|
||||
3900 67 1.6358579 1.6358579 1.126536 0.17569967
|
||||
4000 79 1.6034602 1.6034602 1.0941546 0.16756481
|
||||
4100 79 1.6366467 1.6366467 1.1340817 0.16064361
|
||||
4200 79 1.4730958 1.4730958 1.0141142 0.16287858
|
||||
4300 79 1.5906033 1.5906033 1.0817142 0.1625915
|
||||
4400 79 1.8936552 1.8936552 1.2861135 0.17579343
|
||||
4500 79 2.0727626 2.0727626 1.402595 0.19190637
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 90 1.8869572 1.8869572 1.2792715 0.34462947
|
||||
4700 90 2.0639296 2.0639296 1.3938374 0.34201338
|
||||
4800 90 1.9341543 1.9341543 1.3359686 0.21954974
|
||||
4900 90 1.9328058 1.9328058 1.318194 0.22883244
|
||||
5000 90 1.8713075 1.8713075 1.2779328 0.4301643
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
5100 97 1.8889201 1.8889201 1.2901598 0.4621263
|
||||
5200 97 1.8182665 1.8182665 1.2499619 0.35152238
|
||||
5300 97 1.8955183 1.8955183 1.3251783 0.26911868
|
||||
5400 97 1.698589 1.698589 1.1591879 0.30370185
|
||||
5500 97 1.7599832 1.7599832 1.1979596 0.32792377
|
||||
5600 97 1.7770974 1.7770974 1.211641 0.31929074
|
||||
5700 100 1.7803057 1.7803057 1.2040432 0.35291347
|
||||
5800 100 1.926965 1.926965 1.3003468 0.27956044
|
||||
5900 100 2.0526934 2.0526934 1.3834338 0.31887573
|
||||
6000 100 2.1044137 2.1044137 1.4099441 0.29869407
|
||||
6100 100 2.0230041 2.0230041 1.3669222 0.28123514
|
||||
6200 100 2.0312769 2.0312769 1.3817115 0.30601616
|
||||
6300 100 2.0551063 2.0551063 1.393468 0.29181867
|
||||
6400 100 1.8164349 1.8164349 1.2965294 0.25696247
|
||||
6500 100 1.6499854 1.6499854 1.1522945 0.26606593
|
||||
6600 100 1.5859571 1.5859571 1.079181 0.23976532
|
||||
6700 100 1.5818463 1.5818463 1.0729409 0.22487518
|
||||
6800 100 1.5370121 1.5370121 1.037886 0.20497101
|
||||
6900 100 1.5636721 1.5636721 1.0493528 0.24001323
|
||||
7000 100 1.625322 1.625322 1.0927408 0.21871244
|
||||
7100 100 1.6516426 1.6516426 1.1089036 0.24426204
|
||||
7200 100 1.8158528 1.8158528 1.2225264 0.24120862
|
||||
7300 100 2.0003553 2.0003553 1.3472959 0.2565553
|
||||
7400 100 2.2073583 2.2073583 1.4799781 0.27501492
|
||||
7500 100 2.4331081 2.4331081 1.6366984 0.2964906
|
||||
7600 100 2.4714321 2.4714321 1.6795351 0.41204677
|
||||
7700 100 2.722459 2.722459 1.859155 0.34849871
|
||||
7800 100 2.971029 2.971029 2.0560731 0.3575871
|
||||
7900 100 2.5988892 2.5988892 1.8002454 0.39841917
|
||||
8000 100 2.7119251 2.7119251 1.8535416 0.3339011
|
||||
8100 98 2.6035719 2.6035719 1.787137 0.30161331
|
||||
8200 95 2.4913394 2.4913394 1.709658 0.29609108
|
||||
8300 94 2.5446704 2.5446704 1.7329605 0.38074
|
||||
8400 93 2.7108353 2.7108353 1.8449224 0.29338784
|
||||
8500 89 2.4397796 2.4397796 1.66773 0.30167351
|
||||
8600 89 2.3096796 2.3096796 1.5987688 0.34829767
|
||||
8700 86 1.9343795 1.9343795 1.3483427 0.26186082
|
||||
8800 85 1.7530569 1.7530569 1.2210598 0.20667183
|
||||
8900 85 1.7846979 1.7846979 1.228582 0.2354851
|
||||
9000 85 1.5864774 1.5864774 1.0853295 0.23148728
|
||||
9100 83 1.4761406 1.4761406 1.0104611 0.14783417
|
||||
9200 82 1.4764644 1.4764644 1.0104747 0.16107786
|
||||
9300 82 1.5656948 1.5656948 1.0633005 0.25375701
|
||||
9400 82 1.6651149 1.6651149 1.1242623 0.17702309
|
||||
9500 82 1.8295914 1.8295914 1.2294728 0.20502222
|
||||
9600 82 1.9868742 1.9868742 1.3460986 0.20899366
|
||||
9700 81 1.9123665 1.9123665 1.2957378 0.18989899
|
||||
9800 81 1.9032788 1.9032788 1.2877863 0.32372042
|
||||
9900 81 1.9686313 1.9686313 1.3389864 0.24692959
|
||||
10000 81 2.0160999 2.0160999 1.3612427 0.22858996
|
||||
Loop time of 0.59471 on 4 procs for 10000 steps with 81 atoms
|
||||
|
||||
Performance: 7264049.619 tau/day, 16814.930 timesteps/s, 1.362 Matom-step/s
|
||||
94.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.00098431 | 0.0046234 | 0.0099857 | 5.0 | 0.78
|
||||
Neigh | 0.0012879 | 0.0026652 | 0.0043266 | 2.2 | 0.45
|
||||
Comm | 0.029312 | 0.033471 | 0.038201 | 1.8 | 5.63
|
||||
Output | 0.31437 | 0.39643 | 0.52119 | 13.5 | 66.66
|
||||
Modify | 0.012135 | 0.017152 | 0.023684 | 3.4 | 2.88
|
||||
Other | | 0.1404 | | | 23.60
|
||||
|
||||
Nlocal: 20.25 ave 44 max 5 min
|
||||
Histogram: 1 0 1 1 0 0 0 0 0 1
|
||||
Nghost: 3.5 ave 7 max 0 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Neighs: 26.75 ave 68 max 1 min
|
||||
Histogram: 1 1 0 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 107
|
||||
Ave neighs/atom = 1.3209877
|
||||
Neighbor list builds = 1469
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
233
examples/gransurf/log.1Jul24.line.gran.surf.g++.1
Normal file
233
examples/gransurf/log.1Jul24.line.gran.surf.g++.1
Normal file
@ -0,0 +1,233 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
molecule lines surf.line
|
||||
Read molecule template lines:
|
||||
LAMMPS molecule file for line box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
9 lines
|
||||
fix 20 all surface/local lines
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group line type 2
|
||||
9 atoms in group line
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.0201533
|
||||
ghost atom cutoff = 6.0201533
|
||||
binsize = 3.0100766, bins = 10 10 1
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair line/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.08 | 12.08 | 12.08 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 9 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 16 19.603933 1.0483784 0.66213376 0.32673222
|
||||
200 16 19.831299 1.6167923 1.0211319 0.33052165
|
||||
300 16 20.119751 2.3379224 1.4765825 0.33532918
|
||||
400 16 20.469289 3.2117688 2.0284855 0.34115482
|
||||
500 16 20.879914 4.2383315 2.676841 0.34799857
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 27 12.449543 2.1129055 1.3869354 0.35243867
|
||||
700 27 12.770891 2.6043792 1.7214254 0.38349742
|
||||
800 27 12.943117 2.8677827 1.9147069 0.37516936
|
||||
900 27 13.109917 3.1228891 2.1263001 0.38019376
|
||||
1000 27 12.990208 2.9398046 2.0739419 0.42599315
|
||||
1100 27 12.719767 2.5261889 1.8187978 0.45457071
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 35 9.8597994 1.8985781 1.2816098 0.38022839
|
||||
1300 35 9.7545391 1.7554241 1.2048448 0.37276257
|
||||
1400 35 9.7769878 1.7859543 1.2306073 0.37760148
|
||||
1500 35 9.9443391 2.013552 1.3984072 0.38116488
|
||||
1600 35 10.108938 2.2374064 1.548047 0.38622523
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 45 8.2127721 2.1026641 1.4164548 0.41493848
|
||||
1800 45 8.3070246 2.221153 1.4818344 0.48996397
|
||||
1900 45 8.3176349 2.2344917 1.4850053 0.47813979
|
||||
2000 45 8.2600165 2.162057 1.4483877 0.43264535
|
||||
2100 45 8.170101 2.0490205 1.371803 0.4264254
|
||||
2200 45 8.1506346 2.0245485 1.3453701 0.41836913
|
||||
2300 57 6.484599 1.6035919 1.0816888 0.47342867
|
||||
2400 57 6.4586868 1.5727177 1.0558651 0.46664108
|
||||
2500 57 6.4928211 1.6133884 1.0809644 0.44246689
|
||||
2600 57 6.5905095 1.7297831 1.1672463 0.44469826
|
||||
2700 57 6.4938379 1.6145999 1.1097418 0.44349717
|
||||
2800 57 6.561462 1.6951733 1.1667434 0.42184931
|
||||
2900 69 5.8294334 1.8412329 1.2537935 0.47920761
|
||||
3000 69 6.0530502 2.0989608 1.4383292 0.47115384
|
||||
3100 69 6.2128755 2.2831662 1.5569471 0.48035619
|
||||
3200 69 6.0796177 2.1295809 1.4395228 0.59719942
|
||||
3300 69 5.9598587 1.9915536 1.3476382 0.70904872
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 76 5.3278321 1.6942225 1.1512533 0.55750722
|
||||
3500 76 5.3580089 1.7285142 1.1733033 0.48015375
|
||||
3600 76 5.3912511 1.7662894 1.2244098 0.53667674
|
||||
3700 76 5.3915755 1.7666581 1.2023862 0.50933582
|
||||
3800 76 5.5024499 1.8926518 1.2816818 0.49183973
|
||||
3900 76 5.2931801 1.6548451 1.1449579 0.54259885
|
||||
4000 88 4.7587858 1.6185338 1.1148203 0.50111437
|
||||
4100 88 4.6686812 1.5180325 1.0739014 0.53207092
|
||||
4200 88 4.704383 1.5578537 1.0828675 0.48968011
|
||||
4300 88 4.8151499 1.6814015 1.1458567 0.54476462
|
||||
4400 88 4.9536407 1.835872 1.2370382 0.50443506
|
||||
4500 88 5.1049527 2.004643 1.3561346 0.63246898
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 97 4.6429295 1.815546 1.2258897 0.76318653
|
||||
4700 97 4.7557974 1.94009 1.3308417 0.58800825
|
||||
4800 97 4.7588482 1.9434563 1.3238059 0.54808039
|
||||
4900 97 4.7816962 1.9686679 1.3555958 0.57086836
|
||||
5000 97 4.7081833 1.8875502 1.2938704 0.53341015
|
||||
5100 109 4.2946936 1.7783655 1.2235441 0.74414659
|
||||
5200 109 4.4514423 1.9493641 1.3382034 0.5816121
|
||||
5300 109 4.3031748 1.7876177 1.2509563 0.64288295
|
||||
5400 109 4.1392053 1.6087418 1.1007772 0.56520057
|
||||
5500 109 4.1921177 1.6664644 1.1482381 0.64655034
|
||||
5600 109 4.1978214 1.6726867 1.1442267 0.62708256
|
||||
5700 109 4.2167733 1.6933615 1.149386 0.58370357
|
||||
5800 109 4.4043993 1.8980444 1.2841934 0.59795187
|
||||
5900 109 4.4714853 1.9712292 1.3223473 0.70540432
|
||||
6000 109 4.4233763 1.9187466 1.2856953 0.74824095
|
||||
6100 109 4.5032352 2.0058654 1.3516717 0.69570797
|
||||
6200 109 4.4767193 1.9769389 1.3333093 0.68696926
|
||||
6300 109 4.3959917 1.8888725 1.2907122 0.63303162
|
||||
6400 109 4.3835668 1.875318 1.3074197 0.63844057
|
||||
6500 109 4.2555571 1.7356711 1.2015655 0.66131926
|
||||
6600 109 4.0671476 1.5301335 1.038876 0.583031
|
||||
6700 109 4.0619437 1.5244565 1.0254465 0.57917715
|
||||
6800 109 4.0744984 1.5381525 1.0362496 0.57031315
|
||||
6900 109 4.0970582 1.5627632 1.0516772 0.56180234
|
||||
7000 109 4.1712104 1.6436565 1.104496 0.57061264
|
||||
7100 109 4.2194438 1.6962748 1.1401819 0.55033817
|
||||
7200 109 4.2854688 1.7683021 1.1878994 0.64255961
|
||||
7300 109 4.4439681 1.9412104 1.3032284 0.57856127
|
||||
7400 109 4.6570939 2.1737112 1.4593098 0.62381538
|
||||
7500 109 4.8364799 2.369405 1.5988389 0.63335535
|
||||
7600 109 4.9865193 2.5330844 1.7216312 0.63560865
|
||||
7700 109 5.0603314 2.6136067 1.7991217 0.67457582
|
||||
7800 109 5.2825153 2.8559892 1.9752674 0.69847738
|
||||
7900 109 4.9404332 2.4828087 1.6955058 0.86486934
|
||||
8000 109 4.9666953 2.5114582 1.7172461 0.68914422
|
||||
8100 108 4.9305596 2.4469505 1.6692969 0.65720524
|
||||
8200 107 5.0171731 2.5159961 1.7141712 0.64962298
|
||||
8300 106 5.1706019 2.6577549 1.7991671 0.6533149
|
||||
8400 104 5.1183939 2.5470834 1.7426175 0.71014805
|
||||
8500 104 5.0286833 2.4487835 1.6635557 0.70734083
|
||||
8600 102 4.8364284 2.1816363 1.4906665 0.72649249
|
||||
8700 101 4.7693385 2.0787376 1.419965 0.73442515
|
||||
8800 101 4.6195384 1.9141221 1.3207731 0.63177233
|
||||
8900 99 4.4786741 1.6982172 1.1718512 0.50697976
|
||||
9000 98 4.4490307 1.633946 1.1374461 0.57834948
|
||||
9100 98 4.3269215 1.4993484 1.0212072 0.61915381
|
||||
9200 98 4.4129354 1.5941592 1.0769509 0.51649969
|
||||
9300 97 4.3960432 1.5431198 1.0434136 0.51272277
|
||||
9400 96 4.47939 1.6020154 1.077862 0.53500446
|
||||
9500 96 4.6658982 1.8080419 1.2161966 0.5668484
|
||||
9600 96 4.7814753 1.9357142 1.3019606 0.56842177
|
||||
9700 96 4.8817258 2.0464561 1.3793406 0.5434597
|
||||
9800 96 4.8897807 2.055354 1.4031051 0.57800149
|
||||
9900 96 4.7789147 1.9328857 1.3227732 0.64989251
|
||||
10000 96 4.8776914 2.0419995 1.3827425 0.61157291
|
||||
Loop time of 0.360523 on 1 procs for 10000 steps with 96 atoms
|
||||
|
||||
Performance: 11982585.509 tau/day, 27737.466 timesteps/s, 2.663 Matom-step/s
|
||||
94.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.030975 | 0.030975 | 0.030975 | 0.0 | 8.59
|
||||
Neigh | 0.028971 | 0.028971 | 0.028971 | 0.0 | 8.04
|
||||
Comm | 0.0010264 | 0.0010264 | 0.0010264 | 0.0 | 0.28
|
||||
Output | 0.28234 | 0.28234 | 0.28234 | 0.0 | 78.31
|
||||
Modify | 0.014786 | 0.014786 | 0.014786 | 0.0 | 4.10
|
||||
Other | | 0.002423 | | | 0.67
|
||||
|
||||
Nlocal: 96 ave 96 max 96 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
|
||||
Neighbor list builds = 1470
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
234
examples/gransurf/log.1Jul24.line.gran.surf.g++.4
Normal file
234
examples/gransurf/log.1Jul24.line.gran.surf.g++.4
Normal file
@ -0,0 +1,234 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of line segments
|
||||
|
||||
units lj
|
||||
atom_style line
|
||||
atom_modify map array
|
||||
boundary f f p
|
||||
dimension 2
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -15 15 -15 15 -0.5 0.5 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-15 -15 -0.5) to (15 15 0.5)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
molecule lines surf.line
|
||||
Read molecule template lines:
|
||||
LAMMPS molecule file for line box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
9 lines
|
||||
fix 20 all surface/local lines
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 line/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 line/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group line type 2
|
||||
9 atoms in group line
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 90
|
||||
|
||||
# rotate the box
|
||||
|
||||
fix 1 line move rotate 0 0 0 0 0 1 25
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 -1 0
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -3 3 -2 2 -0.5 0.5 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab
|
||||
Particle insertion: 12 every 566 steps, 100 by step 4529
|
||||
|
||||
fix 10 all enforce2d
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.6 adiam 1.0 line type 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 10000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.0201533
|
||||
ghost atom cutoff = 6.0201533
|
||||
binsize = 3.0100766, bins = 10 10 1
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair line/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.09 | 12.09 | 12.09 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 9 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 16 19.603933 1.0483784 0.66213376 0.32673222
|
||||
200 16 19.831299 1.6167923 1.0211319 0.33052165
|
||||
300 16 20.119751 2.3379224 1.4765825 0.33532918
|
||||
400 16 20.469289 3.2117688 2.0284855 0.34115482
|
||||
500 16 20.879914 4.2383315 2.676841 0.34799857
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 27 12.449543 2.1129055 1.3869354 0.35243867
|
||||
700 27 12.770891 2.6043792 1.7214254 0.38349742
|
||||
800 27 12.943117 2.8677827 1.9147069 0.37516936
|
||||
900 27 13.109917 3.1228891 2.1263001 0.38019376
|
||||
1000 27 12.990208 2.9398046 2.0739419 0.42599315
|
||||
1100 27 12.719767 2.5261889 1.8187978 0.45457071
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 35 9.8597994 1.8985781 1.2816098 0.38022839
|
||||
1300 35 9.7545391 1.7554241 1.2048448 0.37276257
|
||||
1400 35 9.7769878 1.7859543 1.2306073 0.37760148
|
||||
1500 35 9.9443391 2.013552 1.3984072 0.38116488
|
||||
1600 35 10.108938 2.2374064 1.548047 0.38622523
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1700 45 8.2127721 2.1026641 1.4164548 0.41493848
|
||||
1800 45 8.3070246 2.221153 1.4818344 0.48996397
|
||||
1900 45 8.3176349 2.2344917 1.4850053 0.47813979
|
||||
2000 45 8.2600165 2.162057 1.4483877 0.43264535
|
||||
2100 45 8.170101 2.0490205 1.371803 0.4264254
|
||||
2200 45 8.1506346 2.0245485 1.3453701 0.41836913
|
||||
2300 57 6.484599 1.6035919 1.0816888 0.47342867
|
||||
2400 57 6.4586868 1.5727177 1.0558651 0.46664108
|
||||
2500 57 6.4928211 1.6133884 1.0809644 0.44246689
|
||||
2600 57 6.5905095 1.7297831 1.1672463 0.44469826
|
||||
2700 57 6.4938379 1.6145999 1.1097418 0.44349717
|
||||
2800 57 6.561462 1.6951733 1.1667434 0.42184931
|
||||
2900 69 5.8294333 1.8412328 1.2537935 0.47920762
|
||||
3000 69 6.0530502 2.0989608 1.4383292 0.4711539
|
||||
3100 69 6.2128757 2.2831664 1.5569472 0.48035613
|
||||
3200 69 6.0796163 2.1295793 1.4395217 0.59719777
|
||||
3300 69 5.9598651 1.991561 1.3476432 0.70904083
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
3400 76 5.3280254 1.6944421 1.1509347 0.55607697
|
||||
3500 76 5.3586022 1.7291884 1.1738073 0.48154419
|
||||
3600 76 5.3960594 1.7717535 1.2255034 0.50328012
|
||||
3700 76 5.392702 1.7679382 1.2006691 0.55300787
|
||||
3800 76 5.487271 1.875403 1.2701996 0.49070261
|
||||
3900 76 5.2631187 1.6206845 1.124056 0.53950667
|
||||
4000 88 4.7552309 1.6145687 1.1102653 0.50396334
|
||||
4100 88 4.7298672 1.5862785 1.1187972 0.48548654
|
||||
4200 88 4.7568479 1.6163722 1.1239114 0.49520917
|
||||
4300 88 4.899206 1.7751563 1.1996402 0.50485077
|
||||
4400 88 5.0855627 1.9830157 1.3306174 0.50684884
|
||||
4500 88 5.0860568 1.9835668 1.340137 0.51799838
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
4600 97 4.7446937 1.9278375 1.3060898 0.55304468
|
||||
4700 97 4.8400782 2.0330894 1.3706834 0.59426453
|
||||
4800 97 4.6948697 1.8728594 1.2880301 0.65277707
|
||||
4900 97 4.6757748 1.8517891 1.2744619 0.55960057
|
||||
5000 97 4.6818196 1.8584593 1.2833187 0.56672558
|
||||
5100 109 4.2656545 1.7466864 1.2022774 0.72060325
|
||||
5200 109 4.4089285 1.9029854 1.303466 0.57487441
|
||||
5300 109 4.266038 1.7471048 1.2161309 0.76509931
|
||||
5400 109 4.0820492 1.5463898 1.0585873 0.59400707
|
||||
5500 109 4.2225625 1.699677 1.1633136 0.564166
|
||||
5600 109 4.2048922 1.6804004 1.1606267 0.55761391
|
||||
5700 109 4.25302 1.7329034 1.1803705 0.75579106
|
||||
5800 109 4.4166147 1.9113703 1.2934093 0.57750174
|
||||
5900 109 4.4963066 1.9983069 1.3522373 0.67654161
|
||||
6000 109 4.4487785 1.946458 1.3129991 0.65356753
|
||||
6100 109 4.3667261 1.8569464 1.2612208 0.63848496
|
||||
6200 109 4.4547267 1.9529471 1.3265293 0.63719023
|
||||
6300 109 4.3364884 1.8239598 1.2342374 0.65725781
|
||||
6400 109 4.3720247 1.8627267 1.2799281 0.59527799
|
||||
6500 109 4.2700467 1.7514779 1.2071184 0.79488752
|
||||
6600 109 4.1796078 1.6528174 1.1268666 0.54811483
|
||||
6700 109 4.1026903 1.5689073 1.0529781 0.55134253
|
||||
6800 109 4.0874552 1.5522872 1.0382647 0.55769258
|
||||
6900 109 4.0479731 1.5092158 1.0099323 0.53959573
|
||||
7000 109 4.0787277 1.5427663 1.0326475 0.55627473
|
||||
7100 109 4.1441 1.6140816 1.0811479 0.54441352
|
||||
7200 109 4.2104421 1.6864547 1.1296727 0.54213924
|
||||
7300 109 4.3919246 1.8844357 1.2652852 0.56502223
|
||||
7400 109 4.6135985 2.1262617 1.4292047 0.58413382
|
||||
7500 109 4.7432973 2.2677513 1.5329818 0.60724149
|
||||
7600 109 4.9384456 2.4806404 1.6880915 0.62523312
|
||||
7700 109 5.090558 2.6465812 1.8111403 0.6585716
|
||||
7800 109 5.3259416 2.9033632 2.0035146 0.6785935
|
||||
7900 109 5.2072113 2.7738393 1.895143 0.76755979
|
||||
8000 109 5.083771 2.6391772 1.8002856 0.66934075
|
||||
8100 108 4.937056 2.4540435 1.6848433 0.68706675
|
||||
8200 107 5.080298 2.584978 1.7670522 0.65360458
|
||||
8300 104 5.043418 2.464929 1.6753853 0.65112973
|
||||
8400 104 4.9112894 2.3201497 1.6035174 0.63202536
|
||||
8500 103 4.9725325 2.3594579 1.6178748 0.65226513
|
||||
8600 102 4.9240568 2.2778371 1.5557893 0.64939044
|
||||
8700 101 4.9182616 2.2423894 1.5252109 0.59242907
|
||||
8800 98 4.7809771 1.9998415 1.3609365 0.62824865
|
||||
8900 97 4.6171003 1.7870448 1.2279757 0.59541262
|
||||
9000 97 4.578037 1.7439405 1.2014952 0.53042665
|
||||
9100 96 4.3863917 1.4992847 1.0287029 0.53128022
|
||||
9200 95 4.4878465 1.5775158 1.0718141 0.50926528
|
||||
9300 95 4.4698544 1.5576187 1.0520012 0.55570417
|
||||
9400 94 4.5745795 1.6388948 1.1062354 0.52958404
|
||||
9500 94 4.682009 1.7578347 1.1869533 0.58337186
|
||||
9600 94 4.8288332 1.92039 1.2962606 0.54697385
|
||||
9700 94 4.9380546 2.0413137 1.3804181 0.56679619
|
||||
9800 94 4.9163917 2.0173297 1.3698459 0.58780334
|
||||
9900 94 4.9246764 2.0265021 1.3927278 0.65819328
|
||||
10000 94 4.7358922 1.817491 1.2533343 0.65922393
|
||||
Loop time of 0.626598 on 4 procs for 10000 steps with 94 atoms
|
||||
|
||||
Performance: 6894371.511 tau/day, 15959.193 timesteps/s, 1.500 Matom-step/s
|
||||
92.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 | 0.0041891 | 0.011756 | 0.021395 | 6.0 | 1.88
|
||||
Neigh | 0.0039448 | 0.0094415 | 0.015903 | 4.5 | 1.51
|
||||
Comm | 0.063898 | 0.077286 | 0.086409 | 3.3 | 12.33
|
||||
Output | 0.27418 | 0.36951 | 0.498 | 14.4 | 58.97
|
||||
Modify | 0.015224 | 0.016492 | 0.018408 | 0.9 | 2.63
|
||||
Other | | 0.1421 | | | 22.68
|
||||
|
||||
Nlocal: 23.5 ave 45 max 5 min
|
||||
Histogram: 1 0 0 1 0 1 0 0 0 1
|
||||
Nghost: 24.75 ave 32 max 18 min
|
||||
Histogram: 1 0 1 0 0 0 0 1 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 1474
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
357
examples/gransurf/log.1Jul24.tri.gran.data.g++.1
Normal file
357
examples/gransurf/log.1Jul24.tri.gran.data.g++.1
Normal file
@ -0,0 +1,357 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tri
|
||||
Reading data file ...
|
||||
orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
4 atoms
|
||||
4 triangles
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.33 | 13.33 | 13.33 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95075919 1.0392019 0.51601709 0.025332019
|
||||
600 48 0.84031896 0.91848817 0.4623667 0.022636752
|
||||
700 48 0.85874279 0.93862584 0.4826348 0.046371063
|
||||
800 48 0.73132774 0.79935822 0.43136382 0.022138279
|
||||
900 72 0.65995369 0.69935391 0.36547311 0.050914097
|
||||
1000 72 0.62313984 0.66034222 0.35115498 0.033703652
|
||||
1100 72 0.61206069 0.64860162 0.3482546 0.026726748
|
||||
1200 72 0.55722289 0.59048993 0.31886384 0.043718461
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.46095761 0.48215107 0.26148102 0.03655992
|
||||
1400 92 0.47463128 0.49645341 0.26932173 0.026649699
|
||||
1500 92 0.43876093 0.45893385 0.25112926 0.039053185
|
||||
1600 92 0.39781564 0.41610602 0.2336458 0.038915755
|
||||
1700 104 0.3314644 0.3448569 0.19379636 0.056687783
|
||||
1800 104 0.28818581 0.29982968 0.17211551 0.024813484
|
||||
1900 104 0.25183364 0.26200874 0.15328845 0.02192128
|
||||
2000 104 0.23713983 0.24672124 0.14327078 0.042148673
|
||||
2100 104 0.23506188 0.24455933 0.14029326 0.017721951
|
||||
2200 104 0.15864009 0.16504979 0.10412746 0.029964397
|
||||
2300 104 0.10670987 0.11102138 0.07871108 0.0071805097
|
||||
2400 104 0.076639282 0.079735819 0.060947043 0.015389321
|
||||
2500 103 0.055400086 0.057661314 0.044473443 0.015445498
|
||||
2600 103 0.035893374 0.03735841 0.028760404 0.01067378
|
||||
2700 102 0.03158966 0.032892327 0.023822829 0.0082275369
|
||||
2800 102 0.024365874 0.025370652 0.019216631 0.011973307
|
||||
2900 101 0.014440858 0.01504256 0.012197533 0.0072741624
|
||||
3000 101 0.013021269 0.013563822 0.011242148 0.010498718
|
||||
3100 101 0.010273872 0.010701951 0.0091143287 0.0072871705
|
||||
3200 101 0.0070740359 0.0073687874 0.0067970148 0.0064989269
|
||||
3300 101 0.0073212732 0.0076263262 0.0065171125 0.0098946739
|
||||
3400 101 0.0047267512 0.0049236991 0.0044264772 0.007575603
|
||||
3500 101 0.003264981 0.0034010219 0.0032263675 0.0064756429
|
||||
3600 101 0.0019366725 0.0020173672 0.0020455688 0.0067365178
|
||||
3700 101 0.0018126432 0.00188817 0.0019196352 0.0063300027
|
||||
3800 101 0.0019330301 0.002013573 0.0019421727 0.0066930211
|
||||
3900 101 0.0017022743 0.0017732024 0.0017692091 0.0063161884
|
||||
4000 101 0.0011235173 0.0011703305 0.0011857636 0.0062516843
|
||||
4100 101 0.0010738339 0.0011185769 0.0011489616 0.0061908407
|
||||
4200 101 0.0010663665 0.0011107985 0.0011562642 0.0061205723
|
||||
4300 101 0.0010325958 0.0010756206 0.001137752 0.0063715073
|
||||
4400 101 0.00088714248 0.00092410675 0.0010581337 0.0071315304
|
||||
4500 101 0.00072957163 0.00075997045 0.00089148584 0.0061822402
|
||||
4600 101 0.00072916208 0.00075954383 0.00093229962 0.0073336189
|
||||
4700 101 0.00049478944 0.00051540567 0.00062291356 0.0066293137
|
||||
4800 101 0.00049162494 0.00051210931 0.00063696192 0.0062116978
|
||||
4900 101 0.00041908773 0.00043654972 0.00059061447 0.0064909785
|
||||
5000 101 0.00040336839 0.0004201754 0.00059603372 0.0062594394
|
||||
Loop time of 0.331047 on 1 procs for 5000 steps with 101 atoms
|
||||
|
||||
Performance: 6524755.135 tau/day, 15103.600 timesteps/s, 1.525 Matom-step/s
|
||||
68.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.02908 | 0.02908 | 0.02908 | 0.0 | 8.78
|
||||
Neigh | 0.0094722 | 0.0094722 | 0.0094722 | 0.0 | 2.86
|
||||
Comm | 0.00045139 | 0.00045139 | 0.00045139 | 0.0 | 0.14
|
||||
Output | 0.27825 | 0.27825 | 0.27825 | 0.0 | 84.05
|
||||
Modify | 0.012533 | 0.012533 | 0.012533 | 0.0 | 3.79
|
||||
Other | | 0.001257 | | | 0.38
|
||||
|
||||
Nlocal: 101 ave 101 max 101 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
|
||||
Neighbor list builds = 316
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.46 | 14.46 | 14.46 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 101 0.00040336839 0.0004201754 0.00059603372 0.0062799915
|
||||
5100 101 0.50875292 0.024627213 0.027979777 0.043304086
|
||||
5200 100 0.53008058 0.041756815 0.048966009 0.047686735
|
||||
5300 98 0.54573932 0.047587469 0.050589616 0.054698345
|
||||
5400 96 0.56298631 0.054644174 0.054027217 0.045493245
|
||||
5500 95 0.57287609 0.059325259 0.055248236 0.043563479
|
||||
5600 93 0.58423645 0.059530387 0.056366577 0.040145791
|
||||
5700 91 0.59865852 0.062420779 0.056809158 0.037116377
|
||||
5800 89 0.61220228 0.063841923 0.057610838 0.035162186
|
||||
5900 87 0.62685381 0.06583351 0.056892184 0.034659058
|
||||
6000 86 0.6383021 0.070920972 0.058088505 0.03486336
|
||||
6100 84 0.65594494 0.075093047 0.058543375 0.034741127
|
||||
6200 84 0.65759722 0.076828979 0.05964225 0.036265031
|
||||
6300 83 0.66157421 0.073564176 0.055874563 0.040959156
|
||||
6400 82 0.67106739 0.075914013 0.057132328 0.038400386
|
||||
6500 81 0.68057943 0.07809572 0.058494303 0.034600654
|
||||
6600 79 0.69621408 0.07829214 0.057976675 0.035058869
|
||||
6700 78 0.70377647 0.077804224 0.058088397 0.038570546
|
||||
6800 77 0.71354031 0.07941644 0.058766697 0.034276567
|
||||
6900 76 0.72197425 0.079394214 0.058784258 0.034803257
|
||||
7000 75 0.73118782 0.079954558 0.059615263 0.034182143
|
||||
7100 75 0.72981832 0.078506803 0.05933558 0.034746017
|
||||
7200 72 0.75541855 0.076472198 0.058788685 0.033595767
|
||||
7300 72 0.75545654 0.076512465 0.060371489 0.033716345
|
||||
7400 69 0.78563876 0.076755562 0.059327807 0.033982311
|
||||
7500 68 0.79478883 0.075234477 0.059390055 0.033278783
|
||||
7600 67 0.80394304 0.07337357 0.059151161 0.033764065
|
||||
7700 67 0.80590143 0.075458302 0.061414582 0.033219177
|
||||
7800 65 0.82842488 0.075135213 0.059275109 0.03345934
|
||||
7900 65 0.82992882 0.076739415 0.061358441 0.033045562
|
||||
8000 62 0.86439786 0.073985787 0.059248708 0.033855494
|
||||
8100 62 0.86231796 0.071759931 0.059259629 0.032472112
|
||||
8200 61 0.8768865 0.073251975 0.060469603 0.032336147
|
||||
8300 59 0.90112575 0.069522479 0.057069294 0.032903788
|
||||
8400 59 0.90437569 0.073013162 0.060177807 0.032348013
|
||||
8500 57 0.93513558 0.074163712 0.059868166 0.032129973
|
||||
8600 56 0.94945182 0.072720987 0.058615804 0.032069723
|
||||
8700 56 0.94894667 0.07217622 0.0599554 0.031951699
|
||||
8800 54 0.97951321 0.069451442 0.057486662 0.031861026
|
||||
8900 53 0.99694312 0.06937422 0.058169881 0.031923553
|
||||
9000 53 0.9968891 0.069315702 0.057560401 0.031752405
|
||||
9100 52 1.0151319 0.069375485 0.058181024 0.031774505
|
||||
9200 52 1.0168478 0.07123737 0.060030802 0.031503493
|
||||
9300 49 1.0746945 0.069869448 0.058516763 0.031349844
|
||||
9400 49 1.075198 0.070418696 0.060725237 0.031449699
|
||||
9500 47 1.1172104 0.068585698 0.059246205 0.031836843
|
||||
9600 46 1.1392904 0.067243632 0.059489817 0.031042279
|
||||
9700 45 1.1649854 0.068707001 0.060999207 0.031015205
|
||||
9800 43 1.2167339 0.068203742 0.061864334 0.030892294
|
||||
9900 43 1.2179414 0.069538363 0.06395 0.030734812
|
||||
10000 41 1.2744025 0.068472776 0.060561254 0.030541866
|
||||
Loop time of 0.232249 on 1 procs for 5000 steps with 41 atoms
|
||||
|
||||
Performance: 9300376.988 tau/day, 21528.650 timesteps/s, 882.675 katom-step/s
|
||||
91.4% 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.023171 | 0.023171 | 0.023171 | 0.0 | 9.98
|
||||
Neigh | 0.0045423 | 0.0045423 | 0.0045423 | 0.0 | 1.96
|
||||
Comm | 0.00042716 | 0.00042716 | 0.00042716 | 0.0 | 0.18
|
||||
Output | 0.19148 | 0.19148 | 0.19148 | 0.0 | 82.45
|
||||
Modify | 0.011612 | 0.011612 | 0.011612 | 0.0 | 5.00
|
||||
Other | | 0.001015 | | | 0.44
|
||||
|
||||
Nlocal: 41 ave 41 max 41 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
|
||||
Neighbor list builds = 177
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
37 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.59 | 13.59 | 13.59 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 41 0.061625498 0.068472776 0.060561254 0.00305615
|
||||
10100 41 0.025254975 0.028061083 0.02437217 0.0026271027
|
||||
10200 41 0.024393819 0.027104244 0.024633818 0.0023572228
|
||||
10300 41 0.018015247 0.020016941 0.020621857 0.0025463576
|
||||
10400 41 0.016921985 0.018802206 0.019360302 0.002082466
|
||||
10500 41 0.017216494 0.019129438 0.020155469 0.0035436475
|
||||
10600 41 0.017117386 0.019019318 0.020924624 0.0023704974
|
||||
10700 40 0.021267544 0.02369812 0.024093057 0.0021665516
|
||||
10800 39 0.015508579 0.017333117 0.021041382 0.0035660594
|
||||
10900 39 0.016186792 0.018091121 0.021210051 0.0049345099
|
||||
11000 39 0.015586494 0.017420199 0.021501559 0.0066808766
|
||||
11100 39 0.015237777 0.017030457 0.021978242 0.0086073747
|
||||
11200 39 0.015017416 0.01678417 0.022681353 0.010166477
|
||||
11300 38 0.014479106 0.016234149 0.02222806 0.0031557802
|
||||
11400 37 0.012297958 0.013835203 0.019989987 0.0035252488
|
||||
11500 37 0.011651281 0.013107691 0.018961461 0.0048320998
|
||||
11600 37 0.012189837 0.013713567 0.018403018 0.0031834233
|
||||
11700 37 0.013518866 0.015208724 0.019515786 0.0030171621
|
||||
11800 37 0.014068788 0.015827387 0.019973791 0.0027304961
|
||||
11900 36 0.014538719 0.016414683 0.02028204 0.0026138589
|
||||
12000 36 0.012354838 0.013949011 0.019563627 0.0026647531
|
||||
12100 36 0.011956063 0.013498781 0.019967097 0.0025670349
|
||||
12200 36 0.012105695 0.013667721 0.020808445 0.0025063398
|
||||
12300 36 0.011549787 0.013040082 0.020878749 0.0024496418
|
||||
12400 36 0.010916934 0.012325571 0.019643795 0.004250323
|
||||
12500 36 0.01099958 0.01241888 0.018388921 0.0030752436
|
||||
12600 35 0.01033081 0.011708251 0.0179885 0.0035106808
|
||||
12700 33 0.010252951 0.011717658 0.018411045 0.0017976941
|
||||
12800 33 0.010678308 0.012203781 0.018558424 0.0017002514
|
||||
12900 33 0.012180086 0.013920098 0.019432831 0.0016688176
|
||||
13000 33 0.012765778 0.014589461 0.01998997 0.0016190035
|
||||
13100 32 0.01043512 0.011981064 0.019750714 0.0029022131
|
||||
13200 32 0.010106579 0.01160385 0.020095193 0.0019861957
|
||||
13300 32 0.0094852076 0.010890424 0.018092232 0.0014489801
|
||||
13400 32 0.011412523 0.013103268 0.01899248 0.0015058469
|
||||
13500 32 0.011112517 0.012758816 0.018541066 0.0014848955
|
||||
13600 32 0.010360586 0.011895488 0.018432274 0.0016690155
|
||||
13700 31 0.010168751 0.011733175 0.01927511 0.0016244377
|
||||
13800 31 0.010530591 0.012150682 0.018986129 0.0017266198
|
||||
13900 31 0.011341167 0.013085962 0.020244225 0.0031594327
|
||||
14000 31 0.011494293 0.013262645 0.020691111 0.0019101224
|
||||
14100 30 0.010977116 0.012733454 0.021066603 0.0020312424
|
||||
14200 30 0.011736458 0.013614291 0.021384554 0.0022223346
|
||||
14300 30 0.013796587 0.016004041 0.023690516 0.0024110671
|
||||
14400 30 0.011576033 0.013428198 0.02268796 0.0026057617
|
||||
14500 30 0.011909707 0.01381526 0.022250886 0.0028914407
|
||||
14600 30 0.011101515 0.012877757 0.022754479 0.0031889992
|
||||
14700 30 0.011283031 0.013088316 0.019956387 0.0060874479
|
||||
14800 30 0.010284956 0.011930549 0.016686898 0.0039975609
|
||||
14900 29 0.0098722494 0.011517624 0.016896924 0.0042842018
|
||||
15000 29 0.010186166 0.01188386 0.017283688 0.0023888604
|
||||
Loop time of 0.178922 on 1 procs for 5000 steps with 29 atoms
|
||||
|
||||
Performance: 12072269.029 tau/day, 27945.067 timesteps/s, 810.407 katom-step/s
|
||||
93.4% 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.010314 | 0.010314 | 0.010314 | 0.0 | 5.76
|
||||
Neigh | 0.00091559 | 0.00091559 | 0.00091559 | 0.0 | 0.51
|
||||
Comm | 0.00033777 | 0.00033777 | 0.00033777 | 0.0 | 0.19
|
||||
Output | 0.16153 | 0.16153 | 0.16153 | 0.0 | 90.28
|
||||
Modify | 0.005108 | 0.005108 | 0.005108 | 0.0 | 2.85
|
||||
Other | | 0.0007212 | | | 0.40
|
||||
|
||||
Nlocal: 29 ave 29 max 29 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
|
||||
Neighbor list builds = 85
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
358
examples/gransurf/log.1Jul24.tri.gran.data.g++.4
Normal file
358
examples/gransurf/log.1Jul24.tri.gran.data.g++.4
Normal file
@ -0,0 +1,358 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tri
|
||||
Reading data file ...
|
||||
orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
4 atoms
|
||||
4 triangles
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.22 | 13.31 | 13.35 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95089817 1.0393538 0.51608705 0.025335722
|
||||
600 48 0.83949391 0.91758637 0.46172806 0.022515854
|
||||
700 48 0.86005308 0.94005801 0.48253125 0.046343793
|
||||
800 48 0.72552803 0.79301901 0.42419502 0.025365668
|
||||
900 72 0.67712128 0.71754643 0.37612664 0.028045273
|
||||
1000 72 0.6037807 0.63982731 0.33903623 0.041568668
|
||||
1100 72 0.59554924 0.63110442 0.33510774 0.025787354
|
||||
1200 72 0.59369488 0.62913935 0.33709563 0.037109269
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.42565485 0.44522519 0.24749442 0.052168093
|
||||
1400 92 0.4636093 0.48492467 0.26417441 0.025118983
|
||||
1500 92 0.50428332 0.52746876 0.28211978 0.04086654
|
||||
1600 92 0.4041216 0.42270191 0.24000159 0.026740854
|
||||
1700 104 0.36993966 0.38488672 0.21498681 0.023950469
|
||||
1800 104 0.29176495 0.30355343 0.17303905 0.036349423
|
||||
1900 104 0.26818726 0.27902311 0.15811563 0.024948564
|
||||
2000 104 0.22279005 0.23179167 0.13346813 0.017280723
|
||||
2100 104 0.23896556 0.24862073 0.13823816 0.03009918
|
||||
2200 104 0.20579383 0.21410874 0.12418163 0.039450328
|
||||
2300 102 0.10971799 0.11424244 0.074956004 0.014807641
|
||||
2400 102 0.045535097 0.047412833 0.037654864 0.0091413578
|
||||
2500 102 0.041051596 0.042744445 0.033622408 0.007698999
|
||||
2600 101 0.034630799 0.036073749 0.027794815 0.0085144929
|
||||
2700 101 0.025424625 0.026483984 0.020798186 0.006898332
|
||||
2800 101 0.024152242 0.025158586 0.019868593 0.0095314436
|
||||
2900 101 0.019076346 0.019871194 0.015184613 0.0068694951
|
||||
3000 101 0.01182021 0.012312718 0.010833281 0.0078407026
|
||||
3100 101 0.012007088 0.012507383 0.010192679 0.0072865968
|
||||
3200 101 0.0065271825 0.0067991484 0.006055543 0.0072082329
|
||||
3300 101 0.0058659423 0.0061103565 0.005503418 0.0083020848
|
||||
3400 101 0.0050225565 0.0052318297 0.0045274567 0.0086905727
|
||||
3500 101 0.0047226341 0.0049194105 0.0041284178 0.0072114544
|
||||
3600 101 0.0036076755 0.0037579954 0.0035078554 0.0081392066
|
||||
3700 101 0.0026516472 0.0027621325 0.002544652 0.0076094455
|
||||
3800 101 0.0021356055 0.0022245891 0.0020628496 0.0068722982
|
||||
3900 101 0.0014543486 0.0015149465 0.0015027038 0.007022525
|
||||
4000 101 0.0013476069 0.0014037572 0.0014390136 0.0071511001
|
||||
4100 101 0.0010740847 0.0011188382 0.0011534394 0.0078442138
|
||||
4200 101 0.00076777395 0.00079976453 0.00088763722 0.0074201133
|
||||
4300 101 0.00064877768 0.00067581008 0.00079214623 0.0069999369
|
||||
4400 101 0.00056602566 0.00058961006 0.00072970843 0.007172149
|
||||
4500 101 0.00053185285 0.00055401339 0.00069002888 0.0069006923
|
||||
4600 101 0.00050396242 0.00052496086 0.00064231206 0.0072831983
|
||||
4700 101 0.0004939245 0.00051450468 0.00060406261 0.0070274519
|
||||
4800 101 0.0005067638 0.00052787896 0.0006169584 0.0070252715
|
||||
4900 101 0.00052450136 0.00054635559 0.00063954044 0.0072613866
|
||||
5000 101 0.00050238069 0.00052331322 0.00063381206 0.0069923836
|
||||
Loop time of 0.392406 on 4 procs for 5000 steps with 101 atoms
|
||||
|
||||
Performance: 5504500.640 tau/day, 12741.900 timesteps/s, 1.287 Matom-step/s
|
||||
92.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.0088673 | 0.0099705 | 0.011728 | 1.1 | 2.54
|
||||
Neigh | 0.0031608 | 0.0036162 | 0.0040394 | 0.6 | 0.92
|
||||
Comm | 0.054781 | 0.057437 | 0.058874 | 0.7 | 14.64
|
||||
Output | 0.16517 | 0.21896 | 0.30823 | 12.1 | 55.80
|
||||
Modify | 0.0072728 | 0.012748 | 0.017229 | 3.4 | 3.25
|
||||
Other | | 0.08968 | | | 22.85
|
||||
|
||||
Nlocal: 25.25 ave 28 max 22 min
|
||||
Histogram: 1 0 0 1 0 0 0 0 1 1
|
||||
Nghost: 75.75 ave 79 max 73 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 318
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.59 | 14.59 | 14.59 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 101 0.00050238069 0.00052331322 0.00063381206 0.0070211922
|
||||
5100 101 0.51237625 0.028401515 0.030266651 0.047542004
|
||||
5200 100 0.53673032 0.04868655 0.049607418 0.055178994
|
||||
5300 98 0.55292145 0.055078502 0.054320412 0.065743408
|
||||
5400 96 0.56573073 0.057509231 0.056214468 0.04620782
|
||||
5500 96 0.56811314 0.059996355 0.057130583 0.041366241
|
||||
5600 92 0.58870851 0.058176956 0.055483365 0.040151041
|
||||
5700 91 0.59838575 0.062135324 0.056268619 0.037139977
|
||||
5800 89 0.61367863 0.065388569 0.057599642 0.035611958
|
||||
5900 88 0.62085434 0.066304196 0.057559466 0.034950213
|
||||
6000 87 0.62587378 0.064805675 0.056790087 0.036237838
|
||||
6100 85 0.63938829 0.064969208 0.056078027 0.03552132
|
||||
6200 83 0.65494135 0.066591169 0.056101931 0.034630474
|
||||
6300 81 0.66937986 0.066306701 0.054800504 0.034254483
|
||||
6400 81 0.67013145 0.067097853 0.055854961 0.034280111
|
||||
6500 80 0.6790132 0.068412844 0.056881014 0.034168381
|
||||
6600 79 0.68653549 0.06809039 0.056811154 0.033908702
|
||||
6700 77 0.70162795 0.066842288 0.0557967 0.033646478
|
||||
6800 75 0.71971093 0.067821847 0.056078774 0.033676107
|
||||
6900 74 0.72884997 0.068043023 0.055750401 0.034214913
|
||||
7000 73 0.741055 0.071248239 0.056787992 0.03344658
|
||||
7100 72 0.74990496 0.070629438 0.056007771 0.034272951
|
||||
7200 72 0.75147603 0.072294312 0.056870005 0.038376687
|
||||
7300 72 0.75152274 0.072343811 0.056800621 0.036036623
|
||||
7400 71 0.75947474 0.07048716 0.055972299 0.033629299
|
||||
7500 71 0.75927782 0.070278301 0.056900836 0.035271538
|
||||
7600 70 0.76561822 0.066408884 0.05617217 0.034045712
|
||||
7700 69 0.77597683 0.06648976 0.056700483 0.033062367
|
||||
7800 68 0.78867052 0.0687277 0.057387071 0.033095475
|
||||
7900 67 0.80092333 0.070159036 0.05640023 0.033074777
|
||||
8000 67 0.80387029 0.073296119 0.058852783 0.033191582
|
||||
8100 65 0.82162062 0.06787734 0.055167603 0.033911489
|
||||
8200 65 0.82293648 0.069280915 0.056928499 0.033131095
|
||||
8300 65 0.82622622 0.072789973 0.059906755 0.033023193
|
||||
8400 64 0.83807443 0.072671352 0.059696501 0.032696187
|
||||
8500 61 0.87561225 0.071886699 0.058404764 0.032601058
|
||||
8600 60 0.89224473 0.075115625 0.060760389 0.032549248
|
||||
8700 59 0.90437315 0.07301043 0.059680393 0.032331418
|
||||
8800 58 0.91714907 0.071064475 0.058706043 0.032560687
|
||||
8900 57 0.92841364 0.066924696 0.055655891 0.031963982
|
||||
9000 57 0.92657837 0.06494825 0.054846157 0.033987254
|
||||
9100 56 0.9393931 0.06187335 0.053192019 0.031830438
|
||||
9200 56 0.93662367 0.058886707 0.052423801 0.031638974
|
||||
9300 54 0.96949771 0.058618351 0.052230775 0.031585169
|
||||
9400 53 0.98617614 0.057709997 0.0521297 0.031462885
|
||||
9500 51 1.0212882 0.055507166 0.050820997 0.032864583
|
||||
9600 51 1.0207295 0.054899953 0.051106966 0.031197632
|
||||
9700 50 1.038825 0.053141062 0.049809936 0.031128803
|
||||
9800 49 1.0578379 0.051480469 0.049706571 0.030966982
|
||||
9900 48 1.0765858 0.048568721 0.048413084 0.03077346
|
||||
10000 47 1.0969026 0.046343845 0.048238812 0.03067878
|
||||
Loop time of 0.339694 on 4 procs for 5000 steps with 47 atoms
|
||||
|
||||
Performance: 6358664.007 tau/day, 14719.130 timesteps/s, 691.799 katom-step/s
|
||||
91.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.0082697 | 0.0094229 | 0.010636 | 0.9 | 2.77
|
||||
Neigh | 0.0019222 | 0.0021332 | 0.0024003 | 0.4 | 0.63
|
||||
Comm | 0.046669 | 0.047767 | 0.048681 | 0.4 | 14.06
|
||||
Output | 0.15506 | 0.20052 | 0.26834 | 10.0 | 59.03
|
||||
Modify | 0.005961 | 0.0062645 | 0.0066545 | 0.3 | 1.84
|
||||
Other | | 0.07358 | | | 21.66
|
||||
|
||||
Nlocal: 11.75 ave 16 max 4 min
|
||||
Histogram: 1 0 0 0 0 0 0 1 1 1
|
||||
Nghost: 35.25 ave 43 max 31 min
|
||||
Histogram: 1 1 1 0 0 0 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 202
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
43 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.72 | 13.72 | 13.72 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 47 0.042313945 0.046343845 0.048238812 0.0031829588
|
||||
10100 47 0.015301196 0.016758453 0.01709909 0.0049007033
|
||||
10200 47 0.013907369 0.015231881 0.017012208 0.0058822354
|
||||
10300 47 0.013076355 0.014321722 0.016878308 0.0063771178
|
||||
10400 47 0.013069713 0.014314447 0.017129868 0.0060544053
|
||||
10500 47 0.013549117 0.014839509 0.017316811 0.005038037
|
||||
10600 47 0.013439802 0.014719784 0.016885021 0.0042156468
|
||||
10700 47 0.011220771 0.012289416 0.015233623 0.0036441984
|
||||
10800 47 0.0099814505 0.010932065 0.014522881 0.0034799639
|
||||
10900 47 0.0096058179 0.010520658 0.014440913 0.0032337466
|
||||
11000 47 0.0083387227 0.0091328868 0.013671791 0.003109424
|
||||
11100 47 0.0093896494 0.010283902 0.013648072 0.0026934542
|
||||
11200 46 0.0080569563 0.0088430008 0.013494558 0.0033227229
|
||||
11300 46 0.0079433758 0.0087183393 0.013255582 0.0025017595
|
||||
11400 46 0.0082131053 0.0090143839 0.013432928 0.0025609831
|
||||
11500 46 0.0086708201 0.0095167538 0.0140237 0.0048787265
|
||||
11600 46 0.0068122941 0.0074769082 0.011927673 0.0064488339
|
||||
11700 46 0.0075227623 0.0082566903 0.012110115 0.0042416942
|
||||
11800 45 0.0072330348 0.0079563383 0.012267136 0.0034048479
|
||||
11900 44 0.0072351925 0.0079772635 0.012364777 0.0025564778
|
||||
12000 44 0.0069667862 0.0076813283 0.012063595 0.0026245318
|
||||
12100 44 0.0070363862 0.0077580669 0.01235331 0.0040962445
|
||||
12200 44 0.0070332478 0.0077546066 0.012391507 0.0040855196
|
||||
12300 43 0.006888974 0.0076141292 0.01250944 0.0032413632
|
||||
12400 43 0.0069726667 0.0077066316 0.012649713 0.0053382533
|
||||
12500 43 0.0084380379 0.0093262524 0.013612524 0.0040338939
|
||||
12600 41 0.0068380013 0.0075977792 0.012812732 0.0032899814
|
||||
12700 41 0.0073912915 0.0082125461 0.013194281 0.0046187658
|
||||
12800 41 0.0081089876 0.0090099862 0.014216855 0.0035891381
|
||||
12900 40 0.0079216998 0.0088270369 0.014373218 0.0037144356
|
||||
13000 40 0.0066515495 0.0074117266 0.014238377 0.003842598
|
||||
13100 39 0.0065633538 0.007335513 0.014863135 0.0038943632
|
||||
13200 39 0.0066950581 0.0074827119 0.015448367 0.004147601
|
||||
13300 38 0.0067769957 0.0075984497 0.016038254 0.004422378
|
||||
13400 38 0.0075957494 0.0085164463 0.017271275 0.004346174
|
||||
13500 38 0.0079577895 0.0089223701 0.018006278 0.0045246956
|
||||
13600 37 0.0057787234 0.0065010639 0.017799567 0.0047590682
|
||||
13700 37 0.0060842787 0.0068448136 0.017273992 0.0049302253
|
||||
13800 36 0.0054766062 0.0061832651 0.017043555 0.0052192413
|
||||
13900 36 0.0054552953 0.0061592043 0.01759785 0.0055798708
|
||||
14000 36 0.0054767411 0.0061834173 0.01795293 0.0072478689
|
||||
14100 36 0.0057198764 0.0064579249 0.019177836 0.0065582726
|
||||
14200 36 0.0063731636 0.0071955072 0.020493009 0.007028962
|
||||
14300 36 0.0082497676 0.0093142538 0.022414624 0.0076449222
|
||||
14400 36 0.0054945561 0.006203531 0.021312077 0.0095624124
|
||||
14500 36 0.00573652 0.0064767161 0.021201397 0.011575878
|
||||
14600 36 0.0064174036 0.0072454556 0.022562059 0.01404045
|
||||
14700 35 0.0064045224 0.0072584588 0.023705187 0.011526214
|
||||
14800 35 0.0064474362 0.0073070944 0.024537942 0.013286468
|
||||
14900 35 0.007220356 0.0081830702 0.025671819 0.015672233
|
||||
15000 34 0.0063783086 0.0072580753 0.019282966 0.0091892427
|
||||
Loop time of 0.288741 on 4 procs for 5000 steps with 34 atoms
|
||||
|
||||
Performance: 7480745.885 tau/day, 17316.541 timesteps/s, 588.762 katom-step/s
|
||||
94.8% 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.0024909 | 0.0048816 | 0.0063741 | 2.2 | 1.69
|
||||
Neigh | 0.00027783 | 0.00047397 | 0.00057846 | 0.0 | 0.16
|
||||
Comm | 0.029395 | 0.031811 | 0.033792 | 0.9 | 11.02
|
||||
Output | 0.14606 | 0.18368 | 0.24324 | 9.1 | 63.61
|
||||
Modify | 0.0016781 | 0.0030068 | 0.0034538 | 1.4 | 1.04
|
||||
Other | | 0.06489 | | | 22.47
|
||||
|
||||
Nlocal: 8.5 ave 13 max 4 min
|
||||
Histogram: 1 0 1 0 0 0 0 1 0 1
|
||||
Nghost: 25.5 ave 30 max 21 min
|
||||
Histogram: 1 0 1 0 0 0 0 1 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 75
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
326
examples/gransurf/log.1Jul24.tri.gran.global.g++.1
Normal file
326
examples/gransurf/log.1Jul24.tri.gran.global.g++.1
Normal file
@ -0,0 +1,326 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tri
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri plane
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
4 triangles with 5 points
|
||||
|
||||
fix 20 all surface/global tris hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 22 22 14
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.802 | 5.802 | 5.802 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
100 24 0.43156905 0.43156905 0.21119336 0.005627034
|
||||
200 24 0.73291569 0.73291569 0.35866087 0.009556157
|
||||
300 24 1.125323 1.125323 0.55068998 0.014672579
|
||||
400 24 1.608791 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 44 1.0393538 1.0393538 0.51608705 0.025335722
|
||||
600 44 0.91758637 0.91758637 0.46172806 0.022367468
|
||||
700 44 0.94006427 0.94006427 0.48254195 0.035377091
|
||||
800 44 0.79393033 0.79393033 0.42561821 0.019944664
|
||||
900 68 0.72089876 0.72089876 0.37868178 0.027381075
|
||||
1000 68 0.63399342 0.63399342 0.33666552 0.052128303
|
||||
1100 68 0.63724402 0.63724402 0.3383098 0.024876228
|
||||
1200 68 0.61528554 0.61528554 0.33134629 0.030248652
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 88 0.45289831 0.45289831 0.24603739 0.032314185
|
||||
1400 88 0.51028258 0.51028258 0.27462447 0.027721293
|
||||
1500 88 0.52728648 0.52728648 0.28580371 0.030249652
|
||||
1600 88 0.46373765 0.46373765 0.25474076 0.023383063
|
||||
1700 100 0.32521568 0.32521568 0.18562847 0.044525946
|
||||
1800 100 0.30850324 0.30850324 0.17882757 0.031769348
|
||||
1900 100 0.25365045 0.25365045 0.15147723 0.020592523
|
||||
2000 100 0.21618068 0.21618068 0.12797228 0.016906763
|
||||
2100 100 0.24765667 0.24765667 0.13878326 0.014412505
|
||||
2200 100 0.23385635 0.23385635 0.13254109 0.028043795
|
||||
2300 99 0.11484142 0.11484142 0.071915879 0.013339994
|
||||
2400 99 0.053909031 0.053909031 0.042287371 0.0035097518
|
||||
2500 99 0.042127087 0.042127087 0.032805292 0.0034968993
|
||||
2600 98 0.036200554 0.036200554 0.027643964 0.0031738712
|
||||
2700 98 0.030498126 0.030498126 0.02276547 0.0062463557
|
||||
2800 98 0.025833054 0.025833054 0.019565401 0.0016975051
|
||||
2900 98 0.020275355 0.020275355 0.015121787 0.0039809964
|
||||
3000 97 0.011459209 0.011459209 0.0095066644 0.00078861732
|
||||
3100 97 0.011129563 0.011129563 0.0090167087 0.0011316298
|
||||
3200 97 0.008702876 0.008702876 0.006583492 0.0019280113
|
||||
3300 97 0.0049159683 0.0049159683 0.0043967355 0.0005341051
|
||||
3400 97 0.003181781 0.003181781 0.0029259249 0.0004882333
|
||||
3500 97 0.0026088972 0.0026088972 0.002409282 0.0014155092
|
||||
3600 96 0.0022479435 0.0022479435 0.0021341332 0.00038317544
|
||||
3700 96 0.0020120096 0.0020120096 0.0019144129 0.00030490152
|
||||
3800 96 0.0016420292 0.0016420292 0.0016430538 0.00060824148
|
||||
3900 96 0.0015381905 0.0015381905 0.0016050403 0.00025407021
|
||||
4000 96 0.0013553693 0.0013553693 0.0014834876 0.001040242
|
||||
4100 96 0.0013261679 0.0013261679 0.0015039405 0.00015428329
|
||||
4200 96 0.0013369471 0.0013369471 0.0015527737 0.00015511402
|
||||
4300 96 0.001244062 0.001244062 0.0014317602 0.00023157907
|
||||
4400 96 0.00093908982 0.00093908982 0.0010831596 0.00085817995
|
||||
4500 96 0.00088407737 0.00088407737 0.0010577616 0.00028165751
|
||||
4600 96 0.0007048497 0.0007048497 0.00089917743 0.00018721659
|
||||
4700 96 0.00070321437 0.00070321437 0.00093327157 0.00027581655
|
||||
4800 96 0.00069636212 0.00069636212 0.00095998895 0.00026832587
|
||||
4900 96 0.00066716522 0.00066716522 0.00098882541 0.00024920816
|
||||
5000 96 0.00063786253 0.00063786253 0.00084144507 0.0006959824
|
||||
Loop time of 0.268261 on 1 procs for 5000 steps with 96 atoms
|
||||
|
||||
Performance: 8051852.379 tau/day, 18638.547 timesteps/s, 1.789 Matom-step/s
|
||||
97.4% 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.0036514 | 0.0036514 | 0.0036514 | 0.0 | 1.36
|
||||
Neigh | 0.0038871 | 0.0038871 | 0.0038871 | 0.0 | 1.45
|
||||
Comm | 0.00039419 | 0.00039419 | 0.00039419 | 0.0 | 0.15
|
||||
Output | 0.22313 | 0.22313 | 0.22313 | 0.0 | 83.18
|
||||
Modify | 0.035998 | 0.035998 | 0.035998 | 0.0 | 13.42
|
||||
Other | | 0.001202 | | | 0.45
|
||||
|
||||
Nlocal: 96 ave 96 max 96 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: 148 ave 148 max 148 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 148
|
||||
Ave neighs/atom = 1.5416667
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.62 | 10.62 | 10.62 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 96 0.00063786253 0.00063786253 0.00084144507 0.00068409102
|
||||
5100 96 0.028313992 0.028313992 0.02867394 0.0064318866
|
||||
5200 94 0.039240682 0.039240682 0.046630048 0.0021250045
|
||||
5300 94 0.045894493 0.045894493 0.051041657 0.004288554
|
||||
5400 90 0.046049624 0.046049624 0.052748479 0.0023413632
|
||||
5500 89 0.044619749 0.044619749 0.051759567 0.0025268066
|
||||
5600 87 0.046502592 0.046502592 0.052805904 0.0022671331
|
||||
5700 86 0.047502773 0.047502773 0.052890192 0.0025018431
|
||||
5800 83 0.049317538 0.049317538 0.052470227 0.0024522166
|
||||
5900 81 0.051463883 0.051463883 0.053324316 0.0024303621
|
||||
6000 79 0.052996121 0.052996121 0.054122681 0.0024352971
|
||||
6100 78 0.048074683 0.048074683 0.051044879 0.0020985852
|
||||
6200 75 0.04840275 0.04840275 0.049998948 0.0020567512
|
||||
6300 74 0.048896993 0.048896993 0.05012768 0.0020235986
|
||||
6400 72 0.048661741 0.048661741 0.047914934 0.0027397448
|
||||
6500 72 0.049815101 0.049815101 0.04823434 0.0022998212
|
||||
6600 72 0.050578127 0.050578127 0.047972859 0.0023500543
|
||||
6700 71 0.053700957 0.053700957 0.049203548 0.0021231176
|
||||
6800 70 0.054955705 0.054955705 0.048252513 0.0022219662
|
||||
6900 69 0.055089911 0.055089911 0.048327243 0.0021431702
|
||||
7000 68 0.054713581 0.054713581 0.047461258 0.0027194558
|
||||
7100 68 0.055154516 0.055154516 0.048042367 0.0020996652
|
||||
7200 68 0.052688949 0.052688949 0.047223673 0.0031629618
|
||||
7300 66 0.053031698 0.053031698 0.046492962 0.0020164648
|
||||
7400 66 0.053814798 0.053814798 0.048105161 0.0019830573
|
||||
7500 64 0.050060478 0.050060478 0.046862322 0.0017880464
|
||||
7600 63 0.051383282 0.051383282 0.047500425 0.0018639548
|
||||
7700 61 0.047761405 0.047761405 0.045091014 0.001632776
|
||||
7800 60 0.047463305 0.047463305 0.045176189 0.001591933
|
||||
7900 60 0.048347642 0.048347642 0.046537806 0.0016308357
|
||||
8000 58 0.04714196 0.04714196 0.045527272 0.0015641403
|
||||
8100 58 0.046968881 0.046968881 0.04598277 0.0024094931
|
||||
8200 57 0.046997734 0.046997734 0.045676536 0.0014922033
|
||||
8300 57 0.045562254 0.045562254 0.045872476 0.0014466327
|
||||
8400 55 0.044408194 0.044408194 0.045223172 0.0013596468
|
||||
8500 55 0.043334554 0.043334554 0.045957536 0.0013267805
|
||||
8600 52 0.0407858 0.0407858 0.043378073 0.0011793941
|
||||
8700 52 0.039828276 0.039828276 0.043948609 0.0014514912
|
||||
8800 50 0.038530301 0.038530301 0.043112182 0.0010705032
|
||||
8900 50 0.038936121 0.038936121 0.044360368 0.0010817763
|
||||
9000 49 0.038340922 0.038340922 0.043586145 0.0010435081
|
||||
9100 48 0.037704467 0.037704467 0.043398687 0.0010047485
|
||||
9200 48 0.039439971 0.039439971 0.045446967 0.0010509895
|
||||
9300 48 0.040146494 0.040146494 0.047222767 0.0010698143
|
||||
9400 46 0.036196314 0.036196314 0.04514472 0.00092352701
|
||||
9500 44 0.035428166 0.035428166 0.043156558 0.00086370075
|
||||
9600 44 0.036236057 0.036236057 0.045015316 0.00088339425
|
||||
9700 43 0.033612512 0.033612512 0.042808614 0.0008003869
|
||||
9800 42 0.034119077 0.034119077 0.043448026 0.0007931345
|
||||
9900 41 0.033534569 0.033534569 0.04281968 0.00076053851
|
||||
10000 40 0.032867612 0.032867612 0.041673148 0.00072678237
|
||||
Loop time of 0.246836 on 1 procs for 5000 steps with 40 atoms
|
||||
|
||||
Performance: 8750744.841 tau/day, 20256.354 timesteps/s, 810.254 katom-step/s
|
||||
90.2% 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.0022158 | 0.0022158 | 0.0022158 | 0.0 | 0.90
|
||||
Neigh | 0.0032745 | 0.0032745 | 0.0032745 | 0.0 | 1.33
|
||||
Comm | 0.0003966 | 0.0003966 | 0.0003966 | 0.0 | 0.16
|
||||
Output | 0.20971 | 0.20971 | 0.20971 | 0.0 | 84.96
|
||||
Modify | 0.030201 | 0.030201 | 0.030201 | 0.0 | 12.24
|
||||
Other | | 0.001038 | | | 0.42
|
||||
|
||||
Nlocal: 40 ave 40 max 40 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: 18 ave 18 max 18 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 18
|
||||
Ave neighs/atom = 0.45
|
||||
Neighbor list builds = 333
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.62 | 10.62 | 10.62 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 40 0.032867612 0.032867612 0.041673148 0.00072685327
|
||||
10100 40 0.0076052221 0.0076052221 0.0076988542 0.00016814267
|
||||
10200 40 0.0032668297 0.0032668297 0.0038743591 0.00054487661
|
||||
10300 40 0.003316664 0.003316664 0.0040375473 7.3327605e-05
|
||||
10400 40 0.0030064853 0.0030064853 0.0039975834 6.6469913e-05
|
||||
10500 40 0.0030342866 0.0030342866 0.004203116 6.7084568e-05
|
||||
10600 40 0.0030020199 0.0030020199 0.0043687727 6.6371188e-05
|
||||
10700 40 0.0027999261 0.0027999261 0.003947504 0.00010754343
|
||||
10800 40 0.0027031744 0.0027031744 0.0038359994 6.3984417e-05
|
||||
10900 40 0.0027373574 0.0027373574 0.0039800535 7.0481083e-05
|
||||
11000 39 0.0029362062 0.0029362062 0.002978473 6.9069963e-05
|
||||
11100 39 0.0037840086 0.0037840086 0.0036639284 8.1514925e-05
|
||||
11200 39 0.0045558771 0.0045558771 0.0041248127 9.8142478e-05
|
||||
11300 39 0.0017981927 0.0017981927 0.0025146205 0.00031779839
|
||||
11400 39 0.0016431107 0.0016431107 0.0024756094 4.4978596e-05
|
||||
11500 39 0.0017504997 0.0017504997 0.0026753481 4.7200446e-05
|
||||
11600 39 0.0020008726 0.0020008726 0.0029721732 5.2678933e-05
|
||||
11700 39 0.0014870059 0.0014870059 0.0026506345 4.152681e-05
|
||||
11800 39 0.0016074438 0.0016074438 0.002888528 -3.0912602e-05
|
||||
11900 39 0.0017722588 0.0017722588 0.0031282687 4.1702851e-05
|
||||
12000 39 0.0027430864 0.0027430864 0.0039301824 6.8654618e-05
|
||||
12100 39 0.0031883241 0.0031883241 0.0041806787 7.8260758e-05
|
||||
12200 38 0.0013269284 0.0013269284 0.0032322246 3.6635105e-05
|
||||
12300 38 0.0016569097 0.0016569097 0.0036433609 0.00041718571
|
||||
12400 38 0.00094008147 0.00094008147 0.0033452514 3.7496272e-05
|
||||
12500 37 0.00095698445 0.00095698445 0.0023073129 3.715434e-05
|
||||
12600 37 0.00098175769 0.00098175769 0.0025359749 3.7459507e-05
|
||||
12700 37 0.0010099586 0.0010099586 0.0027775856 3.7772603e-05
|
||||
12800 37 0.0010435337 0.0010435337 0.0030319623 3.811889e-05
|
||||
12900 37 0.0011032701 0.0011032701 0.0032983521 2.3599435e-05
|
||||
13000 37 0.0012957624 0.0012957624 0.003683326 4.2333566e-05
|
||||
13100 37 0.0010512853 0.0010512853 0.0037476793 3.6717097e-05
|
||||
13200 37 0.0010868252 0.0010868252 0.0040740128 0.00018164133
|
||||
13300 37 0.0011180293 0.0011180293 0.0044202397 3.643358e-05
|
||||
13400 37 0.0011178538 0.0011178538 0.0047516047 3.5746318e-05
|
||||
13500 37 0.0007777481 0.0007777481 0.0037726389 5.3444345e-05
|
||||
13600 36 0.0007999147 0.0007999147 0.003070242 3.248155e-05
|
||||
13700 36 0.0008389068 0.0008389068 0.003346172 2.9660005e-05
|
||||
13800 36 0.00086583182 0.00086583182 0.0036410575 3.0212331e-05
|
||||
13900 36 0.00058473604 0.00058473604 0.0024273755 5.7952251e-05
|
||||
14000 36 0.00055727478 0.00055727478 0.0019113805 0.00011095694
|
||||
14100 35 0.00044295291 0.00044295291 0.00066952242 0.00050643096
|
||||
14200 35 0.00041514525 0.00041514525 0.00045222556 9.4438091e-05
|
||||
14300 35 0.00042269774 0.00042269774 0.00047195914 4.5343892e-05
|
||||
14400 35 0.00042495865 0.00042495865 0.00049753292 4.5106479e-05
|
||||
14500 35 0.00040895208 0.00040895208 0.00051927404 4.6530808e-05
|
||||
14600 35 0.00039129621 0.00039129621 0.00054194363 0.00019698404
|
||||
14700 35 0.00039266334 0.00039266334 0.00058307961 4.7472072e-05
|
||||
14800 35 0.00040570773 0.00040570773 0.00065710296 4.7982077e-05
|
||||
14900 35 0.00040991932 0.00040991932 0.0007334058 4.8236973e-05
|
||||
15000 35 0.00041469341 0.00041469341 0.00081836212 4.8450505e-05
|
||||
Loop time of 0.213298 on 1 procs for 5000 steps with 35 atoms
|
||||
|
||||
Performance: 10126681.077 tau/day, 23441.391 timesteps/s, 820.449 katom-step/s
|
||||
88.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.0012286 | 0.0012286 | 0.0012286 | 0.0 | 0.58
|
||||
Neigh | 0.00025877 | 0.00025877 | 0.00025877 | 0.0 | 0.12
|
||||
Comm | 0.00026642 | 0.00026642 | 0.00026642 | 0.0 | 0.12
|
||||
Output | 0.19361 | 0.19361 | 0.19361 | 0.0 | 90.77
|
||||
Modify | 0.017202 | 0.017202 | 0.017202 | 0.0 | 8.06
|
||||
Other | | 0.0007333 | | | 0.34
|
||||
|
||||
Nlocal: 35 ave 35 max 35 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: 26 ave 26 max 26 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 26
|
||||
Ave neighs/atom = 0.74285714
|
||||
Neighbor list builds = 37
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
327
examples/gransurf/log.1Jul24.tri.gran.global.g++.4
Normal file
327
examples/gransurf/log.1Jul24.tri.gran.global.g++.4
Normal file
@ -0,0 +1,327 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tri
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri plane
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
4 triangles with 5 points
|
||||
|
||||
fix 20 all surface/global tris hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 22 22 14
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.785 | 5.785 | 5.785 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
100 24 0.43156905 0.43156905 0.21119336 0.005627034
|
||||
200 24 0.73291569 0.73291569 0.35866087 0.009556157
|
||||
300 24 1.125323 1.125323 0.55068998 0.014672579
|
||||
400 24 1.608791 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 44 1.0393538 1.0393538 0.51608705 0.025335722
|
||||
600 44 0.91758637 0.91758637 0.46172806 0.022367468
|
||||
700 44 0.94006427 0.94006427 0.48254195 0.035377091
|
||||
800 44 0.79393033 0.79393033 0.42561821 0.019944664
|
||||
900 68 0.72089876 0.72089876 0.37868178 0.027381075
|
||||
1000 68 0.63399342 0.63399342 0.33666552 0.052128303
|
||||
1100 68 0.63724402 0.63724402 0.3383098 0.024876228
|
||||
1200 68 0.61528554 0.61528554 0.33134629 0.030248652
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 88 0.45289831 0.45289831 0.24603739 0.032314185
|
||||
1400 88 0.51028258 0.51028258 0.27462447 0.027721293
|
||||
1500 88 0.52728648 0.52728648 0.28580371 0.030249652
|
||||
1600 88 0.46373765 0.46373765 0.25474076 0.023383063
|
||||
1700 100 0.32521568 0.32521568 0.18562847 0.044525945
|
||||
1800 100 0.30850324 0.30850324 0.17882757 0.031769348
|
||||
1900 100 0.25365045 0.25365045 0.15147723 0.020592523
|
||||
2000 100 0.21618068 0.21618068 0.12797228 0.016906764
|
||||
2100 100 0.24765668 0.24765668 0.13878326 0.014412505
|
||||
2200 100 0.23385636 0.23385636 0.13254109 0.028043759
|
||||
2300 99 0.11484144 0.11484144 0.07191588 0.013339992
|
||||
2400 99 0.053908946 0.053908946 0.042287303 0.0035096828
|
||||
2500 99 0.042127084 0.042127084 0.032805289 0.0034968494
|
||||
2600 98 0.03620012 0.03620012 0.027643861 0.0031757884
|
||||
2700 98 0.030497382 0.030497382 0.02276464 0.0062433907
|
||||
2800 98 0.025840421 0.025840421 0.019571636 0.0017100476
|
||||
2900 98 0.020282706 0.020282706 0.01512433 0.0039918866
|
||||
3000 97 0.011469683 0.011469683 0.0095129501 0.00083264863
|
||||
3100 97 0.011061428 0.011061428 0.0089852941 0.0011413524
|
||||
3200 97 0.0085729018 0.0085729018 0.0065027781 0.0015793608
|
||||
3300 97 0.0048844117 0.0048844117 0.0043831348 0.00054654825
|
||||
3400 97 0.0031718513 0.0031718513 0.002919676 0.00041030186
|
||||
3500 97 0.0026149541 0.0026149541 0.0024273609 0.00064176505
|
||||
3600 96 0.0022374762 0.0022374762 0.0021346878 0.0009000487
|
||||
3700 96 0.002015425 0.002015425 0.0019283015 0.00010102156
|
||||
3800 96 0.0016640247 0.0016640247 0.0016542081 0.00058063795
|
||||
3900 96 0.0014953491 0.0014953491 0.0015554014 0.00043366101
|
||||
4000 96 0.0014314643 0.0014314643 0.001549993 0.00016144849
|
||||
4100 96 0.0012797618 0.0012797618 0.001462077 0.0001478758
|
||||
4200 96 0.001301217 0.001301217 0.0015150334 0.00032745678
|
||||
4300 96 0.0011719389 0.0011719389 0.0013301205 0.00025779628
|
||||
4400 96 0.00092491728 0.00092491728 0.0010319633 0.00030044217
|
||||
4500 96 0.00087292243 0.00087292243 0.001019192 0.00025577747
|
||||
4600 96 0.00075144495 0.00075144495 0.00091990059 0.00018817234
|
||||
4700 96 0.00074883306 0.00074883306 0.00093930259 0.0005619372
|
||||
4800 96 0.00065460832 0.00065460832 0.00089919023 0.00024621022
|
||||
4900 96 0.0006499224 0.0006499224 0.00092528447 0.00026790153
|
||||
5000 96 0.00061981936 0.00061981936 0.00078233948 0.00061552671
|
||||
Loop time of 0.363222 on 4 procs for 5000 steps with 96 atoms
|
||||
|
||||
Performance: 5946774.227 tau/day, 13765.681 timesteps/s, 1.322 Matom-step/s
|
||||
95.8% 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.0013004 | 0.0013955 | 0.0015524 | 0.3 | 0.38
|
||||
Neigh | 0.0014703 | 0.0016933 | 0.0019742 | 0.5 | 0.47
|
||||
Comm | 0.019443 | 0.020106 | 0.020622 | 0.3 | 5.54
|
||||
Output | 0.23038 | 0.26505 | 0.3205 | 7.3 | 72.97
|
||||
Modify | 0.012416 | 0.01734 | 0.02093 | 2.5 | 4.77
|
||||
Other | | 0.05763 | | | 15.87
|
||||
|
||||
Nlocal: 24 ave 25 max 22 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9.25 ave 12 max 8 min
|
||||
Histogram: 2 0 1 0 0 0 0 0 0 1
|
||||
Neighs: 36.25 ave 40 max 34 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
|
||||
Total # of neighbors = 145
|
||||
Ave neighs/atom = 1.5104167
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.6 | 10.6 | 10.6 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 96 0.00061981936 0.00061981936 0.00078233948 0.00061520755
|
||||
5100 96 0.028314129 0.028314129 0.028887614 0.0015596074
|
||||
5200 93 0.038280284 0.038280284 0.045433502 0.003972808
|
||||
5300 92 0.044602602 0.044602602 0.050026258 0.0066549492
|
||||
5400 88 0.043591861 0.043591861 0.050587055 0.0021499387
|
||||
5500 88 0.043643437 0.043643437 0.051930078 0.0045848219
|
||||
5600 86 0.044398335 0.044398335 0.050588091 0.0021861193
|
||||
5700 86 0.048834817 0.048834817 0.052122986 0.0024353201
|
||||
5800 82 0.048657023 0.048657023 0.050882437 0.0022637024
|
||||
5900 79 0.047422209 0.047422209 0.050391753 0.0020519953
|
||||
6000 78 0.047430795 0.047430795 0.050706223 0.0020757537
|
||||
6100 76 0.047766342 0.047766342 0.050881831 0.0020365653
|
||||
6200 74 0.048553742 0.048553742 0.049322747 0.0040124193
|
||||
6300 73 0.050329565 0.050329565 0.050219503 0.0021932369
|
||||
6400 71 0.049899479 0.049899479 0.047423384 0.0019659021
|
||||
6500 71 0.051053882 0.051053882 0.048643589 0.0020292656
|
||||
6600 71 0.051795185 0.051795185 0.04927532 0.0023715227
|
||||
6700 69 0.052264693 0.052264693 0.048643292 0.0020434717
|
||||
6800 69 0.052349883 0.052349883 0.049265236 0.0020181077
|
||||
6900 68 0.051428051 0.051428051 0.048628957 0.0019545319
|
||||
7000 67 0.050476407 0.050476407 0.048064128 0.0018923271
|
||||
7100 67 0.050313513 0.050313513 0.048219142 0.001884633
|
||||
7200 67 0.050521342 0.050521342 0.047963518 0.0021063865
|
||||
7300 66 0.049017518 0.049017518 0.047288558 0.0018972353
|
||||
7400 65 0.048690842 0.048690842 0.048162015 0.0017669135
|
||||
7500 64 0.048934259 0.048934259 0.047906689 0.0019361894
|
||||
7600 62 0.048293135 0.048293135 0.047386457 0.0023701331
|
||||
7700 61 0.050821617 0.050821617 0.048266806 0.0018564185
|
||||
7800 60 0.052493396 0.052493396 0.049727548 0.0017921461
|
||||
7900 59 0.053162734 0.053162734 0.050327775 0.0017510558
|
||||
8000 57 0.051249525 0.051249525 0.048540418 0.0028770132
|
||||
8100 57 0.05261519 0.05261519 0.049923888 0.0016707326
|
||||
8200 55 0.051727022 0.051727022 0.047928098 0.0014557055
|
||||
8300 55 0.050489803 0.050489803 0.048163815 0.0033275674
|
||||
8400 54 0.049599363 0.049599363 0.047431898 0.0015088762
|
||||
8500 54 0.052050538 0.052050538 0.048908289 0.0015666966
|
||||
8600 52 0.050340482 0.050340482 0.046440415 0.0014555948
|
||||
8700 52 0.052028316 0.052028316 0.048176195 0.0015106353
|
||||
8800 50 0.0499901 0.0499901 0.045788044 0.0025087962
|
||||
8900 50 0.051750338 0.051750338 0.047753896 0.0014377545
|
||||
9000 50 0.051966831 0.051966831 0.048823952 0.0014437681
|
||||
9100 49 0.051660945 0.051660945 0.048110255 0.0014336784
|
||||
9200 49 0.051126513 0.051126513 0.048962201 0.0014162724
|
||||
9300 48 0.049057888 0.049057888 0.0492291 0.0013197818
|
||||
9400 48 0.045030047 0.045030047 0.047529619 0.0013481748
|
||||
9500 48 0.045513589 0.045513589 0.048536638 0.0012236674
|
||||
9600 48 0.043665627 0.043665627 0.048296609 0.0011806622
|
||||
9700 48 0.044106239 0.044106239 0.049540196 0.0011963288
|
||||
9800 46 0.042160287 0.042160287 0.048481885 0.0011107764
|
||||
9900 46 0.041772009 0.041772009 0.049483596 0.0011344326
|
||||
10000 44 0.040236277 0.040236277 0.045816406 0.00099962018
|
||||
Loop time of 0.306426 on 4 procs for 5000 steps with 44 atoms
|
||||
|
||||
Performance: 7049016.148 tau/day, 16317.167 timesteps/s, 717.955 katom-step/s
|
||||
94.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.00093851 | 0.00097842 | 0.0010014 | 0.0 | 0.32
|
||||
Neigh | 0.0011773 | 0.0012138 | 0.0012749 | 0.1 | 0.40
|
||||
Comm | 0.012859 | 0.013509 | 0.01418 | 0.5 | 4.41
|
||||
Output | 0.19691 | 0.22604 | 0.2754 | 6.8 | 73.77
|
||||
Modify | 0.0097789 | 0.010556 | 0.011241 | 0.5 | 3.44
|
||||
Other | | 0.05412 | | | 17.66
|
||||
|
||||
Nlocal: 11 ave 20 max 4 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
Nghost: 4 ave 6 max 2 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Neighs: 9.75 ave 23 max 2 min
|
||||
Histogram: 1 1 1 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 39
|
||||
Ave neighs/atom = 0.88636364
|
||||
Neighbor list builds = 333
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.6 | 10.6 | 10.6 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 44 0.040236277 0.040236277 0.045816406 0.00099979881
|
||||
10100 44 0.010977052 0.010977052 0.010149182 0.00026758119
|
||||
10200 44 0.004605352 0.004605352 0.0053045614 0.00011226198
|
||||
10300 44 0.0053942032 0.0053942032 0.0056431085 0.00013149135
|
||||
10400 44 0.0036859511 0.0036859511 0.0041662707 9.2662763e-05
|
||||
10500 44 0.0039184347 0.0039184347 0.0043067155 0.00049979829
|
||||
10600 44 0.0044427233 0.0044427233 0.0045879783 0.00011077625
|
||||
10700 44 0.0029607594 0.0029607594 0.0034776101 0.0006068726
|
||||
10800 44 0.0026942916 0.0026942916 0.0034401136 6.706354e-05
|
||||
10900 44 0.0026203469 0.0026203469 0.0034492724 6.9607138e-05
|
||||
11000 44 0.0019864947 0.0019864947 0.0031427116 8.3134017e-06
|
||||
11100 44 0.0019240976 0.0019240976 0.0032808084 2.0347364e-05
|
||||
11200 44 0.0018635948 0.0018635948 0.0034030363 5.7875998e-05
|
||||
11300 44 0.0017686207 0.0017686207 0.0029556669 9.3363224e-05
|
||||
11400 44 0.0014303652 0.0014303652 0.002751691 5.9528496e-05
|
||||
11500 44 0.001399414 0.001399414 0.0027540021 5.8871141e-05
|
||||
11600 44 0.0011285459 0.0011285459 0.0017454672 0.00063103388
|
||||
11700 44 0.0010672518 0.0010672518 0.0014970714 0.00012978783
|
||||
11800 44 0.0010754046 0.0010754046 0.0015525936 0.00011139988
|
||||
11900 44 0.00093155287 0.00093155287 0.0011682302 0.00012515367
|
||||
12000 44 0.00084853622 0.00084853622 0.0010681768 0.00010639935
|
||||
12100 44 0.00069411148 0.00069411148 0.00077780972 7.3742549e-05
|
||||
12200 44 0.0006859885 0.0006859885 0.0007696296 9.3309816e-05
|
||||
12300 44 0.00064103944 0.00064103944 0.00072985388 0.0001474211
|
||||
12400 44 0.00063849822 0.00063849822 0.00072417306 9.4166534e-05
|
||||
12500 44 0.0006361049 0.0006361049 0.00068646857 9.5282342e-05
|
||||
12600 44 0.00063622199 0.00063622199 0.00068538208 9.5058162e-05
|
||||
12700 44 0.00062165913 0.00062165913 0.00066876644 9.412044e-05
|
||||
12800 44 0.00058480739 0.00058480739 0.00063172101 0.00018653887
|
||||
12900 44 0.00054058957 0.00054058957 0.00059549487 9.384774e-05
|
||||
13000 44 0.00051904254 0.00051904254 0.00057073513 9.4434337e-05
|
||||
13100 44 0.00053410816 0.00053410816 0.00057766113 9.61856e-05
|
||||
13200 44 0.00050156547 0.00050156547 0.00055212122 9.7382505e-05
|
||||
13300 44 0.00049740896 0.00049740896 0.00054826803 9.7690479e-05
|
||||
13400 44 0.00049775099 0.00049775099 0.00054791017 9.7482658e-05
|
||||
13500 44 0.00049205909 0.00049205909 0.00054071132 0.00010353798
|
||||
13600 44 0.00049240333 0.00049240333 0.00054031425 9.7448102e-05
|
||||
13700 44 0.00049274845 0.00049274845 0.00053984708 9.7497469e-05
|
||||
13800 43 0.00050763917 0.00050763917 0.00055870605 8.5113661e-05
|
||||
13900 43 0.00047304434 0.00047304434 0.00054545171 7.7477263e-05
|
||||
14000 43 0.00047307851 0.00047307851 0.00056349029 0.00016615605
|
||||
14100 43 0.00048268391 0.00048268391 0.00059292333 8.4939642e-05
|
||||
14200 43 0.00049712412 0.00049712412 0.00064043909 8.522618e-05
|
||||
14300 43 0.00051010248 0.00051010248 0.00069557642 8.5161341e-05
|
||||
14400 43 0.0005010299 0.0005010299 0.00074528156 8.5292218e-05
|
||||
14500 43 0.00050900735 0.00050900735 0.00081321917 8.5452422e-05
|
||||
14600 43 0.00051293789 0.00051293789 0.00088464504 8.5523903e-05
|
||||
14700 43 0.00050022161 0.00050022161 0.00094898195 8.520624e-05
|
||||
14800 43 0.00049641051 0.00049641051 0.0010219267 8.5106195e-05
|
||||
14900 43 0.00048906772 0.00048906772 0.0010926634 8.4926556e-05
|
||||
15000 43 0.00048008443 0.00048008443 0.0011603655 8.470585e-05
|
||||
Loop time of 0.301772 on 4 procs for 5000 steps with 43 atoms
|
||||
|
||||
Performance: 7157719.630 tau/day, 16568.795 timesteps/s, 712.458 katom-step/s
|
||||
95.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.00035986 | 0.00077488 | 0.0011039 | 0.0 | 0.26
|
||||
Neigh | 0.00012595 | 0.00015205 | 0.00018739 | 0.0 | 0.05
|
||||
Comm | 0.0082732 | 0.0097396 | 0.011683 | 1.3 | 3.23
|
||||
Output | 0.19202 | 0.2262 | 0.27636 | 7.0 | 74.96
|
||||
Modify | 0.0029097 | 0.0064286 | 0.01144 | 3.9 | 2.13
|
||||
Other | | 0.05847 | | | 19.38
|
||||
|
||||
Nlocal: 10.75 ave 20 max 5 min
|
||||
Histogram: 1 0 2 0 0 0 0 0 0 1
|
||||
Nghost: 4 ave 7 max 2 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Neighs: 10 ave 22 max 2 min
|
||||
Histogram: 1 0 1 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 40
|
||||
Ave neighs/atom = 0.93023256
|
||||
Neighbor list builds = 32
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
315
examples/gransurf/log.1Jul24.tri.gran.global.stl.g++.1
Normal file
315
examples/gransurf/log.1Jul24.tri.gran.global.stl.g++.1
Normal file
@ -0,0 +1,315 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global surf.tri.stl hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
Reading STL object STL version of surf.tri from text file surf.tri.stl
|
||||
#fix 20 all surface/global surf.tri.stl hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 22 22 14
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.802 | 5.802 | 5.802 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
100 24 0.43156905 0.43156905 0.21119336 0.005627034
|
||||
200 24 0.73291569 0.73291569 0.35866087 0.009556157
|
||||
300 24 1.125323 1.125323 0.55068998 0.014672579
|
||||
400 24 1.608791 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 44 1.0393538 1.0393538 0.51608705 0.025335722
|
||||
600 44 0.91758637 0.91758637 0.46172806 0.022367468
|
||||
700 44 0.94006427 0.94006427 0.48254195 0.035377091
|
||||
800 44 0.79393033 0.79393033 0.42561821 0.019944664
|
||||
900 68 0.72089876 0.72089876 0.37868178 0.027381075
|
||||
1000 68 0.63399342 0.63399342 0.33666552 0.052128303
|
||||
1100 68 0.63724402 0.63724402 0.3383098 0.024876228
|
||||
1200 68 0.61528554 0.61528554 0.33134629 0.030248652
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 88 0.45289831 0.45289831 0.24603739 0.032314185
|
||||
1400 88 0.51028258 0.51028258 0.27462447 0.027721293
|
||||
1500 88 0.52728648 0.52728648 0.28580371 0.030249652
|
||||
1600 88 0.46373765 0.46373765 0.25474076 0.023383063
|
||||
1700 100 0.32521568 0.32521568 0.18562847 0.044525946
|
||||
1800 100 0.30850324 0.30850324 0.17882757 0.031769348
|
||||
1900 100 0.25365045 0.25365045 0.15147723 0.020592523
|
||||
2000 100 0.21618068 0.21618068 0.12797228 0.016906763
|
||||
2100 100 0.24765667 0.24765667 0.13878326 0.014412505
|
||||
2200 100 0.23385635 0.23385635 0.13254109 0.028043795
|
||||
2300 99 0.11484142 0.11484142 0.071915879 0.013339994
|
||||
2400 99 0.053909031 0.053909031 0.042287371 0.0035097518
|
||||
2500 99 0.042127087 0.042127087 0.032805292 0.0034968993
|
||||
2600 98 0.036200554 0.036200554 0.027643964 0.0031738712
|
||||
2700 98 0.030498126 0.030498126 0.02276547 0.0062463557
|
||||
2800 98 0.025833054 0.025833054 0.019565401 0.0016975051
|
||||
2900 98 0.020275355 0.020275355 0.015121787 0.0039809964
|
||||
3000 97 0.011459209 0.011459209 0.0095066644 0.00078861732
|
||||
3100 97 0.011129563 0.011129563 0.0090167087 0.0011316298
|
||||
3200 97 0.008702876 0.008702876 0.006583492 0.0019280113
|
||||
3300 97 0.0049159683 0.0049159683 0.0043967355 0.0005341051
|
||||
3400 97 0.003181781 0.003181781 0.0029259249 0.0004882333
|
||||
3500 97 0.0026088972 0.0026088972 0.002409282 0.0014155092
|
||||
3600 96 0.0022479435 0.0022479435 0.0021341332 0.00038317544
|
||||
3700 96 0.0020120096 0.0020120096 0.0019144129 0.00030490152
|
||||
3800 96 0.0016420292 0.0016420292 0.0016430538 0.00060824148
|
||||
3900 96 0.0015381905 0.0015381905 0.0016050403 0.00025407021
|
||||
4000 96 0.0013553693 0.0013553693 0.0014834876 0.001040242
|
||||
4100 96 0.0013261679 0.0013261679 0.0015039405 0.00015428329
|
||||
4200 96 0.0013369471 0.0013369471 0.0015527737 0.00015511402
|
||||
4300 96 0.001244062 0.001244062 0.0014317602 0.00023157907
|
||||
4400 96 0.00093908982 0.00093908982 0.0010831596 0.00085817995
|
||||
4500 96 0.00088407737 0.00088407737 0.0010577616 0.00028165751
|
||||
4600 96 0.0007048497 0.0007048497 0.00089917743 0.00018721659
|
||||
4700 96 0.00070321437 0.00070321437 0.00093327157 0.00027581655
|
||||
4800 96 0.00069636212 0.00069636212 0.00095998895 0.00026832587
|
||||
4900 96 0.00066716522 0.00066716522 0.00098882541 0.00024920816
|
||||
5000 96 0.00063786253 0.00063786253 0.00084144507 0.0006959824
|
||||
Loop time of 12.6651 on 1 procs for 5000 steps with 96 atoms
|
||||
|
||||
Performance: 170547.688 tau/day, 394.786 timesteps/s, 37.899 katom-step/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.13399 | 0.13399 | 0.13399 | 0.0 | 1.06
|
||||
Neigh | 0.067145 | 0.067145 | 0.067145 | 0.0 | 0.53
|
||||
Comm | 0.025541 | 0.025541 | 0.025541 | 0.0 | 0.20
|
||||
Output | 10.654 | 10.654 | 10.654 | 0.0 | 84.12
|
||||
Modify | 1.7142 | 1.7142 | 1.7142 | 0.0 | 13.53
|
||||
Other | | 0.06978 | | | 0.55
|
||||
|
||||
Nlocal: 96 ave 96 max 96 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: 148 ave 148 max 148 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 148
|
||||
Ave neighs/atom = 1.5416667
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.62 | 10.62 | 10.62 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 96 0.00063786253 0.00063786253 0.00084144507 0.00068409102
|
||||
5100 96 0.028313992 0.028313992 0.02867394 0.0064318866
|
||||
5200 94 0.039240682 0.039240682 0.046630048 0.0021250045
|
||||
5300 94 0.045894493 0.045894493 0.051041657 0.004288554
|
||||
5400 90 0.046049624 0.046049624 0.052748479 0.0023413632
|
||||
5500 89 0.044619749 0.044619749 0.051759567 0.0025268066
|
||||
5600 87 0.046502592 0.046502592 0.052805904 0.0022671331
|
||||
5700 86 0.047502773 0.047502773 0.052890192 0.0025018431
|
||||
5800 83 0.049317538 0.049317538 0.052470227 0.0024522166
|
||||
5900 81 0.051463883 0.051463883 0.053324316 0.0024303621
|
||||
6000 79 0.052996121 0.052996121 0.054122681 0.0024352971
|
||||
6100 78 0.048074683 0.048074683 0.051044879 0.0020985852
|
||||
6200 75 0.04840275 0.04840275 0.049998948 0.0020567512
|
||||
6300 74 0.048896993 0.048896993 0.05012768 0.0020235986
|
||||
6400 72 0.048661741 0.048661741 0.047914934 0.0027397448
|
||||
6500 72 0.049815101 0.049815101 0.04823434 0.0022998212
|
||||
6600 72 0.050578127 0.050578127 0.047972859 0.0023500543
|
||||
6700 71 0.053700957 0.053700957 0.049203548 0.0021231176
|
||||
6800 70 0.054955705 0.054955705 0.048252513 0.0022219662
|
||||
6900 69 0.055089911 0.055089911 0.048327243 0.0021431702
|
||||
7000 68 0.054713581 0.054713581 0.047461258 0.0027194558
|
||||
7100 68 0.055154516 0.055154516 0.048042367 0.0020996652
|
||||
7200 68 0.052688949 0.052688949 0.047223673 0.0031629618
|
||||
7300 66 0.053031698 0.053031698 0.046492962 0.0020164648
|
||||
7400 66 0.053814798 0.053814798 0.048105161 0.0019830573
|
||||
7500 64 0.050060478 0.050060478 0.046862322 0.0017880464
|
||||
7600 63 0.051383282 0.051383282 0.047500425 0.0018639548
|
||||
7700 61 0.047761405 0.047761405 0.045091014 0.001632776
|
||||
7800 60 0.047463305 0.047463305 0.045176189 0.001591933
|
||||
7900 60 0.048347642 0.048347642 0.046537806 0.0016308357
|
||||
8000 58 0.04714196 0.04714196 0.045527272 0.0015641403
|
||||
8100 58 0.046968881 0.046968881 0.04598277 0.0024094931
|
||||
8200 57 0.046997734 0.046997734 0.045676536 0.0014922033
|
||||
8300 57 0.045562254 0.045562254 0.045872476 0.0014466327
|
||||
8400 55 0.044408194 0.044408194 0.045223172 0.0013596468
|
||||
8500 55 0.043334554 0.043334554 0.045957536 0.0013267805
|
||||
8600 52 0.0407858 0.0407858 0.043378073 0.0011793941
|
||||
8700 52 0.039828276 0.039828276 0.043948609 0.0014514912
|
||||
8800 50 0.038530301 0.038530301 0.043112182 0.0010705032
|
||||
8900 50 0.038936121 0.038936121 0.044360368 0.0010817763
|
||||
9000 49 0.038340922 0.038340922 0.043586145 0.0010435081
|
||||
9100 48 0.037704467 0.037704467 0.043398687 0.0010047485
|
||||
9200 48 0.039439971 0.039439971 0.045446967 0.0010509895
|
||||
9300 48 0.040146494 0.040146494 0.047222767 0.0010698143
|
||||
9400 46 0.036196314 0.036196314 0.04514472 0.00092352701
|
||||
9500 44 0.035428166 0.035428166 0.043156558 0.00086370075
|
||||
9600 44 0.036236057 0.036236057 0.045015316 0.00088339425
|
||||
9700 43 0.033612512 0.033612512 0.042808614 0.0008003869
|
||||
9800 42 0.034119077 0.034119077 0.043448026 0.0007931345
|
||||
9900 41 0.033534569 0.033534569 0.04281968 0.00076053851
|
||||
10000 40 0.032867612 0.032867612 0.041673148 0.00072678237
|
||||
Loop time of 11.4047 on 1 procs for 5000 steps with 40 atoms
|
||||
|
||||
Performance: 189395.206 tau/day, 438.415 timesteps/s, 17.537 katom-step/s
|
||||
99.6% 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.0808 | 0.0808 | 0.0808 | 0.0 | 0.71
|
||||
Neigh | 0.059506 | 0.059506 | 0.059506 | 0.0 | 0.52
|
||||
Comm | 0.016313 | 0.016313 | 0.016313 | 0.0 | 0.14
|
||||
Output | 9.7783 | 9.7783 | 9.7783 | 0.0 | 85.74
|
||||
Modify | 1.4124 | 1.4124 | 1.4124 | 0.0 | 12.38
|
||||
Other | | 0.05743 | | | 0.50
|
||||
|
||||
Nlocal: 40 ave 40 max 40 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: 18 ave 18 max 18 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 18
|
||||
Ave neighs/atom = 0.45
|
||||
Neighbor list builds = 333
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.62 | 10.62 | 10.62 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 40 0.032867612 0.032867612 0.041673148 0.00072685327
|
||||
10100 40 0.0076052221 0.0076052221 0.0076988542 0.00016814267
|
||||
10200 40 0.0032668297 0.0032668297 0.0038743591 0.00054487661
|
||||
10300 40 0.003316664 0.003316664 0.0040375473 7.3327605e-05
|
||||
10400 40 0.0030064853 0.0030064853 0.0039975834 6.6469913e-05
|
||||
10500 40 0.0030342866 0.0030342866 0.004203116 6.7084568e-05
|
||||
10600 40 0.0030020199 0.0030020199 0.0043687727 6.6371188e-05
|
||||
10700 40 0.0027999261 0.0027999261 0.003947504 0.00010754343
|
||||
10800 40 0.0027031744 0.0027031744 0.0038359994 6.3984417e-05
|
||||
10900 40 0.0027373574 0.0027373574 0.0039800535 7.0481083e-05
|
||||
11000 39 0.0029362062 0.0029362062 0.002978473 6.9069963e-05
|
||||
11100 39 0.0037840086 0.0037840086 0.0036639284 8.1514925e-05
|
||||
11200 39 0.0045558771 0.0045558771 0.0041248127 9.8142478e-05
|
||||
11300 39 0.0017981927 0.0017981927 0.0025146205 0.00031779839
|
||||
11400 39 0.0016431107 0.0016431107 0.0024756094 4.4978596e-05
|
||||
11500 39 0.0017504997 0.0017504997 0.0026753481 4.7200446e-05
|
||||
11600 39 0.0020008726 0.0020008726 0.0029721732 5.2678933e-05
|
||||
11700 39 0.0014870059 0.0014870059 0.0026506345 4.152681e-05
|
||||
11800 39 0.0016074438 0.0016074438 0.002888528 -3.0912602e-05
|
||||
11900 39 0.0017722588 0.0017722588 0.0031282687 4.1702851e-05
|
||||
12000 39 0.0027430864 0.0027430864 0.0039301824 6.8654618e-05
|
||||
12100 39 0.0031883241 0.0031883241 0.0041806787 7.8260758e-05
|
||||
12200 38 0.0013269284 0.0013269284 0.0032322246 3.6635105e-05
|
||||
12300 38 0.0016569097 0.0016569097 0.0036433609 0.00041718571
|
||||
12400 38 0.00094008147 0.00094008147 0.0033452514 3.7496272e-05
|
||||
12500 37 0.00095698445 0.00095698445 0.0023073129 3.715434e-05
|
||||
12600 37 0.00098175769 0.00098175769 0.0025359749 3.7459507e-05
|
||||
12700 37 0.0010099586 0.0010099586 0.0027775856 3.7772603e-05
|
||||
12800 37 0.0010435337 0.0010435337 0.0030319623 3.811889e-05
|
||||
12900 37 0.0011032701 0.0011032701 0.0032983521 2.3599435e-05
|
||||
13000 37 0.0012957624 0.0012957624 0.003683326 4.2333566e-05
|
||||
13100 37 0.0010512853 0.0010512853 0.0037476793 3.6717097e-05
|
||||
13200 37 0.0010868252 0.0010868252 0.0040740128 0.00018164133
|
||||
13300 37 0.0011180293 0.0011180293 0.0044202397 3.643358e-05
|
||||
13400 37 0.0011178538 0.0011178538 0.0047516047 3.5746318e-05
|
||||
13500 37 0.0007777481 0.0007777481 0.0037726389 5.3444345e-05
|
||||
13600 36 0.0007999147 0.0007999147 0.003070242 3.248155e-05
|
||||
13700 36 0.0008389068 0.0008389068 0.003346172 2.9660005e-05
|
||||
13800 36 0.00086583182 0.00086583182 0.0036410575 3.0212331e-05
|
||||
13900 36 0.00058473604 0.00058473604 0.0024273755 5.7952251e-05
|
||||
14000 36 0.00055727478 0.00055727478 0.0019113805 0.00011095694
|
||||
14100 35 0.00044295291 0.00044295291 0.00066952242 0.00050643096
|
||||
14200 35 0.00041514525 0.00041514525 0.00045222556 9.4438091e-05
|
||||
14300 35 0.00042269774 0.00042269774 0.00047195914 4.5343892e-05
|
||||
14400 35 0.00042495865 0.00042495865 0.00049753292 4.5106479e-05
|
||||
14500 35 0.00040895208 0.00040895208 0.00051927404 4.6530808e-05
|
||||
14600 35 0.00039129621 0.00039129621 0.00054194363 0.00019698404
|
||||
14700 35 0.00039266334 0.00039266334 0.00058307961 4.7472072e-05
|
||||
14800 35 0.00040570773 0.00040570773 0.00065710296 4.7982077e-05
|
||||
14900 35 0.00040991932 0.00040991932 0.0007334058 4.8236973e-05
|
||||
15000 35 0.00041469341 0.00041469341 0.00081836212 4.8450505e-05
|
||||
Loop time of 9.86119 on 1 procs for 5000 steps with 35 atoms
|
||||
|
||||
Performance: 219040.411 tau/day, 507.038 timesteps/s, 17.746 katom-step/s
|
||||
99.6% 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.046258 | 0.046258 | 0.046258 | 0.0 | 0.47
|
||||
Neigh | 0.0050304 | 0.0050304 | 0.0050304 | 0.0 | 0.05
|
||||
Comm | 0.012996 | 0.012996 | 0.012996 | 0.0 | 0.13
|
||||
Output | 8.9213 | 8.9213 | 8.9213 | 0.0 | 90.47
|
||||
Modify | 0.82839 | 0.82839 | 0.82839 | 0.0 | 8.40
|
||||
Other | | 0.04723 | | | 0.48
|
||||
|
||||
Nlocal: 35 ave 35 max 35 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: 26 ave 26 max 26 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 26
|
||||
Ave neighs/atom = 0.74285714
|
||||
Neighbor list builds = 37
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:35
|
||||
316
examples/gransurf/log.1Jul24.tri.gran.global.stl.g++.4
Normal file
316
examples/gransurf/log.1Jul24.tri.gran.global.stl.g++.4
Normal file
@ -0,0 +1,316 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global surf.tri.stl hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
Reading STL object STL version of surf.tri from text file surf.tri.stl
|
||||
#fix 20 all surface/global surf.tri.stl hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall all wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 22 22 14
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke/history, perpetual
|
||||
attributes: half, newton on, size, history
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.786 | 5.786 | 5.786 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
100 24 0.43156905 0.43156905 0.21119336 0.005627034
|
||||
200 24 0.73291569 0.73291569 0.35866087 0.009556157
|
||||
300 24 1.125323 1.125323 0.55068998 0.014672579
|
||||
400 24 1.608791 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 44 1.0393538 1.0393538 0.51608705 0.025335722
|
||||
600 44 0.91758637 0.91758637 0.46172806 0.022367468
|
||||
700 44 0.94006427 0.94006427 0.48254195 0.035377091
|
||||
800 44 0.79393033 0.79393033 0.42561821 0.019944664
|
||||
900 68 0.72089876 0.72089876 0.37868178 0.027381075
|
||||
1000 68 0.63399342 0.63399342 0.33666552 0.052128303
|
||||
1100 68 0.63724402 0.63724402 0.3383098 0.024876228
|
||||
1200 68 0.61528554 0.61528554 0.33134629 0.030248652
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 88 0.45289831 0.45289831 0.24603739 0.032314185
|
||||
1400 88 0.51028258 0.51028258 0.27462447 0.027721293
|
||||
1500 88 0.52728648 0.52728648 0.28580371 0.030249652
|
||||
1600 88 0.46373765 0.46373765 0.25474076 0.023383063
|
||||
1700 100 0.32521568 0.32521568 0.18562847 0.044525945
|
||||
1800 100 0.30850324 0.30850324 0.17882757 0.031769348
|
||||
1900 100 0.25365045 0.25365045 0.15147723 0.020592523
|
||||
2000 100 0.21618068 0.21618068 0.12797228 0.016906764
|
||||
2100 100 0.24765668 0.24765668 0.13878326 0.014412505
|
||||
2200 100 0.23385636 0.23385636 0.13254109 0.028043759
|
||||
2300 99 0.11484144 0.11484144 0.07191588 0.013339992
|
||||
2400 99 0.053908946 0.053908946 0.042287303 0.0035096828
|
||||
2500 99 0.042127084 0.042127084 0.032805289 0.0034968494
|
||||
2600 98 0.03620012 0.03620012 0.027643861 0.0031757884
|
||||
2700 98 0.030497382 0.030497382 0.02276464 0.0062433907
|
||||
2800 98 0.025840421 0.025840421 0.019571636 0.0017100476
|
||||
2900 98 0.020282706 0.020282706 0.01512433 0.0039918866
|
||||
3000 97 0.011469683 0.011469683 0.0095129501 0.00083264863
|
||||
3100 97 0.011061428 0.011061428 0.0089852941 0.0011413524
|
||||
3200 97 0.0085729018 0.0085729018 0.0065027781 0.0015793608
|
||||
3300 97 0.0048844117 0.0048844117 0.0043831348 0.00054654825
|
||||
3400 97 0.0031718513 0.0031718513 0.002919676 0.00041030186
|
||||
3500 97 0.0026149541 0.0026149541 0.0024273609 0.00064176505
|
||||
3600 96 0.0022374762 0.0022374762 0.0021346878 0.0009000487
|
||||
3700 96 0.002015425 0.002015425 0.0019283015 0.00010102156
|
||||
3800 96 0.0016640247 0.0016640247 0.0016542081 0.00058063795
|
||||
3900 96 0.0014953491 0.0014953491 0.0015554014 0.00043366101
|
||||
4000 96 0.0014314643 0.0014314643 0.001549993 0.00016144849
|
||||
4100 96 0.0012797618 0.0012797618 0.001462077 0.0001478758
|
||||
4200 96 0.001301217 0.001301217 0.0015150334 0.00032745678
|
||||
4300 96 0.0011719389 0.0011719389 0.0013301205 0.00025779628
|
||||
4400 96 0.00092491728 0.00092491728 0.0010319633 0.00030044217
|
||||
4500 96 0.00087292243 0.00087292243 0.001019192 0.00025577747
|
||||
4600 96 0.00075144495 0.00075144495 0.00091990059 0.00018817234
|
||||
4700 96 0.00074883306 0.00074883306 0.00093930259 0.0005619372
|
||||
4800 96 0.00065460832 0.00065460832 0.00089919023 0.00024621022
|
||||
4900 96 0.0006499224 0.0006499224 0.00092528447 0.00026790153
|
||||
5000 96 0.00061981936 0.00061981936 0.00078233948 0.00061552671
|
||||
Loop time of 15.3967 on 4 procs for 5000 steps with 96 atoms
|
||||
|
||||
Performance: 140290.241 tau/day, 324.746 timesteps/s, 31.176 katom-step/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.065219 | 0.068376 | 0.070577 | 0.8 | 0.44
|
||||
Neigh | 0.036209 | 0.037389 | 0.038344 | 0.4 | 0.24
|
||||
Comm | 0.94586 | 0.95361 | 0.96234 | 0.6 | 6.19
|
||||
Output | 11.31 | 11.99 | 13.148 | 21.9 | 77.87
|
||||
Modify | 0.7825 | 0.88835 | 0.95807 | 7.7 | 5.77
|
||||
Other | | 1.459 | | | 9.48
|
||||
|
||||
Nlocal: 24 ave 25 max 22 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9.25 ave 12 max 8 min
|
||||
Histogram: 2 0 1 0 0 0 0 0 0 1
|
||||
Neighs: 36.25 ave 40 max 34 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
|
||||
Total # of neighbors = 145
|
||||
Ave neighs/atom = 1.5104167
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.6 | 10.6 | 10.6 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 96 0.00061981936 0.00061981936 0.00078233948 0.00061520755
|
||||
5100 96 0.028314129 0.028314129 0.028887614 0.0015596074
|
||||
5200 93 0.038280284 0.038280284 0.045433502 0.003972808
|
||||
5300 92 0.044602602 0.044602602 0.050026258 0.0066549492
|
||||
5400 88 0.043591861 0.043591861 0.050587055 0.0021499387
|
||||
5500 88 0.043643437 0.043643437 0.051930078 0.0045848219
|
||||
5600 86 0.044398335 0.044398335 0.050588091 0.0021861193
|
||||
5700 86 0.048834817 0.048834817 0.052122986 0.0024353201
|
||||
5800 82 0.048657023 0.048657023 0.050882437 0.0022637024
|
||||
5900 79 0.047422209 0.047422209 0.050391753 0.0020519953
|
||||
6000 78 0.047430795 0.047430795 0.050706223 0.0020757537
|
||||
6100 76 0.047766342 0.047766342 0.050881831 0.0020365653
|
||||
6200 74 0.048553742 0.048553742 0.049322747 0.0040124193
|
||||
6300 73 0.050329565 0.050329565 0.050219503 0.0021932369
|
||||
6400 71 0.049899479 0.049899479 0.047423384 0.0019659021
|
||||
6500 71 0.051053882 0.051053882 0.048643589 0.0020292656
|
||||
6600 71 0.051795185 0.051795185 0.04927532 0.0023715227
|
||||
6700 69 0.052264693 0.052264693 0.048643292 0.0020434717
|
||||
6800 69 0.052349883 0.052349883 0.049265236 0.0020181077
|
||||
6900 68 0.051428051 0.051428051 0.048628957 0.0019545319
|
||||
7000 67 0.050476407 0.050476407 0.048064128 0.0018923271
|
||||
7100 67 0.050313513 0.050313513 0.048219142 0.001884633
|
||||
7200 67 0.050521342 0.050521342 0.047963518 0.0021063865
|
||||
7300 66 0.049017518 0.049017518 0.047288558 0.0018972353
|
||||
7400 65 0.048690842 0.048690842 0.048162015 0.0017669135
|
||||
7500 64 0.048934259 0.048934259 0.047906689 0.0019361894
|
||||
7600 62 0.048293135 0.048293135 0.047386457 0.0023701331
|
||||
7700 61 0.050821617 0.050821617 0.048266806 0.0018564185
|
||||
7800 60 0.052493396 0.052493396 0.049727548 0.0017921461
|
||||
7900 59 0.053162734 0.053162734 0.050327775 0.0017510558
|
||||
8000 57 0.051249525 0.051249525 0.048540418 0.0028770132
|
||||
8100 57 0.05261519 0.05261519 0.049923888 0.0016707326
|
||||
8200 55 0.051727022 0.051727022 0.047928098 0.0014557055
|
||||
8300 55 0.050489803 0.050489803 0.048163815 0.0033275674
|
||||
8400 54 0.049599363 0.049599363 0.047431898 0.0015088762
|
||||
8500 54 0.052050538 0.052050538 0.048908289 0.0015666966
|
||||
8600 52 0.050340482 0.050340482 0.046440415 0.0014555948
|
||||
8700 52 0.052028316 0.052028316 0.048176195 0.0015106353
|
||||
8800 50 0.0499901 0.0499901 0.045788044 0.0025087962
|
||||
8900 50 0.051750338 0.051750338 0.047753896 0.0014377545
|
||||
9000 50 0.051966831 0.051966831 0.048823952 0.0014437681
|
||||
9100 49 0.051660945 0.051660945 0.048110255 0.0014336784
|
||||
9200 49 0.051126513 0.051126513 0.048962201 0.0014162724
|
||||
9300 48 0.049057888 0.049057888 0.0492291 0.0013197818
|
||||
9400 48 0.045030047 0.045030047 0.047529619 0.0013481748
|
||||
9500 48 0.045513589 0.045513589 0.048536638 0.0012236674
|
||||
9600 48 0.043665627 0.043665627 0.048296609 0.0011806622
|
||||
9700 48 0.044106239 0.044106239 0.049540196 0.0011963288
|
||||
9800 46 0.042160287 0.042160287 0.048481885 0.0011107764
|
||||
9900 46 0.041772009 0.041772009 0.049483596 0.0011344326
|
||||
10000 44 0.040236277 0.040236277 0.045816406 0.00099962018
|
||||
Loop time of 14.3219 on 4 procs for 5000 steps with 44 atoms
|
||||
|
||||
Performance: 150817.741 tau/day, 349.115 timesteps/s, 15.361 katom-step/s
|
||||
99.8% 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.045346 | 0.049249 | 0.05101 | 1.0 | 0.34
|
||||
Neigh | 0.027653 | 0.028827 | 0.029969 | 0.5 | 0.20
|
||||
Comm | 0.68027 | 0.70592 | 0.72986 | 2.2 | 4.93
|
||||
Output | 10.707 | 11.401 | 12.544 | 22.1 | 79.61
|
||||
Modify | 0.60999 | 0.65113 | 0.70846 | 4.7 | 4.55
|
||||
Other | | 1.485 | | | 10.37
|
||||
|
||||
Nlocal: 11 ave 20 max 4 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
Nghost: 4 ave 6 max 2 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Neighs: 9.75 ave 23 max 2 min
|
||||
Histogram: 1 1 1 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 39
|
||||
Ave neighs/atom = 0.88636364
|
||||
Neighbor list builds = 333
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.6 | 10.6 | 10.6 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 44 0.040236277 0.040236277 0.045816406 0.00099979881
|
||||
10100 44 0.010977052 0.010977052 0.010149182 0.00026758119
|
||||
10200 44 0.004605352 0.004605352 0.0053045614 0.00011226198
|
||||
10300 44 0.0053942032 0.0053942032 0.0056431085 0.00013149135
|
||||
10400 44 0.0036859511 0.0036859511 0.0041662707 9.2662763e-05
|
||||
10500 44 0.0039184347 0.0039184347 0.0043067155 0.00049979829
|
||||
10600 44 0.0044427233 0.0044427233 0.0045879783 0.00011077625
|
||||
10700 44 0.0029607594 0.0029607594 0.0034776101 0.0006068726
|
||||
10800 44 0.0026942916 0.0026942916 0.0034401136 6.706354e-05
|
||||
10900 44 0.0026203469 0.0026203469 0.0034492724 6.9607138e-05
|
||||
11000 44 0.0019864947 0.0019864947 0.0031427116 8.3134017e-06
|
||||
11100 44 0.0019240976 0.0019240976 0.0032808084 2.0347364e-05
|
||||
11200 44 0.0018635948 0.0018635948 0.0034030363 5.7875998e-05
|
||||
11300 44 0.0017686207 0.0017686207 0.0029556669 9.3363224e-05
|
||||
11400 44 0.0014303652 0.0014303652 0.002751691 5.9528496e-05
|
||||
11500 44 0.001399414 0.001399414 0.0027540021 5.8871141e-05
|
||||
11600 44 0.0011285459 0.0011285459 0.0017454672 0.00063103388
|
||||
11700 44 0.0010672518 0.0010672518 0.0014970714 0.00012978783
|
||||
11800 44 0.0010754046 0.0010754046 0.0015525936 0.00011139988
|
||||
11900 44 0.00093155287 0.00093155287 0.0011682302 0.00012515367
|
||||
12000 44 0.00084853622 0.00084853622 0.0010681768 0.00010639935
|
||||
12100 44 0.00069411148 0.00069411148 0.00077780972 7.3742549e-05
|
||||
12200 44 0.0006859885 0.0006859885 0.0007696296 9.3309816e-05
|
||||
12300 44 0.00064103944 0.00064103944 0.00072985388 0.0001474211
|
||||
12400 44 0.00063849822 0.00063849822 0.00072417306 9.4166534e-05
|
||||
12500 44 0.0006361049 0.0006361049 0.00068646857 9.5282342e-05
|
||||
12600 44 0.00063622199 0.00063622199 0.00068538208 9.5058162e-05
|
||||
12700 44 0.00062165913 0.00062165913 0.00066876644 9.412044e-05
|
||||
12800 44 0.00058480739 0.00058480739 0.00063172101 0.00018653887
|
||||
12900 44 0.00054058957 0.00054058957 0.00059549487 9.384774e-05
|
||||
13000 44 0.00051904254 0.00051904254 0.00057073513 9.4434337e-05
|
||||
13100 44 0.00053410816 0.00053410816 0.00057766113 9.61856e-05
|
||||
13200 44 0.00050156547 0.00050156547 0.00055212122 9.7382505e-05
|
||||
13300 44 0.00049740896 0.00049740896 0.00054826803 9.7690479e-05
|
||||
13400 44 0.00049775099 0.00049775099 0.00054791017 9.7482658e-05
|
||||
13500 44 0.00049205909 0.00049205909 0.00054071132 0.00010353798
|
||||
13600 44 0.00049240333 0.00049240333 0.00054031425 9.7448102e-05
|
||||
13700 44 0.00049274845 0.00049274845 0.00053984708 9.7497469e-05
|
||||
13800 43 0.00050763917 0.00050763917 0.00055870605 8.5113661e-05
|
||||
13900 43 0.00047304434 0.00047304434 0.00054545171 7.7477263e-05
|
||||
14000 43 0.00047307851 0.00047307851 0.00056349029 0.00016615605
|
||||
14100 43 0.00048268391 0.00048268391 0.00059292333 8.4939642e-05
|
||||
14200 43 0.00049712412 0.00049712412 0.00064043909 8.522618e-05
|
||||
14300 43 0.00051010248 0.00051010248 0.00069557642 8.5161341e-05
|
||||
14400 43 0.0005010299 0.0005010299 0.00074528156 8.5292218e-05
|
||||
14500 43 0.00050900735 0.00050900735 0.00081321917 8.5452422e-05
|
||||
14600 43 0.00051293789 0.00051293789 0.00088464504 8.5523903e-05
|
||||
14700 43 0.00050022161 0.00050022161 0.00094898195 8.520624e-05
|
||||
14800 43 0.00049641051 0.00049641051 0.0010219267 8.5106195e-05
|
||||
14900 43 0.00048906772 0.00048906772 0.0010926634 8.4926556e-05
|
||||
15000 43 0.00048008443 0.00048008443 0.0011603655 8.470585e-05
|
||||
Loop time of 14.5369 on 4 procs for 5000 steps with 43 atoms
|
||||
|
||||
Performance: 148587.184 tau/day, 343.952 timesteps/s, 14.790 katom-step/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.020082 | 0.038623 | 0.055378 | 6.7 | 0.27
|
||||
Neigh | 0.00203 | 0.0025526 | 0.0032587 | 0.9 | 0.02
|
||||
Comm | 0.46528 | 0.54133 | 0.62211 | 7.5 | 3.72
|
||||
Output | 10.574 | 11.671 | 12.961 | 26.2 | 80.28
|
||||
Modify | 0.20883 | 0.41514 | 0.69875 | 27.7 | 2.86
|
||||
Other | | 1.869 | | | 12.85
|
||||
|
||||
Nlocal: 10.75 ave 20 max 5 min
|
||||
Histogram: 1 0 2 0 0 0 0 0 0 1
|
||||
Nghost: 4 ave 7 max 2 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Neighs: 10 ave 22 max 2 min
|
||||
Histogram: 1 0 1 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 40
|
||||
Ave neighs/atom = 0.93023256
|
||||
Neighbor list builds = 32
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:46
|
||||
345
examples/gransurf/log.1Jul24.tri.gran.surf.g++.1
Normal file
345
examples/gransurf/log.1Jul24.tri.gran.surf.g++.1
Normal file
@ -0,0 +1,345 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
molecule tris surf.tri
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri plane
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
4 triangles
|
||||
fix 20 all surface/local tris
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.33 | 13.33 | 13.33 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95089817 1.0393538 0.51608705 0.025335722
|
||||
600 48 0.83949391 0.91758637 0.46172806 0.022515854
|
||||
700 48 0.8600588 0.94006427 0.48254195 0.046349308
|
||||
800 48 0.72636179 0.79393033 0.42561821 0.02213745
|
||||
900 72 0.68028474 0.72089876 0.37868178 0.028124504
|
||||
1000 72 0.59827548 0.63399342 0.33666552 0.057932603
|
||||
1100 72 0.60134295 0.63724402 0.3383098 0.025565346
|
||||
1200 72 0.58062156 0.61528554 0.33134629 0.031222266
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.43299069 0.45289831 0.24603739 0.033378543
|
||||
1400 92 0.48785257 0.51028258 0.27462447 0.029606478
|
||||
1500 92 0.50410905 0.52728648 0.28580371 0.031570548
|
||||
1600 92 0.44335358 0.46373765 0.25474076 0.025856762
|
||||
1700 104 0.31258594 0.32521568 0.18562847 0.056917788
|
||||
1800 104 0.29652255 0.30850326 0.17882758 0.036853847
|
||||
1900 104 0.2438002 0.25365071 0.15147734 0.027067985
|
||||
2000 104 0.20778515 0.21618051 0.12797216 0.024491014
|
||||
2100 104 0.23803938 0.24765713 0.13878356 0.018557519
|
||||
2200 104 0.22477903 0.23386101 0.13254455 0.034204374
|
||||
2300 103 0.11028018 0.11478141 0.071880248 0.023107934
|
||||
2400 103 0.051939416 0.054059392 0.04238437 0.010076125
|
||||
2500 103 0.04046389 0.042115477 0.03276739 0.0092675482
|
||||
2600 102 0.034504146 0.035926998 0.027152703 0.012043982
|
||||
2700 102 0.029660748 0.030883871 0.023043461 0.0098675596
|
||||
2800 102 0.023675472 0.02465178 0.018814934 0.0079223517
|
||||
2900 102 0.01955555 0.020361964 0.015095009 0.010178019
|
||||
3000 101 0.010976926 0.011434298 0.0094599476 0.0062989926
|
||||
3100 101 0.010404873 0.01083841 0.0088413578 0.006904568
|
||||
3200 101 0.0084790802 0.0088323752 0.0067474787 0.0078181584
|
||||
3300 101 0.0049651339 0.0051720145 0.0045655092 0.0077852556
|
||||
3400 101 0.0028770081 0.0029968834 0.0028180577 0.0065531061
|
||||
3500 101 0.0026603851 0.0027712345 0.0026301508 0.0066265532
|
||||
3600 100 0.0022879435 0.002384278 0.0022868891 0.005946377
|
||||
3700 100 0.0020797371 0.002167305 0.0021366338 0.0060275426
|
||||
3800 100 0.0018223254 0.0018990549 0.0018542925 0.0058665012
|
||||
3900 100 0.0016056933 0.0016733014 0.0017380009 0.0065755667
|
||||
4000 100 0.0012764017 0.001330145 0.0014831053 0.0057002441
|
||||
4100 100 0.0011732772 0.0012226783 0.0014520833 0.0058997102
|
||||
4200 100 0.0011509224 0.0011993823 0.0014499925 0.005891705
|
||||
4300 100 0.00093450709 0.00097385475 0.0011305405 0.0060755638
|
||||
4400 100 0.00073710728 0.00076814338 0.00093491029 0.005994252
|
||||
4500 100 0.00066950467 0.00069769434 0.00081329183 0.0060209889
|
||||
4600 100 0.00067057619 0.00069881097 0.00081870364 0.0066002598
|
||||
4700 100 0.00061522957 0.00064113397 0.0007867969 0.0061000762
|
||||
4800 100 0.00057127674 0.0005953305 0.00078435449 0.006075934
|
||||
4900 100 0.00048538112 0.00050581822 0.00067082262 0.0061360807
|
||||
5000 100 0.00049531306 0.00051616835 0.00070658811 0.0061425578
|
||||
Loop time of 0.232999 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 9270416.385 tau/day, 21459.297 timesteps/s, 2.146 Matom-step/s
|
||||
96.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.025378 | 0.025378 | 0.025378 | 0.0 | 10.89
|
||||
Neigh | 0.0083862 | 0.0083862 | 0.0083862 | 0.0 | 3.60
|
||||
Comm | 0.00040258 | 0.00040258 | 0.00040258 | 0.0 | 0.17
|
||||
Output | 0.18672 | 0.18672 | 0.18672 | 0.0 | 80.14
|
||||
Modify | 0.011026 | 0.011026 | 0.011026 | 0.0 | 4.73
|
||||
Other | | 0.001084 | | | 0.47
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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
|
||||
Neighbor list builds = 320
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.46 | 14.46 | 14.46 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00049531306 0.00051616835 0.00070658811 0.0061401156
|
||||
5100 100 0.51797813 0.029144789 0.028561434 0.061796302
|
||||
5200 99 0.53766867 0.044472871 0.048736594 0.052595853
|
||||
5300 98 0.54821886 0.050173651 0.052878851 0.060444985
|
||||
5400 95 0.56483365 0.050925371 0.053737351 0.057837587
|
||||
5500 95 0.56809688 0.054333638 0.055612067 0.043728998
|
||||
5600 92 0.58741732 0.056826396 0.056374971 0.039138605
|
||||
5700 92 0.59268005 0.062331088 0.059265481 0.035680319
|
||||
5800 88 0.62103092 0.066489286 0.060222709 0.035282967
|
||||
5900 88 0.62345455 0.069029715 0.0628021 0.035017077
|
||||
6000 85 0.64509294 0.070959095 0.06202824 0.035049999
|
||||
6100 84 0.65441054 0.07348095 0.062757785 0.035609875
|
||||
6200 81 0.67575597 0.07301839 0.059946946 0.034382094
|
||||
6300 80 0.68384452 0.073501833 0.059856228 0.03514656
|
||||
6400 78 0.7013697 0.075265575 0.059538181 0.034094416
|
||||
6500 78 0.70386686 0.077899568 0.06122273 0.034195388
|
||||
6600 77 0.7136876 0.079571915 0.062523938 0.034262144
|
||||
6700 75 0.73326389 0.082149266 0.061775684 0.036880856
|
||||
6800 74 0.74125199 0.081163997 0.060577178 0.034065559
|
||||
6900 73 0.74794382 0.078542284 0.058822059 0.034265565
|
||||
7000 72 0.75869051 0.0799395 0.060173988 0.03372964
|
||||
7100 71 0.76478565 0.076119935 0.058622864 0.033529799
|
||||
7200 70 0.77534407 0.076733249 0.059389913 0.033359627
|
||||
7300 69 0.78737597 0.078601354 0.060601057 0.03387736
|
||||
7400 68 0.79334599 0.073700033 0.058720823 0.033449993
|
||||
7500 65 0.82643666 0.07301444 0.057725758 0.033058102
|
||||
7600 64 0.83647393 0.070962335 0.057196688 0.034325146
|
||||
7700 64 0.83136046 0.065502199 0.054505995 0.033284476
|
||||
7800 63 0.84413416 0.065952385 0.055713645 0.032527019
|
||||
7900 63 0.84474799 0.066608547 0.057188344 0.032380197
|
||||
8000 63 0.84601678 0.067964843 0.059162055 0.035623321
|
||||
8100 62 0.85442995 0.063318376 0.056917075 0.033794671
|
||||
8200 60 0.87886485 0.060762667 0.053902381 0.031778389
|
||||
8300 60 0.88023598 0.062233516 0.05567968 0.032190408
|
||||
8400 58 0.91091634 0.064361351 0.056842653 0.031999455
|
||||
8500 58 0.91076207 0.064195441 0.056598399 0.031981767
|
||||
8600 57 0.92732215 0.065749251 0.058085176 0.031964139
|
||||
8700 56 0.94060812 0.063183664 0.057132444 0.031795486
|
||||
8800 54 0.97102642 0.060271847 0.054931651 0.031534156
|
||||
8900 53 0.98835079 0.06006587 0.054799498 0.031664682
|
||||
9000 52 1.0052014 0.058599798 0.0548155 0.031347041
|
||||
9100 51 1.0232141 0.057600571 0.054358272 0.031293028
|
||||
9200 51 1.0234203 0.057824665 0.055491376 0.031272133
|
||||
9300 50 1.0422387 0.056858101 0.055336743 0.031184651
|
||||
9400 49 1.0607968 0.054708372 0.054237694 0.031018741
|
||||
9500 49 1.0598447 0.053669652 0.05412067 0.030987958
|
||||
9600 47 1.0997672 0.049481209 0.049207618 0.030830628
|
||||
9700 47 1.1009351 0.050760379 0.05160771 0.030681632
|
||||
9800 46 1.1225281 0.048846024 0.052582727 0.030659518
|
||||
9900 46 1.1235541 0.049972117 0.054322137 0.030823675
|
||||
10000 43 1.1964897 0.045828636 0.049253726 0.03048984
|
||||
Loop time of 0.211297 on 1 procs for 5000 steps with 43 atoms
|
||||
|
||||
Performance: 10222583.456 tau/day, 23663.388 timesteps/s, 1.018 Matom-step/s
|
||||
96.4% 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.021317 | 0.021317 | 0.021317 | 0.0 | 10.09
|
||||
Neigh | 0.0047466 | 0.0047466 | 0.0047466 | 0.0 | 2.25
|
||||
Comm | 0.00037942 | 0.00037942 | 0.00037942 | 0.0 | 0.18
|
||||
Output | 0.1732 | 0.1732 | 0.1732 | 0.0 | 81.97
|
||||
Modify | 0.010709 | 0.010709 | 0.010709 | 0.0 | 5.07
|
||||
Other | | 0.0009465 | | | 0.45
|
||||
|
||||
Nlocal: 43 ave 43 max 43 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
|
||||
Neighbor list builds = 208
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
39 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.58 | 13.58 | 13.58 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 43 0.041464004 0.045828636 0.049253726 0.002992911
|
||||
10100 43 0.01536718 0.016984778 0.018346335 0.0026107883
|
||||
10200 43 0.013276935 0.014674507 0.018130285 0.0032805934
|
||||
10300 43 0.012643213 0.013974077 0.019027228 0.0020933246
|
||||
10400 43 0.012779466 0.014124673 0.019370488 0.0026402198
|
||||
10500 43 0.012399341 0.013704535 0.019539407 0.0022259887
|
||||
10600 43 0.012201003 0.013485319 0.018098349 0.0024634333
|
||||
10700 43 0.012655256 0.013987388 0.019496323 0.002221395
|
||||
10800 43 0.012579162 0.013903285 0.019865363 0.0032621089
|
||||
10900 43 0.012810408 0.014158872 0.020704867 0.0024564532
|
||||
11000 43 0.013492114 0.014912337 0.020426966 0.0021076994
|
||||
11100 43 0.012081727 0.013353488 0.019941305 0.0027605259
|
||||
11200 43 0.011157364 0.012331823 0.019789593 0.0022805894
|
||||
11300 43 0.011311656 0.012502357 0.020672585 0.0045512862
|
||||
11400 43 0.010835381 0.011975948 0.019984802 0.002500184
|
||||
11500 43 0.010883617 0.012029261 0.020161482 0.0024288947
|
||||
11600 43 0.010601773 0.011717749 0.02043478 0.002518671
|
||||
11700 43 0.010652376 0.011773679 0.020877142 0.0047191948
|
||||
11800 43 0.010586149 0.01170048 0.021045412 0.0029958449
|
||||
11900 42 0.010310675 0.011425342 0.020890641 0.0041299678
|
||||
12000 42 0.0096193697 0.010659302 0.01734171 0.0055638559
|
||||
12100 42 0.0090012199 0.0099743248 0.015925878 0.0062568296
|
||||
12200 42 0.0092694202 0.01027152 0.016223404 0.0031650129
|
||||
12300 41 0.009275497 0.010306108 0.016491126 0.0051047425
|
||||
12400 40 0.010347045 0.011529564 0.01780755 0.0020187837
|
||||
12500 40 0.010872959 0.012115582 0.018095787 0.0017574207
|
||||
12600 39 0.0094147621 0.010522381 0.018210318 0.0017051826
|
||||
12700 39 0.0086581705 0.0096767788 0.018566587 0.0018394808
|
||||
12800 39 0.0082190204 0.009185964 0.018898421 0.003442822
|
||||
12900 39 0.0078768039 0.0088034867 0.019645193 0.0024525382
|
||||
13000 39 0.0066934943 0.0074809642 0.016840831 0.0042565543
|
||||
13100 38 0.0063530854 0.0071231563 0.015836167 0.0033482203
|
||||
13200 38 0.0067586397 0.0075778688 0.016370483 0.0027718974
|
||||
13300 37 0.0062831006 0.0070684882 0.016770756 0.0028166814
|
||||
13400 36 0.005492839 0.0062015924 0.01655756 0.0041562248
|
||||
13500 36 0.0052681628 0.0059479258 0.011983298 0.0035740396
|
||||
13600 36 0.0053786817 0.0060727051 0.011670978 0.004098456
|
||||
13700 36 0.0055059193 0.0062163605 0.01170773 0.0023640523
|
||||
13800 35 0.0055296574 0.0062669451 0.0119576 0.0031972222
|
||||
13900 34 0.0052354859 0.0059576219 0.012092776 0.0016695231
|
||||
14000 33 0.0050682191 0.0057922504 0.01250025 0.0015032079
|
||||
14100 33 0.0051315263 0.0058646015 0.01289725 0.0014073536
|
||||
14200 33 0.005254278 0.0060048892 0.012894635 0.0014096146
|
||||
14300 33 0.0057832225 0.0066093971 0.013867573 0.001419376
|
||||
14400 33 0.0058060441 0.006635479 0.014475826 0.0025855623
|
||||
14500 33 0.0058141643 0.0066447593 0.015171174 0.0024244841
|
||||
14600 32 0.0055995745 0.0064291411 0.016022968 0.0014230432
|
||||
14700 32 0.0055988198 0.0064282746 0.016907696 0.0015101902
|
||||
14800 32 0.0057678876 0.0066223895 0.017482798 0.0016956915
|
||||
14900 32 0.0057096482 0.006555522 0.018478553 0.0019276435
|
||||
15000 32 0.0057085079 0.0065542128 0.017574244 0.0021196367
|
||||
Loop time of 0.172151 on 1 procs for 5000 steps with 32 atoms
|
||||
|
||||
Performance: 12547152.387 tau/day, 29044.334 timesteps/s, 929.419 katom-step/s
|
||||
90.6% 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.010881 | 0.010881 | 0.010881 | 0.0 | 6.32
|
||||
Neigh | 0.00081386 | 0.00081386 | 0.00081386 | 0.0 | 0.47
|
||||
Comm | 0.00028458 | 0.00028458 | 0.00028458 | 0.0 | 0.17
|
||||
Output | 0.15425 | 0.15425 | 0.15425 | 0.0 | 89.60
|
||||
Modify | 0.0052213 | 0.0052213 | 0.0052213 | 0.0 | 3.03
|
||||
Other | | 0.0006992 | | | 0.41
|
||||
|
||||
Nlocal: 32 ave 32 max 32 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
|
||||
Neighbor list builds = 73
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
346
examples/gransurf/log.1Jul24.tri.gran.surf.g++.4
Normal file
346
examples/gransurf/log.1Jul24.tri.gran.surf.g++.4
Normal file
@ -0,0 +1,346 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
molecule tris surf.tri
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri plane
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
4 triangles
|
||||
fix 20 all surface/local tris
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.47 | 12.69 | 13.35 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95089817 1.0393538 0.51608705 0.025335722
|
||||
600 48 0.83949391 0.91758637 0.46172806 0.022515854
|
||||
700 48 0.8600588 0.94006427 0.48254195 0.046349308
|
||||
800 48 0.72636179 0.79393033 0.42561821 0.02213745
|
||||
900 72 0.68028474 0.72089876 0.37868178 0.028124504
|
||||
1000 72 0.59827548 0.63399342 0.33666552 0.057932603
|
||||
1100 72 0.60134295 0.63724402 0.3383098 0.025565346
|
||||
1200 72 0.58062156 0.61528554 0.33134629 0.031222266
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.43299069 0.45289831 0.24603739 0.033378543
|
||||
1400 92 0.48785257 0.51028258 0.27462447 0.029606478
|
||||
1500 92 0.50410905 0.52728648 0.28580371 0.031570548
|
||||
1600 92 0.44335358 0.46373765 0.25474076 0.025856762
|
||||
1700 104 0.31258594 0.32521568 0.18562847 0.056917788
|
||||
1800 104 0.29652255 0.30850326 0.17882758 0.036853847
|
||||
1900 104 0.2438002 0.25365071 0.15147734 0.027067985
|
||||
2000 104 0.20778515 0.21618051 0.12797216 0.024491012
|
||||
2100 104 0.23803938 0.24765713 0.13878356 0.018557518
|
||||
2200 104 0.22477903 0.23386101 0.13254455 0.034204387
|
||||
2300 103 0.11028018 0.11478141 0.071880246 0.023108123
|
||||
2400 103 0.051939196 0.054059163 0.042383035 0.0100614
|
||||
2500 103 0.040442247 0.042092951 0.032749381 0.01046781
|
||||
2600 102 0.034504426 0.035927289 0.027149368 0.012010718
|
||||
2700 102 0.029679791 0.0309037 0.023036586 0.010355503
|
||||
2800 102 0.023702803 0.024680238 0.018826345 0.007910395
|
||||
2900 102 0.019561868 0.020368542 0.015101556 0.010178779
|
||||
3000 101 0.010990893 0.011448847 0.0094754992 0.0063202976
|
||||
3100 101 0.010529472 0.0109682 0.0089009784 0.007388411
|
||||
3200 101 0.0084987177 0.0088528309 0.0067377904 0.0075443377
|
||||
3300 101 0.004926689 0.0051319677 0.0045207553 0.0078470774
|
||||
3400 101 0.0028833468 0.0030034862 0.0028132775 0.007922942
|
||||
3500 101 0.0026928316 0.0028050329 0.0026351323 0.0069014836
|
||||
3600 100 0.0022956296 0.0023922877 0.0022701552 0.0059851937
|
||||
3700 100 0.0021025959 0.0021911262 0.0021280497 0.0060105187
|
||||
3800 100 0.0018494532 0.0019273249 0.0018855471 0.0061456458
|
||||
3900 100 0.0016137385 0.0016816854 0.0017223036 0.0066454899
|
||||
4000 100 0.0013124128 0.0013676723 0.0014840612 0.0062470481
|
||||
4100 100 0.0012105075 0.0012614763 0.0014645791 0.0057688838
|
||||
4200 100 0.0011433138 0.0011914533 0.0014435934 0.0059579374
|
||||
4300 100 0.00098204031 0.0010233894 0.0012522874 0.0059816181
|
||||
4400 100 0.00076296239 0.00079508712 0.0009721438 0.0060246257
|
||||
4500 100 0.00066335366 0.00069128434 0.00091049427 0.006214887
|
||||
4600 100 0.00062039452 0.0006465164 0.00082139977 0.0060745906
|
||||
4700 100 0.00062069669 0.00064683129 0.00083492397 0.0064522652
|
||||
4800 100 0.00050639953 0.00052772161 0.00074517777 0.0062114309
|
||||
4900 100 0.00048181752 0.00050210458 0.00072773699 0.0061746147
|
||||
5000 100 0.00045281738 0.00047188337 0.00072834743 0.0067103321
|
||||
Loop time of 0.313085 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 6899081.431 tau/day, 15970.096 timesteps/s, 1.597 Matom-step/s
|
||||
91.8% 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.0085396 | 0.008862 | 0.0089969 | 0.2 | 2.83
|
||||
Neigh | 0.0031142 | 0.0032591 | 0.0034769 | 0.3 | 1.04
|
||||
Comm | 0.050942 | 0.051859 | 0.053093 | 0.3 | 16.56
|
||||
Output | 0.1382 | 0.17924 | 0.23814 | 9.2 | 57.25
|
||||
Modify | 0.0066482 | 0.011589 | 0.015218 | 3.2 | 3.70
|
||||
Other | | 0.05827 | | | 18.61
|
||||
|
||||
Nlocal: 25 ave 27 max 23 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 75 ave 77 max 73 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.59 | 14.59 | 14.59 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00045281738 0.00047188337 0.00072834743 0.0066020848
|
||||
5100 100 0.51860744 0.029800601 0.029304106 0.051905706
|
||||
5200 98 0.53862917 0.040171507 0.047791716 0.050757979
|
||||
5300 96 0.55112647 0.042263021 0.050195999 0.04601151
|
||||
5400 93 0.56728592 0.04180938 0.050815028 0.037450075
|
||||
5500 93 0.56916149 0.043770195 0.053081459 0.03605744
|
||||
5600 91 0.58284551 0.045872284 0.05148537 0.033849288
|
||||
5700 90 0.59267876 0.049850941 0.05375731 0.035005112
|
||||
5800 86 0.61680698 0.04836437 0.052582503 0.033850751
|
||||
5900 85 0.62574796 0.050646859 0.054238313 0.034443643
|
||||
6000 82 0.64727841 0.050889245 0.052494508 0.033866734
|
||||
6100 80 0.66364069 0.052220462 0.052387252 0.033487505
|
||||
6200 78 0.67959846 0.052301399 0.050336285 0.033168524
|
||||
6300 78 0.6815537 0.054363773 0.051168788 0.033400067
|
||||
6400 76 0.69757373 0.053619014 0.048730817 0.033079249
|
||||
6500 76 0.69960717 0.055767015 0.050448147 0.034190142
|
||||
6600 75 0.71046572 0.05804834 0.050353278 0.033120738
|
||||
6700 73 0.73004213 0.059587557 0.050356776 0.033203715
|
||||
6800 72 0.73955244 0.059658858 0.049165521 0.033090601
|
||||
6900 72 0.73984252 0.05996626 0.04893239 0.03538438
|
||||
7000 72 0.73855905 0.05860616 0.048218057 0.032977368
|
||||
7100 71 0.74996747 0.060403683 0.049738231 0.032942299
|
||||
7200 71 0.74958163 0.059994462 0.04984795 0.034576756
|
||||
7300 71 0.74958014 0.059992886 0.050595934 0.033560699
|
||||
7400 69 0.77040618 0.060570951 0.05074398 0.032817955
|
||||
7500 68 0.78190055 0.061527899 0.051576944 0.032829232
|
||||
7600 67 0.79252938 0.061223545 0.051664985 0.033139179
|
||||
7700 67 0.79257577 0.061272925 0.052020235 0.032808213
|
||||
7800 67 0.79235064 0.06103327 0.052983733 0.032695163
|
||||
7900 65 0.81235659 0.057995702 0.051797211 0.032371751
|
||||
8000 65 0.81047528 0.05598897 0.051741533 0.032279411
|
||||
8100 63 0.83302221 0.054074089 0.049909885 0.03200106
|
||||
8200 62 0.84514204 0.053378682 0.050396436 0.032363269
|
||||
8300 61 0.85723702 0.052198956 0.049950193 0.031878528
|
||||
8400 60 0.86997524 0.051226536 0.050780002 0.031636653
|
||||
8500 60 0.86954615 0.050766237 0.051169838 0.036559517
|
||||
8600 58 0.89936909 0.051942618 0.050191748 0.037496085
|
||||
8700 58 0.89897047 0.05151391 0.051173535 0.034671574
|
||||
8800 56 0.93013263 0.051886568 0.052056826 0.031441238
|
||||
8900 55 0.94599772 0.051455942 0.052973742 0.034207698
|
||||
9000 53 0.97967117 0.050662944 0.052877672 0.035867184
|
||||
9100 51 1.0142291 0.047834254 0.050461469 0.032649796
|
||||
9200 50 1.033876 0.047752147 0.050703363 0.030822387
|
||||
9300 49 1.0547579 0.04812047 0.050590947 0.030893945
|
||||
9400 49 1.0558051 0.049262873 0.052436796 0.030873639
|
||||
9500 48 1.0767984 0.048801088 0.051653283 0.030786358
|
||||
9600 46 1.1213506 0.047553612 0.049643046 0.030642108
|
||||
9700 46 1.1227493 0.049088768 0.051778335 0.030603423
|
||||
9800 45 1.1452146 0.046959031 0.051250902 0.032613968
|
||||
9900 45 1.1460384 0.047865295 0.05426893 0.036176412
|
||||
10000 44 1.1711564 0.047401187 0.054529055 0.033327294
|
||||
Loop time of 0.308457 on 4 procs for 5000 steps with 44 atoms
|
||||
|
||||
Performance: 7002603.045 tau/day, 16209.729 timesteps/s, 713.228 katom-step/s
|
||||
92.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.0076273 | 0.0083433 | 0.0095898 | 0.8 | 2.70
|
||||
Neigh | 0.0016764 | 0.0017433 | 0.0018123 | 0.1 | 0.57
|
||||
Comm | 0.041654 | 0.043513 | 0.044442 | 0.5 | 14.11
|
||||
Output | 0.13868 | 0.18445 | 0.24355 | 9.3 | 59.80
|
||||
Modify | 0.0052129 | 0.0055373 | 0.0062783 | 0.6 | 1.80
|
||||
Other | | 0.06487 | | | 21.03
|
||||
|
||||
Nlocal: 11 ave 14 max 9 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Nghost: 33 ave 35 max 30 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 1 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 181
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
40 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.71 | 13.71 | 13.72 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 44 0.042991774 0.047401187 0.054529055 0.005835563
|
||||
10100 44 0.017515048 0.019311463 0.022242125 0.0054597963
|
||||
10200 44 0.016651387 0.018359221 0.021768919 0.007426361
|
||||
10300 43 0.016651808 0.01840463 0.019841598 0.0053906984
|
||||
10400 43 0.014274557 0.015777142 0.019217385 0.0055709619
|
||||
10500 43 0.013716602 0.015160455 0.019335926 0.005533805
|
||||
10600 43 0.012929871 0.01429091 0.019961256 0.0055113819
|
||||
10700 43 0.013249241 0.014643898 0.020488568 0.0057553732
|
||||
10800 43 0.010645141 0.011765682 0.020018164 0.0070545501
|
||||
10900 43 0.010177915 0.011249275 0.019638619 0.0090787871
|
||||
11000 43 0.010174433 0.011245426 0.019566189 0.0093512809
|
||||
11100 43 0.011130765 0.012302425 0.020051358 0.0093282449
|
||||
11200 42 0.011178858 0.012387383 0.020957174 0.0087638823
|
||||
11300 42 0.011335071 0.012560484 0.019605652 0.0085884944
|
||||
11400 42 0.00892055 0.0098849338 0.017254178 0.0115493
|
||||
11500 42 0.0087305707 0.0096744162 0.016920618 0.0072562207
|
||||
11600 42 0.0085763835 0.0095035601 0.016735424 0.0073524491
|
||||
11700 42 0.0091445266 0.010133124 0.016871267 0.0053996766
|
||||
11800 41 0.0079999518 0.0088888353 0.016813209 0.0052166459
|
||||
11900 41 0.0079421236 0.0088245818 0.01747319 0.0051109817
|
||||
12000 41 0.0075832184 0.0084257982 0.016889505 0.0064088798
|
||||
12100 40 0.0080007752 0.0089151496 0.017619052 0.005204876
|
||||
12200 40 0.0084961277 0.0094671138 0.0182733 0.007442812
|
||||
12300 40 0.0098721644 0.011000412 0.019497465 0.0058554546
|
||||
12400 39 0.0073872276 0.0082563132 0.017957824 0.0074206067
|
||||
12500 39 0.0074959064 0.0083777777 0.018236089 0.0083410154
|
||||
12600 39 0.0079646034 0.0089016156 0.018386853 0.010366406
|
||||
12700 38 0.007907691 0.008866199 0.013301549 0.002231989
|
||||
12800 37 0.0076214799 0.0085741649 0.013938502 0.0020598491
|
||||
12900 36 0.00691836 0.0078110516 0.013261785 0.0019344109
|
||||
13000 36 0.0063774393 0.0072003347 0.011546252 0.0021781987
|
||||
13100 35 0.0065688938 0.0074447463 0.011179758 0.0018476982
|
||||
13200 35 0.006608481 0.0074896118 0.011296542 0.0028753707
|
||||
13300 35 0.0070429905 0.007982056 0.011580455 0.0017137712
|
||||
13400 35 0.0069974233 0.007930413 0.011637164 0.0017013866
|
||||
13500 35 0.0070448152 0.0079841239 0.012227322 0.0016768457
|
||||
13600 35 0.0070302138 0.0079675757 0.012851645 0.0016524347
|
||||
13700 35 0.0070610122 0.0080024805 0.013351059 0.0016599408
|
||||
13800 35 0.0068527095 0.0077664041 0.013322016 0.0021396807
|
||||
13900 35 0.0068663277 0.0077818381 0.013705023 0.0016560774
|
||||
14000 33 0.0062802433 0.0071774209 0.013989711 0.0022456467
|
||||
14100 33 0.0061284367 0.0070039277 0.014073612 0.0018742857
|
||||
14200 33 0.0057433035 0.0065637755 0.014047397 0.0020392999
|
||||
14300 33 0.0063090214 0.0072103102 0.014753175 0.0021809345
|
||||
14400 33 0.0063433397 0.0072495311 0.015426943 0.002500832
|
||||
14500 32 0.0061158095 0.0070218553 0.015950673 0.0027020781
|
||||
14600 32 0.0062066544 0.0071261588 0.016604099 0.0030376405
|
||||
14700 32 0.0065514445 0.0075220288 0.017446154 0.0034215744
|
||||
14800 32 0.0064362118 0.0073897247 0.018112867 0.0060394662
|
||||
14900 32 0.0062716467 0.0072007796 0.018677808 0.0042404649
|
||||
15000 32 0.0062889642 0.0072206626 0.019444241 0.0047535052
|
||||
Loop time of 0.260637 on 4 procs for 5000 steps with 32 atoms
|
||||
|
||||
Performance: 8287379.423 tau/day, 19183.749 timesteps/s, 613.880 katom-step/s
|
||||
90.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.0026733 | 0.0039641 | 0.0061372 | 2.1 | 1.52
|
||||
Neigh | 0.00031681 | 0.00038237 | 0.00048999 | 0.0 | 0.15
|
||||
Comm | 0.026111 | 0.028098 | 0.029126 | 0.7 | 10.78
|
||||
Output | 0.12793 | 0.16614 | 0.22099 | 8.9 | 63.74
|
||||
Modify | 0.0021853 | 0.0026076 | 0.0032592 | 0.8 | 1.00
|
||||
Other | | 0.05944 | | | 22.81
|
||||
|
||||
Nlocal: 8 ave 13 max 6 min
|
||||
Histogram: 2 1 0 0 0 0 0 0 0 1
|
||||
Nghost: 24 ave 26 max 19 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 1 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
338
examples/gransurf/log.1Jul24.tri.gran.surf.stl.g++.1
Normal file
338
examples/gransurf/log.1Jul24.tri.gran.surf.stl.g++.1
Normal file
@ -0,0 +1,338 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
fix 20 all surface/local surf.tri.stl
|
||||
Reading STL object STL version of surf.tri from text file surf.tri.stl
|
||||
set type 1 type 2
|
||||
Setting atom values ...
|
||||
4 settings made for type
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.33 | 13.33 | 13.33 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95089817 1.0393538 0.51608705 0.025335722
|
||||
600 48 0.83949391 0.91758637 0.46172806 0.022515854
|
||||
700 48 0.8600588 0.94006427 0.48254195 0.046349308
|
||||
800 48 0.72636179 0.79393033 0.42561821 0.02213745
|
||||
900 72 0.68028474 0.72089876 0.37868178 0.028124504
|
||||
1000 72 0.59827548 0.63399342 0.33666552 0.057932603
|
||||
1100 72 0.60134295 0.63724402 0.3383098 0.025565346
|
||||
1200 72 0.58062156 0.61528554 0.33134629 0.031222266
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.43299069 0.45289831 0.24603739 0.033378543
|
||||
1400 92 0.48785257 0.51028258 0.27462447 0.029606478
|
||||
1500 92 0.50410905 0.52728648 0.28580371 0.031570548
|
||||
1600 92 0.44335358 0.46373765 0.25474076 0.025856762
|
||||
1700 104 0.31258594 0.32521568 0.18562847 0.056917788
|
||||
1800 104 0.29652255 0.30850326 0.17882758 0.036853847
|
||||
1900 104 0.2438002 0.25365071 0.15147734 0.027067985
|
||||
2000 104 0.20778515 0.21618051 0.12797216 0.024491014
|
||||
2100 104 0.23803938 0.24765713 0.13878356 0.018557519
|
||||
2200 104 0.22477903 0.23386101 0.13254455 0.034204374
|
||||
2300 103 0.11028018 0.11478141 0.071880248 0.023107934
|
||||
2400 103 0.051939416 0.054059392 0.04238437 0.010076125
|
||||
2500 103 0.04046389 0.042115477 0.03276739 0.0092675482
|
||||
2600 102 0.034504146 0.035926998 0.027152703 0.012043982
|
||||
2700 102 0.029660748 0.030883871 0.023043461 0.0098675596
|
||||
2800 102 0.023675472 0.02465178 0.018814934 0.0079223517
|
||||
2900 102 0.01955555 0.020361964 0.015095009 0.010178019
|
||||
3000 101 0.010976926 0.011434298 0.0094599476 0.0062989926
|
||||
3100 101 0.010404873 0.01083841 0.0088413578 0.006904568
|
||||
3200 101 0.0084790802 0.0088323752 0.0067474787 0.0078181584
|
||||
3300 101 0.0049651339 0.0051720145 0.0045655092 0.0077852556
|
||||
3400 101 0.0028770081 0.0029968834 0.0028180577 0.0065531061
|
||||
3500 101 0.0026603851 0.0027712345 0.0026301508 0.0066265532
|
||||
3600 100 0.0022879435 0.002384278 0.0022868891 0.005946377
|
||||
3700 100 0.0020797371 0.002167305 0.0021366338 0.0060275426
|
||||
3800 100 0.0018223254 0.0018990549 0.0018542925 0.0058665012
|
||||
3900 100 0.0016056933 0.0016733014 0.0017380009 0.0065755667
|
||||
4000 100 0.0012764017 0.001330145 0.0014831053 0.0057002441
|
||||
4100 100 0.0011732772 0.0012226783 0.0014520833 0.0058997102
|
||||
4200 100 0.0011509224 0.0011993823 0.0014499925 0.005891705
|
||||
4300 100 0.00093450709 0.00097385475 0.0011305405 0.0060755638
|
||||
4400 100 0.00073710728 0.00076814338 0.00093491029 0.005994252
|
||||
4500 100 0.00066950467 0.00069769434 0.00081329183 0.0060209889
|
||||
4600 100 0.00067057619 0.00069881097 0.00081870364 0.0066002598
|
||||
4700 100 0.00061522957 0.00064113397 0.0007867969 0.0061000762
|
||||
4800 100 0.00057127674 0.0005953305 0.00078435449 0.006075934
|
||||
4900 100 0.00048538112 0.00050581822 0.00067082262 0.0061360807
|
||||
5000 100 0.00049531306 0.00051616835 0.00070658811 0.0061425578
|
||||
Loop time of 0.239342 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 9024730.054 tau/day, 20890.579 timesteps/s, 2.089 Matom-step/s
|
||||
88.6% 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.026886 | 0.026886 | 0.026886 | 0.0 | 11.23
|
||||
Neigh | 0.0086276 | 0.0086276 | 0.0086276 | 0.0 | 3.60
|
||||
Comm | 0.00041811 | 0.00041811 | 0.00041811 | 0.0 | 0.17
|
||||
Output | 0.19004 | 0.19004 | 0.19004 | 0.0 | 79.40
|
||||
Modify | 0.012242 | 0.012242 | 0.012242 | 0.0 | 5.11
|
||||
Other | | 0.001133 | | | 0.47
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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
|
||||
Neighbor list builds = 320
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.46 | 14.46 | 14.46 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00049531306 0.00051616835 0.00070658811 0.0061401156
|
||||
5100 100 0.51797813 0.029144789 0.028561434 0.061796302
|
||||
5200 99 0.53766867 0.044472871 0.048736594 0.052595853
|
||||
5300 98 0.54821886 0.050173651 0.052878851 0.060444985
|
||||
5400 95 0.56483365 0.050925371 0.053737351 0.057837587
|
||||
5500 95 0.56809688 0.054333638 0.055612067 0.043728998
|
||||
5600 92 0.58741732 0.056826396 0.056374971 0.039138605
|
||||
5700 92 0.59268005 0.062331088 0.059265481 0.035680319
|
||||
5800 88 0.62103092 0.066489286 0.060222709 0.035282967
|
||||
5900 88 0.62345455 0.069029715 0.0628021 0.035017077
|
||||
6000 85 0.64509294 0.070959095 0.06202824 0.035049999
|
||||
6100 84 0.65441054 0.07348095 0.062757785 0.035609875
|
||||
6200 81 0.67575597 0.07301839 0.059946946 0.034382094
|
||||
6300 80 0.68384452 0.073501833 0.059856228 0.03514656
|
||||
6400 78 0.7013697 0.075265575 0.059538181 0.034094416
|
||||
6500 78 0.70386686 0.077899568 0.06122273 0.034195388
|
||||
6600 77 0.7136876 0.079571915 0.062523938 0.034262144
|
||||
6700 75 0.73326389 0.082149266 0.061775684 0.036880856
|
||||
6800 74 0.74125199 0.081163997 0.060577178 0.034065559
|
||||
6900 73 0.74794382 0.078542284 0.058822059 0.034265565
|
||||
7000 72 0.75869051 0.0799395 0.060173988 0.03372964
|
||||
7100 71 0.76478565 0.076119935 0.058622864 0.033529799
|
||||
7200 70 0.77534407 0.076733249 0.059389913 0.033359627
|
||||
7300 69 0.78737597 0.078601354 0.060601057 0.03387736
|
||||
7400 68 0.79334599 0.073700033 0.058720823 0.033449993
|
||||
7500 65 0.82643666 0.07301444 0.057725758 0.033058102
|
||||
7600 64 0.83647393 0.070962335 0.057196688 0.034325146
|
||||
7700 64 0.83136046 0.065502199 0.054505995 0.033284476
|
||||
7800 63 0.84413416 0.065952385 0.055713645 0.032527019
|
||||
7900 63 0.84474799 0.066608547 0.057188344 0.032380197
|
||||
8000 63 0.84601678 0.067964843 0.059162055 0.035623321
|
||||
8100 62 0.85442995 0.063318376 0.056917075 0.033794671
|
||||
8200 60 0.87886485 0.060762667 0.053902381 0.031778389
|
||||
8300 60 0.88023598 0.062233516 0.05567968 0.032190408
|
||||
8400 58 0.91091634 0.064361351 0.056842653 0.031999455
|
||||
8500 58 0.91076207 0.064195441 0.056598399 0.031981767
|
||||
8600 57 0.92732215 0.065749251 0.058085176 0.031964139
|
||||
8700 56 0.94060812 0.063183664 0.057132444 0.031795486
|
||||
8800 54 0.97102642 0.060271847 0.054931651 0.031534156
|
||||
8900 53 0.98835079 0.06006587 0.054799498 0.031664682
|
||||
9000 52 1.0052014 0.058599798 0.0548155 0.031347041
|
||||
9100 51 1.0232141 0.057600571 0.054358272 0.031293028
|
||||
9200 51 1.0234203 0.057824665 0.055491376 0.031272133
|
||||
9300 50 1.0422387 0.056858101 0.055336743 0.031184651
|
||||
9400 49 1.0607968 0.054708372 0.054237694 0.031018741
|
||||
9500 49 1.0598447 0.053669652 0.05412067 0.030987958
|
||||
9600 47 1.0997672 0.049481209 0.049207618 0.030830628
|
||||
9700 47 1.1009351 0.050760379 0.05160771 0.030681632
|
||||
9800 46 1.1225281 0.048846024 0.052582727 0.030659518
|
||||
9900 46 1.1235541 0.049972117 0.054322137 0.030823675
|
||||
10000 43 1.1964897 0.045828636 0.049253726 0.03048984
|
||||
Loop time of 0.22501 on 1 procs for 5000 steps with 43 atoms
|
||||
|
||||
Performance: 9599559.914 tau/day, 22221.204 timesteps/s, 955.512 katom-step/s
|
||||
89.5% 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.023112 | 0.023112 | 0.023112 | 0.0 | 10.27
|
||||
Neigh | 0.0050165 | 0.0050165 | 0.0050165 | 0.0 | 2.23
|
||||
Comm | 0.00039113 | 0.00039113 | 0.00039113 | 0.0 | 0.17
|
||||
Output | 0.18353 | 0.18353 | 0.18353 | 0.0 | 81.56
|
||||
Modify | 0.011974 | 0.011974 | 0.011974 | 0.0 | 5.32
|
||||
Other | | 0.0009874 | | | 0.44
|
||||
|
||||
Nlocal: 43 ave 43 max 43 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
|
||||
Neighbor list builds = 208
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
39 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.58 | 13.58 | 13.58 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 43 0.041464004 0.045828636 0.049253726 0.002992911
|
||||
10100 43 0.01536718 0.016984778 0.018346335 0.0026107883
|
||||
10200 43 0.013276935 0.014674507 0.018130285 0.0032805934
|
||||
10300 43 0.012643213 0.013974077 0.019027228 0.0020933246
|
||||
10400 43 0.012779466 0.014124673 0.019370488 0.0026402198
|
||||
10500 43 0.012399341 0.013704535 0.019539407 0.0022259887
|
||||
10600 43 0.012201003 0.013485319 0.018098349 0.0024634333
|
||||
10700 43 0.012655256 0.013987388 0.019496323 0.002221395
|
||||
10800 43 0.012579162 0.013903285 0.019865363 0.0032621089
|
||||
10900 43 0.012810408 0.014158872 0.020704867 0.0024564532
|
||||
11000 43 0.013492114 0.014912337 0.020426966 0.0021076994
|
||||
11100 43 0.012081727 0.013353488 0.019941305 0.0027605259
|
||||
11200 43 0.011157364 0.012331823 0.019789593 0.0022805894
|
||||
11300 43 0.011311656 0.012502357 0.020672585 0.0045512862
|
||||
11400 43 0.010835381 0.011975948 0.019984802 0.002500184
|
||||
11500 43 0.010883617 0.012029261 0.020161482 0.0024288947
|
||||
11600 43 0.010601773 0.011717749 0.02043478 0.002518671
|
||||
11700 43 0.010652376 0.011773679 0.020877142 0.0047191948
|
||||
11800 43 0.010586149 0.01170048 0.021045412 0.0029958449
|
||||
11900 42 0.010310675 0.011425342 0.020890641 0.0041299678
|
||||
12000 42 0.0096193697 0.010659302 0.01734171 0.0055638559
|
||||
12100 42 0.0090012199 0.0099743248 0.015925878 0.0062568296
|
||||
12200 42 0.0092694202 0.01027152 0.016223404 0.0031650129
|
||||
12300 41 0.009275497 0.010306108 0.016491126 0.0051047425
|
||||
12400 40 0.010347045 0.011529564 0.01780755 0.0020187837
|
||||
12500 40 0.010872959 0.012115582 0.018095787 0.0017574207
|
||||
12600 39 0.0094147621 0.010522381 0.018210318 0.0017051826
|
||||
12700 39 0.0086581705 0.0096767788 0.018566587 0.0018394808
|
||||
12800 39 0.0082190204 0.009185964 0.018898421 0.003442822
|
||||
12900 39 0.0078768039 0.0088034867 0.019645193 0.0024525382
|
||||
13000 39 0.0066934943 0.0074809642 0.016840831 0.0042565543
|
||||
13100 38 0.0063530854 0.0071231563 0.015836167 0.0033482203
|
||||
13200 38 0.0067586397 0.0075778688 0.016370483 0.0027718974
|
||||
13300 37 0.0062831006 0.0070684882 0.016770756 0.0028166814
|
||||
13400 36 0.005492839 0.0062015924 0.01655756 0.0041562248
|
||||
13500 36 0.0052681628 0.0059479258 0.011983298 0.0035740396
|
||||
13600 36 0.0053786817 0.0060727051 0.011670978 0.004098456
|
||||
13700 36 0.0055059193 0.0062163605 0.01170773 0.0023640523
|
||||
13800 35 0.0055296574 0.0062669451 0.0119576 0.0031972222
|
||||
13900 34 0.0052354859 0.0059576219 0.012092776 0.0016695231
|
||||
14000 33 0.0050682191 0.0057922504 0.01250025 0.0015032079
|
||||
14100 33 0.0051315263 0.0058646015 0.01289725 0.0014073536
|
||||
14200 33 0.005254278 0.0060048892 0.012894635 0.0014096146
|
||||
14300 33 0.0057832225 0.0066093971 0.013867573 0.001419376
|
||||
14400 33 0.0058060441 0.006635479 0.014475826 0.0025855623
|
||||
14500 33 0.0058141643 0.0066447593 0.015171174 0.0024244841
|
||||
14600 32 0.0055995745 0.0064291411 0.016022968 0.0014230432
|
||||
14700 32 0.0055988198 0.0064282746 0.016907696 0.0015101902
|
||||
14800 32 0.0057678876 0.0066223895 0.017482798 0.0016956915
|
||||
14900 32 0.0057096482 0.006555522 0.018478553 0.0019276435
|
||||
15000 32 0.0057085079 0.0065542128 0.017574244 0.0021196367
|
||||
Loop time of 0.17974 on 1 procs for 5000 steps with 32 atoms
|
||||
|
||||
Performance: 12017358.941 tau/day, 27817.961 timesteps/s, 890.175 katom-step/s
|
||||
86.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.011735 | 0.011735 | 0.011735 | 0.0 | 6.53
|
||||
Neigh | 0.00083073 | 0.00083073 | 0.00083073 | 0.0 | 0.46
|
||||
Comm | 0.00027647 | 0.00027647 | 0.00027647 | 0.0 | 0.15
|
||||
Output | 0.1603 | 0.1603 | 0.1603 | 0.0 | 89.19
|
||||
Modify | 0.0058558 | 0.0058558 | 0.0058558 | 0.0 | 3.26
|
||||
Other | | 0.0007393 | | | 0.41
|
||||
|
||||
Nlocal: 32 ave 32 max 32 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
|
||||
Neighbor list builds = 73
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
339
examples/gransurf/log.1Jul24.tri.gran.surf.stl.g++.4
Normal file
339
examples/gransurf/log.1Jul24.tri.gran.surf.stl.g++.4
Normal file
@ -0,0 +1,339 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -7 7 -7 7 0 9 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-7 -7 0) to (7 7 9)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
|
||||
fix 20 all surface/local surf.tri.stl
|
||||
Reading STL object STL version of surf.tri from text file surf.tri.stl
|
||||
set type 1 type 2
|
||||
Setting atom values ...
|
||||
4 settings made for type
|
||||
|
||||
pair_style hybrid gran/hooke/history 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke/history
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
4 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 7 9 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 24 every 400 steps, 100 by step 1601
|
||||
|
||||
fix wall sphere wall/gran hooke/history 4000.0 NULL 100.0 NULL 0.5 1 zcylinder 7.0
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 4 4 3
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke/history, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, history, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size, history
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 12.47 | 12.69 | 13.35 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 4 0 0 0 0
|
||||
100 28 0.36763289 0.43156905 0.21119336 0.005627034
|
||||
200 28 0.62433559 0.73291569 0.35866087 0.009556157
|
||||
300 28 0.95860848 1.125323 0.55068998 0.014672579
|
||||
400 28 1.3704516 1.608791 0.78728068 0.020976299
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
500 48 0.95089817 1.0393538 0.51608705 0.025335722
|
||||
600 48 0.83949391 0.91758637 0.46172806 0.022515854
|
||||
700 48 0.8600588 0.94006427 0.48254195 0.046349308
|
||||
800 48 0.72636179 0.79393033 0.42561821 0.02213745
|
||||
900 72 0.68028474 0.72089876 0.37868178 0.028124504
|
||||
1000 72 0.59827548 0.63399342 0.33666552 0.057932603
|
||||
1100 72 0.60134295 0.63724402 0.3383098 0.025565346
|
||||
1200 72 0.58062156 0.61528554 0.33134629 0.031222266
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1300 92 0.43299069 0.45289831 0.24603739 0.033378543
|
||||
1400 92 0.48785257 0.51028258 0.27462447 0.029606478
|
||||
1500 92 0.50410905 0.52728648 0.28580371 0.031570548
|
||||
1600 92 0.44335358 0.46373765 0.25474076 0.025856762
|
||||
1700 104 0.31258594 0.32521568 0.18562847 0.056917788
|
||||
1800 104 0.29652255 0.30850326 0.17882758 0.036853847
|
||||
1900 104 0.2438002 0.25365071 0.15147734 0.027067985
|
||||
2000 104 0.20778515 0.21618051 0.12797216 0.024491012
|
||||
2100 104 0.23803938 0.24765713 0.13878356 0.018557518
|
||||
2200 104 0.22477903 0.23386101 0.13254455 0.034204387
|
||||
2300 103 0.11028018 0.11478141 0.071880246 0.023108123
|
||||
2400 103 0.051939196 0.054059163 0.042383035 0.0100614
|
||||
2500 103 0.040442247 0.042092951 0.032749381 0.01046781
|
||||
2600 102 0.034504426 0.035927289 0.027149368 0.012010718
|
||||
2700 102 0.029679791 0.0309037 0.023036586 0.010355503
|
||||
2800 102 0.023702803 0.024680238 0.018826345 0.007910395
|
||||
2900 102 0.019561868 0.020368542 0.015101556 0.010178779
|
||||
3000 101 0.010990893 0.011448847 0.0094754992 0.0063202976
|
||||
3100 101 0.010529472 0.0109682 0.0089009784 0.007388411
|
||||
3200 101 0.0084987177 0.0088528309 0.0067377904 0.0075443377
|
||||
3300 101 0.004926689 0.0051319677 0.0045207553 0.0078470774
|
||||
3400 101 0.0028833468 0.0030034862 0.0028132775 0.007922942
|
||||
3500 101 0.0026928316 0.0028050329 0.0026351323 0.0069014836
|
||||
3600 100 0.0022956296 0.0023922877 0.0022701552 0.0059851937
|
||||
3700 100 0.0021025959 0.0021911262 0.0021280497 0.0060105187
|
||||
3800 100 0.0018494532 0.0019273249 0.0018855471 0.0061456458
|
||||
3900 100 0.0016137385 0.0016816854 0.0017223036 0.0066454899
|
||||
4000 100 0.0013124128 0.0013676723 0.0014840612 0.0062470481
|
||||
4100 100 0.0012105075 0.0012614763 0.0014645791 0.0057688838
|
||||
4200 100 0.0011433138 0.0011914533 0.0014435934 0.0059579374
|
||||
4300 100 0.00098204031 0.0010233894 0.0012522874 0.0059816181
|
||||
4400 100 0.00076296239 0.00079508712 0.0009721438 0.0060246257
|
||||
4500 100 0.00066335366 0.00069128434 0.00091049427 0.006214887
|
||||
4600 100 0.00062039452 0.0006465164 0.00082139977 0.0060745906
|
||||
4700 100 0.00062069669 0.00064683129 0.00083492397 0.0064522652
|
||||
4800 100 0.00050639953 0.00052772161 0.00074517777 0.0062114309
|
||||
4900 100 0.00048181752 0.00050210458 0.00072773699 0.0061746147
|
||||
5000 100 0.00045281738 0.00047188337 0.00072834743 0.0067103321
|
||||
Loop time of 0.32014 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 6747055.869 tau/day, 15618.185 timesteps/s, 1.562 Matom-step/s
|
||||
93.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.0086319 | 0.0091611 | 0.0095994 | 0.4 | 2.86
|
||||
Neigh | 0.003158 | 0.0033497 | 0.0035467 | 0.3 | 1.05
|
||||
Comm | 0.052557 | 0.053497 | 0.054748 | 0.3 | 16.71
|
||||
Output | 0.14638 | 0.18444 | 0.24257 | 8.9 | 57.61
|
||||
Modify | 0.0073375 | 0.011745 | 0.014473 | 2.7 | 3.67
|
||||
Other | | 0.05795 | | | 18.10
|
||||
|
||||
Nlocal: 25 ave 27 max 23 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 75 ave 77 max 73 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 319
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 14.59 | 14.59 | 14.59 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00045281738 0.00047188337 0.00072834743 0.0066020848
|
||||
5100 100 0.51860744 0.029800601 0.029304106 0.051905706
|
||||
5200 98 0.53862917 0.040171507 0.047791716 0.050757979
|
||||
5300 96 0.55112647 0.042263021 0.050195999 0.04601151
|
||||
5400 93 0.56728592 0.04180938 0.050815028 0.037450075
|
||||
5500 93 0.56916149 0.043770195 0.053081459 0.03605744
|
||||
5600 91 0.58284551 0.045872284 0.05148537 0.033849288
|
||||
5700 90 0.59267876 0.049850941 0.05375731 0.035005112
|
||||
5800 86 0.61680698 0.04836437 0.052582503 0.033850751
|
||||
5900 85 0.62574796 0.050646859 0.054238313 0.034443643
|
||||
6000 82 0.64727841 0.050889245 0.052494508 0.033866734
|
||||
6100 80 0.66364069 0.052220462 0.052387252 0.033487505
|
||||
6200 78 0.67959846 0.052301399 0.050336285 0.033168524
|
||||
6300 78 0.6815537 0.054363773 0.051168788 0.033400067
|
||||
6400 76 0.69757373 0.053619014 0.048730817 0.033079249
|
||||
6500 76 0.69960717 0.055767015 0.050448147 0.034190142
|
||||
6600 75 0.71046572 0.05804834 0.050353278 0.033120738
|
||||
6700 73 0.73004213 0.059587557 0.050356776 0.033203715
|
||||
6800 72 0.73955244 0.059658858 0.049165521 0.033090601
|
||||
6900 72 0.73984252 0.05996626 0.04893239 0.03538438
|
||||
7000 72 0.73855905 0.05860616 0.048218057 0.032977368
|
||||
7100 71 0.74996747 0.060403683 0.049738231 0.032942299
|
||||
7200 71 0.74958163 0.059994462 0.04984795 0.034576756
|
||||
7300 71 0.74958014 0.059992886 0.050595934 0.033560699
|
||||
7400 69 0.77040618 0.060570951 0.05074398 0.032817955
|
||||
7500 68 0.78190055 0.061527899 0.051576944 0.032829232
|
||||
7600 67 0.79252938 0.061223545 0.051664985 0.033139179
|
||||
7700 67 0.79257577 0.061272925 0.052020235 0.032808213
|
||||
7800 67 0.79235064 0.06103327 0.052983733 0.032695163
|
||||
7900 65 0.81235659 0.057995702 0.051797211 0.032371751
|
||||
8000 65 0.81047528 0.05598897 0.051741533 0.032279411
|
||||
8100 63 0.83302221 0.054074089 0.049909885 0.03200106
|
||||
8200 62 0.84514204 0.053378682 0.050396436 0.032363269
|
||||
8300 61 0.85723702 0.052198956 0.049950193 0.031878528
|
||||
8400 60 0.86997524 0.051226536 0.050780002 0.031636653
|
||||
8500 60 0.86954615 0.050766237 0.051169838 0.036559517
|
||||
8600 58 0.89936909 0.051942618 0.050191748 0.037496085
|
||||
8700 58 0.89897047 0.05151391 0.051173535 0.034671574
|
||||
8800 56 0.93013263 0.051886568 0.052056826 0.031441238
|
||||
8900 55 0.94599772 0.051455942 0.052973742 0.034207698
|
||||
9000 53 0.97967117 0.050662944 0.052877672 0.035867184
|
||||
9100 51 1.0142291 0.047834254 0.050461469 0.032649796
|
||||
9200 50 1.033876 0.047752147 0.050703363 0.030822387
|
||||
9300 49 1.0547579 0.04812047 0.050590947 0.030893945
|
||||
9400 49 1.0558051 0.049262873 0.052436796 0.030873639
|
||||
9500 48 1.0767984 0.048801088 0.051653283 0.030786358
|
||||
9600 46 1.1213506 0.047553612 0.049643046 0.030642108
|
||||
9700 46 1.1227493 0.049088768 0.051778335 0.030603423
|
||||
9800 45 1.1452146 0.046959031 0.051250902 0.032613968
|
||||
9900 45 1.1460384 0.047865295 0.05426893 0.036176412
|
||||
10000 44 1.1711564 0.047401187 0.054529055 0.033327294
|
||||
Loop time of 0.28856 on 4 procs for 5000 steps with 44 atoms
|
||||
|
||||
Performance: 7485434.832 tau/day, 17327.395 timesteps/s, 762.405 katom-step/s
|
||||
91.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.0077008 | 0.0081727 | 0.0083688 | 0.3 | 2.83
|
||||
Neigh | 0.0016509 | 0.0017298 | 0.0017932 | 0.1 | 0.60
|
||||
Comm | 0.040346 | 0.041058 | 0.041497 | 0.2 | 14.23
|
||||
Output | 0.13753 | 0.1727 | 0.22758 | 8.6 | 59.85
|
||||
Modify | 0.0052102 | 0.0053564 | 0.0055804 | 0.2 | 1.86
|
||||
Other | | 0.05955 | | | 20.64
|
||||
|
||||
Nlocal: 11 ave 14 max 9 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Nghost: 33 ave 35 max 30 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 1 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 181
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
40 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.71 | 13.71 | 13.72 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 44 0.042991774 0.047401187 0.054529055 0.005835563
|
||||
10100 44 0.017515048 0.019311463 0.022242125 0.0054597963
|
||||
10200 44 0.016651387 0.018359221 0.021768919 0.007426361
|
||||
10300 43 0.016651808 0.01840463 0.019841598 0.0053906984
|
||||
10400 43 0.014274557 0.015777142 0.019217385 0.0055709619
|
||||
10500 43 0.013716602 0.015160455 0.019335926 0.005533805
|
||||
10600 43 0.012929871 0.01429091 0.019961256 0.0055113819
|
||||
10700 43 0.013249241 0.014643898 0.020488568 0.0057553732
|
||||
10800 43 0.010645141 0.011765682 0.020018164 0.0070545501
|
||||
10900 43 0.010177915 0.011249275 0.019638619 0.0090787871
|
||||
11000 43 0.010174433 0.011245426 0.019566189 0.0093512809
|
||||
11100 43 0.011130765 0.012302425 0.020051358 0.0093282449
|
||||
11200 42 0.011178858 0.012387383 0.020957174 0.0087638823
|
||||
11300 42 0.011335071 0.012560484 0.019605652 0.0085884944
|
||||
11400 42 0.00892055 0.0098849338 0.017254178 0.0115493
|
||||
11500 42 0.0087305707 0.0096744162 0.016920618 0.0072562207
|
||||
11600 42 0.0085763835 0.0095035601 0.016735424 0.0073524491
|
||||
11700 42 0.0091445266 0.010133124 0.016871267 0.0053996766
|
||||
11800 41 0.0079999518 0.0088888353 0.016813209 0.0052166459
|
||||
11900 41 0.0079421236 0.0088245818 0.01747319 0.0051109817
|
||||
12000 41 0.0075832184 0.0084257982 0.016889505 0.0064088798
|
||||
12100 40 0.0080007752 0.0089151496 0.017619052 0.005204876
|
||||
12200 40 0.0084961277 0.0094671138 0.0182733 0.007442812
|
||||
12300 40 0.0098721644 0.011000412 0.019497465 0.0058554546
|
||||
12400 39 0.0073872276 0.0082563132 0.017957824 0.0074206067
|
||||
12500 39 0.0074959064 0.0083777777 0.018236089 0.0083410154
|
||||
12600 39 0.0079646034 0.0089016156 0.018386853 0.010366406
|
||||
12700 38 0.007907691 0.008866199 0.013301549 0.002231989
|
||||
12800 37 0.0076214799 0.0085741649 0.013938502 0.0020598491
|
||||
12900 36 0.00691836 0.0078110516 0.013261785 0.0019344109
|
||||
13000 36 0.0063774393 0.0072003347 0.011546252 0.0021781987
|
||||
13100 35 0.0065688938 0.0074447463 0.011179758 0.0018476982
|
||||
13200 35 0.006608481 0.0074896118 0.011296542 0.0028753707
|
||||
13300 35 0.0070429905 0.007982056 0.011580455 0.0017137712
|
||||
13400 35 0.0069974233 0.007930413 0.011637164 0.0017013866
|
||||
13500 35 0.0070448152 0.0079841239 0.012227322 0.0016768457
|
||||
13600 35 0.0070302138 0.0079675757 0.012851645 0.0016524347
|
||||
13700 35 0.0070610122 0.0080024805 0.013351059 0.0016599408
|
||||
13800 35 0.0068527095 0.0077664041 0.013322016 0.0021396807
|
||||
13900 35 0.0068663277 0.0077818381 0.013705023 0.0016560774
|
||||
14000 33 0.0062802433 0.0071774209 0.013989711 0.0022456467
|
||||
14100 33 0.0061284367 0.0070039277 0.014073612 0.0018742857
|
||||
14200 33 0.0057433035 0.0065637755 0.014047397 0.0020392999
|
||||
14300 33 0.0063090214 0.0072103102 0.014753175 0.0021809345
|
||||
14400 33 0.0063433397 0.0072495311 0.015426943 0.002500832
|
||||
14500 32 0.0061158095 0.0070218553 0.015950673 0.0027020781
|
||||
14600 32 0.0062066544 0.0071261588 0.016604099 0.0030376405
|
||||
14700 32 0.0065514445 0.0075220288 0.017446154 0.0034215744
|
||||
14800 32 0.0064362118 0.0073897247 0.018112867 0.0060394662
|
||||
14900 32 0.0062716467 0.0072007796 0.018677808 0.0042404649
|
||||
15000 32 0.0062889642 0.0072206626 0.019444241 0.0047535052
|
||||
Loop time of 0.255191 on 4 procs for 5000 steps with 32 atoms
|
||||
|
||||
Performance: 8464239.384 tau/day, 19593.147 timesteps/s, 626.981 katom-step/s
|
||||
93.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.0027149 | 0.0039748 | 0.0060577 | 2.0 | 1.56
|
||||
Neigh | 0.00031285 | 0.00037907 | 0.00047986 | 0.0 | 0.15
|
||||
Comm | 0.026002 | 0.02773 | 0.02888 | 0.7 | 10.87
|
||||
Output | 0.12772 | 0.16234 | 0.21585 | 8.7 | 63.62
|
||||
Modify | 0.0022056 | 0.0026604 | 0.0032387 | 0.7 | 1.04
|
||||
Other | | 0.05811 | | | 22.77
|
||||
|
||||
Nlocal: 8 ave 13 max 6 min
|
||||
Histogram: 2 1 0 0 0 0 0 0 0 1
|
||||
Nghost: 24 ave 26 max 19 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 1 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
527
examples/gransurf/log.1Jul24.tribox.gran.data.g++.1
Normal file
527
examples/gransurf/log.1Jul24.tribox.gran.data.g++.1
Normal file
@ -0,0 +1,527 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tribox
|
||||
Reading data file ...
|
||||
orthogonal box = (-9 -9 -9) to (9 9 9)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
24 atoms
|
||||
24 triangles
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.31 | 7.31 | 7.31 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0039968633
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0059511637
|
||||
300 54 0.70130448 1.2816944 0.63007607 0.0063733089
|
||||
400 54 0.45082726 0.82392569 0.41204308 0.0042712044
|
||||
500 54 0.42703582 0.78044477 0.38975619 0.0078751113
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.36378363 0.50236787 0.26121204 0.005580258
|
||||
700 88 0.40897553 0.56477573 0.29461507 0.0062103139
|
||||
800 88 0.45442734 0.62754252 0.32702702 0.01172199
|
||||
900 88 0.38769052 0.53538215 0.29109526 0.011453827
|
||||
1000 88 0.37409476 0.51660706 0.2871167 0.0081282082
|
||||
1100 88 0.35735415 0.49348906 0.27107416 0.0085794315
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.33910268 0.42214823 0.22820948 0.014523415
|
||||
1300 123 0.34253102 0.42641617 0.23083606 0.012592038
|
||||
1400 123 0.26380089 0.32840519 0.18540471 0.019217679
|
||||
1500 123 0.26287435 0.32725175 0.18382847 0.009073899
|
||||
1600 123 0.22125116 0.27543512 0.15863519 0.011459114
|
||||
1700 124 0.17994881 0.22357276 0.1323084 0.0048041133
|
||||
1800 124 0.10484006 0.13025583 0.085106685 0.0044535742
|
||||
1900 124 0.070460717 0.087542103 0.059477957 0.0027460127
|
||||
2000 124 0.069140804 0.085902211 0.057177221 0.0028764389
|
||||
2100 124 0.044395978 0.055158639 0.037361834 0.0047974667
|
||||
2200 124 0.043165403 0.053629743 0.03447346 0.0026358928
|
||||
2300 124 0.022301073 0.027707394 0.020102237 0.0014883335
|
||||
2400 124 0.013514412 0.016790633 0.013186206 0.002325602
|
||||
2500 124 0.010269497 0.012759072 0.010167755 0.0018750155
|
||||
2600 124 0.007156998 0.0088920278 0.0079248938 0.0019606606
|
||||
2700 124 0.0053272592 0.0066187159 0.0060381396 0.0015899189
|
||||
2800 124 0.0049732574 0.0061788955 0.0055201323 0.0015575098
|
||||
2900 124 0.0034389569 0.0042726435 0.0040970394 0.0023173363
|
||||
3000 124 0.0027613458 0.003430763 0.0032325603 0.0018824388
|
||||
3100 124 0.0024990042 0.0031048234 0.0028215135 0.0026234259
|
||||
3200 124 0.0017976528 0.0022334474 0.0021940732 0.0016842693
|
||||
3300 124 0.0010884141 0.001352272 0.0014613478 0.0015441795
|
||||
3400 124 0.0010405091 0.0012927537 0.0013956745 0.001571443
|
||||
3500 124 0.0010765766 0.0013375648 0.0013287703 0.0015522494
|
||||
3600 124 0.00081891021 0.0010174339 0.0011208035 0.0016000812
|
||||
3700 124 0.00090145807 0.0011199934 0.0011567831 0.0015733122
|
||||
3800 124 0.00140364 0.0017439164 0.0013153706 0.0017988685
|
||||
3900 124 0.00049247822 0.00061186688 0.00071870865 0.0015665202
|
||||
4000 124 0.00045666898 0.00056737661 0.00066940396 0.0015712098
|
||||
4100 124 0.00042619616 0.00052951644 0.00063332787 0.0015759583
|
||||
4200 124 0.00036113651 0.00044868475 0.00056665527 0.001576302
|
||||
4300 124 0.00035226447 0.00043766192 0.00055789831 0.0016105156
|
||||
4400 124 0.00031038324 0.00038562766 0.00052368731 0.0017233961
|
||||
4500 124 0.00028932551 0.00035946503 0.00048434265 0.0015563793
|
||||
4600 124 0.00027970544 0.00034751282 0.00047166992 0.0015933351
|
||||
4700 124 0.00023781605 0.00029546842 0.0004057567 0.0016542167
|
||||
4800 124 0.00022258987 0.00027655106 0.00035988265 0.0016019168
|
||||
4900 124 0.00019863185 0.00024678503 0.000326351 0.0016355539
|
||||
5000 124 0.00019419048 0.00024126696 0.00031309062 0.0016596206
|
||||
Loop time of 0.391027 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5523915.822 tau/day, 12786.842 timesteps/s, 1.586 Matom-step/s
|
||||
93.2% 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.053101 | 0.053101 | 0.053101 | 0.0 | 13.58
|
||||
Neigh | 0.014276 | 0.014276 | 0.014276 | 0.0 | 3.65
|
||||
Comm | 0.00043726 | 0.00043726 | 0.00043726 | 0.0 | 0.11
|
||||
Output | 0.31734 | 0.31734 | 0.31734 | 0.0 | 81.16
|
||||
Modify | 0.0045131 | 0.0045131 | 0.0045131 | 0.0 | 1.15
|
||||
Other | | 0.001358 | | | 0.35
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 271
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.438 | 8.438 | 8.438 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00019419048 0.00024126696 0.00031309062 0.0015836208
|
||||
5100 124 5.241725 0.14230443 0.084309766 0.11222949
|
||||
5200 124 5.2642517 0.17029222 0.09711751 0.11218019
|
||||
5300 124 5.2777919 0.18711487 0.1031694 0.11250066
|
||||
5400 124 5.2848791 0.19592009 0.10535436 0.11248274
|
||||
5500 124 5.2950507 0.20855763 0.10994851 0.11343591
|
||||
5600 124 5.3041095 0.21981245 0.11454068 0.1133945
|
||||
5700 124 5.3104632 0.2277064 0.1180875 0.11432799
|
||||
5800 124 5.3215398 0.24146836 0.12466168 0.11484551
|
||||
5900 124 5.3283998 0.24999131 0.1287391 0.11546725
|
||||
6000 124 5.3321636 0.25466756 0.13051832 0.11515099
|
||||
6100 124 5.3345557 0.25763958 0.13171407 0.1154897
|
||||
6200 124 5.3367433 0.26035754 0.13279725 0.11544669
|
||||
6300 124 5.3395019 0.26378486 0.13420445 0.11516374
|
||||
6400 124 5.3439366 0.26929459 0.13696206 0.11652747
|
||||
6500 124 5.35113 0.27823186 0.14087131 0.11539692
|
||||
6600 124 5.3551686 0.28324957 0.14315746 0.11583188
|
||||
6700 124 5.3588826 0.28786385 0.14529906 0.11709354
|
||||
6800 124 5.3635971 0.29372131 0.14771532 0.11643632
|
||||
6900 124 5.3683547 0.2996322 0.15048478 0.1161893
|
||||
7000 124 5.3707971 0.30266678 0.15196892 0.11646592
|
||||
7100 124 5.3726385 0.30495451 0.15306469 0.11625217
|
||||
7200 124 5.3744003 0.30714351 0.1541348 0.11686937
|
||||
7300 124 5.3753054 0.30826801 0.15467201 0.11652641
|
||||
7400 124 5.3757946 0.30887573 0.15508365 0.11719168
|
||||
7500 124 5.3758028 0.30888597 0.15505055 0.12000677
|
||||
7600 124 5.3786577 0.31243298 0.15672307 0.11722909
|
||||
7700 124 5.3783037 0.31199314 0.15642477 0.11632325
|
||||
7800 124 5.3796187 0.31362692 0.1572947 0.11713976
|
||||
7900 124 5.3803155 0.31449269 0.15764005 0.11729058
|
||||
8000 124 5.3825354 0.31725075 0.15884646 0.11762989
|
||||
8100 124 5.3825657 0.31728832 0.1588842 0.11758412
|
||||
8200 124 5.3832535 0.31814284 0.15927407 0.11730022
|
||||
8300 124 5.3835483 0.31850913 0.15938562 0.1178199
|
||||
8400 124 5.3845014 0.31969331 0.16005175 0.11728308
|
||||
8500 124 5.3847484 0.32000021 0.16013165 0.11754726
|
||||
8600 124 5.3863469 0.32198622 0.16098001 0.11783688
|
||||
8700 124 5.3860321 0.32159511 0.16070948 0.11787101
|
||||
8800 124 5.3865227 0.32220457 0.16101193 0.11742856
|
||||
8900 124 5.386608 0.32231066 0.16107457 0.11751927
|
||||
9000 124 5.3866344 0.32234342 0.16111142 0.11733366
|
||||
9100 124 5.3870414 0.32284907 0.16138634 0.11732917
|
||||
9200 124 5.3872929 0.32316151 0.16152699 0.11720705
|
||||
9300 124 5.3871547 0.32298987 0.16146033 0.11742964
|
||||
9400 124 5.3870097 0.32280972 0.16135009 0.11718262
|
||||
9500 124 5.3871151 0.3229406 0.16142031 0.11740809
|
||||
9600 124 5.3880467 0.3240981 0.16192517 0.11747626
|
||||
9700 124 5.3882634 0.32436734 0.16207328 0.11748896
|
||||
9800 124 5.3885751 0.32475452 0.162293 0.1175098
|
||||
9900 124 5.388935 0.32520177 0.16248897 0.11781973
|
||||
10000 124 5.3891679 0.32549112 0.16263293 0.11743863
|
||||
Loop time of 0.415747 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5195465.111 tau/day, 12026.540 timesteps/s, 1.491 Matom-step/s
|
||||
98.1% 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.075657 | 0.075657 | 0.075657 | 0.0 | 18.20
|
||||
Neigh | 0.020388 | 0.020388 | 0.020388 | 0.0 | 4.90
|
||||
Comm | 0.00050329 | 0.00050329 | 0.00050329 | 0.0 | 0.12
|
||||
Output | 0.30865 | 0.30865 | 0.30865 | 0.0 | 74.24
|
||||
Modify | 0.0089953 | 0.0089953 | 0.0089953 | 0.0 | 2.16
|
||||
Other | | 0.001558 | | | 0.37
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 315
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.563 | 7.563 | 7.563 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.26198066 0.32549112 0.16263293 0.0055911461
|
||||
10100 124 0.074481727 0.092537903 0.05769404 0.0057995742
|
||||
10200 124 0.055374095 0.068798118 0.050803609 0.0039966145
|
||||
10300 124 0.046890231 0.058257559 0.045562379 0.0045743145
|
||||
10400 124 0.038619299 0.047981553 0.039858993 0.0037329536
|
||||
10500 124 0.03109186 0.038629281 0.033475837 0.005404066
|
||||
10600 124 0.026610842 0.033061955 0.03074617 0.0049940987
|
||||
10700 124 0.023393335 0.029064446 0.027629225 0.0044956047
|
||||
10800 124 0.020188452 0.025082623 0.024277568 0.0027508375
|
||||
10900 124 0.017401987 0.021620651 0.022968471 0.0030526263
|
||||
11000 124 0.017010388 0.021134118 0.02312837 0.0029423416
|
||||
11100 124 0.015586659 0.019365243 0.022124516 0.0048751832
|
||||
11200 124 0.015018747 0.018659656 0.021425944 0.0050256257
|
||||
11300 124 0.013616167 0.016917056 0.020531515 0.0025382988
|
||||
11400 124 0.012960825 0.016102844 0.020233716 0.0028514371
|
||||
11500 124 0.012535764 0.015574737 0.019749488 0.004004479
|
||||
11600 124 0.012468691 0.015491404 0.020056281 0.0029836259
|
||||
11700 124 0.010340151 0.012846854 0.016889426 0.002611651
|
||||
11800 124 0.0094736661 0.011770312 0.016202659 0.0028183754
|
||||
11900 124 0.0097558259 0.012120875 0.017186585 0.003204093
|
||||
12000 124 0.0096163767 0.01194762 0.018177114 0.0030658747
|
||||
12100 124 0.0091146678 0.011324284 0.017747849 0.0029559042
|
||||
12200 124 0.0085146536 0.010578812 0.01795826 0.0020989622
|
||||
12300 124 0.008795199 0.010927368 0.017709763 0.0025139035
|
||||
12400 124 0.0090055902 0.011188764 0.017918106 0.0023682314
|
||||
12500 124 0.0097315664 0.012090734 0.018823404 0.0020873256
|
||||
12600 124 0.0091405944 0.011356496 0.017804633 0.0027702904
|
||||
12700 124 0.0087960463 0.010928421 0.017802652 0.0026273577
|
||||
12800 124 0.0080743005 0.010031707 0.017331563 0.0020791763
|
||||
12900 124 0.0076898221 0.0095540215 0.016852716 0.0021221914
|
||||
13000 124 0.0076710324 0.0095306767 0.016825465 0.0039685383
|
||||
13100 124 0.0073591325 0.0091431646 0.015871642 0.0027994321
|
||||
13200 124 0.0072640024 0.0090249727 0.016222349 0.0025128819
|
||||
13300 124 0.0069183134 0.0085954802 0.016490498 0.0021502501
|
||||
13400 124 0.0069316499 0.0086120499 0.017605557 0.0018524525
|
||||
13500 124 0.0068915832 0.00856227 0.017409609 0.0033139311
|
||||
13600 124 0.0062913693 0.0078165497 0.016392828 0.0024061992
|
||||
13700 124 0.0068995705 0.0085721937 0.016786658 0.001969641
|
||||
13800 124 0.0072699745 0.0090323926 0.017042011 0.0027635615
|
||||
13900 124 0.0068420472 0.0085007253 0.016141459 0.0031252065
|
||||
14000 124 0.0065644583 0.0081558421 0.016569085 0.002456998
|
||||
14100 124 0.0061341628 0.0076212326 0.016662644 0.0026875721
|
||||
14200 124 0.0060909188 0.0075675051 0.015930704 0.0030431779
|
||||
14300 124 0.0063988636 0.0079501032 0.015828756 0.0025592835
|
||||
14400 124 0.005689416 0.0070686683 0.015368259 0.0024185934
|
||||
14500 124 0.006236795 0.0077487453 0.015706212 0.0022824924
|
||||
14600 124 0.0066260155 0.0082323223 0.015933317 0.0025821009
|
||||
14700 124 0.0062293355 0.0077394775 0.015731127 0.0024183438
|
||||
14800 124 0.0058972158 0.0073268438 0.015509568 0.0019834714
|
||||
14900 124 0.0056540749 0.0070247597 0.015502274 0.0023237962
|
||||
15000 124 0.0052244823 0.0064910235 0.014736944 0.0020149012
|
||||
Loop time of 0.390059 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5537628.750 tau/day, 12818.585 timesteps/s, 1.590 Matom-step/s
|
||||
96.9% 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.061332 | 0.061332 | 0.061332 | 0.0 | 15.72
|
||||
Neigh | 0.0066467 | 0.0066467 | 0.0066467 | 0.0 | 1.70
|
||||
Comm | 0.00038941 | 0.00038941 | 0.00038941 | 0.0 | 0.10
|
||||
Output | 0.31536 | 0.31536 | 0.31536 | 0.0 | 80.85
|
||||
Modify | 0.0049581 | 0.0049581 | 0.0049581 | 0.0 | 1.27
|
||||
Other | | 0.001377 | | | 0.35
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 99
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.438 | 8.438 | 8.438 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0052244823 0.0064910235 0.014736944 0.002027817
|
||||
15100 124 5.2591096 0.16390347 0.10097318 0.12343593
|
||||
15200 124 5.3142316 0.23238836 0.13250683 0.11589879
|
||||
15300 124 5.3197373 0.23922878 0.13533309 0.1229824
|
||||
15400 124 5.3433084 0.26851411 0.14909465 0.11413727
|
||||
15500 124 5.3597989 0.28900239 0.1554805 0.11750639
|
||||
15600 124 5.3732393 0.30570096 0.16312751 0.12186127
|
||||
15700 124 5.3855061 0.32094152 0.16768264 0.12462102
|
||||
15800 124 5.3941725 0.33170888 0.17231668 0.12143627
|
||||
15900 124 5.4009664 0.34014985 0.17546962 0.12765975
|
||||
16000 124 5.414758 0.3572848 0.18266756 0.12653599
|
||||
16100 124 5.4175427 0.36074458 0.18432923 0.12774876
|
||||
16200 124 5.4140092 0.35635451 0.18191261 0.13268443
|
||||
16300 124 5.4017269 0.34109469 0.17372827 0.1307221
|
||||
16400 124 5.4017349 0.34110458 0.17298641 0.12625563
|
||||
16500 124 5.4176382 0.36086328 0.1829199 0.13493836
|
||||
16600 124 5.4175635 0.36077041 0.1829868 0.12403781
|
||||
16700 124 5.4214857 0.36564356 0.18548453 0.12740232
|
||||
16800 124 5.4051413 0.34533679 0.1761884 0.12649075
|
||||
16900 124 5.3907663 0.32747702 0.16871425 0.12243088
|
||||
17000 124 5.4230599 0.36759934 0.18961103 0.12160116
|
||||
17100 124 5.4114147 0.35313105 0.18320073 0.12009866
|
||||
17200 124 5.4079998 0.34888833 0.182884 0.11676493
|
||||
17300 124 5.4540074 0.40604927 0.21401186 0.12104014
|
||||
17400 124 5.5303165 0.50085758 0.26286623 0.1191549
|
||||
17500 124 5.5799815 0.56256257 0.30155566 0.11936249
|
||||
17600 123 5.6095354 0.548156 0.29969295 0.11836381
|
||||
17700 123 5.6162622 0.55653017 0.30689847 0.12651704
|
||||
17800 123 5.5946219 0.52959016 0.29189633 0.1270846
|
||||
17900 123 5.6425211 0.58921979 0.32434701 0.12601893
|
||||
18000 123 5.5850993 0.51773555 0.29149119 0.11855274
|
||||
18100 123 5.5530995 0.47789905 0.27297395 0.12252876
|
||||
18200 123 5.5744881 0.5045257 0.28929391 0.12580084
|
||||
18300 123 5.5264747 0.44475381 0.26170733 0.12122144
|
||||
18400 123 5.5090751 0.4230932 0.24726654 0.11802832
|
||||
18500 123 5.4509977 0.35079266 0.21099264 0.11612467
|
||||
18600 123 5.4202769 0.3125485 0.19482059 0.11897009
|
||||
18700 123 5.4162186 0.30749631 0.19469653 0.12258369
|
||||
18800 123 5.4370191 0.33339082 0.21014503 0.12166645
|
||||
18900 123 5.4341683 0.32984186 0.2060126 0.11734766
|
||||
19000 123 5.4455201 0.34397369 0.21089269 0.1309388
|
||||
19100 121 5.5328154 0.34681054 0.21343091 0.11975564
|
||||
19200 121 5.5203006 0.33116707 0.20004465 0.12011697
|
||||
19300 120 5.5582048 0.32402462 0.19172463 0.12731511
|
||||
19400 120 5.5618757 0.32862285 0.19220321 0.13103823
|
||||
19500 120 5.5815117 0.35321951 0.20143386 0.12608573
|
||||
19600 120 5.5618845 0.32863386 0.18492513 0.12107732
|
||||
19700 120 5.5611838 0.32775616 0.18008348 0.12358608
|
||||
19800 120 5.5537958 0.31850174 0.17451709 0.11885715
|
||||
19900 120 5.5711779 0.34027514 0.18424588 0.11773742
|
||||
20000 120 5.5693282 0.33795813 0.1832136 0.11851597
|
||||
Loop time of 0.42962 on 1 procs for 5000 steps with 120 atoms
|
||||
|
||||
Performance: 5027701.062 tau/day, 11638.197 timesteps/s, 1.397 Matom-step/s
|
||||
96.3% 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.065684 | 0.065684 | 0.065684 | 0.0 | 15.29
|
||||
Neigh | 0.030423 | 0.030423 | 0.030423 | 0.0 | 7.08
|
||||
Comm | 0.0005339 | 0.0005339 | 0.0005339 | 0.0 | 0.12
|
||||
Output | 0.32273 | 0.32273 | 0.32273 | 0.0 | 75.12
|
||||
Modify | 0.0087715 | 0.0087715 | 0.0087715 | 0.0 | 2.04
|
||||
Other | | 0.001478 | | | 0.34
|
||||
|
||||
Nlocal: 120 ave 120 max 120 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
|
||||
Neighbor list builds = 433
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
96 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.563 | 7.563 | 7.563 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 120 0.26979851 0.33795813 0.1832136 -0.007144497
|
||||
20100 120 0.076935724 0.096372118 0.065021814 0.014779222
|
||||
20200 120 0.068189363 0.08541615 0.058686501 0.0072051902
|
||||
20300 120 0.072858793 0.091265225 0.059741747 0.0073008259
|
||||
20400 120 0.064096397 0.080289171 0.054774581 0.013885876
|
||||
20500 120 0.056290534 0.0705113 0.04961518 0.0011947455
|
||||
20600 120 0.037451936 0.046913478 0.035446097 0.0046019241
|
||||
20700 120 0.037362255 0.04680114 0.035577307 0.0068457433
|
||||
20800 120 0.026254631 0.03288738 0.029046591 0.0072400997
|
||||
20900 120 0.019914756 0.024945852 0.024193195 0.0086344784
|
||||
21000 120 0.019965109 0.025008927 0.02348028 0.008745631
|
||||
21100 120 0.017890973 0.022410798 0.022094331 0.002355569
|
||||
21200 120 0.018171204 0.022761824 0.021530758 0.0069269189
|
||||
21300 120 0.016051273 0.020106332 0.019460189 0.0068448898
|
||||
21400 120 0.015907324 0.019926016 0.017975049 0.008661722
|
||||
21500 120 0.015802152 0.019794274 0.018060602 0.0025488481
|
||||
21600 120 0.018428378 0.023083968 0.023151613 0.0061571836
|
||||
21700 120 0.017193664 0.021537326 0.022957643 0.0070414228
|
||||
21800 120 0.014270475 0.017875648 0.021240833 -0.0013442377
|
||||
21900 120 0.013848094 0.01734656 0.020380261 0.0053796285
|
||||
22000 120 0.012992089 0.016274301 0.021157393 0.0053721355
|
||||
22100 120 0.014065446 0.017618822 0.020106722 0.0014345844
|
||||
22200 120 0.010258737 0.012850418 0.016841221 0.01120688
|
||||
22300 120 0.010211948 0.012791809 0.017093331 0.0078983762
|
||||
22400 120 0.009548374 0.011960595 0.01734835 0.0038908434
|
||||
22500 120 0.0085349512 0.010691149 0.016754781 -0.00014023944
|
||||
22600 120 0.0091912138 0.011513205 0.016019636 0.0045956054
|
||||
22700 120 0.0087672845 0.010982177 0.016081508 0.0071534675
|
||||
22800 120 0.0091053807 0.011405687 0.01691824 0.0038334511
|
||||
22900 120 0.0090436037 0.011328304 0.018774987 0.0025693881
|
||||
23000 120 0.0090306116 0.011312029 0.018062077 0.0044430084
|
||||
23100 120 0.0077433932 0.0096996189 0.016375491 0.0064193124
|
||||
23200 120 0.008478267 0.010620145 0.018103983 -0.00085927214
|
||||
23300 120 0.007964293 0.0099763249 0.017453711 0.002148413
|
||||
23400 120 0.009046906 0.01133244 0.01770639 0.020441698
|
||||
23500 120 0.0091534944 0.011465956 0.017415455 0.002285878
|
||||
23600 120 0.007748423 0.0097059193 0.015490839 -0.00020592716
|
||||
23700 120 0.0066912474 0.0083816677 0.014649077 0.006694411
|
||||
23800 120 0.007247576 0.0090785426 0.01406457 0.0014410036
|
||||
23900 120 0.0076543035 0.0095880222 0.015050261 0.0097604987
|
||||
24000 120 0.0072047826 0.0090249382 0.01472033 0.0068222942
|
||||
24100 120 0.007482661 0.0093730175 0.014902069 0.0075137142
|
||||
24200 120 0.0068544845 0.0085861437 0.015181158 0.0040487925
|
||||
24300 120 0.0068959558 0.008638092 0.01593833 0.0042688713
|
||||
24400 120 0.0071391701 0.0089427499 0.014834245 0.010035527
|
||||
24500 120 0.0073382922 0.0091921766 0.016818047 0.0041348411
|
||||
24600 120 0.0071901432 0.0090066004 0.016444181 0.0046487693
|
||||
24700 120 0.0066092287 0.0082789285 0.016239103 0.0073248869
|
||||
24800 120 0.0055322913 0.0069299228 0.012402128 -0.0017910989
|
||||
24900 120 0.0056839126 0.0071198484 0.013482139 0.0041464303
|
||||
25000 120 0.0043729877 0.0054777425 0.012826668 0.0017027494
|
||||
Loop time of 0.390633 on 1 procs for 5000 steps with 120 atoms
|
||||
|
||||
Performance: 5529481.363 tau/day, 12799.725 timesteps/s, 1.536 Matom-step/s
|
||||
95.9% 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.059297 | 0.059297 | 0.059297 | 0.0 | 15.18
|
||||
Neigh | 0.011612 | 0.011612 | 0.011612 | 0.0 | 2.97
|
||||
Comm | 0.00039143 | 0.00039143 | 0.00039143 | 0.0 | 0.10
|
||||
Output | 0.31326 | 0.31326 | 0.31326 | 0.0 | 80.19
|
||||
Modify | 0.0047198 | 0.0047198 | 0.0047198 | 0.0 | 1.21
|
||||
Other | | 0.001351 | | | 0.35
|
||||
|
||||
Nlocal: 120 ave 120 max 120 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
|
||||
Neighbor list builds = 173
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:02
|
||||
528
examples/gransurf/log.1Jul24.tribox.gran.data.g++.4
Normal file
528
examples/gransurf/log.1Jul24.tribox.gran.data.g++.4
Normal file
@ -0,0 +1,528 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
read_data data.tribox
|
||||
Reading data file ...
|
||||
orthogonal box = (-9 -9 -9) to (9 9 9)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
24 atoms
|
||||
24 triangles
|
||||
read_data CPU = 0.002 seconds
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
fix fsl all surface/local NULL
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419
|
||||
|
||||
@Article{Gissinger24,
|
||||
author = {Jacob R. Gissinger, Ilia Nikiforov, Yaser Afshar, Brendon Waters, Moon-ki Choi, Daniel S. Karls, Alexander Stukowski, Wonpil Im, Hendrik Heinz, Axel Kohlmeyer, and Ellad B. Tadmor},
|
||||
title = {Type Label Framework for Bonded Force Fields in LAMMPS},
|
||||
journal = {J. Phys. Chem. B},
|
||||
year = 2024,
|
||||
volume = 128,
|
||||
number = 13,
|
||||
pages = {3282–-3297}
|
||||
}
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.337 | 7.338 | 7.342 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0039968633
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0059511637
|
||||
300 54 0.70118095 1.2814686 0.62987441 0.0063721863
|
||||
400 54 0.45057814 0.82347039 0.41172861 0.0042376606
|
||||
500 54 0.42112344 0.76963938 0.38709352 0.0090454068
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.37193184 0.51362016 0.26489933 0.0063964776
|
||||
700 88 0.41426632 0.57208206 0.29533003 0.0077177976
|
||||
800 88 0.45653662 0.63045534 0.32753609 0.0071074229
|
||||
900 88 0.38450697 0.53098581 0.28581676 0.0054070755
|
||||
1000 88 0.35211843 0.48625879 0.2664603 0.010024316
|
||||
1100 88 0.36008043 0.49725392 0.27221103 0.0097378018
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.35178839 0.43794065 0.23962027 0.012545089
|
||||
1300 123 0.35870451 0.44655052 0.24405887 0.008071262
|
||||
1400 123 0.29688415 0.36959048 0.20759032 0.0090729808
|
||||
1500 123 0.28867163 0.35936673 0.2015813 0.013634049
|
||||
1600 123 0.21564484 0.26845583 0.15348181 0.0055206244
|
||||
1700 124 0.16273805 0.20218969 0.11933334 0.0090883805
|
||||
1800 124 0.11715078 0.14555097 0.092237668 0.0036976622
|
||||
1900 124 0.068809053 0.085490035 0.059457412 0.0040593291
|
||||
2000 124 0.059329987 0.073713014 0.051571621 0.0032183709
|
||||
2100 124 0.04798502 0.059617753 0.041594025 0.0024460605
|
||||
2200 124 0.042317183 0.052575894 0.035031437 0.0021126303
|
||||
2300 124 0.016704259 0.020753776 0.016526748 0.0019895102
|
||||
2400 124 0.012483958 0.015510372 0.012027988 0.0039777224
|
||||
2500 124 0.0077840862 0.0096711374 0.0076953511 0.0022728499
|
||||
2600 124 0.0051798085 0.0064355197 0.0055627076 0.0032961978
|
||||
2700 124 0.0044257315 0.0054986361 0.0048486212 0.0019272834
|
||||
2800 124 0.0038110636 0.0047349577 0.004136763 0.0016771472
|
||||
2900 124 0.0033610006 0.0041757886 0.0037955793 0.0016499842
|
||||
3000 124 0.0036759439 0.0045670818 0.0039739099 0.0017174386
|
||||
3100 124 0.004879497 0.0060624054 0.0045976588 0.0017124675
|
||||
3200 124 0.0033701575 0.0041871654 0.0034848116 0.0016618861
|
||||
3300 124 0.0031218612 0.0038786761 0.0033303126 0.001663116
|
||||
3400 124 0.0028009663 0.0034799884 0.0030376486 0.0016166164
|
||||
3500 124 0.0030247379 0.0037580077 0.0030722102 0.0024345187
|
||||
3600 124 0.0017951568 0.0022303463 0.0019956461 0.0014714833
|
||||
3700 124 0.0014929161 0.0018548352 0.0017092596 0.0016423379
|
||||
3800 124 0.0014239364 0.0017691331 0.0016212959 0.0020903921
|
||||
3900 124 0.00090885869 0.0011291881 0.0012044307 0.0015442055
|
||||
4000 124 0.00074121189 0.00092089962 0.0010437154 0.0015483599
|
||||
4100 124 0.00069161146 0.00085927485 0.00094845915 0.0015120623
|
||||
4200 124 0.00056635858 0.00070365763 0.00080321665 0.0014656722
|
||||
4300 124 0.00050531087 0.00062781047 0.00073303224 0.0015267341
|
||||
4400 124 0.00045239991 0.00056207262 0.00068482519 0.0016991771
|
||||
4500 124 0.00042229712 0.00052467217 0.00065368139 0.001504402
|
||||
4600 124 0.00038562197 0.00047910609 0.00061752973 0.0018182444
|
||||
4700 124 0.00034669692 0.00043074466 0.00057495931 0.0015077949
|
||||
4800 124 0.00030333089 0.00037686565 0.00052302102 0.0014545772
|
||||
4900 124 0.00029290547 0.00036391286 0.00051399552 0.0014965779
|
||||
5000 124 0.00027955382 0.00034732445 0.00049201819 0.0015020264
|
||||
Loop time of 0.439493 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 4914759.070 tau/day, 11376.757 timesteps/s, 1.411 Matom-step/s
|
||||
92.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.0019905 | 0.016708 | 0.032935 | 11.4 | 3.80
|
||||
Neigh | 0.0018982 | 0.0049817 | 0.007949 | 4.1 | 1.13
|
||||
Comm | 0.067011 | 0.083326 | 0.098679 | 5.1 | 18.96
|
||||
Output | 0.22205 | 0.26015 | 0.32361 | 8.1 | 59.19
|
||||
Modify | 0.0014787 | 0.0027393 | 0.0042002 | 2.4 | 0.62
|
||||
Other | | 0.07159 | | | 16.29
|
||||
|
||||
Nlocal: 31 ave 55 max 6 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 118 max 69 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 276
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.614 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00027955382 0.00034732445 0.00049201819 0.0015031883
|
||||
5100 124 5.2213292 0.11696419 0.070191681 0.11567903
|
||||
5200 124 5.2494151 0.15185888 0.088948694 0.11228004
|
||||
5300 124 5.2572413 0.16158228 0.091155723 0.11191697
|
||||
5400 124 5.2622945 0.16786055 0.091191608 0.11200573
|
||||
5500 124 5.2694754 0.17678222 0.094474963 0.11274427
|
||||
5600 124 5.2791339 0.18878212 0.099452746 0.11279348
|
||||
5700 124 5.2936967 0.20687533 0.10794158 0.11359394
|
||||
5800 124 5.3074309 0.22393911 0.11535088 0.11345736
|
||||
5900 124 5.3170002 0.23582815 0.1211834 0.11451637
|
||||
6000 124 5.3264792 0.24760517 0.12691981 0.11634565
|
||||
6100 124 5.329844 0.25178562 0.12907012 0.11440026
|
||||
6200 124 5.3347032 0.25782277 0.13173987 0.11647845
|
||||
6300 124 5.340892 0.26551199 0.13511823 0.11510697
|
||||
6400 124 5.3470903 0.27321282 0.13821674 0.11586585
|
||||
6500 124 5.3530895 0.28066635 0.14158978 0.11592173
|
||||
6600 124 5.3580451 0.28682334 0.14446804 0.11687967
|
||||
6700 124 5.3594973 0.28862764 0.14530407 0.11693613
|
||||
6800 124 5.362035 0.2917805 0.14687648 0.11633757
|
||||
6900 124 5.3630264 0.29301222 0.14751378 0.11682536
|
||||
7000 124 5.3660652 0.29678769 0.14942643 0.11653024
|
||||
7100 124 5.368112 0.29933078 0.15041714 0.11744944
|
||||
7200 124 5.3687484 0.30012138 0.15086898 0.1169356
|
||||
7300 124 5.3685878 0.29992191 0.15057777 0.11770109
|
||||
7400 124 5.3701975 0.3019218 0.15147912 0.11740293
|
||||
7500 124 5.3710321 0.30295873 0.15204994 0.1177079
|
||||
7600 124 5.3727095 0.30504273 0.15306656 0.11818598
|
||||
7700 124 5.3736085 0.30615972 0.15355634 0.11726622
|
||||
7800 124 5.375909 0.30901792 0.15495105 0.118266
|
||||
7900 124 5.376276 0.30947392 0.15519466 0.11718369
|
||||
8000 124 5.3791711 0.31307082 0.15690211 0.11765829
|
||||
8100 124 5.3787496 0.31254718 0.1566274 0.11760075
|
||||
8200 124 5.3791354 0.31302651 0.15693452 0.11856675
|
||||
8300 124 5.3812285 0.31562697 0.15815299 0.11772296
|
||||
8400 124 5.38166 0.31616311 0.15833869 0.11858638
|
||||
8500 124 5.3821533 0.31677599 0.15873083 0.11727274
|
||||
8600 124 5.3822551 0.3169025 0.15879148 0.11800294
|
||||
8700 124 5.3820649 0.31666611 0.15870109 0.11689663
|
||||
8800 124 5.3829798 0.31780283 0.15920518 0.11720016
|
||||
8900 124 5.3847961 0.32005951 0.16021329 0.12034865
|
||||
9000 124 5.3863825 0.32203038 0.16117074 0.11771618
|
||||
9100 124 5.3858285 0.32134218 0.16090793 0.1179112
|
||||
9200 124 5.386223 0.32183231 0.16127025 0.11804752
|
||||
9300 124 5.3862986 0.32192623 0.16133847 0.11757523
|
||||
9400 124 5.387428 0.3233294 0.16204845 0.11778809
|
||||
9500 124 5.389036 0.32532724 0.1628191 0.1189939
|
||||
9600 124 5.390873 0.32760951 0.16393076 0.11809517
|
||||
9700 124 5.3902745 0.32686591 0.16360448 0.11797716
|
||||
9800 124 5.3912122 0.32803095 0.16421139 0.1182008
|
||||
9900 124 5.3919947 0.32900318 0.16468113 0.11897222
|
||||
10000 124 5.3938706 0.33133377 0.16573607 0.11850659
|
||||
Loop time of 0.451177 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 4787480.364 tau/day, 11082.130 timesteps/s, 1.374 Matom-step/s
|
||||
94.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.0055802 | 0.027018 | 0.048894 | 13.0 | 5.99
|
||||
Neigh | 0.001921 | 0.0070952 | 0.012313 | 6.1 | 1.57
|
||||
Comm | 0.077928 | 0.10164 | 0.12495 | 7.2 | 22.53
|
||||
Output | 0.20641 | 0.24209 | 0.30176 | 7.9 | 53.66
|
||||
Modify | 0.0029541 | 0.0044657 | 0.0061323 | 2.2 | 0.99
|
||||
Other | | 0.06887 | | | 15.26
|
||||
|
||||
Nlocal: 31 ave 59 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Nghost: 93 ave 116 max 65 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 316
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.714 | 7.726 | 7.739 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.26668328 0.33133377 0.16573607 0.017328247
|
||||
10100 124 0.056200102 0.069824369 0.044872322 0.0039707466
|
||||
10200 124 0.042267205 0.0525138 0.041203231 0.0044598573
|
||||
10300 124 0.029663878 0.036855122 0.033120538 0.0070651926
|
||||
10400 124 0.024669667 0.030650193 0.03033595 0.0041946492
|
||||
10500 124 0.022848926 0.02838806 0.028689326 0.0030599292
|
||||
10600 124 0.020458165 0.02541772 0.026302636 0.0058319745
|
||||
10700 124 0.017807934 0.022125009 0.025740761 0.0027488894
|
||||
10800 124 0.015035885 0.018680949 0.023588376 0.0022903775
|
||||
10900 124 0.013888267 0.01725512 0.022440279 0.0027634791
|
||||
11000 124 0.011608462 0.014422635 0.019348673 0.0045780072
|
||||
11100 124 0.011162709 0.01386882 0.01849931 0.0023451747
|
||||
11200 124 0.011086175 0.013773732 0.017917304 0.0024658252
|
||||
11300 124 0.010190232 0.012660591 0.017180502 0.0020222246
|
||||
11400 124 0.0097496547 0.012113207 0.016751983 0.0030135131
|
||||
11500 124 0.0093133921 0.011571184 0.016521609 0.002490532
|
||||
11600 124 0.0081681115 0.01014826 0.015564426 0.0019455596
|
||||
11700 124 0.0076826338 0.0095450905 0.015672443 0.0022541556
|
||||
11800 124 0.0073075107 0.0090790284 0.015351511 0.0032455658
|
||||
11900 124 0.0075051682 0.0093246029 0.016009774 0.0018035686
|
||||
12000 124 0.0072372959 0.0089917919 0.015490758 0.0042935815
|
||||
12100 124 0.006916344 0.0085930334 0.014798831 0.0029189494
|
||||
12200 124 0.0066805653 0.0083000963 0.014911612 0.0027424779
|
||||
12300 124 0.0061444991 0.0076340746 0.014460476 0.0030202428
|
||||
12400 124 0.0061696139 0.0076652778 0.014542082 0.0036198571
|
||||
12500 124 0.0059365088 0.0073756625 0.014858158 0.0027444353
|
||||
12600 124 0.0058780839 0.007303074 0.015398698 0.0020529534
|
||||
12700 124 0.0062768514 0.0077985124 0.015619374 0.0025399066
|
||||
12800 124 0.0060828914 0.0075575317 0.015305797 0.0025106775
|
||||
12900 124 0.0059859508 0.0074370904 0.014550513 0.0023214829
|
||||
13000 124 0.0057442406 0.0071367837 0.014207912 0.0023133715
|
||||
13100 124 0.0060965462 0.0075744967 0.015121064 0.0022806913
|
||||
13200 124 0.006511295 0.0080897907 0.015347205 0.0018927714
|
||||
13300 124 0.0054721076 0.0067986791 0.01358699 0.002764088
|
||||
13400 124 0.0056662979 0.0070399458 0.01408639 0.0027430251
|
||||
13500 124 0.0053656855 0.0066664577 0.013407158 0.0038500999
|
||||
13600 124 0.0053355018 0.0066289568 0.014186081 0.0027071631
|
||||
13700 124 0.0050751903 0.0063055394 0.014588279 0.0023383507
|
||||
13800 124 0.0049370805 0.0061339485 0.014929944 0.0025317664
|
||||
13900 124 0.0051863562 0.0064436546 0.015145572 0.0030657941
|
||||
14000 124 0.0048799741 0.0060629981 0.014209027 0.003051829
|
||||
14100 124 0.0045561374 0.0056606556 0.013907584 0.002249473
|
||||
14200 124 0.0044230598 0.0054953167 0.013901718 0.0038863007
|
||||
14300 124 0.0042868083 0.0053260345 0.013151104 0.0031267464
|
||||
14400 124 0.0042395107 0.0052672709 0.012829998 0.0028603263
|
||||
14500 124 0.0041975299 0.0052151129 0.012763534 0.0023412049
|
||||
14600 124 0.0045709375 0.0056790436 0.014449848 0.0022069733
|
||||
14700 124 0.0044899655 0.005578442 0.015608166 0.0020443675
|
||||
14800 124 0.0042163929 0.0052385487 0.015808795 0.0018318737
|
||||
14900 124 0.0039866761 0.004953143 0.014823117 0.0024666454
|
||||
15000 124 0.0041610334 0.0051697688 0.013201413 0.0040669573
|
||||
Loop time of 0.997319 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 2165805.538 tau/day, 5013.439 timesteps/s, 621.666 katom-step/s
|
||||
92.8% 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.0016601 | 0.045665 | 0.089499 | 20.5 | 4.58
|
||||
Neigh | 0.001147 | 0.0040993 | 0.0071947 | 4.6 | 0.41
|
||||
Comm | 0.17379 | 0.21304 | 0.2523 | 8.3 | 21.36
|
||||
Output | 0.46514 | 0.56417 | 0.70813 | 12.6 | 56.57
|
||||
Modify | 0.0017154 | 0.0051509 | 0.0088501 | 4.6 | 0.52
|
||||
Other | | 0.1652 | | | 16.56
|
||||
|
||||
Nlocal: 31 ave 57 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Nghost: 93 ave 116 max 67 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 89
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.614 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0041610334 0.0051697688 0.013201413 0.004050505
|
||||
15100 124 5.23434 0.13312915 0.086755644 0.11559576
|
||||
15200 124 5.2844675 0.19540875 0.11840085 0.1141468
|
||||
15300 124 5.3318404 0.25426596 0.14579094 0.11909121
|
||||
15400 124 5.3303276 0.25238652 0.14369585 0.11823013
|
||||
15500 124 5.3230136 0.24329933 0.13724045 0.12187991
|
||||
15600 124 5.3578424 0.28657151 0.15433671 0.12381644
|
||||
15700 123 5.4013676 0.28900827 0.15453476 0.12259662
|
||||
15800 123 5.4118019 0.30199797 0.15885725 0.12133482
|
||||
15900 123 5.4208828 0.31330268 0.16122905 0.12182528
|
||||
16000 123 5.4281775 0.32238394 0.1649621 0.12339788
|
||||
16100 123 5.4256507 0.31923831 0.16299633 0.11986599
|
||||
16200 123 5.4289714 0.32337225 0.16480742 0.12883298
|
||||
16300 123 5.4369808 0.33334311 0.16946939 0.12452535
|
||||
16400 123 5.4245634 0.31788472 0.16234678 0.12543716
|
||||
16500 123 5.3981175 0.28496229 0.14752224 0.12546557
|
||||
16600 123 5.380002 0.26241035 0.13693027 0.12564509
|
||||
16700 123 5.3577287 0.23468232 0.12320315 0.12447887
|
||||
16800 123 5.3887674 0.27332227 0.14161821 0.12558582
|
||||
16900 123 5.3808542 0.26347121 0.13707725 0.12105334
|
||||
17000 123 5.3780823 0.26002045 0.13613655 0.11611436
|
||||
17100 123 5.3680186 0.24749217 0.13202509 0.12050881
|
||||
17200 123 5.3684375 0.24801367 0.13439899 0.11752469
|
||||
17300 123 5.4125961 0.3029867 0.16565047 0.11809568
|
||||
17400 122 5.5149345 0.37796948 0.20589267 0.11706067
|
||||
17500 122 5.5376072 0.40625192 0.22528229 0.12168884
|
||||
17600 122 5.594801 0.47759671 0.26839568 0.11784984
|
||||
17700 122 5.6275885 0.51849664 0.29262051 0.12179888
|
||||
17800 122 5.6620933 0.5615387 0.32018546 0.13677725
|
||||
17900 122 5.6781565 0.58157636 0.3344357 0.12144476
|
||||
18000 122 5.6282244 0.51928991 0.30159388 0.1204454
|
||||
18100 122 5.586202 0.46687012 0.27307657 0.11222952
|
||||
18200 122 5.5637664 0.43888345 0.26310303 0.12241507
|
||||
18300 122 5.5396829 0.40884116 0.24778525 0.1180911
|
||||
18400 122 5.4933462 0.35103977 0.21102933 0.11419006
|
||||
18500 122 5.4481058 0.29460584 0.17806848 0.11684132
|
||||
18600 122 5.4233233 0.26369154 0.16408249 0.1156897
|
||||
18700 122 5.4169852 0.2557853 0.16164551 0.11432694
|
||||
18800 122 5.402297 0.23746293 0.15603756 0.11338406
|
||||
18900 122 5.4104328 0.24761171 0.16157759 0.11644593
|
||||
19000 122 5.412422 0.25009306 0.16543071 0.12348188
|
||||
19100 121 5.4546597 0.24911594 0.16510456 0.11730105
|
||||
19200 121 5.477336 0.27746126 0.17852522 0.12205725
|
||||
19300 121 5.4969126 0.30193201 0.18816473 0.12510238
|
||||
19400 121 5.4919974 0.29578804 0.18327042 0.13220061
|
||||
19500 121 5.5032315 0.30983075 0.18311811 0.12373881
|
||||
19600 121 5.5150579 0.32461371 0.188055 0.12242899
|
||||
19700 121 5.5066378 0.31408861 0.17504793 0.11846492
|
||||
19800 121 5.5088848 0.31689728 0.17340496 0.12928325
|
||||
19900 121 5.518969 0.3295026 0.17902712 0.12421202
|
||||
20000 121 5.500687 0.30665007 0.16793997 0.11961173
|
||||
Loop time of 0.846225 on 4 procs for 5000 steps with 121 atoms
|
||||
|
||||
Performance: 2552512.312 tau/day, 5908.593 timesteps/s, 714.940 katom-step/s
|
||||
93.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.014413 | 0.044158 | 0.072833 | 13.5 | 5.22
|
||||
Neigh | 0.0052624 | 0.017126 | 0.029893 | 8.6 | 2.02
|
||||
Comm | 0.16098 | 0.19782 | 0.23481 | 7.8 | 23.38
|
||||
Output | 0.36418 | 0.45212 | 0.56168 | 11.2 | 53.43
|
||||
Modify | 0.0060017 | 0.0089185 | 0.012537 | 3.0 | 1.05
|
||||
Other | | 0.1261 | | | 14.90
|
||||
|
||||
Nlocal: 30.25 ave 70 max 6 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 90.75 ave 115 max 51 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 397
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
97 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.714 | 7.735 | 7.772 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 121 0.24532005 0.30665007 0.16793997 -0.012946091
|
||||
20100 121 0.070310831 0.087888539 0.059490062 0.0061478766
|
||||
20200 121 0.058503348 0.073129185 0.048875925 0.0080927743
|
||||
20300 121 0.074158085 0.092697606 0.057028332 0.0049379442
|
||||
20400 121 0.069187269 0.086484086 0.053655733 0.0084660817
|
||||
20500 121 0.049853491 0.062316864 0.042577287 0.0079711185
|
||||
20600 121 0.027931559 0.034914449 0.024826071 0.0076385601
|
||||
20700 121 0.02435771 0.030447138 0.023586479 0.0071381857
|
||||
20800 121 0.027310414 0.034138017 0.026926085 0.0043612389
|
||||
20900 121 0.029470455 0.036838069 0.029013973 0.0062985385
|
||||
21000 121 0.023688651 0.029610814 0.025737577 0.0057806959
|
||||
21100 121 0.023374366 0.029217957 0.025924122 0.0058256936
|
||||
21200 121 0.021626125 0.027032657 0.023553381 0.014915428
|
||||
21300 121 0.021517013 0.026896267 0.022266041 0.004819531
|
||||
21400 121 0.016777636 0.020972045 0.018448572 0.009234911
|
||||
21500 121 0.012262338 0.015327922 0.015298231 0.0093816891
|
||||
21600 121 0.010918726 0.013648408 0.014833772 0.0042474881
|
||||
21700 121 0.011053972 0.013817464 0.014459702 -0.00021820222
|
||||
21800 121 0.010129668 0.012662085 0.013081406 0.0093930484
|
||||
21900 121 0.010085003 0.012606253 0.014417094 0.0014178838
|
||||
22000 121 0.0094973723 0.011871715 0.013900622 0.0093877537
|
||||
22100 121 0.0080430026 0.010053753 0.013679106 0.011613255
|
||||
22200 121 0.0084072004 0.010509001 0.016027076 0.0035671687
|
||||
22300 121 0.0083085041 0.01038563 0.016132368 0.007693786
|
||||
22400 121 0.0079992179 0.0099990223 0.013265655 0.0073563811
|
||||
22500 121 0.0075222565 0.0094028207 0.012763827 0.005799044
|
||||
22600 121 0.0076786112 0.0095982641 0.013866351 0.0030214484
|
||||
22700 121 0.0075068394 0.0093835492 0.01384418 0.0033702789
|
||||
22800 121 0.0075163502 0.0093954378 0.01466975 0.0088268737
|
||||
22900 121 0.0073136786 0.0091420982 0.01666669 0.0020531991
|
||||
23000 121 0.0065872318 0.0082340397 0.017972587 0.0034194419
|
||||
23100 121 0.0063174876 0.0078968594 0.017018904 0.0051829986
|
||||
23200 121 0.0058594142 0.0073242678 0.015780468 0.0093443152
|
||||
23300 121 0.0050717858 0.0063397323 0.015531664 0.0087588922
|
||||
23400 121 0.0044421678 0.0055527097 0.014248905 0.010646639
|
||||
23500 121 0.0052180265 0.0065225331 0.014224204 0.0052692738
|
||||
23600 121 0.0050225965 0.0062782457 0.013251361 8.1489022e-05
|
||||
23700 121 0.0043059081 0.0053823852 0.012534622 0.011277239
|
||||
23800 121 0.005020183 0.0062752288 0.013523699 0.0054700239
|
||||
23900 121 0.0043855799 0.0054819749 0.011206169 0.0045566463
|
||||
24000 121 0.0046936439 0.0058670549 0.012484576 0.0019612692
|
||||
24100 121 0.0043263983 0.0054079978 0.011282329 0.011449127
|
||||
24200 121 0.0046535879 0.0058169849 0.01164271 0.0025540746
|
||||
24300 121 0.0047667406 0.0059584258 0.012209842 0.010676731
|
||||
24400 121 0.0051690398 0.0064612997 0.01360687 0.0052054694
|
||||
24500 121 0.0052783564 0.0065979455 0.015574736 0.0058826112
|
||||
24600 121 0.0050801526 0.0063501908 0.013665316 0.0068012924
|
||||
24700 121 0.0045361573 0.0056701966 0.013281602 0.0050417691
|
||||
24800 121 0.0053013393 0.0066266741 0.012795325 0.0065965543
|
||||
24900 121 0.0049826013 0.0062282516 0.012373501 0.0044363731
|
||||
25000 121 0.0047299253 0.0059124066 0.012200307 0.0093926226
|
||||
Loop time of 0.573761 on 4 procs for 5000 steps with 121 atoms
|
||||
|
||||
Performance: 3764633.700 tau/day, 8714.430 timesteps/s, 1.054 Matom-step/s
|
||||
92.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.001103 | 0.024207 | 0.060775 | 16.0 | 4.22
|
||||
Neigh | 0.00084396 | 0.0046703 | 0.010272 | 5.7 | 0.81
|
||||
Comm | 0.096646 | 0.13337 | 0.15528 | 6.6 | 23.25
|
||||
Output | 0.25027 | 0.31495 | 0.39587 | 9.8 | 54.89
|
||||
Modify | 0.0012358 | 0.0031766 | 0.0056404 | 3.5 | 0.55
|
||||
Other | | 0.09338 | | | 16.28
|
||||
|
||||
Nlocal: 30.25 ave 66 max 5 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
Nghost: 90.75 ave 116 max 55 min
|
||||
Histogram: 1 0 0 1 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 155
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:03
|
||||
491
examples/gransurf/log.1Jul24.tribox.gran.global.g++.1
Normal file
491
examples/gransurf/log.1Jul24.tribox.gran.global.g++.1
Normal file
@ -0,0 +1,491 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tribox
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
24 triangles with 14 points
|
||||
|
||||
fix 20 all surface/global tris hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 31 31 31
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke, perpetual
|
||||
attributes: half, newton on, size
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 0.5873 | 0.5873 | 0.5873 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 30 0.803783 0.803783 0.39507978 0.0029137134
|
||||
200 30 1.1967995 1.1967995 0.5882574 0.0043383984
|
||||
300 30 1.2814686 1.2814686 0.62987441 0.0046453238
|
||||
400 30 0.82347039 0.82347039 0.41172861 0.0029850802
|
||||
500 30 0.76963938 0.76963938 0.38709352 0.0042867255
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 64 0.51325196 0.51325196 0.26472957 0.0045780407
|
||||
700 64 0.57133229 0.57133229 0.29476966 0.0046847812
|
||||
800 64 0.630634 0.630634 0.32751956 0.0050038133
|
||||
900 64 0.54233611 0.54233611 0.28819808 0.0052880896
|
||||
1000 64 0.48543152 0.48543152 0.26491902 0.0064773948
|
||||
1100 64 0.47303609 0.47303609 0.2578388 0.0057125611
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 99 0.40053109 0.40053109 0.2195167 0.0081778049
|
||||
1300 99 0.42696772 0.42696772 0.23049402 0.006385146
|
||||
1400 99 0.37139574 0.37139574 0.20331799 0.0074485307
|
||||
1500 99 0.33478846 0.33478846 0.18670496 0.0061673941
|
||||
1600 99 0.29982872 0.29982872 0.16693769 0.0051747985
|
||||
1700 100 0.2069625 0.2069625 0.12302495 0.005783623
|
||||
1800 100 0.12902068 0.12902068 0.08608601 0.0019792233
|
||||
1900 100 0.080857094 0.080857094 0.059672509 0.0022973108
|
||||
2000 100 0.064403955 0.064403955 0.046429731 0.0011922926
|
||||
2100 100 0.056475498 0.056475498 0.038678923 0.00085304992
|
||||
2200 100 0.050018256 0.050018256 0.034384821 0.0032112539
|
||||
2300 100 0.021868304 0.021868304 0.017658151 0.0011526373
|
||||
2400 100 0.022189236 0.022189236 0.016714436 0.00056488482
|
||||
2500 100 0.012569738 0.012569738 0.010200523 0.00061305414
|
||||
2600 100 0.010861951 0.010861951 0.0086986505 0.00028075976
|
||||
2700 100 0.0092647871 0.0092647871 0.0071124847 0.00043064637
|
||||
2800 100 0.0078527688 0.0078527688 0.0059155703 0.00016902461
|
||||
2900 100 0.0048376734 0.0048376734 0.0039864566 9.6898167e-05
|
||||
3000 100 0.004997394 0.004997394 0.0038195379 0.00012912771
|
||||
3100 100 0.0025381263 0.0025381263 0.0022290621 9.3139494e-05
|
||||
3200 100 0.0023614621 0.0023614621 0.0020627353 0.00043394794
|
||||
3300 100 0.0018926758 0.0018926758 0.0016726508 9.015816e-05
|
||||
3400 100 0.0016956727 0.0016956727 0.0015060379 9.8437955e-05
|
||||
3500 100 0.0020822011 0.0020822011 0.0016148425 6.8104893e-05
|
||||
3600 100 0.0010660921 0.0010660921 0.0010106443 -4.0921854e-05
|
||||
3700 100 0.00093117128 0.00093117128 0.00086120243 3.9299397e-05
|
||||
3800 100 0.00083426775 0.00083426775 0.00075721786 3.2376e-05
|
||||
3900 100 0.00076790351 0.00076790351 0.00070733354 3.2793518e-05
|
||||
4000 100 0.0006859536 0.0006859536 0.00062258677 3.0547763e-05
|
||||
4100 100 0.00050291116 0.00050291116 0.00047200581 0.00015040263
|
||||
4200 100 0.00038735513 0.00038735513 0.0003849192 0.00017016843
|
||||
4300 100 0.00031672623 0.00031672623 0.00032789248 7.1880229e-05
|
||||
4400 100 0.00027595545 0.00027595545 0.00029274116 3.120052e-05
|
||||
4500 100 0.00027092394 0.00027092394 0.00028257706 4.1409733e-05
|
||||
4600 100 0.00026641048 0.00026641048 0.00027631265 3.2258687e-05
|
||||
4700 100 0.0002550395 0.0002550395 0.00026456068 4.4752996e-05
|
||||
4800 100 0.00023866037 0.00023866037 0.00025120225 3.3651155e-05
|
||||
4900 100 0.00019734428 0.00019734428 0.0002099377 2.7700004e-05
|
||||
5000 100 0.00019733184 0.00019733184 0.00020831062 2.6903281e-05
|
||||
Loop time of 0.377792 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5717435.568 tau/day, 13234.805 timesteps/s, 1.323 Matom-step/s
|
||||
98.4% 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.0034096 | 0.0034096 | 0.0034096 | 0.0 | 0.90
|
||||
Neigh | 0.0046279 | 0.0046279 | 0.0046279 | 0.0 | 1.22
|
||||
Comm | 0.00036326 | 0.00036326 | 0.00036326 | 0.0 | 0.10
|
||||
Output | 0.31831 | 0.31831 | 0.31831 | 0.0 | 84.25
|
||||
Modify | 0.049948 | 0.049948 | 0.049948 | 0.0 | 13.22
|
||||
Other | | 0.001137 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 160 ave 160 max 160 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 160
|
||||
Ave neighs/atom = 1.6
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00019733184 0.00019733184 0.00020831062 2.6930089e-05
|
||||
5100 100 0.14755911 0.14755911 0.085321575 0.0037275005
|
||||
5200 100 0.17345004 0.17345004 0.10013131 0.0029005613
|
||||
5300 100 0.17839393 0.17839393 0.09955336 0.0024744353
|
||||
5400 100 0.18892743 0.18892743 0.10178919 0.0032939874
|
||||
5500 100 0.19613791 0.19613791 0.10380256 0.0027253339
|
||||
5600 100 0.19978293 0.19978293 0.10442183 0.0031193701
|
||||
5700 100 0.21239814 0.21239814 0.10965684 0.0027404998
|
||||
5800 100 0.22432265 0.22432265 0.11476437 0.0031430877
|
||||
5900 100 0.22942225 0.22942225 0.11733388 0.00357628
|
||||
6000 100 0.24043354 0.24043354 0.12272731 0.003255827
|
||||
6100 100 0.25159401 0.25159401 0.1279307 0.0040378705
|
||||
6200 100 0.25902708 0.25902708 0.13158752 0.0036512959
|
||||
6300 100 0.2659723 0.2659723 0.13535001 0.0037298324
|
||||
6400 100 0.27607055 0.27607055 0.14001655 0.0043863861
|
||||
6500 100 0.28259585 0.28259585 0.14337861 0.004432214
|
||||
6600 100 0.29041535 0.29041535 0.14658628 0.0041374757
|
||||
6700 100 0.29338383 0.29338383 0.14816762 0.0043726723
|
||||
6800 100 0.29363497 0.29363497 0.14803605 0.0048496941
|
||||
6900 100 0.29819446 0.29819446 0.14992058 0.0048661826
|
||||
7000 100 0.30253288 0.30253288 0.15178707 0.0047893404
|
||||
7100 100 0.30364521 0.30364521 0.15238027 0.0053735204
|
||||
7200 100 0.30571022 0.30571022 0.15341639 0.0050547621
|
||||
7300 100 0.30762729 0.30762729 0.15433251 0.0048579985
|
||||
7400 100 0.30739457 0.30739457 0.15429161 0.0052840169
|
||||
7500 100 0.3095106 0.3095106 0.15546551 0.0047742904
|
||||
7600 100 0.30994994 0.30994994 0.15560402 0.0055289317
|
||||
7700 100 0.3102136 0.3102136 0.1555494 0.0053911148
|
||||
7800 100 0.31109652 0.31109652 0.15598755 0.0050957646
|
||||
7900 100 0.31190144 0.31190144 0.15640137 0.0050144069
|
||||
8000 100 0.3124433 0.3124433 0.15676067 0.0049291948
|
||||
8100 100 0.31255831 0.31255831 0.15682783 0.0053772662
|
||||
8200 100 0.31276764 0.31276764 0.15700445 0.0051137616
|
||||
8300 100 0.31476621 0.31476621 0.15777763 0.0050115786
|
||||
8400 100 0.31520108 0.31520108 0.1579466 0.0052663181
|
||||
8500 100 0.31519638 0.31519638 0.15797839 0.0054592691
|
||||
8600 100 0.31650736 0.31650736 0.15853548 0.006061159
|
||||
8700 100 0.31783185 0.31783185 0.15910269 0.0055642729
|
||||
8800 100 0.31962922 0.31962922 0.15981552 0.0051073677
|
||||
8900 100 0.32028059 0.32028059 0.16016593 0.0051129724
|
||||
9000 100 0.32067355 0.32067355 0.16033852 0.005334504
|
||||
9100 100 0.32073134 0.32073134 0.16036476 0.0052193698
|
||||
9200 100 0.32149618 0.32149618 0.16073834 0.0051959338
|
||||
9300 100 0.32200413 0.32200413 0.16101431 0.0053371119
|
||||
9400 100 0.32243427 0.32243427 0.16127313 0.0051442587
|
||||
9500 100 0.32287887 0.32287887 0.16159452 0.0051133998
|
||||
9600 100 0.32358279 0.32358279 0.16193072 0.0051698096
|
||||
9700 100 0.32486591 0.32486591 0.16249108 0.0052421695
|
||||
9800 100 0.32481094 0.32481094 0.16244971 0.0052881334
|
||||
9900 100 0.32619742 0.32619742 0.16300857 0.0056091381
|
||||
10000 100 0.32685101 0.32685101 0.16333907 0.0052565109
|
||||
Loop time of 0.395516 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5461219.023 tau/day, 12641.711 timesteps/s, 1.264 Matom-step/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.0097241 | 0.0097241 | 0.0097241 | 0.0 | 2.46
|
||||
Neigh | 0.0063725 | 0.0063725 | 0.0063725 | 0.0 | 1.61
|
||||
Comm | 0.00038378 | 0.00038378 | 0.00038378 | 0.0 | 0.10
|
||||
Output | 0.31516 | 0.31516 | 0.31516 | 0.0 | 79.68
|
||||
Modify | 0.062652 | 0.062652 | 0.062652 | 0.0 | 15.84
|
||||
Other | | 0.001224 | | | 0.31
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 190 ave 190 max 190 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 190
|
||||
Ave neighs/atom = 1.9
|
||||
Neighbor list builds = 334
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 100 0.32685101 0.32685101 0.16333907 0.0052114688
|
||||
10100 100 0.082150677 0.082150677 0.051495507 0.0065164512
|
||||
10200 100 0.044140364 0.044140364 0.034724328 0.0010465239
|
||||
10300 100 0.033122648 0.033122648 0.026625827 0.0022974917
|
||||
10400 100 0.026649705 0.026649705 0.021846707 0.00035032509
|
||||
10500 100 0.022611369 0.022611369 0.018405546 0.0004069116
|
||||
10600 100 0.018296124 0.018296124 0.014829351 0.00026270833
|
||||
10700 100 0.015248747 0.015248747 0.012084705 0.00023227455
|
||||
10800 100 0.014989372 0.014989372 0.011849067 0.00054473331
|
||||
10900 100 0.011865503 0.011865503 0.0094526639 0.00028431427
|
||||
11000 100 0.0096206477 0.0096206477 0.0077795159 0.00012996686
|
||||
11100 100 0.0085270379 0.0085270379 0.0069458369 0.00021692214
|
||||
11200 100 0.00760939 0.00760939 0.0062336019 0.00015816658
|
||||
11300 100 0.0070094711 0.0070094711 0.0056987409 9.7160075e-05
|
||||
11400 100 0.0064681327 0.0064681327 0.0053334513 0.0001693687
|
||||
11500 100 0.0054400476 0.0054400476 0.0044705267 8.1382559e-05
|
||||
11600 100 0.005206949 0.005206949 0.0042892806 7.0309283e-05
|
||||
11700 100 0.0044637648 0.0044637648 0.0037251717 5.4172517e-05
|
||||
11800 100 0.0039969168 0.0039969168 0.003362444 2.0226315e-05
|
||||
11900 100 0.0033117132 0.0033117132 0.0027762101 5.2311253e-05
|
||||
12000 100 0.0031073405 0.0031073405 0.0025984799 3.9890528e-05
|
||||
12100 100 0.0029847617 0.0029847617 0.0025070771 -5.7259344e-06
|
||||
12200 100 0.0028458878 0.0028458878 0.0024108535 3.5217862e-05
|
||||
12300 100 0.0026501923 0.0026501923 0.0022711794 0.00012033569
|
||||
12400 100 0.0025425504 0.0025425504 0.0021847643 3.1464061e-05
|
||||
12500 100 0.0024161319 0.0024161319 0.0020843813 0.00014941327
|
||||
12600 100 0.002341327 0.002341327 0.0020232445 2.8973921e-05
|
||||
12700 100 0.0022334192 0.0022334192 0.0019425572 3.0790164e-05
|
||||
12800 100 0.0021889403 0.0021889403 0.0019088353 2.9638662e-05
|
||||
12900 100 0.0020442842 0.0020442842 0.0018049012 2.5298016e-05
|
||||
13000 100 0.001803154 0.001803154 0.0016328702 2.2314031e-05
|
||||
13100 100 0.0016791405 0.0016791405 0.0015327583 2.2967562e-05
|
||||
13200 100 0.001622137 0.001622137 0.0014810169 4.0326561e-05
|
||||
13300 100 0.001601531 0.001601531 0.0014650816 1.9818946e-05
|
||||
13400 100 0.0015591399 0.0015591399 0.0014123726 2.119773e-05
|
||||
13500 100 0.0014546357 0.0014546357 0.0013328423 1.8001117e-05
|
||||
13600 100 0.0013998773 0.0013998773 0.0012913696 2.6202181e-05
|
||||
13700 100 0.001367574 0.001367574 0.0012631494 1.6923729e-05
|
||||
13800 100 0.001225732 0.001225732 0.0011125165 1.4445147e-05
|
||||
13900 100 0.0012086291 0.0012086291 0.0010972374 2.8597468e-05
|
||||
14000 100 0.0011916306 0.0011916306 0.0010833978 7.2381933e-05
|
||||
14100 100 0.0011461149 0.0011461149 0.0010110271 1.4183172e-05
|
||||
14200 100 0.0011209785 0.0011209785 0.00099190436 1.1546608e-05
|
||||
14300 100 0.0011050802 0.0011050802 0.00098070422 1.3675367e-05
|
||||
14400 100 0.0010910417 0.0010910417 0.00097025303 1.3501641e-05
|
||||
14500 100 0.0010645152 0.0010645152 0.00093785696 1.3173375e-05
|
||||
14600 100 0.0010479185 0.0010479185 0.00092353031 2.5164629e-05
|
||||
14700 100 0.00099034477 0.00099034477 0.0008638973 1.2874356e-05
|
||||
14800 100 0.00099115544 0.00099115544 0.00086195396 1.2265549e-05
|
||||
14900 100 0.00097510619 0.00097510619 0.00083043649 6.0289327e-05
|
||||
15000 100 0.00095883902 0.00095883902 0.00080522184 1.1865633e-05
|
||||
Loop time of 0.389832 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5540855.231 tau/day, 12826.054 timesteps/s, 1.283 Matom-step/s
|
||||
96.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.0031065 | 0.0031065 | 0.0031065 | 0.0 | 0.80
|
||||
Neigh | 0.0014317 | 0.0014317 | 0.0014317 | 0.0 | 0.37
|
||||
Comm | 0.000314 | 0.000314 | 0.000314 | 0.0 | 0.08
|
||||
Output | 0.32805 | 0.32805 | 0.32805 | 0.0 | 84.15
|
||||
Modify | 0.055756 | 0.055756 | 0.055756 | 0.0 | 14.30
|
||||
Other | | 0.001173 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 165 ave 165 max 165 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 165
|
||||
Ave neighs/atom = 1.65
|
||||
Neighbor list builds = 69
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 100 0.00095883902 0.00095883902 0.00080522184 1.1865633e-05
|
||||
15100 100 0.16225441 0.16225441 0.098498099 0.0064159333
|
||||
15200 100 0.22482098 0.22482098 0.12948232 0.003576331
|
||||
15300 100 0.2458026 0.2458026 0.1393646 0.006749306
|
||||
15400 100 0.26239222 0.26239222 0.1469859 0.0089800228
|
||||
15500 100 0.28687382 0.28687382 0.15847135 0.0079704333
|
||||
15600 100 0.28622953 0.28622953 0.15902139 0.0082281462
|
||||
15700 100 0.30668089 0.30668089 0.16265483 0.014688893
|
||||
15800 100 0.33007713 0.33007713 0.17247344 0.0099574571
|
||||
15900 100 0.35773029 0.35773029 0.18298391 0.01415523
|
||||
16000 100 0.36309971 0.36309971 0.18514042 0.010763173
|
||||
16100 100 0.36974105 0.36974105 0.18746237 0.010738235
|
||||
16200 100 0.36988383 0.36988383 0.18775314 0.014768427
|
||||
16300 100 0.37560588 0.37560588 0.19010652 0.014297415
|
||||
16400 100 0.37747146 0.37747146 0.19143031 0.014086853
|
||||
16500 100 0.38053331 0.38053331 0.19248441 0.01837541
|
||||
16600 100 0.37315821 0.37315821 0.1881627 0.0098076132
|
||||
16700 100 0.38286964 0.38286964 0.19289589 0.011785316
|
||||
16800 100 0.38013501 0.38013501 0.19200912 0.0138546
|
||||
16900 100 0.37496008 0.37496008 0.19035729 0.010235176
|
||||
17000 100 0.365244 0.365244 0.18508129 0.011814705
|
||||
17100 100 0.36324363 0.36324363 0.18539176 0.0077602876
|
||||
17200 100 0.36563128 0.36563128 0.18828717 0.009760622
|
||||
17300 100 0.41040797 0.41040797 0.21297576 0.0060030421
|
||||
17400 100 0.42784496 0.42784496 0.22357917 0.0072328321
|
||||
17500 100 0.44480315 0.44480315 0.23296103 0.0081208771
|
||||
17600 100 0.49540498 0.49540498 0.26207461 0.0094193362
|
||||
17700 100 0.53563972 0.53563972 0.28429788 0.0096153439
|
||||
17800 100 0.59909402 0.59909402 0.31832665 0.0086897236
|
||||
17900 100 0.65975736 0.65975736 0.35361646 0.010946403
|
||||
18000 100 0.67883738 0.67883738 0.36868438 0.010453697
|
||||
18100 100 0.67229859 0.67229859 0.37009573 0.011447688
|
||||
18200 100 0.58740281 0.58740281 0.32918911 0.012430038
|
||||
18300 100 0.51321184 0.51321184 0.29212329 0.014782894
|
||||
18400 100 0.46432678 0.46432678 0.26861208 0.0074401518
|
||||
18500 100 0.46083979 0.46083979 0.26638884 0.0090587319
|
||||
18600 100 0.41968764 0.41968764 0.24616432 0.0091476182
|
||||
18700 100 0.40749768 0.40749768 0.24073731 0.0073954099
|
||||
18800 100 0.38490007 0.38490007 0.23057035 0.0056617504
|
||||
18900 100 0.36115679 0.36115679 0.21996888 0.0069095868
|
||||
19000 100 0.31118149 0.31118149 0.19549915 0.0066423887
|
||||
19100 100 0.34419249 0.34419249 0.20736311 0.012418102
|
||||
19200 100 0.33174248 0.33174248 0.19629654 0.0074405926
|
||||
19300 100 0.33028394 0.33028394 0.19472996 0.0077286569
|
||||
19400 100 0.33612501 0.33612501 0.19522775 0.0083424841
|
||||
19500 100 0.32216161 0.32216161 0.18401278 0.0088692814
|
||||
19600 100 0.33681829 0.33681829 0.18758804 0.0097379383
|
||||
19700 100 0.33730835 0.33730835 0.18474995 0.009296681
|
||||
19800 100 0.3351213 0.3351213 0.18164387 0.0061672199
|
||||
19900 100 0.32674396 0.32674396 0.17780137 0.0062277401
|
||||
20000 100 0.31549601 0.31549601 0.17276762 0.011954545
|
||||
Loop time of 0.416473 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5186412.038 tau/day, 12005.583 timesteps/s, 1.201 Matom-step/s
|
||||
95.2% 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.0092038 | 0.0092038 | 0.0092038 | 0.0 | 2.21
|
||||
Neigh | 0.0099854 | 0.0099854 | 0.0099854 | 0.0 | 2.40
|
||||
Comm | 0.00041171 | 0.00041171 | 0.00041171 | 0.0 | 0.10
|
||||
Output | 0.33871 | 0.33871 | 0.33871 | 0.0 | 81.33
|
||||
Modify | 0.056911 | 0.056911 | 0.056911 | 0.0 | 13.67
|
||||
Other | | 0.001256 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 242 ave 242 max 242 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 242
|
||||
Ave neighs/atom = 2.42
|
||||
Neighbor list builds = 435
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 100 0.31549601 0.31549601 0.17276762 0.011924862
|
||||
20100 100 0.067243668 0.067243668 0.051058315 0.0026847669
|
||||
20200 100 0.064954648 0.064954648 0.04577406 0.0031985925
|
||||
20300 100 0.081722159 0.081722159 0.052328099 0.003382093
|
||||
20400 100 0.052538018 0.052538018 0.038041695 0.0080953559
|
||||
20500 100 0.045138106 0.045138106 0.032227169 0.0035839274
|
||||
20600 100 0.044187088 0.044187088 0.031849801 0.0032417719
|
||||
20700 100 0.048791318 0.048791318 0.033838035 0.0030783015
|
||||
20800 100 0.042228029 0.042228029 0.029496426 0.0026771471
|
||||
20900 100 0.037884649 0.037884649 0.026659395 0.0016131444
|
||||
21000 100 0.036121934 0.036121934 0.025961479 0.0033546991
|
||||
21100 100 0.041151215 0.041151215 0.028554924 0.0014986709
|
||||
21200 100 0.032352882 0.032352882 0.024166876 0.0018674452
|
||||
21300 100 0.033808076 0.033808076 0.02501534 0.0014150028
|
||||
21400 100 0.033233201 0.033233201 0.024762604 0.0015124318
|
||||
21500 100 0.023344798 0.023344798 0.017595957 0.0020406313
|
||||
21600 100 0.024137168 0.024137168 0.017835056 0.001648494
|
||||
21700 100 0.020201901 0.020201901 0.015367789 0.0014089977
|
||||
21800 100 0.019279358 0.019279358 0.014625498 0.0012643094
|
||||
21900 100 0.01893081 0.01893081 0.014292746 0.0015049479
|
||||
22000 100 0.017257227 0.017257227 0.01315079 0.0011652685
|
||||
22100 100 0.015479952 0.015479952 0.011715026 0.0014536538
|
||||
22200 100 0.016610168 0.016610168 0.012253776 0.00089466949
|
||||
22300 100 0.014924039 0.014924039 0.011273468 0.0010494839
|
||||
22400 100 0.015991668 0.015991668 0.011902404 0.00082344174
|
||||
22500 100 0.011574074 0.011574074 0.0087681303 0.00081009385
|
||||
22600 100 0.012494171 0.012494171 0.0092328529 0.0005622816
|
||||
22700 100 0.011070984 0.011070984 0.0083661745 0.00080065357
|
||||
22800 100 0.01131513 0.01131513 0.0084259241 0.00073680805
|
||||
22900 100 0.010217077 0.010217077 0.0077647566 0.00053727888
|
||||
23000 100 0.0099409381 0.0099409381 0.0074288509 0.00058448502
|
||||
23100 100 0.0091176585 0.0091176585 0.0069209665 0.00063336231
|
||||
23200 100 0.0083540727 0.0083540727 0.0063805491 0.0005281495
|
||||
23300 100 0.008619666 0.008619666 0.0065404908 0.0005398125
|
||||
23400 100 0.0088762213 0.0088762213 0.0065206851 0.00046304022
|
||||
23500 100 0.007364061 0.007364061 0.0055771232 0.00046541178
|
||||
23600 100 0.0074046272 0.0074046272 0.0055598275 0.00036522805
|
||||
23700 100 0.0073881556 0.0073881556 0.0055580858 0.0005353812
|
||||
23800 100 0.0072954594 0.0072954594 0.0053965497 0.00041955961
|
||||
23900 100 0.006566226 0.006566226 0.0047704154 0.00037213632
|
||||
24000 100 0.0052279617 0.0052279617 0.0039151171 0.00039220479
|
||||
24100 100 0.004661037 0.004661037 0.0035353607 0.00036592087
|
||||
24200 100 0.0046822639 0.0046822639 0.0035561511 0.00036233017
|
||||
24300 100 0.0047878887 0.0047878887 0.0036222045 0.0003906286
|
||||
24400 100 0.005705559 0.005705559 0.0041298188 0.00039793154
|
||||
24500 100 0.0038440196 0.0038440196 0.0030815263 0.00050064408
|
||||
24600 100 0.0035754817 0.0035754817 0.0030293001 0.00032292161
|
||||
24700 100 0.003446554 0.003446554 0.0027976688 0.00029115924
|
||||
24800 100 0.0028987207 0.0028987207 0.0023988341 0.00018959598
|
||||
24900 100 0.0027083267 0.0027083267 0.0021669208 0.0001799362
|
||||
25000 100 0.0026561456 0.0026561456 0.0020638865 0.00014386648
|
||||
Loop time of 0.394353 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5477329.555 tau/day, 12679.004 timesteps/s, 1.268 Matom-step/s
|
||||
82.6% 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.0073102 | 0.0073102 | 0.0073102 | 0.0 | 1.85
|
||||
Neigh | 0.00398 | 0.00398 | 0.00398 | 0.0 | 1.01
|
||||
Comm | 0.00033952 | 0.00033952 | 0.00033952 | 0.0 | 0.09
|
||||
Output | 0.32686 | 0.32686 | 0.32686 | 0.0 | 82.89
|
||||
Modify | 0.054687 | 0.054687 | 0.054687 | 0.0 | 13.87
|
||||
Other | | 0.001176 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 147 ave 147 max 147 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 147
|
||||
Ave neighs/atom = 1.47
|
||||
Neighbor list builds = 173
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
492
examples/gransurf/log.1Jul24.tribox.gran.global.g++.4
Normal file
492
examples/gransurf/log.1Jul24.tribox.gran.global.g++.4
Normal file
@ -0,0 +1,492 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
molecule tris surf.tribox
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
24 triangles with 14 points
|
||||
|
||||
fix 20 all surface/global tris hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
#fix 20 all surface/global tris hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 31 31 31
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke, perpetual
|
||||
attributes: half, newton on, size
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 0.4855 | 0.4855 | 0.4855 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 30 0.803783 0.803783 0.39507978 0.0029137134
|
||||
200 30 1.1967995 1.1967995 0.5882574 0.0043383984
|
||||
300 30 1.2814686 1.2814686 0.62987441 0.0046453238
|
||||
400 30 0.82347039 0.82347039 0.41172861 0.0029850802
|
||||
500 30 0.76963938 0.76963938 0.38709352 0.0042867255
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 64 0.51325196 0.51325196 0.26472957 0.0045780407
|
||||
700 64 0.57133229 0.57133229 0.29476966 0.0046847812
|
||||
800 64 0.630634 0.630634 0.32751956 0.0050038133
|
||||
900 64 0.54233611 0.54233611 0.28819808 0.0052880896
|
||||
1000 64 0.48543152 0.48543152 0.26491902 0.0064773948
|
||||
1100 64 0.47303609 0.47303609 0.2578388 0.0057125611
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 99 0.40053109 0.40053109 0.2195167 0.0081778049
|
||||
1300 99 0.42696772 0.42696772 0.23049402 0.006385146
|
||||
1400 99 0.37139574 0.37139574 0.20331799 0.0074485306
|
||||
1500 99 0.33478846 0.33478846 0.18670496 0.0061673941
|
||||
1600 99 0.29982872 0.29982872 0.16693769 0.0051747984
|
||||
1700 100 0.2069625 0.2069625 0.12302495 0.005783624
|
||||
1800 100 0.12902068 0.12902068 0.08608601 0.0019792234
|
||||
1900 100 0.080857095 0.080857095 0.05967251 0.0022973101
|
||||
2000 100 0.064403959 0.064403959 0.046429734 0.0011922946
|
||||
2100 100 0.056475466 0.056475466 0.038678907 0.00085302928
|
||||
2200 100 0.050018273 0.050018273 0.03438483 0.0032112547
|
||||
2300 100 0.02186833 0.02186833 0.01765815 0.001152603
|
||||
2400 100 0.02218925 0.02218925 0.016714386 0.00056474678
|
||||
2500 100 0.012569988 0.012569988 0.010200648 0.0006133907
|
||||
2600 100 0.010862479 0.010862479 0.0086989172 0.00028072722
|
||||
2700 100 0.0092737903 0.0092737903 0.0071165383 0.00041430278
|
||||
2800 100 0.0078587709 0.0078587709 0.00592121 0.00017374958
|
||||
2900 100 0.0048613617 0.0048613617 0.004000904 0.00021321956
|
||||
3000 100 0.0050147313 0.0050147313 0.0038322501 0.00017831675
|
||||
3100 100 0.0025550411 0.0025550411 0.0022405824 6.8592843e-05
|
||||
3200 100 0.0023577912 0.0023577912 0.0020418633 0.0003584618
|
||||
3300 100 0.0018996206 0.0018996206 0.0016777567 7.5165222e-05
|
||||
3400 100 0.001694751 0.001694751 0.0015042348 0.00014566717
|
||||
3500 100 0.0020882068 0.0020882068 0.0016170458 8.7027542e-05
|
||||
3600 100 0.0010813667 0.0010813667 0.0010137349 8.5126382e-05
|
||||
3700 100 0.00094548982 0.00094548982 0.00086966169 4.2409893e-05
|
||||
3800 100 0.00084816181 0.00084816181 0.00077098131 3.011429e-05
|
||||
3900 100 0.00078382097 0.00078382097 0.00071960486 5.939333e-05
|
||||
4000 100 0.00075302926 0.00075302926 0.00067851822 3.2758594e-05
|
||||
4100 100 0.00051405526 0.00051405526 0.00048629367 0.00013859285
|
||||
4200 100 0.00038825626 0.00038825626 0.00038868575 0.00020599691
|
||||
4300 100 0.00031919597 0.00031919597 0.00033058576 0.00010854923
|
||||
4400 100 0.00029919941 0.00029919941 0.00031222783 7.2391663e-05
|
||||
4500 100 0.0002903216 0.0002903216 0.00029974662 5.5125563e-05
|
||||
4600 100 0.0002753977 0.0002753977 0.00028258456 9.6552286e-05
|
||||
4700 100 0.00027064725 0.00027064725 0.0002776974 4.0309048e-05
|
||||
4800 100 0.00024203571 0.00024203571 0.00025112727 3.3700422e-05
|
||||
4900 100 0.00020539914 0.00020539914 0.00021705763 2.7873051e-05
|
||||
5000 100 0.00018816565 0.00018816565 0.00020135634 4.7752851e-05
|
||||
Loop time of 0.63402 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3406832.319 tau/day, 7886.186 timesteps/s, 788.619 katom-step/s
|
||||
95.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.00025776 | 0.0013928 | 0.002766 | 3.1 | 0.22
|
||||
Neigh | 0.0012616 | 0.0021326 | 0.002909 | 1.4 | 0.34
|
||||
Comm | 0.0072148 | 0.011698 | 0.016249 | 4.0 | 1.85
|
||||
Output | 0.41173 | 0.47818 | 0.57141 | 9.8 | 75.42
|
||||
Modify | 0.0023688 | 0.01821 | 0.036988 | 11.8 | 2.87
|
||||
Other | | 0.1224 | | | 19.31
|
||||
|
||||
Nlocal: 25 ave 50 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.5 ave 9 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 40.5 ave 82 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 162
|
||||
Ave neighs/atom = 1.62
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.548 | 4.611 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00018816565 0.00018816565 0.00020135634 4.4246792e-05
|
||||
5100 100 0.14937779 0.14937779 0.086114773 0.0025984359
|
||||
5200 100 0.17697193 0.17697193 0.1019691 0.0026173891
|
||||
5300 100 0.18255024 0.18255024 0.10122134 0.0041759269
|
||||
5400 100 0.19510207 0.19510207 0.1050284 0.0027541295
|
||||
5500 100 0.1980801 0.1980801 0.10458743 0.0027957101
|
||||
5600 100 0.20490362 0.20490362 0.10674522 0.002985542
|
||||
5700 100 0.21087885 0.21087885 0.10861062 0.0030935481
|
||||
5800 100 0.22309411 0.22309411 0.11419601 0.0029760547
|
||||
5900 100 0.22880189 0.22880189 0.1171042 0.0029681474
|
||||
6000 100 0.2363739 0.2363739 0.12083453 0.0032437464
|
||||
6100 100 0.24581768 0.24581768 0.12531649 0.0032571271
|
||||
6200 100 0.25161424 0.25161424 0.12838601 0.0034995369
|
||||
6300 100 0.25972194 0.25972194 0.13241738 0.0035882457
|
||||
6400 100 0.2678312 0.2678312 0.13632033 0.0036612131
|
||||
6500 100 0.27990358 0.27990358 0.14189324 0.0046486676
|
||||
6600 100 0.2827759 0.2827759 0.14317296 0.0048164853
|
||||
6700 100 0.2897351 0.2897351 0.14616568 0.0042753049
|
||||
6800 100 0.29164978 0.29164978 0.14688678 0.0040397004
|
||||
6900 100 0.29377421 0.29377421 0.14786359 0.0051561937
|
||||
7000 100 0.29698841 0.29698841 0.14947643 0.0046008044
|
||||
7100 100 0.3019081 0.3019081 0.15147175 0.0065696769
|
||||
7200 100 0.30532028 0.30532028 0.1531023 0.0045987829
|
||||
7300 100 0.30629289 0.30629289 0.15368598 0.0048558556
|
||||
7400 100 0.30534641 0.30534641 0.15316839 0.0057637671
|
||||
7500 100 0.30786877 0.30786877 0.15429461 0.004843753
|
||||
7600 100 0.30862009 0.30862009 0.15464621 0.0052118056
|
||||
7700 100 0.30900657 0.30900657 0.15478242 0.0048879932
|
||||
7800 100 0.31054034 0.31054034 0.1554636 0.0052082034
|
||||
7900 100 0.31174887 0.31174887 0.15610325 0.0049178073
|
||||
8000 100 0.31247071 0.31247071 0.15647921 0.0052603626
|
||||
8100 100 0.31273024 0.31273024 0.15659099 0.0056001647
|
||||
8200 100 0.3140235 0.3140235 0.15727592 0.004977821
|
||||
8300 100 0.31383701 0.31383701 0.15715969 0.0052231004
|
||||
8400 100 0.31509644 0.31509644 0.15775385 0.0050051889
|
||||
8500 100 0.31498521 0.31498521 0.15762151 0.0052864908
|
||||
8600 100 0.31575201 0.31575201 0.15792624 0.0050759547
|
||||
8700 100 0.31620758 0.31620758 0.15818292 0.0050530619
|
||||
8800 100 0.31691036 0.31691036 0.15860213 0.005004857
|
||||
8900 100 0.31659627 0.31659627 0.15846212 0.0050695163
|
||||
9000 100 0.31769151 0.31769151 0.15903638 0.0050507355
|
||||
9100 100 0.31716143 0.31716143 0.15881355 0.005017094
|
||||
9200 100 0.31633956 0.31633956 0.1585031 0.0053446628
|
||||
9300 100 0.31655443 0.31655443 0.15863537 0.0049328007
|
||||
9400 100 0.31599503 0.31599503 0.15822485 0.0049933297
|
||||
9500 100 0.31660281 0.31660281 0.15853731 0.0049387958
|
||||
9600 100 0.31664518 0.31664518 0.15861539 0.0049222414
|
||||
9700 100 0.31824803 0.31824803 0.15934333 0.0052873464
|
||||
9800 100 0.31820192 0.31820192 0.15932994 0.0049687062
|
||||
9900 100 0.31846082 0.31846082 0.15943054 0.0053817995
|
||||
10000 100 0.31969811 0.31969811 0.15997735 0.005012462
|
||||
Loop time of 0.547282 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3946778.087 tau/day, 9136.060 timesteps/s, 913.606 katom-step/s
|
||||
97.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.00017514 | 0.0033369 | 0.0067434 | 5.4 | 0.61
|
||||
Neigh | 0.0011683 | 0.0026653 | 0.003952 | 2.5 | 0.49
|
||||
Comm | 0.0061274 | 0.010042 | 0.013959 | 3.9 | 1.83
|
||||
Output | 0.36944 | 0.41287 | 0.47628 | 6.7 | 75.44
|
||||
Modify | 0.0022896 | 0.021864 | 0.042571 | 13.2 | 4.00
|
||||
Other | | 0.0965 | | | 17.63
|
||||
|
||||
Nlocal: 25 ave 52 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.25 ave 9 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 47.5 ave 111 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
|
||||
Total # of neighbors = 190
|
||||
Ave neighs/atom = 1.9
|
||||
Neighbor list builds = 334
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.548 | 4.611 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 100 0.31969811 0.31969811 0.15997735 0.005039886
|
||||
10100 100 0.096856693 0.096856693 0.061256799 0.0017653508
|
||||
10200 100 0.06374563 0.06374563 0.049164989 0.00074375479
|
||||
10300 100 0.053346958 0.053346958 0.041648676 0.00088021828
|
||||
10400 100 0.04530167 0.04530167 0.035468031 0.0006357307
|
||||
10500 100 0.036511473 0.036511473 0.02864095 0.00046569718
|
||||
10600 100 0.031850796 0.031850796 0.024752197 0.001484525
|
||||
10700 100 0.027853481 0.027853481 0.021856016 0.00083233598
|
||||
10800 100 0.023988298 0.023988298 0.018551491 0.00025321878
|
||||
10900 100 0.022362927 0.022362927 0.01775739 0.00027674123
|
||||
11000 100 0.019598739 0.019598739 0.01566657 0.00029114873
|
||||
11100 100 0.016949467 0.016949467 0.013323455 0.00054759179
|
||||
11200 100 0.013201141 0.013201141 0.010205793 0.00046859829
|
||||
11300 100 0.010724903 0.010724903 0.0083548813 0.00016110668
|
||||
11400 100 0.0094528501 0.0094528501 0.0074254702 0.00012282294
|
||||
11500 100 0.0081681904 0.0081681904 0.0064435379 0.00018389596
|
||||
11600 100 0.0080112061 0.0080112061 0.006319339 9.9138675e-05
|
||||
11700 100 0.0072316886 0.0072316886 0.0056968863 8.9492146e-05
|
||||
11800 100 0.0066741475 0.0066741475 0.0052653282 9.1792343e-05
|
||||
11900 100 0.0060596979 0.0060596979 0.0048019244 0.00059435717
|
||||
12000 100 0.0058193298 0.0058193298 0.0046098949 7.2231759e-05
|
||||
12100 100 0.0053847114 0.0053847114 0.0042545862 9.3394135e-05
|
||||
12200 100 0.0049412476 0.0049412476 0.0039106158 0.00010078502
|
||||
12300 100 0.004572105 0.004572105 0.0036504695 5.5867397e-05
|
||||
12400 100 0.0042412045 0.0042412045 0.0034175496 0.00036582163
|
||||
12500 100 0.0035923846 0.0035923846 0.0029316243 6.9114212e-05
|
||||
12600 100 0.0032446947 0.0032446947 0.0026668677 4.1659699e-05
|
||||
12700 100 0.003132735 0.003132735 0.0025875973 5.6802791e-05
|
||||
12800 100 0.0030486242 0.0030486242 0.0025160882 0.00024777199
|
||||
12900 100 0.0029017497 0.0029017497 0.0024179283 6.7491687e-05
|
||||
13000 100 0.0027960043 0.0027960043 0.0023415783 3.4600553e-05
|
||||
13100 100 0.0024698607 0.0024698607 0.0020868913 0.00015330841
|
||||
13200 100 0.0023835355 0.0023835355 0.0020283653 2.9496252e-05
|
||||
13300 100 0.0021088439 0.0021088439 0.0018016867 5.3026287e-05
|
||||
13400 100 0.0018955838 0.0018955838 0.0016251265 5.6464898e-05
|
||||
13500 100 0.0017787595 0.0017787595 0.0015273835 0.00010533321
|
||||
13600 100 0.0017398053 0.0017398053 0.0015003761 2.153009e-05
|
||||
13700 100 0.0017070216 0.0017070216 0.0014780376 2.2369503e-05
|
||||
13800 100 0.0016227474 0.0016227474 0.0014210693 6.9106097e-05
|
||||
13900 100 0.0016020414 0.0016020414 0.0013971016 1.9825262e-05
|
||||
14000 100 0.0015849364 0.0015849364 0.0013841731 1.9613588e-05
|
||||
14100 100 0.0014802906 0.0014802906 0.001301188 2.3602632e-05
|
||||
14200 100 0.0014452784 0.0014452784 0.0012723611 5.4930779e-05
|
||||
14300 100 0.0013373933 0.0013373933 0.0011970238 7.7331197e-05
|
||||
14400 100 0.0012644873 0.0012644873 0.0011371743 3.3804604e-05
|
||||
14500 100 0.0012269172 0.0012269172 0.0011090464 0.00019066733
|
||||
14600 100 0.0011790378 0.0011790378 0.0010710915 2.2152438e-05
|
||||
14700 100 0.001141029 0.001141029 0.0010389261 1.4725855e-05
|
||||
14800 100 0.001136936 0.001136936 0.0010350762 1.833013e-05
|
||||
14900 100 0.0010587639 0.0010587639 0.00097375352 1.3102203e-05
|
||||
15000 100 0.0010255325 0.0010255325 0.00094590806 1.5126454e-05
|
||||
Loop time of 0.580448 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3721260.712 tau/day, 8614.029 timesteps/s, 861.403 katom-step/s
|
||||
97.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.00018589 | 0.0012662 | 0.0025061 | 3.1 | 0.22
|
||||
Neigh | 0.00039462 | 0.00072277 | 0.0010682 | 0.0 | 0.12
|
||||
Comm | 0.0012803 | 0.0072067 | 0.013189 | 7.0 | 1.24
|
||||
Output | 0.39942 | 0.45124 | 0.51979 | 6.9 | 77.74
|
||||
Modify | 0.00047645 | 0.019943 | 0.039764 | 13.8 | 3.44
|
||||
Other | | 0.1001 | | | 17.24
|
||||
|
||||
Nlocal: 25 ave 50 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.25 ave 10 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Neighs: 37 ave 77 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 148
|
||||
Ave neighs/atom = 1.48
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.548 | 4.611 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 100 0.0010255325 0.0010255325 0.00094590806 1.4814045e-05
|
||||
15100 100 0.16111221 0.16111221 0.097982105 0.0056716878
|
||||
15200 100 0.21347296 0.21347296 0.12567019 0.0029815056
|
||||
15300 100 0.24705334 0.24705334 0.13884473 0.0078448562
|
||||
15400 100 0.27522493 0.27522493 0.15035782 0.0073215473
|
||||
15500 100 0.30348486 0.30348486 0.16433701 0.0068229641
|
||||
15600 100 0.31550013 0.31550013 0.16857649 0.0077789307
|
||||
15700 100 0.32318922 0.32318922 0.1719013 0.012280847
|
||||
15800 100 0.33908701 0.33908701 0.17750923 0.015821994
|
||||
15900 100 0.35593866 0.35593866 0.18345193 0.021263374
|
||||
16000 100 0.36889801 0.36889801 0.1869234 0.011456078
|
||||
16100 100 0.35809835 0.35809835 0.18158992 0.014811103
|
||||
16200 100 0.36319635 0.36319635 0.18337159 0.012823323
|
||||
16300 100 0.35852464 0.35852464 0.18081456 0.01280934
|
||||
16400 100 0.34902631 0.34902631 0.17663396 0.012992629
|
||||
16500 100 0.33443513 0.33443513 0.16948607 0.012986886
|
||||
16600 100 0.3150597 0.3150597 0.16079097 0.010586882
|
||||
16700 100 0.31338609 0.31338609 0.16045733 0.009805616
|
||||
16800 100 0.30473867 0.30473867 0.15686705 0.014362545
|
||||
16900 100 0.31270607 0.31270607 0.16119766 0.0070575979
|
||||
17000 100 0.2832931 0.2832931 0.14785887 0.0039466166
|
||||
17100 100 0.28215868 0.28215868 0.14795001 0.0068627045
|
||||
17200 100 0.29701033 0.29701033 0.16099476 0.0040667324
|
||||
17300 100 0.3665611 0.3665611 0.19664166 0.0065836505
|
||||
17400 100 0.43400548 0.43400548 0.23335072 0.0096693511
|
||||
17500 100 0.5057676 0.5057676 0.2773349 0.0071479313
|
||||
17600 100 0.52614351 0.52614351 0.29090432 0.0095749902
|
||||
17700 100 0.52478022 0.52478022 0.29525839 0.010528327
|
||||
17800 100 0.53046479 0.53046479 0.29862674 0.012410569
|
||||
17900 100 0.51722354 0.51722354 0.29212965 0.0097423802
|
||||
18000 100 0.51837131 0.51837131 0.29426864 0.010265508
|
||||
18100 100 0.46407283 0.46407283 0.26786292 0.015842602
|
||||
18200 100 0.4281392 0.4281392 0.24883206 0.016085526
|
||||
18300 100 0.36407304 0.36407304 0.22014997 0.0091448904
|
||||
18400 100 0.32800292 0.32800292 0.20387181 0.0088602724
|
||||
18500 100 0.30727965 0.30727965 0.18744751 0.0067928429
|
||||
18600 100 0.31715182 0.31715182 0.19306784 0.0047252497
|
||||
18700 100 0.29383189 0.29383189 0.18450238 0.0046337396
|
||||
18800 100 0.28365185 0.28365185 0.1810902 0.005644391
|
||||
18900 100 0.30670015 0.30670015 0.19521314 0.0048593554
|
||||
19000 100 0.31681967 0.31681967 0.201889 0.0059511233
|
||||
19100 100 0.32218287 0.32218287 0.20009306 0.0093378277
|
||||
19200 100 0.30255724 0.30255724 0.19160821 0.0087838518
|
||||
19300 100 0.31907942 0.31907942 0.19849225 0.0093802566
|
||||
19400 100 0.31650176 0.31650176 0.18834128 0.010429547
|
||||
19500 100 0.32959296 0.32959296 0.19229144 0.012724502
|
||||
19600 100 0.33134974 0.33134974 0.18581781 0.016960866
|
||||
19700 100 0.32878109 0.32878109 0.18215506 0.0096165803
|
||||
19800 100 0.33724696 0.33724696 0.18335211 0.0060443045
|
||||
19900 100 0.33179464 0.33179464 0.17822307 0.010776083
|
||||
20000 100 0.34377432 0.34377432 0.1841787 0.0094534745
|
||||
Loop time of 1.31378 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 1644113.102 tau/day, 3805.817 timesteps/s, 380.582 katom-step/s
|
||||
96.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.0014951 | 0.0059208 | 0.012257 | 5.8 | 0.45
|
||||
Neigh | 0.0055162 | 0.0094303 | 0.017183 | 4.9 | 0.72
|
||||
Comm | 0.051772 | 0.062444 | 0.068614 | 2.5 | 4.75
|
||||
Output | 0.8827 | 0.98488 | 1.1231 | 9.3 | 74.97
|
||||
Modify | 0.02082 | 0.04696 | 0.090098 | 13.2 | 3.57
|
||||
Other | | 0.2041 | | | 15.54
|
||||
|
||||
Nlocal: 25 ave 67 max 0 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 6.25 ave 13 max 0 min
|
||||
Histogram: 1 1 0 0 0 0 0 1 0 1
|
||||
Neighs: 54.75 ave 156 max 0 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 219
|
||||
Ave neighs/atom = 2.19
|
||||
Neighbor list builds = 430
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.611 | 4.611 | 4.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 100 0.34377432 0.34377432 0.1841787 0.0092764528
|
||||
20100 100 0.097239014 0.097239014 0.068864895 0.0029157234
|
||||
20200 100 0.090387219 0.090387219 0.063243792 0.0030276724
|
||||
20300 100 0.10130213 0.10130213 0.065604495 0.0040954401
|
||||
20400 100 0.073193003 0.073193003 0.049395297 0.011005746
|
||||
20500 100 0.064987626 0.064987626 0.042476486 0.0035623578
|
||||
20600 100 0.056092845 0.056092845 0.035733351 0.0046843988
|
||||
20700 100 0.047975467 0.047975467 0.031279933 0.006027
|
||||
20800 100 0.042713655 0.042713655 0.028630415 0.0028623851
|
||||
20900 100 0.027009619 0.027009619 0.019950334 0.0031930947
|
||||
21000 100 0.030115735 0.030115735 0.021837467 0.0031118498
|
||||
21100 100 0.030382146 0.030382146 0.02158358 0.0016950638
|
||||
21200 100 0.028917881 0.028917881 0.020618558 0.0015449848
|
||||
21300 100 0.02553423 0.02553423 0.018753907 0.0020401097
|
||||
21400 100 0.024907599 0.024907599 0.018805009 0.0015219354
|
||||
21500 100 0.028047498 0.028047498 0.020431592 0.0036172877
|
||||
21600 100 0.023143766 0.023143766 0.017048059 0.001391321
|
||||
21700 100 0.025832817 0.025832817 0.018907239 0.0014196777
|
||||
21800 100 0.02294723 0.02294723 0.016986932 0.00099306999
|
||||
21900 100 0.021774769 0.021774769 0.016357385 0.0015445184
|
||||
22000 100 0.019488798 0.019488798 0.014411675 0.00096975376
|
||||
22100 100 0.017498173 0.017498173 0.013303102 0.0013869769
|
||||
22200 100 0.017606431 0.017606431 0.013696534 0.0016275912
|
||||
22300 100 0.01864478 0.01864478 0.014363082 0.00093199338
|
||||
22400 100 0.017184319 0.017184319 0.013013426 0.0007137204
|
||||
22500 100 0.016970049 0.016970049 0.012735761 0.00094285653
|
||||
22600 100 0.015601151 0.015601151 0.011558366 0.00064664867
|
||||
22700 100 0.01532704 0.01532704 0.011052585 0.0011443538
|
||||
22800 100 0.013843117 0.013843117 0.010175224 0.00074058068
|
||||
22900 100 0.0142626 0.0142626 0.010517503 0.00062291367
|
||||
23000 100 0.012672457 0.012672457 0.0095213548 0.00048253765
|
||||
23100 100 0.011770367 0.011770367 0.0088631275 0.0010809683
|
||||
23200 100 0.0099747299 0.0099747299 0.0076787282 0.00049951509
|
||||
23300 100 0.01031026 0.01031026 0.0079525195 0.00064873732
|
||||
23400 100 0.0096104307 0.0096104307 0.0072783079 0.00045628129
|
||||
23500 100 0.0092403444 0.0092403444 0.0069910691 0.00055860189
|
||||
23600 100 0.0087158451 0.0087158451 0.0064234628 0.00042327506
|
||||
23700 100 0.0076095087 0.0076095087 0.005524052 0.00040612722
|
||||
23800 100 0.0073236191 0.0073236191 0.0054016138 0.0002882358
|
||||
23900 100 0.0076690517 0.0076690517 0.0054567733 0.000294478
|
||||
24000 100 0.0068826778 0.0068826778 0.0049332647 0.00025128376
|
||||
24100 100 0.006293019 0.006293019 0.0046682205 0.00029832544
|
||||
24200 100 0.005767467 0.005767467 0.0043594373 0.00026379963
|
||||
24300 100 0.005071854 0.005071854 0.0038348196 0.00026374758
|
||||
24400 100 0.0051487759 0.0051487759 0.0038569741 0.00047689032
|
||||
24500 100 0.0045914722 0.0045914722 0.0034370386 0.00026920355
|
||||
24600 100 0.0042661938 0.0042661938 0.0031638249 0.00023704631
|
||||
24700 100 0.0038978286 0.0038978286 0.0028913869 0.00029112049
|
||||
24800 100 0.0033993745 0.0033993745 0.0025640275 0.00054348397
|
||||
24900 100 0.0030064864 0.0030064864 0.0022631158 0.00016374877
|
||||
25000 100 0.0030540972 0.0030540972 0.0022935172 0.00012379035
|
||||
Loop time of 0.686895 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3144587.502 tau/day, 7279.138 timesteps/s, 727.914 katom-step/s
|
||||
96.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 | 0.00021583 | 0.0031591 | 0.0080919 | 5.8 | 0.46
|
||||
Neigh | 0.00087816 | 0.0020995 | 0.0040495 | 2.9 | 0.31
|
||||
Comm | 0.0031121 | 0.011483 | 0.021843 | 7.2 | 1.67
|
||||
Output | 0.45899 | 0.52212 | 0.60018 | 7.4 | 76.01
|
||||
Modify | 0.00065063 | 0.023045 | 0.054608 | 15.4 | 3.35
|
||||
Other | | 0.125 | | | 18.20
|
||||
|
||||
Nlocal: 25 ave 57 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Nghost: 5.25 ave 13 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
Neighs: 38.75 ave 96 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 155
|
||||
Ave neighs/atom = 1.55
|
||||
Neighbor list builds = 183
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:03
|
||||
480
examples/gransurf/log.1Jul24.tribox.gran.global.stl.g++.1
Normal file
480
examples/gransurf/log.1Jul24.tribox.gran.global.stl.g++.1
Normal file
@ -0,0 +1,480 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global surf.tribox.stl hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
Reading STL object STL version of surf.tribox from text file surf.tribox.stl
|
||||
#fix 20 all surface/global surf.tribox.stl hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 31 31 31
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke, perpetual
|
||||
attributes: half, newton on, size
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 0.5878 | 0.5878 | 0.5878 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 30 0.803783 0.803783 0.39507978 0.0029137134
|
||||
200 30 1.1967995 1.1967995 0.5882574 0.0043383984
|
||||
300 30 1.2814686 1.2814686 0.62987441 0.0046453238
|
||||
400 30 0.82347039 0.82347039 0.41172861 0.0029850802
|
||||
500 30 0.76963938 0.76963938 0.38709352 0.0042867255
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 64 0.51325196 0.51325196 0.26472957 0.0045780407
|
||||
700 64 0.57133229 0.57133229 0.29476966 0.0046847812
|
||||
800 64 0.630634 0.630634 0.32751956 0.0050038133
|
||||
900 64 0.54233611 0.54233611 0.28819808 0.0052880896
|
||||
1000 64 0.48543152 0.48543152 0.26491902 0.0064773948
|
||||
1100 64 0.47303609 0.47303609 0.2578388 0.0057125611
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 99 0.40053109 0.40053109 0.2195167 0.0081778049
|
||||
1300 99 0.42696772 0.42696772 0.23049402 0.006385146
|
||||
1400 99 0.37139574 0.37139574 0.20331799 0.0074485307
|
||||
1500 99 0.33478846 0.33478846 0.18670496 0.0061673941
|
||||
1600 99 0.29982872 0.29982872 0.16693769 0.0051747985
|
||||
1700 100 0.2069625 0.2069625 0.12302495 0.005783623
|
||||
1800 100 0.12902068 0.12902068 0.08608601 0.0019792233
|
||||
1900 100 0.080857094 0.080857094 0.059672509 0.0022973108
|
||||
2000 100 0.064403955 0.064403955 0.046429731 0.0011922926
|
||||
2100 100 0.056475498 0.056475498 0.038678923 0.00085304992
|
||||
2200 100 0.050018256 0.050018256 0.034384821 0.0032112539
|
||||
2300 100 0.021868304 0.021868304 0.017658151 0.0011526373
|
||||
2400 100 0.022189236 0.022189236 0.016714436 0.00056488482
|
||||
2500 100 0.012569738 0.012569738 0.010200523 0.00061305414
|
||||
2600 100 0.010861951 0.010861951 0.0086986505 0.00028075976
|
||||
2700 100 0.0092647871 0.0092647871 0.0071124847 0.00043064637
|
||||
2800 100 0.0078527688 0.0078527688 0.0059155703 0.00016902461
|
||||
2900 100 0.0048376734 0.0048376734 0.0039864566 9.6898167e-05
|
||||
3000 100 0.004997394 0.004997394 0.0038195379 0.00012912771
|
||||
3100 100 0.0025381263 0.0025381263 0.0022290621 9.3139494e-05
|
||||
3200 100 0.0023614621 0.0023614621 0.0020627353 0.00043394794
|
||||
3300 100 0.0018926758 0.0018926758 0.0016726508 9.015816e-05
|
||||
3400 100 0.0016956727 0.0016956727 0.0015060379 9.8437955e-05
|
||||
3500 100 0.0020822011 0.0020822011 0.0016148425 6.8104893e-05
|
||||
3600 100 0.0010660921 0.0010660921 0.0010106443 -4.0921854e-05
|
||||
3700 100 0.00093117128 0.00093117128 0.00086120243 3.9299397e-05
|
||||
3800 100 0.00083426775 0.00083426775 0.00075721786 3.2376e-05
|
||||
3900 100 0.00076790351 0.00076790351 0.00070733354 3.2793518e-05
|
||||
4000 100 0.0006859536 0.0006859536 0.00062258677 3.0547763e-05
|
||||
4100 100 0.00050291116 0.00050291116 0.00047200581 0.00015040263
|
||||
4200 100 0.00038735513 0.00038735513 0.0003849192 0.00017016843
|
||||
4300 100 0.00031672623 0.00031672623 0.00032789248 7.1880229e-05
|
||||
4400 100 0.00027595545 0.00027595545 0.00029274116 3.120052e-05
|
||||
4500 100 0.00027092394 0.00027092394 0.00028257706 4.1409733e-05
|
||||
4600 100 0.00026641048 0.00026641048 0.00027631265 3.2258687e-05
|
||||
4700 100 0.0002550395 0.0002550395 0.00026456068 4.4752996e-05
|
||||
4800 100 0.00023866037 0.00023866037 0.00025120225 3.3651155e-05
|
||||
4900 100 0.00019734428 0.00019734428 0.0002099377 2.7700004e-05
|
||||
5000 100 0.00019733184 0.00019733184 0.00020831062 2.6903281e-05
|
||||
Loop time of 0.386048 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5595156.861 tau/day, 12951.752 timesteps/s, 1.295 Matom-step/s
|
||||
90.3% 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.0037007 | 0.0037007 | 0.0037007 | 0.0 | 0.96
|
||||
Neigh | 0.0054702 | 0.0054702 | 0.0054702 | 0.0 | 1.42
|
||||
Comm | 0.0003645 | 0.0003645 | 0.0003645 | 0.0 | 0.09
|
||||
Output | 0.32257 | 0.32257 | 0.32257 | 0.0 | 83.56
|
||||
Modify | 0.052819 | 0.052819 | 0.052819 | 0.0 | 13.68
|
||||
Other | | 0.001123 | | | 0.29
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 160 ave 160 max 160 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 160
|
||||
Ave neighs/atom = 1.6
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00019733184 0.00019733184 0.00020831062 2.6930089e-05
|
||||
5100 100 0.14755911 0.14755911 0.085321575 0.0037275005
|
||||
5200 100 0.17345004 0.17345004 0.10013131 0.0029005613
|
||||
5300 100 0.17839393 0.17839393 0.09955336 0.0024744353
|
||||
5400 100 0.18892743 0.18892743 0.10178919 0.0032939874
|
||||
5500 100 0.19613791 0.19613791 0.10380256 0.0027253339
|
||||
5600 100 0.19978293 0.19978293 0.10442183 0.0031193701
|
||||
5700 100 0.21239814 0.21239814 0.10965684 0.0027404998
|
||||
5800 100 0.22432265 0.22432265 0.11476437 0.0031430877
|
||||
5900 100 0.22942225 0.22942225 0.11733388 0.00357628
|
||||
6000 100 0.24043354 0.24043354 0.12272731 0.003255827
|
||||
6100 100 0.25159401 0.25159401 0.1279307 0.0040378705
|
||||
6200 100 0.25902708 0.25902708 0.13158752 0.0036512959
|
||||
6300 100 0.2659723 0.2659723 0.13535001 0.0037298324
|
||||
6400 100 0.27607055 0.27607055 0.14001655 0.0043863861
|
||||
6500 100 0.28259585 0.28259585 0.14337861 0.004432214
|
||||
6600 100 0.29041535 0.29041535 0.14658628 0.0041374757
|
||||
6700 100 0.29338383 0.29338383 0.14816762 0.0043726723
|
||||
6800 100 0.29363497 0.29363497 0.14803605 0.0048496941
|
||||
6900 100 0.29819446 0.29819446 0.14992058 0.0048661826
|
||||
7000 100 0.30253288 0.30253288 0.15178707 0.0047893404
|
||||
7100 100 0.30364521 0.30364521 0.15238027 0.0053735204
|
||||
7200 100 0.30571022 0.30571022 0.15341639 0.0050547621
|
||||
7300 100 0.30762729 0.30762729 0.15433251 0.0048579985
|
||||
7400 100 0.30739457 0.30739457 0.15429161 0.0052840169
|
||||
7500 100 0.3095106 0.3095106 0.15546551 0.0047742904
|
||||
7600 100 0.30994994 0.30994994 0.15560402 0.0055289317
|
||||
7700 100 0.3102136 0.3102136 0.1555494 0.0053911148
|
||||
7800 100 0.31109652 0.31109652 0.15598755 0.0050957646
|
||||
7900 100 0.31190144 0.31190144 0.15640137 0.0050144069
|
||||
8000 100 0.3124433 0.3124433 0.15676067 0.0049291948
|
||||
8100 100 0.31255831 0.31255831 0.15682783 0.0053772662
|
||||
8200 100 0.31276764 0.31276764 0.15700445 0.0051137616
|
||||
8300 100 0.31476621 0.31476621 0.15777763 0.0050115786
|
||||
8400 100 0.31520108 0.31520108 0.1579466 0.0052663181
|
||||
8500 100 0.31519638 0.31519638 0.15797839 0.0054592691
|
||||
8600 100 0.31650736 0.31650736 0.15853548 0.006061159
|
||||
8700 100 0.31783185 0.31783185 0.15910269 0.0055642729
|
||||
8800 100 0.31962922 0.31962922 0.15981552 0.0051073677
|
||||
8900 100 0.32028059 0.32028059 0.16016593 0.0051129724
|
||||
9000 100 0.32067355 0.32067355 0.16033852 0.005334504
|
||||
9100 100 0.32073134 0.32073134 0.16036476 0.0052193698
|
||||
9200 100 0.32149618 0.32149618 0.16073834 0.0051959338
|
||||
9300 100 0.32200413 0.32200413 0.16101431 0.0053371119
|
||||
9400 100 0.32243427 0.32243427 0.16127313 0.0051442587
|
||||
9500 100 0.32287887 0.32287887 0.16159452 0.0051133998
|
||||
9600 100 0.32358279 0.32358279 0.16193072 0.0051698096
|
||||
9700 100 0.32486591 0.32486591 0.16249108 0.0052421695
|
||||
9800 100 0.32481094 0.32481094 0.16244971 0.0052881334
|
||||
9900 100 0.32619742 0.32619742 0.16300857 0.0056091381
|
||||
10000 100 0.32685101 0.32685101 0.16333907 0.0052565109
|
||||
Loop time of 0.400348 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5395307.917 tau/day, 12489.139 timesteps/s, 1.249 Matom-step/s
|
||||
96.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.011048 | 0.011048 | 0.011048 | 0.0 | 2.76
|
||||
Neigh | 0.0070234 | 0.0070234 | 0.0070234 | 0.0 | 1.75
|
||||
Comm | 0.00040106 | 0.00040106 | 0.00040106 | 0.0 | 0.10
|
||||
Output | 0.3144 | 0.3144 | 0.3144 | 0.0 | 78.53
|
||||
Modify | 0.066249 | 0.066249 | 0.066249 | 0.0 | 16.55
|
||||
Other | | 0.001222 | | | 0.31
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 190 ave 190 max 190 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 190
|
||||
Ave neighs/atom = 1.9
|
||||
Neighbor list builds = 334
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 100 0.32685101 0.32685101 0.16333907 0.0052114688
|
||||
10100 100 0.082150677 0.082150677 0.051495507 0.0065164512
|
||||
10200 100 0.044140364 0.044140364 0.034724328 0.0010465239
|
||||
10300 100 0.033122648 0.033122648 0.026625827 0.0022974917
|
||||
10400 100 0.026649705 0.026649705 0.021846707 0.00035032509
|
||||
10500 100 0.022611369 0.022611369 0.018405546 0.0004069116
|
||||
10600 100 0.018296124 0.018296124 0.014829351 0.00026270833
|
||||
10700 100 0.015248747 0.015248747 0.012084705 0.00023227455
|
||||
10800 100 0.014989372 0.014989372 0.011849067 0.00054473331
|
||||
10900 100 0.011865503 0.011865503 0.0094526639 0.00028431427
|
||||
11000 100 0.0096206477 0.0096206477 0.0077795159 0.00012996686
|
||||
11100 100 0.0085270379 0.0085270379 0.0069458369 0.00021692214
|
||||
11200 100 0.00760939 0.00760939 0.0062336019 0.00015816658
|
||||
11300 100 0.0070094711 0.0070094711 0.0056987409 9.7160075e-05
|
||||
11400 100 0.0064681327 0.0064681327 0.0053334513 0.0001693687
|
||||
11500 100 0.0054400476 0.0054400476 0.0044705267 8.1382559e-05
|
||||
11600 100 0.005206949 0.005206949 0.0042892806 7.0309283e-05
|
||||
11700 100 0.0044637648 0.0044637648 0.0037251717 5.4172517e-05
|
||||
11800 100 0.0039969168 0.0039969168 0.003362444 2.0226315e-05
|
||||
11900 100 0.0033117132 0.0033117132 0.0027762101 5.2311253e-05
|
||||
12000 100 0.0031073405 0.0031073405 0.0025984799 3.9890528e-05
|
||||
12100 100 0.0029847617 0.0029847617 0.0025070771 -5.7259344e-06
|
||||
12200 100 0.0028458878 0.0028458878 0.0024108535 3.5217862e-05
|
||||
12300 100 0.0026501923 0.0026501923 0.0022711794 0.00012033569
|
||||
12400 100 0.0025425504 0.0025425504 0.0021847643 3.1464061e-05
|
||||
12500 100 0.0024161319 0.0024161319 0.0020843813 0.00014941327
|
||||
12600 100 0.002341327 0.002341327 0.0020232445 2.8973921e-05
|
||||
12700 100 0.0022334192 0.0022334192 0.0019425572 3.0790164e-05
|
||||
12800 100 0.0021889403 0.0021889403 0.0019088353 2.9638662e-05
|
||||
12900 100 0.0020442842 0.0020442842 0.0018049012 2.5298016e-05
|
||||
13000 100 0.001803154 0.001803154 0.0016328702 2.2314031e-05
|
||||
13100 100 0.0016791405 0.0016791405 0.0015327583 2.2967562e-05
|
||||
13200 100 0.001622137 0.001622137 0.0014810169 4.0326561e-05
|
||||
13300 100 0.001601531 0.001601531 0.0014650816 1.9818946e-05
|
||||
13400 100 0.0015591399 0.0015591399 0.0014123726 2.119773e-05
|
||||
13500 100 0.0014546357 0.0014546357 0.0013328423 1.8001117e-05
|
||||
13600 100 0.0013998773 0.0013998773 0.0012913696 2.6202181e-05
|
||||
13700 100 0.001367574 0.001367574 0.0012631494 1.6923729e-05
|
||||
13800 100 0.001225732 0.001225732 0.0011125165 1.4445147e-05
|
||||
13900 100 0.0012086291 0.0012086291 0.0010972374 2.8597468e-05
|
||||
14000 100 0.0011916306 0.0011916306 0.0010833978 7.2381933e-05
|
||||
14100 100 0.0011461149 0.0011461149 0.0010110271 1.4183172e-05
|
||||
14200 100 0.0011209785 0.0011209785 0.00099190436 1.1546608e-05
|
||||
14300 100 0.0011050802 0.0011050802 0.00098070422 1.3675367e-05
|
||||
14400 100 0.0010910417 0.0010910417 0.00097025303 1.3501641e-05
|
||||
14500 100 0.0010645152 0.0010645152 0.00093785696 1.3173375e-05
|
||||
14600 100 0.0010479185 0.0010479185 0.00092353031 2.5164629e-05
|
||||
14700 100 0.00099034477 0.00099034477 0.0008638973 1.2874356e-05
|
||||
14800 100 0.00099115544 0.00099115544 0.00086195396 1.2265549e-05
|
||||
14900 100 0.00097510619 0.00097510619 0.00083043649 6.0289327e-05
|
||||
15000 100 0.00095883902 0.00095883902 0.00080522184 1.1865633e-05
|
||||
Loop time of 0.392742 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5499795.998 tau/day, 12731.009 timesteps/s, 1.273 Matom-step/s
|
||||
95.9% 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.0032195 | 0.0032195 | 0.0032195 | 0.0 | 0.82
|
||||
Neigh | 0.0014096 | 0.0014096 | 0.0014096 | 0.0 | 0.36
|
||||
Comm | 0.00031448 | 0.00031448 | 0.00031448 | 0.0 | 0.08
|
||||
Output | 0.32823 | 0.32823 | 0.32823 | 0.0 | 83.57
|
||||
Modify | 0.058394 | 0.058394 | 0.058394 | 0.0 | 14.87
|
||||
Other | | 0.001171 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 165 ave 165 max 165 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 165
|
||||
Ave neighs/atom = 1.65
|
||||
Neighbor list builds = 69
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 100 0.00095883902 0.00095883902 0.00080522184 1.1865633e-05
|
||||
15100 100 0.16225441 0.16225441 0.098498099 0.0064159333
|
||||
15200 100 0.22482098 0.22482098 0.12948232 0.003576331
|
||||
15300 100 0.2458026 0.2458026 0.1393646 0.006749306
|
||||
15400 100 0.26239222 0.26239222 0.1469859 0.0089800228
|
||||
15500 100 0.28687382 0.28687382 0.15847135 0.0079704333
|
||||
15600 100 0.28622953 0.28622953 0.15902139 0.0082281462
|
||||
15700 100 0.30668089 0.30668089 0.16265483 0.014688893
|
||||
15800 100 0.33007713 0.33007713 0.17247344 0.0099574571
|
||||
15900 100 0.35773029 0.35773029 0.18298391 0.01415523
|
||||
16000 100 0.36309971 0.36309971 0.18514042 0.010763173
|
||||
16100 100 0.36974105 0.36974105 0.18746237 0.010738235
|
||||
16200 100 0.36988383 0.36988383 0.18775314 0.014768427
|
||||
16300 100 0.37560588 0.37560588 0.19010652 0.014297415
|
||||
16400 100 0.37747146 0.37747146 0.19143031 0.014086853
|
||||
16500 100 0.38053331 0.38053331 0.19248441 0.01837541
|
||||
16600 100 0.37315821 0.37315821 0.1881627 0.0098076132
|
||||
16700 100 0.38286964 0.38286964 0.19289589 0.011785316
|
||||
16800 100 0.38013501 0.38013501 0.19200912 0.0138546
|
||||
16900 100 0.37496008 0.37496008 0.19035729 0.010235176
|
||||
17000 100 0.365244 0.365244 0.18508129 0.011814705
|
||||
17100 100 0.36324363 0.36324363 0.18539176 0.0077602876
|
||||
17200 100 0.36563128 0.36563128 0.18828717 0.009760622
|
||||
17300 100 0.41040797 0.41040797 0.21297576 0.0060030421
|
||||
17400 100 0.42784496 0.42784496 0.22357917 0.0072328321
|
||||
17500 100 0.44480315 0.44480315 0.23296103 0.0081208771
|
||||
17600 100 0.49540498 0.49540498 0.26207461 0.0094193362
|
||||
17700 100 0.53563972 0.53563972 0.28429788 0.0096153439
|
||||
17800 100 0.59909402 0.59909402 0.31832665 0.0086897236
|
||||
17900 100 0.65975736 0.65975736 0.35361646 0.010946403
|
||||
18000 100 0.67883738 0.67883738 0.36868438 0.010453697
|
||||
18100 100 0.67229859 0.67229859 0.37009573 0.011447688
|
||||
18200 100 0.58740281 0.58740281 0.32918911 0.012430038
|
||||
18300 100 0.51321184 0.51321184 0.29212329 0.014782894
|
||||
18400 100 0.46432678 0.46432678 0.26861208 0.0074401518
|
||||
18500 100 0.46083979 0.46083979 0.26638884 0.0090587319
|
||||
18600 100 0.41968764 0.41968764 0.24616432 0.0091476182
|
||||
18700 100 0.40749768 0.40749768 0.24073731 0.0073954099
|
||||
18800 100 0.38490007 0.38490007 0.23057035 0.0056617504
|
||||
18900 100 0.36115679 0.36115679 0.21996888 0.0069095868
|
||||
19000 100 0.31118149 0.31118149 0.19549915 0.0066423887
|
||||
19100 100 0.34419249 0.34419249 0.20736311 0.012418102
|
||||
19200 100 0.33174248 0.33174248 0.19629654 0.0074405926
|
||||
19300 100 0.33028394 0.33028394 0.19472996 0.0077286569
|
||||
19400 100 0.33612501 0.33612501 0.19522775 0.0083424841
|
||||
19500 100 0.32216161 0.32216161 0.18401278 0.0088692814
|
||||
19600 100 0.33681829 0.33681829 0.18758804 0.0097379383
|
||||
19700 100 0.33730835 0.33730835 0.18474995 0.009296681
|
||||
19800 100 0.3351213 0.3351213 0.18164387 0.0061672199
|
||||
19900 100 0.32674396 0.32674396 0.17780137 0.0062277401
|
||||
20000 100 0.31549601 0.31549601 0.17276762 0.011954545
|
||||
Loop time of 0.420421 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5137707.802 tau/day, 11892.842 timesteps/s, 1.189 Matom-step/s
|
||||
97.1% 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.010253 | 0.010253 | 0.010253 | 0.0 | 2.44
|
||||
Neigh | 0.010525 | 0.010525 | 0.010525 | 0.0 | 2.50
|
||||
Comm | 0.00042181 | 0.00042181 | 0.00042181 | 0.0 | 0.10
|
||||
Output | 0.33826 | 0.33826 | 0.33826 | 0.0 | 80.46
|
||||
Modify | 0.059694 | 0.059694 | 0.059694 | 0.0 | 14.20
|
||||
Other | | 0.001267 | | | 0.30
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 242 ave 242 max 242 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 242
|
||||
Ave neighs/atom = 2.42
|
||||
Neighbor list builds = 435
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.714 | 4.714 | 4.714 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 100 0.31549601 0.31549601 0.17276762 0.011924862
|
||||
20100 100 0.067243668 0.067243668 0.051058315 0.0026847669
|
||||
20200 100 0.064954648 0.064954648 0.04577406 0.0031985925
|
||||
20300 100 0.081722159 0.081722159 0.052328099 0.003382093
|
||||
20400 100 0.052538018 0.052538018 0.038041695 0.0080953559
|
||||
20500 100 0.045138106 0.045138106 0.032227169 0.0035839274
|
||||
20600 100 0.044187088 0.044187088 0.031849801 0.0032417719
|
||||
20700 100 0.048791318 0.048791318 0.033838035 0.0030783015
|
||||
20800 100 0.042228029 0.042228029 0.029496426 0.0026771471
|
||||
20900 100 0.037884649 0.037884649 0.026659395 0.0016131444
|
||||
21000 100 0.036121934 0.036121934 0.025961479 0.0033546991
|
||||
21100 100 0.041151215 0.041151215 0.028554924 0.0014986709
|
||||
21200 100 0.032352882 0.032352882 0.024166876 0.0018674452
|
||||
21300 100 0.033808076 0.033808076 0.02501534 0.0014150028
|
||||
21400 100 0.033233201 0.033233201 0.024762604 0.0015124318
|
||||
21500 100 0.023344798 0.023344798 0.017595957 0.0020406313
|
||||
21600 100 0.024137168 0.024137168 0.017835056 0.001648494
|
||||
21700 100 0.020201901 0.020201901 0.015367789 0.0014089977
|
||||
21800 100 0.019279358 0.019279358 0.014625498 0.0012643094
|
||||
21900 100 0.01893081 0.01893081 0.014292746 0.0015049479
|
||||
22000 100 0.017257227 0.017257227 0.01315079 0.0011652685
|
||||
22100 100 0.015479952 0.015479952 0.011715026 0.0014536538
|
||||
22200 100 0.016610168 0.016610168 0.012253776 0.00089466949
|
||||
22300 100 0.014924039 0.014924039 0.011273468 0.0010494839
|
||||
22400 100 0.015991668 0.015991668 0.011902404 0.00082344174
|
||||
22500 100 0.011574074 0.011574074 0.0087681303 0.00081009385
|
||||
22600 100 0.012494171 0.012494171 0.0092328529 0.0005622816
|
||||
22700 100 0.011070984 0.011070984 0.0083661745 0.00080065357
|
||||
22800 100 0.01131513 0.01131513 0.0084259241 0.00073680805
|
||||
22900 100 0.010217077 0.010217077 0.0077647566 0.00053727888
|
||||
23000 100 0.0099409381 0.0099409381 0.0074288509 0.00058448502
|
||||
23100 100 0.0091176585 0.0091176585 0.0069209665 0.00063336231
|
||||
23200 100 0.0083540727 0.0083540727 0.0063805491 0.0005281495
|
||||
23300 100 0.008619666 0.008619666 0.0065404908 0.0005398125
|
||||
23400 100 0.0088762213 0.0088762213 0.0065206851 0.00046304022
|
||||
23500 100 0.007364061 0.007364061 0.0055771232 0.00046541178
|
||||
23600 100 0.0074046272 0.0074046272 0.0055598275 0.00036522805
|
||||
23700 100 0.0073881556 0.0073881556 0.0055580858 0.0005353812
|
||||
23800 100 0.0072954594 0.0072954594 0.0053965497 0.00041955961
|
||||
23900 100 0.006566226 0.006566226 0.0047704154 0.00037213632
|
||||
24000 100 0.0052279617 0.0052279617 0.0039151171 0.00039220479
|
||||
24100 100 0.004661037 0.004661037 0.0035353607 0.00036592087
|
||||
24200 100 0.0046822639 0.0046822639 0.0035561511 0.00036233017
|
||||
24300 100 0.0047878887 0.0047878887 0.0036222045 0.0003906286
|
||||
24400 100 0.005705559 0.005705559 0.0041298188 0.00039793154
|
||||
24500 100 0.0038440196 0.0038440196 0.0030815263 0.00050064408
|
||||
24600 100 0.0035754817 0.0035754817 0.0030293001 0.00032292161
|
||||
24700 100 0.003446554 0.003446554 0.0027976688 0.00029115924
|
||||
24800 100 0.0028987207 0.0028987207 0.0023988341 0.00018959598
|
||||
24900 100 0.0027083267 0.0027083267 0.0021669208 0.0001799362
|
||||
25000 100 0.0026561456 0.0026561456 0.0020638865 0.00014386648
|
||||
Loop time of 0.399883 on 1 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 5401574.775 tau/day, 12503.645 timesteps/s, 1.250 Matom-step/s
|
||||
94.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.0082229 | 0.0082229 | 0.0082229 | 0.0 | 2.06
|
||||
Neigh | 0.004223 | 0.004223 | 0.004223 | 0.0 | 1.06
|
||||
Comm | 0.0003435 | 0.0003435 | 0.0003435 | 0.0 | 0.09
|
||||
Output | 0.32748 | 0.32748 | 0.32748 | 0.0 | 81.89
|
||||
Modify | 0.058357 | 0.058357 | 0.058357 | 0.0 | 14.59
|
||||
Other | | 0.001255 | | | 0.31
|
||||
|
||||
Nlocal: 100 ave 100 max 100 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: 147 ave 147 max 147 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 147
|
||||
Ave neighs/atom = 1.47
|
||||
Neighbor list builds = 173
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:02
|
||||
481
examples/gransurf/log.1Jul24.tribox.gran.global.stl.g++.4
Normal file
481
examples/gransurf/log.1Jul24.tribox.gran.global.stl.g++.4
Normal file
@ -0,0 +1,481 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style sphere
|
||||
#atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box # simply for dump_modify to color lines = green
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
|
||||
pair_style gran/hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
pair_coeff * *
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 20 all surface/global surf.tribox.stl hooke 4000.0 NULL 100.0 NULL 0.5 1
|
||||
Reading STL object STL version of surf.tribox from text file surf.tribox.stl
|
||||
#fix 20 all surface/global surf.tribox.stl hooke/history # 4000.0 NULL 100.0 NULL 0.5 1
|
||||
|
||||
fix 2 all nve/sphere
|
||||
fix 3 all gravity 1.0 vector 0 0 -1
|
||||
#fix 4 all viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins all pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 all temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 all temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 fix 20 type 2 0.5
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.3
|
||||
ghost atom cutoff = 1.3
|
||||
binsize = 0.65, bins = 31 31 31
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair gran/hooke, perpetual
|
||||
attributes: half, newton on, size
|
||||
pair build: half/size/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 0.486 | 0.486 | 0.486 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 0 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 30 0.803783 0.803783 0.39507978 0.0029137134
|
||||
200 30 1.1967995 1.1967995 0.5882574 0.0043383984
|
||||
300 30 1.2814686 1.2814686 0.62987441 0.0046453238
|
||||
400 30 0.82347039 0.82347039 0.41172861 0.0029850802
|
||||
500 30 0.76963938 0.76963938 0.38709352 0.0042867255
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 64 0.51325196 0.51325196 0.26472957 0.0045780407
|
||||
700 64 0.57133229 0.57133229 0.29476966 0.0046847812
|
||||
800 64 0.630634 0.630634 0.32751956 0.0050038133
|
||||
900 64 0.54233611 0.54233611 0.28819808 0.0052880896
|
||||
1000 64 0.48543152 0.48543152 0.26491902 0.0064773948
|
||||
1100 64 0.47303609 0.47303609 0.2578388 0.0057125611
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 99 0.40053109 0.40053109 0.2195167 0.0081778049
|
||||
1300 99 0.42696772 0.42696772 0.23049402 0.006385146
|
||||
1400 99 0.37139574 0.37139574 0.20331799 0.0074485306
|
||||
1500 99 0.33478846 0.33478846 0.18670496 0.0061673941
|
||||
1600 99 0.29982872 0.29982872 0.16693769 0.0051747984
|
||||
1700 100 0.2069625 0.2069625 0.12302495 0.005783624
|
||||
1800 100 0.12902068 0.12902068 0.08608601 0.0019792234
|
||||
1900 100 0.080857095 0.080857095 0.05967251 0.0022973101
|
||||
2000 100 0.064403959 0.064403959 0.046429734 0.0011922946
|
||||
2100 100 0.056475466 0.056475466 0.038678907 0.00085302928
|
||||
2200 100 0.050018273 0.050018273 0.03438483 0.0032112547
|
||||
2300 100 0.02186833 0.02186833 0.01765815 0.001152603
|
||||
2400 100 0.02218925 0.02218925 0.016714386 0.00056474678
|
||||
2500 100 0.012569988 0.012569988 0.010200648 0.0006133907
|
||||
2600 100 0.010862479 0.010862479 0.0086989172 0.00028072722
|
||||
2700 100 0.0092737903 0.0092737903 0.0071165383 0.00041430278
|
||||
2800 100 0.0078587709 0.0078587709 0.00592121 0.00017374958
|
||||
2900 100 0.0048613617 0.0048613617 0.004000904 0.00021321956
|
||||
3000 100 0.0050147313 0.0050147313 0.0038322501 0.00017831675
|
||||
3100 100 0.0025550411 0.0025550411 0.0022405824 6.8592843e-05
|
||||
3200 100 0.0023577912 0.0023577912 0.0020418633 0.0003584618
|
||||
3300 100 0.0018996206 0.0018996206 0.0016777567 7.5165222e-05
|
||||
3400 100 0.001694751 0.001694751 0.0015042348 0.00014566717
|
||||
3500 100 0.0020882068 0.0020882068 0.0016170458 8.7027542e-05
|
||||
3600 100 0.0010813667 0.0010813667 0.0010137349 8.5126382e-05
|
||||
3700 100 0.00094548982 0.00094548982 0.00086966169 4.2409893e-05
|
||||
3800 100 0.00084816181 0.00084816181 0.00077098131 3.011429e-05
|
||||
3900 100 0.00078382097 0.00078382097 0.00071960486 5.939333e-05
|
||||
4000 100 0.00075302926 0.00075302926 0.00067851822 3.2758594e-05
|
||||
4100 100 0.00051405526 0.00051405526 0.00048629367 0.00013859285
|
||||
4200 100 0.00038825626 0.00038825626 0.00038868575 0.00020599691
|
||||
4300 100 0.00031919597 0.00031919597 0.00033058576 0.00010854923
|
||||
4400 100 0.00029919941 0.00029919941 0.00031222783 7.2391663e-05
|
||||
4500 100 0.0002903216 0.0002903216 0.00029974662 5.5125563e-05
|
||||
4600 100 0.0002753977 0.0002753977 0.00028258456 9.6552286e-05
|
||||
4700 100 0.00027064725 0.00027064725 0.0002776974 4.0309048e-05
|
||||
4800 100 0.00024203571 0.00024203571 0.00025112727 3.3700422e-05
|
||||
4900 100 0.00020539914 0.00020539914 0.00021705763 2.7873051e-05
|
||||
5000 100 0.00018816565 0.00018816565 0.00020135634 4.7752851e-05
|
||||
Loop time of 0.542754 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3979701.998 tau/day, 9212.273 timesteps/s, 921.227 katom-step/s
|
||||
97.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.00023334 | 0.0013294 | 0.0024933 | 3.0 | 0.24
|
||||
Neigh | 0.0014051 | 0.0023307 | 0.0035103 | 1.7 | 0.43
|
||||
Comm | 0.0076195 | 0.011811 | 0.015893 | 3.6 | 2.18
|
||||
Output | 0.36521 | 0.41573 | 0.48288 | 7.3 | 76.60
|
||||
Modify | 0.0021283 | 0.017049 | 0.034423 | 11.4 | 3.14
|
||||
Other | | 0.09451 | | | 17.41
|
||||
|
||||
Nlocal: 25 ave 50 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.5 ave 9 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 40.5 ave 82 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 162
|
||||
Ave neighs/atom = 1.62
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.549 | 4.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 100 0.00018816565 0.00018816565 0.00020135634 4.4246792e-05
|
||||
5100 100 0.14937779 0.14937779 0.086114773 0.0025984359
|
||||
5200 100 0.17697193 0.17697193 0.1019691 0.0026173891
|
||||
5300 100 0.18255024 0.18255024 0.10122134 0.0041759269
|
||||
5400 100 0.19510207 0.19510207 0.1050284 0.0027541295
|
||||
5500 100 0.1980801 0.1980801 0.10458743 0.0027957101
|
||||
5600 100 0.20490362 0.20490362 0.10674522 0.002985542
|
||||
5700 100 0.21087885 0.21087885 0.10861062 0.0030935481
|
||||
5800 100 0.22309411 0.22309411 0.11419601 0.0029760547
|
||||
5900 100 0.22880189 0.22880189 0.1171042 0.0029681474
|
||||
6000 100 0.2363739 0.2363739 0.12083453 0.0032437464
|
||||
6100 100 0.24581768 0.24581768 0.12531649 0.0032571271
|
||||
6200 100 0.25161424 0.25161424 0.12838601 0.0034995369
|
||||
6300 100 0.25972194 0.25972194 0.13241738 0.0035882457
|
||||
6400 100 0.2678312 0.2678312 0.13632033 0.0036612131
|
||||
6500 100 0.27990358 0.27990358 0.14189324 0.0046486676
|
||||
6600 100 0.2827759 0.2827759 0.14317296 0.0048164853
|
||||
6700 100 0.2897351 0.2897351 0.14616568 0.0042753049
|
||||
6800 100 0.29164978 0.29164978 0.14688678 0.0040397004
|
||||
6900 100 0.29377421 0.29377421 0.14786359 0.0051561937
|
||||
7000 100 0.29698841 0.29698841 0.14947643 0.0046008044
|
||||
7100 100 0.3019081 0.3019081 0.15147175 0.0065696769
|
||||
7200 100 0.30532028 0.30532028 0.1531023 0.0045987829
|
||||
7300 100 0.30629289 0.30629289 0.15368598 0.0048558556
|
||||
7400 100 0.30534641 0.30534641 0.15316839 0.0057637671
|
||||
7500 100 0.30786877 0.30786877 0.15429461 0.004843753
|
||||
7600 100 0.30862009 0.30862009 0.15464621 0.0052118056
|
||||
7700 100 0.30900657 0.30900657 0.15478242 0.0048879932
|
||||
7800 100 0.31054034 0.31054034 0.1554636 0.0052082034
|
||||
7900 100 0.31174887 0.31174887 0.15610325 0.0049178073
|
||||
8000 100 0.31247071 0.31247071 0.15647921 0.0052603626
|
||||
8100 100 0.31273024 0.31273024 0.15659099 0.0056001647
|
||||
8200 100 0.3140235 0.3140235 0.15727592 0.004977821
|
||||
8300 100 0.31383701 0.31383701 0.15715969 0.0052231004
|
||||
8400 100 0.31509644 0.31509644 0.15775385 0.0050051889
|
||||
8500 100 0.31498521 0.31498521 0.15762151 0.0052864908
|
||||
8600 100 0.31575201 0.31575201 0.15792624 0.0050759547
|
||||
8700 100 0.31620758 0.31620758 0.15818292 0.0050530619
|
||||
8800 100 0.31691036 0.31691036 0.15860213 0.005004857
|
||||
8900 100 0.31659627 0.31659627 0.15846212 0.0050695163
|
||||
9000 100 0.31769151 0.31769151 0.15903638 0.0050507355
|
||||
9100 100 0.31716143 0.31716143 0.15881355 0.005017094
|
||||
9200 100 0.31633956 0.31633956 0.1585031 0.0053446628
|
||||
9300 100 0.31655443 0.31655443 0.15863537 0.0049328007
|
||||
9400 100 0.31599503 0.31599503 0.15822485 0.0049933297
|
||||
9500 100 0.31660281 0.31660281 0.15853731 0.0049387958
|
||||
9600 100 0.31664518 0.31664518 0.15861539 0.0049222414
|
||||
9700 100 0.31824803 0.31824803 0.15934333 0.0052873464
|
||||
9800 100 0.31820192 0.31820192 0.15932994 0.0049687062
|
||||
9900 100 0.31846082 0.31846082 0.15943054 0.0053817995
|
||||
10000 100 0.31969811 0.31969811 0.15997735 0.005012462
|
||||
Loop time of 0.522575 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 4133381.630 tau/day, 9568.013 timesteps/s, 956.801 katom-step/s
|
||||
96.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.00017938 | 0.0034898 | 0.0074454 | 5.6 | 0.67
|
||||
Neigh | 0.0013735 | 0.0028718 | 0.0047582 | 2.8 | 0.55
|
||||
Comm | 0.0060132 | 0.009996 | 0.014865 | 3.9 | 1.91
|
||||
Output | 0.34648 | 0.38923 | 0.45057 | 6.7 | 74.48
|
||||
Modify | 0.0022557 | 0.02188 | 0.043145 | 13.2 | 4.19
|
||||
Other | | 0.09511 | | | 18.20
|
||||
|
||||
Nlocal: 25 ave 52 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.25 ave 9 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 47.5 ave 111 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
|
||||
Total # of neighbors = 190
|
||||
Ave neighs/atom = 1.9
|
||||
Neighbor list builds = 334
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.549 | 4.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 100 0.31969811 0.31969811 0.15997735 0.005039886
|
||||
10100 100 0.096856693 0.096856693 0.061256799 0.0017653508
|
||||
10200 100 0.06374563 0.06374563 0.049164989 0.00074375479
|
||||
10300 100 0.053346958 0.053346958 0.041648676 0.00088021828
|
||||
10400 100 0.04530167 0.04530167 0.035468031 0.0006357307
|
||||
10500 100 0.036511473 0.036511473 0.02864095 0.00046569718
|
||||
10600 100 0.031850796 0.031850796 0.024752197 0.001484525
|
||||
10700 100 0.027853481 0.027853481 0.021856016 0.00083233598
|
||||
10800 100 0.023988298 0.023988298 0.018551491 0.00025321878
|
||||
10900 100 0.022362927 0.022362927 0.01775739 0.00027674123
|
||||
11000 100 0.019598739 0.019598739 0.01566657 0.00029114873
|
||||
11100 100 0.016949467 0.016949467 0.013323455 0.00054759179
|
||||
11200 100 0.013201141 0.013201141 0.010205793 0.00046859829
|
||||
11300 100 0.010724903 0.010724903 0.0083548813 0.00016110668
|
||||
11400 100 0.0094528501 0.0094528501 0.0074254702 0.00012282294
|
||||
11500 100 0.0081681904 0.0081681904 0.0064435379 0.00018389596
|
||||
11600 100 0.0080112061 0.0080112061 0.006319339 9.9138675e-05
|
||||
11700 100 0.0072316886 0.0072316886 0.0056968863 8.9492146e-05
|
||||
11800 100 0.0066741475 0.0066741475 0.0052653282 9.1792343e-05
|
||||
11900 100 0.0060596979 0.0060596979 0.0048019244 0.00059435717
|
||||
12000 100 0.0058193298 0.0058193298 0.0046098949 7.2231759e-05
|
||||
12100 100 0.0053847114 0.0053847114 0.0042545862 9.3394135e-05
|
||||
12200 100 0.0049412476 0.0049412476 0.0039106158 0.00010078502
|
||||
12300 100 0.004572105 0.004572105 0.0036504695 5.5867397e-05
|
||||
12400 100 0.0042412045 0.0042412045 0.0034175496 0.00036582163
|
||||
12500 100 0.0035923846 0.0035923846 0.0029316243 6.9114212e-05
|
||||
12600 100 0.0032446947 0.0032446947 0.0026668677 4.1659699e-05
|
||||
12700 100 0.003132735 0.003132735 0.0025875973 5.6802791e-05
|
||||
12800 100 0.0030486242 0.0030486242 0.0025160882 0.00024777199
|
||||
12900 100 0.0029017497 0.0029017497 0.0024179283 6.7491687e-05
|
||||
13000 100 0.0027960043 0.0027960043 0.0023415783 3.4600553e-05
|
||||
13100 100 0.0024698607 0.0024698607 0.0020868913 0.00015330841
|
||||
13200 100 0.0023835355 0.0023835355 0.0020283653 2.9496252e-05
|
||||
13300 100 0.0021088439 0.0021088439 0.0018016867 5.3026287e-05
|
||||
13400 100 0.0018955838 0.0018955838 0.0016251265 5.6464898e-05
|
||||
13500 100 0.0017787595 0.0017787595 0.0015273835 0.00010533321
|
||||
13600 100 0.0017398053 0.0017398053 0.0015003761 2.153009e-05
|
||||
13700 100 0.0017070216 0.0017070216 0.0014780376 2.2369503e-05
|
||||
13800 100 0.0016227474 0.0016227474 0.0014210693 6.9106097e-05
|
||||
13900 100 0.0016020414 0.0016020414 0.0013971016 1.9825262e-05
|
||||
14000 100 0.0015849364 0.0015849364 0.0013841731 1.9613588e-05
|
||||
14100 100 0.0014802906 0.0014802906 0.001301188 2.3602632e-05
|
||||
14200 100 0.0014452784 0.0014452784 0.0012723611 5.4930779e-05
|
||||
14300 100 0.0013373933 0.0013373933 0.0011970238 7.7331197e-05
|
||||
14400 100 0.0012644873 0.0012644873 0.0011371743 3.3804604e-05
|
||||
14500 100 0.0012269172 0.0012269172 0.0011090464 0.00019066733
|
||||
14600 100 0.0011790378 0.0011790378 0.0010710915 2.2152438e-05
|
||||
14700 100 0.001141029 0.001141029 0.0010389261 1.4725855e-05
|
||||
14800 100 0.001136936 0.001136936 0.0010350762 1.833013e-05
|
||||
14900 100 0.0010587639 0.0010587639 0.00097375352 1.3102203e-05
|
||||
15000 100 0.0010255325 0.0010255325 0.00094590806 1.5126454e-05
|
||||
Loop time of 0.518427 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 4166449.618 tau/day, 9644.559 timesteps/s, 964.456 katom-step/s
|
||||
96.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.00015995 | 0.0012056 | 0.0023882 | 3.0 | 0.23
|
||||
Neigh | 0.00040855 | 0.00070112 | 0.0010401 | 0.0 | 0.14
|
||||
Comm | 0.0011854 | 0.0064387 | 0.011735 | 6.5 | 1.24
|
||||
Output | 0.35648 | 0.4008 | 0.4616 | 6.5 | 77.31
|
||||
Modify | 0.00044023 | 0.018312 | 0.038465 | 13.3 | 3.53
|
||||
Other | | 0.09097 | | | 17.55
|
||||
|
||||
Nlocal: 25 ave 50 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 4.25 ave 10 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Neighs: 37 ave 77 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 148
|
||||
Ave neighs/atom = 1.48
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.486 | 4.549 | 4.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 100 0.0010255325 0.0010255325 0.00094590806 1.4814045e-05
|
||||
15100 100 0.16111221 0.16111221 0.097982105 0.0056716878
|
||||
15200 100 0.21347296 0.21347296 0.12567019 0.0029815056
|
||||
15300 100 0.24705334 0.24705334 0.13884473 0.0078448562
|
||||
15400 100 0.27522493 0.27522493 0.15035782 0.0073215473
|
||||
15500 100 0.30348486 0.30348486 0.16433701 0.0068229641
|
||||
15600 100 0.31550013 0.31550013 0.16857649 0.0077789307
|
||||
15700 100 0.32318922 0.32318922 0.1719013 0.012280847
|
||||
15800 100 0.33908701 0.33908701 0.17750923 0.015821994
|
||||
15900 100 0.35593866 0.35593866 0.18345193 0.021263374
|
||||
16000 100 0.36889801 0.36889801 0.1869234 0.011456078
|
||||
16100 100 0.35809835 0.35809835 0.18158992 0.014811103
|
||||
16200 100 0.36319635 0.36319635 0.18337159 0.012823323
|
||||
16300 100 0.35852464 0.35852464 0.18081456 0.01280934
|
||||
16400 100 0.34902631 0.34902631 0.17663396 0.012992629
|
||||
16500 100 0.33443513 0.33443513 0.16948607 0.012986886
|
||||
16600 100 0.3150597 0.3150597 0.16079097 0.010586882
|
||||
16700 100 0.31338609 0.31338609 0.16045733 0.009805616
|
||||
16800 100 0.30473867 0.30473867 0.15686705 0.014362545
|
||||
16900 100 0.31270607 0.31270607 0.16119766 0.0070575979
|
||||
17000 100 0.2832931 0.2832931 0.14785887 0.0039466166
|
||||
17100 100 0.28215868 0.28215868 0.14795001 0.0068627045
|
||||
17200 100 0.29701033 0.29701033 0.16099476 0.0040667324
|
||||
17300 100 0.3665611 0.3665611 0.19664166 0.0065836505
|
||||
17400 100 0.43400548 0.43400548 0.23335072 0.0096693511
|
||||
17500 100 0.5057676 0.5057676 0.2773349 0.0071479313
|
||||
17600 100 0.52614351 0.52614351 0.29090432 0.0095749902
|
||||
17700 100 0.52478022 0.52478022 0.29525839 0.010528327
|
||||
17800 100 0.53046479 0.53046479 0.29862674 0.012410569
|
||||
17900 100 0.51722354 0.51722354 0.29212965 0.0097423802
|
||||
18000 100 0.51837131 0.51837131 0.29426864 0.010265508
|
||||
18100 100 0.46407283 0.46407283 0.26786292 0.015842602
|
||||
18200 100 0.4281392 0.4281392 0.24883206 0.016085526
|
||||
18300 100 0.36407304 0.36407304 0.22014997 0.0091448904
|
||||
18400 100 0.32800292 0.32800292 0.20387181 0.0088602724
|
||||
18500 100 0.30727965 0.30727965 0.18744751 0.0067928429
|
||||
18600 100 0.31715182 0.31715182 0.19306784 0.0047252497
|
||||
18700 100 0.29383189 0.29383189 0.18450238 0.0046337396
|
||||
18800 100 0.28365185 0.28365185 0.1810902 0.005644391
|
||||
18900 100 0.30670015 0.30670015 0.19521314 0.0048593554
|
||||
19000 100 0.31681967 0.31681967 0.201889 0.0059511233
|
||||
19100 100 0.32218287 0.32218287 0.20009306 0.0093378277
|
||||
19200 100 0.30255724 0.30255724 0.19160821 0.0087838518
|
||||
19300 100 0.31907942 0.31907942 0.19849225 0.0093802566
|
||||
19400 100 0.31650176 0.31650176 0.18834128 0.010429547
|
||||
19500 100 0.32959296 0.32959296 0.19229144 0.012724502
|
||||
19600 100 0.33134974 0.33134974 0.18581781 0.016960866
|
||||
19700 100 0.32878109 0.32878109 0.18215506 0.0096165803
|
||||
19800 100 0.33724696 0.33724696 0.18335211 0.0060443045
|
||||
19900 100 0.33179464 0.33179464 0.17822307 0.010776083
|
||||
20000 100 0.34377432 0.34377432 0.1841787 0.0094534745
|
||||
Loop time of 0.554453 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 3895732.487 tau/day, 9017.899 timesteps/s, 901.790 katom-step/s
|
||||
96.8% 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.00041707 | 0.0030836 | 0.0058653 | 4.5 | 0.56
|
||||
Neigh | 0.0023165 | 0.0042879 | 0.0074847 | 3.2 | 0.77
|
||||
Comm | 0.020096 | 0.023667 | 0.026287 | 1.5 | 4.27
|
||||
Output | 0.36416 | 0.41297 | 0.47377 | 6.5 | 74.48
|
||||
Modify | 0.0054574 | 0.020137 | 0.037629 | 10.0 | 3.63
|
||||
Other | | 0.09031 | | | 16.29
|
||||
|
||||
Nlocal: 25 ave 67 max 0 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 6.25 ave 13 max 0 min
|
||||
Histogram: 1 1 0 0 0 0 0 1 0 1
|
||||
Neighs: 54.75 ave 156 max 0 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 219
|
||||
Ave neighs/atom = 2.19
|
||||
Neighbor list builds = 430
|
||||
Dangerous builds = 0
|
||||
|
||||
fix_modify 20 move none
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.611 | 4.612 | 4.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 100 0.34377432 0.34377432 0.1841787 0.0092764528
|
||||
20100 100 0.097239014 0.097239014 0.068864895 0.0029157234
|
||||
20200 100 0.090387219 0.090387219 0.063243792 0.0030276724
|
||||
20300 100 0.10130213 0.10130213 0.065604495 0.0040954401
|
||||
20400 100 0.073193003 0.073193003 0.049395297 0.011005746
|
||||
20500 100 0.064987626 0.064987626 0.042476486 0.0035623578
|
||||
20600 100 0.056092845 0.056092845 0.035733351 0.0046843988
|
||||
20700 100 0.047975467 0.047975467 0.031279933 0.006027
|
||||
20800 100 0.042713655 0.042713655 0.028630415 0.0028623851
|
||||
20900 100 0.027009619 0.027009619 0.019950334 0.0031930947
|
||||
21000 100 0.030115735 0.030115735 0.021837467 0.0031118498
|
||||
21100 100 0.030382146 0.030382146 0.02158358 0.0016950638
|
||||
21200 100 0.028917881 0.028917881 0.020618558 0.0015449848
|
||||
21300 100 0.02553423 0.02553423 0.018753907 0.0020401097
|
||||
21400 100 0.024907599 0.024907599 0.018805009 0.0015219354
|
||||
21500 100 0.028047498 0.028047498 0.020431592 0.0036172877
|
||||
21600 100 0.023143766 0.023143766 0.017048059 0.001391321
|
||||
21700 100 0.025832817 0.025832817 0.018907239 0.0014196777
|
||||
21800 100 0.02294723 0.02294723 0.016986932 0.00099306999
|
||||
21900 100 0.021774769 0.021774769 0.016357385 0.0015445184
|
||||
22000 100 0.019488798 0.019488798 0.014411675 0.00096975376
|
||||
22100 100 0.017498173 0.017498173 0.013303102 0.0013869769
|
||||
22200 100 0.017606431 0.017606431 0.013696534 0.0016275912
|
||||
22300 100 0.01864478 0.01864478 0.014363082 0.00093199338
|
||||
22400 100 0.017184319 0.017184319 0.013013426 0.0007137204
|
||||
22500 100 0.016970049 0.016970049 0.012735761 0.00094285653
|
||||
22600 100 0.015601151 0.015601151 0.011558366 0.00064664867
|
||||
22700 100 0.01532704 0.01532704 0.011052585 0.0011443538
|
||||
22800 100 0.013843117 0.013843117 0.010175224 0.00074058068
|
||||
22900 100 0.0142626 0.0142626 0.010517503 0.00062291367
|
||||
23000 100 0.012672457 0.012672457 0.0095213548 0.00048253765
|
||||
23100 100 0.011770367 0.011770367 0.0088631275 0.0010809683
|
||||
23200 100 0.0099747299 0.0099747299 0.0076787282 0.00049951509
|
||||
23300 100 0.01031026 0.01031026 0.0079525195 0.00064873732
|
||||
23400 100 0.0096104307 0.0096104307 0.0072783079 0.00045628129
|
||||
23500 100 0.0092403444 0.0092403444 0.0069910691 0.00055860189
|
||||
23600 100 0.0087158451 0.0087158451 0.0064234628 0.00042327506
|
||||
23700 100 0.0076095087 0.0076095087 0.005524052 0.00040612722
|
||||
23800 100 0.0073236191 0.0073236191 0.0054016138 0.0002882358
|
||||
23900 100 0.0076690517 0.0076690517 0.0054567733 0.000294478
|
||||
24000 100 0.0068826778 0.0068826778 0.0049332647 0.00025128376
|
||||
24100 100 0.006293019 0.006293019 0.0046682205 0.00029832544
|
||||
24200 100 0.005767467 0.005767467 0.0043594373 0.00026379963
|
||||
24300 100 0.005071854 0.005071854 0.0038348196 0.00026374758
|
||||
24400 100 0.0051487759 0.0051487759 0.0038569741 0.00047689032
|
||||
24500 100 0.0045914722 0.0045914722 0.0034370386 0.00026920355
|
||||
24600 100 0.0042661938 0.0042661938 0.0031638249 0.00023704631
|
||||
24700 100 0.0038978286 0.0038978286 0.0028913869 0.00029112049
|
||||
24800 100 0.0033993745 0.0033993745 0.0025640275 0.00054348397
|
||||
24900 100 0.0030064864 0.0030064864 0.0022631158 0.00016374877
|
||||
25000 100 0.0030540972 0.0030540972 0.0022935172 0.00012379035
|
||||
Loop time of 0.531538 on 4 procs for 5000 steps with 100 atoms
|
||||
|
||||
Performance: 4063677.790 tau/day, 9406.662 timesteps/s, 940.666 katom-step/s
|
||||
96.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.00017249 | 0.0025494 | 0.0063723 | 5.1 | 0.48
|
||||
Neigh | 0.00078415 | 0.0017788 | 0.0029816 | 2.4 | 0.33
|
||||
Comm | 0.0024926 | 0.0084554 | 0.015551 | 6.0 | 1.59
|
||||
Output | 0.35621 | 0.40519 | 0.46627 | 6.6 | 76.23
|
||||
Modify | 0.00052416 | 0.018236 | 0.04055 | 13.3 | 3.43
|
||||
Other | | 0.09532 | | | 17.93
|
||||
|
||||
Nlocal: 25 ave 57 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Nghost: 5.25 ave 13 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
Neighs: 38.75 ave 96 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 155
|
||||
Ave neighs/atom = 1.55
|
||||
Neighbor list builds = 183
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:02
|
||||
515
examples/gransurf/log.1Jul24.tribox.gran.surf.g++.1
Normal file
515
examples/gransurf/log.1Jul24.tribox.gran.surf.g++.1
Normal file
@ -0,0 +1,515 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
molecule tris surf.tribox
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
24 triangles
|
||||
fix 20 all surface/local tris
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.31 | 7.31 | 7.31 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0029137134
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0043383984
|
||||
300 54 0.70118095 1.2814686 0.62987441 0.0046453238
|
||||
400 54 0.45057814 0.82347039 0.41172861 0.0030892546
|
||||
500 54 0.42112344 0.76963938 0.38709352 0.0065941015
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.37166521 0.51325196 0.26472957 0.0046580242
|
||||
700 88 0.41372338 0.57133229 0.29476966 0.0052995687
|
||||
800 88 0.456666 0.630634 0.32751956 0.0052868185
|
||||
900 88 0.39272615 0.54233611 0.28819808 0.0054685106
|
||||
1000 88 0.35151938 0.48543152 0.26491902 0.0075844126
|
||||
1100 88 0.34254338 0.47303609 0.2578388 0.0058365561
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.32173809 0.40053109 0.2195167 0.009133967
|
||||
1300 123 0.34297407 0.42696772 0.23049402 0.0064335441
|
||||
1400 123 0.29833429 0.37139575 0.20331799 0.0078377048
|
||||
1500 123 0.26892843 0.33478846 0.18670497 0.0068237101
|
||||
1600 123 0.24084602 0.29982872 0.16693769 0.0058533752
|
||||
1700 124 0.16657955 0.20696247 0.12302494 0.0070405476
|
||||
1800 124 0.10384588 0.12902064 0.086085999 0.0026199715
|
||||
1900 124 0.065080172 0.080857183 0.059672578 0.0039751399
|
||||
2000 124 0.05183749 0.064404155 0.04642994 0.0020956381
|
||||
2100 124 0.045454362 0.056473601 0.038678168 0.0021869997
|
||||
2200 124 0.040260905 0.050021124 0.034386815 0.0040428451
|
||||
2300 124 0.017599393 0.021865913 0.017659764 0.0033409468
|
||||
2400 124 0.017871721 0.022204259 0.016705944 0.0035685432
|
||||
2500 124 0.010140453 0.012598745 0.01022206 0.0012285049
|
||||
2600 124 0.0087985586 0.010931542 0.0087284393 0.0012843554
|
||||
2700 124 0.007517666 0.0093401305 0.00718198 0.0014841823
|
||||
2800 124 0.0062773841 0.0077991742 0.0059012301 0.0013324193
|
||||
2900 124 0.0038811224 0.0048220006 0.0039901849 0.0012740179
|
||||
3000 124 0.0040758656 0.0050639543 0.003890039 0.001333468
|
||||
3100 124 0.0020497159 0.0025466167 0.0022373889 0.0012963602
|
||||
3200 124 0.0019596496 0.0024347162 0.0021331337 0.0011575952
|
||||
3300 124 0.001619509 0.0020121172 0.0017930305 0.0011065531
|
||||
3400 124 0.0013352687 0.0016589702 0.0014836146 0.0013075216
|
||||
3500 124 0.0011048269 0.0013726637 0.0012547142 0.0016936826
|
||||
3600 124 0.00089868347 0.0011165461 0.0010379824 0.0013037755
|
||||
3700 124 0.00079538563 0.00098820638 0.0008953041 0.0011379267
|
||||
3800 124 0.00072591855 0.0009018988 0.00083210028 0.0014623234
|
||||
3900 124 0.00059200429 0.00073552048 0.00068255735 0.0011062713
|
||||
4000 124 0.00048509163 0.0006026896 0.00057581131 0.0011359453
|
||||
4100 124 0.00039281562 0.00048804365 0.00046290412 0.001112345
|
||||
4200 124 0.00033127035 0.00041157831 0.00040230271 0.0011101349
|
||||
4300 124 0.00025217556 0.00031330904 0.00033013679 0.001220284
|
||||
4400 124 0.00021998869 0.00027331928 0.00029069852 0.0010876934
|
||||
4500 124 0.0002012981 0.00025009764 0.00026845495 0.0011165366
|
||||
4600 124 0.00019974132 0.00024816346 0.00026538627 0.001112397
|
||||
4700 124 0.00018344096 0.0002279115 0.00024939407 0.0011208162
|
||||
4800 124 0.00017967553 0.00022323323 0.00024517143 0.0011139226
|
||||
4900 124 0.00015575257 0.00019351076 0.000215109 0.0011122181
|
||||
5000 124 0.00013945209 0.00017325866 0.00019787988 0.0011571915
|
||||
Loop time of 0.317507 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6803005.318 tau/day, 15747.697 timesteps/s, 1.953 Matom-step/s
|
||||
94.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.049124 | 0.049124 | 0.049124 | 0.0 | 15.47
|
||||
Neigh | 0.012461 | 0.012461 | 0.012461 | 0.0 | 3.92
|
||||
Comm | 0.00036472 | 0.00036472 | 0.00036472 | 0.0 | 0.11
|
||||
Output | 0.25022 | 0.25022 | 0.25022 | 0.0 | 78.81
|
||||
Modify | 0.0041121 | 0.0041121 | 0.0041121 | 0.0 | 1.30
|
||||
Other | | 0.001224 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.437 | 8.437 | 8.437 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00013945209 0.00017325866 0.00019787988 0.0011523447
|
||||
5100 124 5.2504023 0.15308533 0.087279574 0.082413806
|
||||
5200 124 5.2659596 0.17241407 0.099384862 0.083118924
|
||||
5300 124 5.2712193 0.17894892 0.099626237 0.084288849
|
||||
5400 124 5.2787049 0.18824913 0.10219206 0.081763058
|
||||
5500 124 5.2864544 0.19787729 0.10492289 0.082100381
|
||||
5600 124 5.2939393 0.20717681 0.10842003 0.081936074
|
||||
5700 124 5.3020913 0.21730504 0.11309658 0.083096264
|
||||
5800 124 5.3089934 0.22588036 0.11657282 0.083472698
|
||||
5900 124 5.3147183 0.23299307 0.12000481 0.083337683
|
||||
6000 124 5.3241216 0.24467603 0.12524512 0.083312456
|
||||
6100 124 5.3345453 0.25762669 0.13135815 0.083666287
|
||||
6200 124 5.3357153 0.25908032 0.13185776 0.083855111
|
||||
6300 124 5.3417298 0.26655284 0.13521844 0.084511512
|
||||
6400 124 5.3461733 0.27207356 0.1375877 0.08445019
|
||||
6500 124 5.3491551 0.27577827 0.13949034 0.084694686
|
||||
6600 124 5.3520289 0.27934872 0.14134154 0.084403705
|
||||
6700 124 5.355841 0.28408494 0.1435925 0.08479568
|
||||
6800 124 5.3608822 0.29034823 0.14636154 0.084796891
|
||||
6900 124 5.3641064 0.29435404 0.14822031 0.084636583
|
||||
7000 124 5.3664936 0.29731999 0.14957082 0.084681424
|
||||
7100 124 5.370434 0.30221567 0.15171915 0.084744017
|
||||
7200 124 5.3716029 0.30366789 0.15224159 0.085599998
|
||||
7300 124 5.3719337 0.30407894 0.15239181 0.085265794
|
||||
7400 124 5.3717886 0.30389862 0.15228125 0.085048862
|
||||
7500 124 5.3729819 0.30538125 0.15302965 0.085513236
|
||||
7600 124 5.3736409 0.30619992 0.15346603 0.085126903
|
||||
7700 124 5.3734973 0.30602161 0.15326715 0.085870776
|
||||
7800 124 5.3742065 0.3069027 0.1536922 0.085152121
|
||||
7900 124 5.3752637 0.30821621 0.15439789 0.085476609
|
||||
8000 124 5.3773145 0.31076416 0.15559007 0.085791749
|
||||
8100 124 5.3777123 0.31125838 0.15591462 0.08531435
|
||||
8200 124 5.3775898 0.31110617 0.1558302 0.085752338
|
||||
8300 124 5.3775553 0.31106337 0.15562475 0.086300437
|
||||
8400 124 5.3799091 0.31398779 0.1570463 0.085260347
|
||||
8500 124 5.3799831 0.31407966 0.15713064 0.085373576
|
||||
8600 124 5.380017 0.31412181 0.15720523 0.085342084
|
||||
8700 124 5.3799686 0.31406171 0.15721123 0.086223474
|
||||
8800 124 5.3813565 0.31578601 0.15798281 0.085392543
|
||||
8900 124 5.3815941 0.31608116 0.15818243 0.085482019
|
||||
9000 124 5.3815651 0.31604517 0.15821916 0.085538444
|
||||
9100 124 5.3816424 0.31614127 0.15829616 0.085684184
|
||||
9200 124 5.3815641 0.3160439 0.15831347 0.08526896
|
||||
9300 124 5.3811199 0.31549204 0.15801464 0.085848004
|
||||
9400 124 5.382478 0.31717943 0.15882722 0.086145692
|
||||
9500 124 5.3830353 0.31787185 0.15915683 0.085450771
|
||||
9600 124 5.3831332 0.31799341 0.15923155 0.085416324
|
||||
9700 124 5.3832948 0.31819419 0.15935762 0.085387545
|
||||
9800 124 5.3840779 0.31916711 0.15975721 0.08560667
|
||||
9900 124 5.3842171 0.31934012 0.159845 0.085547365
|
||||
10000 124 5.3862101 0.32181619 0.160876 0.085414766
|
||||
Loop time of 0.353055 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6118026.711 tau/day, 14162.099 timesteps/s, 1.756 Matom-step/s
|
||||
96.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.070537 | 0.070537 | 0.070537 | 0.0 | 19.98
|
||||
Neigh | 0.019928 | 0.019928 | 0.019928 | 0.0 | 5.64
|
||||
Comm | 0.00042487 | 0.00042487 | 0.00042487 | 0.0 | 0.12
|
||||
Output | 0.2524 | 0.2524 | 0.2524 | 0.0 | 71.49
|
||||
Modify | 0.0083924 | 0.0083924 | 0.0083924 | 0.0 | 2.38
|
||||
Other | | 0.001368 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 315
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.562 | 7.562 | 7.562 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.25902279 0.32181619 0.160876 0.0066564852
|
||||
10100 124 0.078320106 0.097306799 0.060539222 0.007805448
|
||||
10200 124 0.055004387 0.068338784 0.052320677 0.0026461505
|
||||
10300 124 0.050013703 0.062138237 0.049351053 0.0027137895
|
||||
10400 124 0.043870518 0.054505795 0.044683006 0.0021708086
|
||||
10500 124 0.036776691 0.045692252 0.037872077 0.0025876629
|
||||
10600 124 0.030001621 0.037274742 0.032601767 0.0035817232
|
||||
10700 124 0.026098209 0.032425048 0.029320364 0.0019774985
|
||||
10800 124 0.024452388 0.03038024 0.028518503 0.0034548101
|
||||
10900 124 0.020787653 0.025827084 0.025880067 0.0023865627
|
||||
11000 124 0.018283729 0.022716148 0.024283842 0.0024791255
|
||||
11100 124 0.016795448 0.020867072 0.023416045 0.0016336875
|
||||
11200 124 0.014930262 0.01854972 0.021981853 0.0015505118
|
||||
11300 124 0.014012114 0.017408991 0.021130907 0.0017795037
|
||||
11400 124 0.013562682 0.016850605 0.020502505 0.0025724773
|
||||
11500 124 0.012884492 0.016008005 0.01991195 0.0015754014
|
||||
11600 124 0.011953832 0.014851731 0.018960689 0.0020007622
|
||||
11700 124 0.011836339 0.014705755 0.019435427 0.0016103993
|
||||
11800 124 0.011037076 0.013712731 0.018997693 0.0019540971
|
||||
11900 124 0.010932107 0.013582315 0.019072917 0.00147549
|
||||
12000 124 0.01099415 0.013659399 0.018695305 0.0016223256
|
||||
12100 124 0.010704976 0.013300121 0.018841965 0.0015737757
|
||||
12200 124 0.010244691 0.012728253 0.018984857 0.0023548154
|
||||
12300 124 0.0097078529 0.012061272 0.018340321 0.0020279841
|
||||
12400 124 0.0093873799 0.011663108 0.018058176 0.0017085133
|
||||
12500 124 0.0091864665 0.011413489 0.016617566 0.0029005125
|
||||
12600 124 0.0093721201 0.011644149 0.01659216 0.001843826
|
||||
12700 124 0.0085867868 0.010668432 0.01610889 0.0027852908
|
||||
12800 124 0.0080688661 0.010024955 0.016412496 0.0035052823
|
||||
12900 124 0.0070827536 0.0087997848 0.014807272 0.0023574294
|
||||
13000 124 0.0062582856 0.0077754457 0.01480373 0.0027340736
|
||||
13100 124 0.0057725257 0.0071719259 0.015062076 0.002487901
|
||||
13200 124 0.0052896823 0.0065720295 0.0154416 0.0015994582
|
||||
13300 124 0.0057364664 0.0071271249 0.015700129 0.0015451013
|
||||
13400 124 0.0062684466 0.00778807 0.016185631 0.0018109382
|
||||
13500 124 0.0057823202 0.0071840947 0.015642287 0.0023353672
|
||||
13600 124 0.0054893444 0.0068200946 0.015197387 0.0020769185
|
||||
13700 124 0.0052411899 0.0065117814 0.014647838 0.0018125771
|
||||
13800 124 0.0048067514 0.0059720245 0.014583902 0.0020513529
|
||||
13900 124 0.0050435734 0.0062662579 0.015595068 0.0014699579
|
||||
14000 124 0.0049460152 0.0061450492 0.015965634 0.001392331
|
||||
14100 124 0.0046219442 0.0057424155 0.015663384 0.0014890253
|
||||
14200 124 0.0048184995 0.0059866206 0.015290196 0.0017217599
|
||||
14300 124 0.0049531756 0.0061539454 0.015631133 0.0020820646
|
||||
14400 124 0.004608077 0.0057251866 0.01512022 0.0015346016
|
||||
14500 124 0.0044909079 0.0055796129 0.015032761 0.0016169354
|
||||
14600 124 0.0044307569 0.0055048797 0.015259724 0.0019791575
|
||||
14700 124 0.0042209282 0.0052441835 0.015206142 0.001634029
|
||||
14800 124 0.004931427 0.0061269245 0.015351353 0.0020991125
|
||||
14900 124 0.0043513432 0.0054062142 0.014367168 0.0022798395
|
||||
15000 124 0.0044465482 0.0055244993 0.014488799 0.0027071352
|
||||
Loop time of 0.328479 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6575768.459 tau/day, 15221.686 timesteps/s, 1.887 Matom-step/s
|
||||
96.4% 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.058012 | 0.058012 | 0.058012 | 0.0 | 17.66
|
||||
Neigh | 0.0059592 | 0.0059592 | 0.0059592 | 0.0 | 1.81
|
||||
Comm | 0.00031492 | 0.00031492 | 0.00031492 | 0.0 | 0.10
|
||||
Output | 0.25848 | 0.25848 | 0.25848 | 0.0 | 78.69
|
||||
Modify | 0.0044353 | 0.0044353 | 0.0044353 | 0.0 | 1.35
|
||||
Other | | 0.001276 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 94
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.437 | 8.437 | 8.437 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0044465482 0.0055244993 0.014488799 0.002682599
|
||||
15100 124 5.2439101 0.14501926 0.089393313 0.0861951
|
||||
15200 124 5.2871886 0.19878957 0.11689814 0.087629076
|
||||
15300 124 5.3269872 0.24823627 0.14065555 0.084448851
|
||||
15400 124 5.318405 0.23757348 0.13557872 0.08579496
|
||||
15500 124 5.322977 0.24325395 0.1367731 0.084332501
|
||||
15600 124 5.3387157 0.26280804 0.14469795 0.091920302
|
||||
15700 124 5.3468954 0.27297066 0.14714255 0.092776597
|
||||
15800 124 5.3787123 0.31250075 0.16363996 0.091882707
|
||||
15900 124 5.4124578 0.354427 0.18222961 0.090476713
|
||||
16000 124 5.4095058 0.35075937 0.17808408 0.090347477
|
||||
16100 124 5.4027965 0.34242354 0.1735999 0.091782107
|
||||
16200 124 5.4022601 0.34175711 0.17335141 0.094848056
|
||||
16300 124 5.4045444 0.34459525 0.17424728 0.093070457
|
||||
16400 124 5.4101141 0.35151512 0.17740527 0.091595086
|
||||
16500 124 5.4083344 0.34930396 0.1760425 0.09403337
|
||||
16600 124 5.4016713 0.34102557 0.17264803 0.091701205
|
||||
16700 124 5.3964053 0.33448303 0.16952454 0.097389495
|
||||
16800 124 5.4155708 0.35829473 0.18177437 0.092539674
|
||||
16900 124 5.428106 0.37386868 0.18956572 0.095082983
|
||||
17000 124 5.4113572 0.35305963 0.17951019 0.093172207
|
||||
17100 124 5.4017206 0.34108687 0.17437504 0.090773913
|
||||
17200 124 5.4156275 0.35836508 0.18539559 0.084238411
|
||||
17300 124 5.4009849 0.34017277 0.17748735 0.092123575
|
||||
17400 124 5.4017142 0.34107897 0.18110554 0.08358144
|
||||
17500 124 5.438404 0.38666317 0.20673435 0.08724577
|
||||
17600 124 5.5085355 0.47379629 0.25395237 0.085044882
|
||||
17700 124 5.573336 0.55430604 0.29833936 0.086018483
|
||||
17800 124 5.6428243 0.64063997 0.34884622 0.091543453
|
||||
17900 124 5.6885972 0.69750927 0.38081471 0.090348055
|
||||
18000 124 5.7119205 0.72648671 0.3965357 0.095583224
|
||||
18100 124 5.6590292 0.66077326 0.36523218 0.088750557
|
||||
18200 124 5.5763862 0.55809563 0.31550553 0.096656501
|
||||
18300 124 5.5505114 0.52594811 0.2987063 0.093142352
|
||||
18400 124 5.5205731 0.48875209 0.2808444 0.087905083
|
||||
18500 124 5.4892953 0.44989178 0.26426272 0.088670881
|
||||
18600 124 5.4222293 0.36656731 0.22263438 0.087525924
|
||||
18700 124 5.4048793 0.34501133 0.2146507 0.086965023
|
||||
18800 124 5.4091495 0.35031672 0.21471813 0.088080028
|
||||
18900 124 5.4055995 0.34590616 0.21031053 0.085893342
|
||||
19000 124 5.3793845 0.31333589 0.19319866 0.091199294
|
||||
19100 124 5.3860486 0.32161564 0.19859682 0.089765384
|
||||
19200 124 5.3927702 0.32996663 0.20403509 0.088705875
|
||||
19300 124 5.3971859 0.33545284 0.20175175 0.095973464
|
||||
19400 124 5.3788197 0.3126342 0.18579792 0.089895991
|
||||
19500 124 5.3885341 0.32470369 0.18948024 0.08907407
|
||||
19600 124 5.4101398 0.35154706 0.19813337 0.091175233
|
||||
19700 124 5.4044673 0.34449937 0.1920192 0.088240134
|
||||
19800 124 5.4173446 0.36049849 0.19933328 0.088942313
|
||||
19900 124 5.4076506 0.34845443 0.1927872 0.088186985
|
||||
20000 124 5.3956924 0.33359732 0.18569985 0.086310528
|
||||
Loop time of 0.373054 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5790041.220 tau/day, 13402.873 timesteps/s, 1.662 Matom-step/s
|
||||
94.6% 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.062905 | 0.062905 | 0.062905 | 0.0 | 16.86
|
||||
Neigh | 0.0304 | 0.0304 | 0.0304 | 0.0 | 8.15
|
||||
Comm | 0.0004825 | 0.0004825 | 0.0004825 | 0.0 | 0.13
|
||||
Output | 0.26963 | 0.26963 | 0.26963 | 0.0 | 72.28
|
||||
Modify | 0.00823 | 0.00823 | 0.00823 | 0.0 | 2.21
|
||||
Other | | 0.001409 | | | 0.38
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 440
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.562 | 7.562 | 7.562 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 124 0.26850516 0.33359732 0.18569985 -0.00058742278
|
||||
20100 124 0.067549955 0.083925702 0.063062899 0.0045374238
|
||||
20200 124 0.066580568 0.082721312 0.059638881 0.0046773578
|
||||
20300 124 0.07628847 0.094782644 0.062421657 0.0046893994
|
||||
20400 124 0.052816991 0.06562111 0.047589744 0.0028448251
|
||||
20500 124 0.055535483 0.068998631 0.048552669 0.0030160754
|
||||
20600 124 0.057734099 0.071730244 0.048245877 0.0055952666
|
||||
20700 124 0.025276846 0.031404566 0.029056653 0.0010557897
|
||||
20800 124 0.027799744 0.034539076 0.028465929 0.0054351904
|
||||
20900 124 0.027298566 0.033916401 0.027639247 0.0040270655
|
||||
21000 124 0.024024164 0.029848203 0.024340109 0.0021868639
|
||||
21100 124 0.024987535 0.031045119 0.025194034 0.0031461768
|
||||
21200 124 0.022012372 0.027348704 0.023163575 0.0043315251
|
||||
21300 124 0.022655698 0.028147988 0.023878073 0.0020061516
|
||||
21400 124 0.021143161 0.026268775 0.022847649 0.0040014299
|
||||
21500 124 0.014709587 0.018275548 0.016687241 0.0023850643
|
||||
21600 124 0.015706963 0.019514711 0.017385202 0.0032947123
|
||||
21700 124 0.013349261 0.016585446 0.015935512 0.0031959548
|
||||
21800 124 0.014581152 0.018115977 0.016568563 0.0037723007
|
||||
21900 124 0.014163143 0.017596633 0.016786239 0.0026785551
|
||||
22000 124 0.016104454 0.020008564 0.018204239 0.0023406746
|
||||
22100 124 0.01339249 0.016639155 0.016215231 0.001863965
|
||||
22200 124 0.013630138 0.016934414 0.015604721 0.0028389532
|
||||
22300 124 0.014166961 0.017601376 0.015759254 0.0028485515
|
||||
22400 124 0.011839829 0.014710091 0.014221942 0.0017289255
|
||||
22500 124 0.013154489 0.016343456 0.015344524 0.002604136
|
||||
22600 124 0.01184812 0.014720391 0.014245522 0.0033590472
|
||||
22700 124 0.011433291 0.014204998 0.013639711 0.0033184417
|
||||
22800 124 0.012475296 0.01549961 0.014280851 0.0019255869
|
||||
22900 124 0.011013166 0.013683025 0.012635318 0.0022642412
|
||||
23000 124 0.011272729 0.014005511 0.012664054 0.0031554482
|
||||
23100 124 0.011308641 0.01405013 0.01269757 0.0012325204
|
||||
23200 124 0.010130039 0.012585807 0.012040563 0.0031495614
|
||||
23300 124 0.01068914 0.013280447 0.012068167 0.0030504659
|
||||
23400 124 0.0088509283 0.010996608 0.010081312 0.0011009871
|
||||
23500 124 0.0086960335 0.010804163 0.0098039166 0.0016850167
|
||||
23600 124 0.0099572186 0.01237109 0.010813937 0.0029185027
|
||||
23700 124 0.0099220344 0.012327376 0.01019147 0.0041517151
|
||||
23800 124 0.0074584766 0.0092665922 0.00878623 0.0033529004
|
||||
23900 124 0.0073723023 0.0091595271 0.0091933559 0.0011381908
|
||||
24000 124 0.0085493541 0.010621925 0.0099793177 0.0023747349
|
||||
24100 124 0.0067898783 0.0084359094 0.0089497737 0.0034141299
|
||||
24200 124 0.0060281758 0.0074895517 0.0087835149 0.0010072857
|
||||
24300 124 0.0060915949 0.0075683452 0.0085728503 0.0018651179
|
||||
24400 124 0.0064602712 0.0080263976 0.0089108593 0.00097753256
|
||||
24500 124 0.0069832749 0.00867619 0.0096009113 0.0012080821
|
||||
24600 124 0.006177616 0.0076752198 0.0086417752 0.0017792353
|
||||
24700 124 0.0052226061 0.0064886924 0.0082196264 0.0011437075
|
||||
24800 124 0.0051375444 0.0063830098 0.0083830573 0.0026277208
|
||||
24900 124 0.0037569854 0.0046677698 0.0072102729 0.0017298399
|
||||
25000 124 0.0039418359 0.0048974325 0.0073209218 0.0011140053
|
||||
Loop time of 0.332906 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6488317.108 tau/day, 15019.253 timesteps/s, 1.862 Matom-step/s
|
||||
94.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.055597 | 0.055597 | 0.055597 | 0.0 | 16.70
|
||||
Neigh | 0.0121 | 0.0121 | 0.0121 | 0.0 | 3.63
|
||||
Comm | 0.00035777 | 0.00035777 | 0.00035777 | 0.0 | 0.11
|
||||
Output | 0.25919 | 0.25919 | 0.25919 | 0.0 | 77.86
|
||||
Modify | 0.0043494 | 0.0043494 | 0.0043494 | 0.0 | 1.31
|
||||
Other | | 0.00131 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 197
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:01
|
||||
516
examples/gransurf/log.1Jul24.tribox.gran.surf.g++.4
Normal file
516
examples/gransurf/log.1Jul24.tribox.gran.surf.g++.4
Normal file
@ -0,0 +1,516 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
|
||||
molecule tris surf.tribox
|
||||
Read molecule template tris:
|
||||
LAMMPS data file for tri box
|
||||
1 molecules
|
||||
0 fragments
|
||||
0 atoms with max type 0
|
||||
0 bonds with max type 0
|
||||
0 angles with max type 0
|
||||
0 dihedrals with max type 0
|
||||
0 impropers with max type 0
|
||||
24 triangles
|
||||
fix 20 all surface/local tris
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.337 | 7.338 | 7.342 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0029137134
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0043383984
|
||||
300 54 0.70118095 1.2814686 0.62987441 0.0046453238
|
||||
400 54 0.45057814 0.82347039 0.41172861 0.0030892546
|
||||
500 54 0.42112344 0.76963938 0.38709352 0.0065941015
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.37166521 0.51325196 0.26472957 0.0046580242
|
||||
700 88 0.41372338 0.57133229 0.29476966 0.0052995687
|
||||
800 88 0.456666 0.630634 0.32751956 0.0052868185
|
||||
900 88 0.39272615 0.54233611 0.28819808 0.0054685106
|
||||
1000 88 0.35151938 0.48543152 0.26491902 0.0075844126
|
||||
1100 88 0.34254338 0.47303609 0.2578388 0.0058365561
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.32173809 0.40053109 0.2195167 0.009133967
|
||||
1300 123 0.34297407 0.42696772 0.23049402 0.0064335441
|
||||
1400 123 0.29833429 0.37139575 0.20331799 0.0078377048
|
||||
1500 123 0.26892843 0.33478846 0.18670497 0.0068237101
|
||||
1600 123 0.24084602 0.29982872 0.16693769 0.0058533752
|
||||
1700 124 0.16657955 0.20696247 0.12302494 0.0070405476
|
||||
1800 124 0.10384588 0.12902064 0.086085999 0.0026199715
|
||||
1900 124 0.065080172 0.080857183 0.059672578 0.0039751399
|
||||
2000 124 0.05183749 0.064404155 0.04642994 0.0020956381
|
||||
2100 124 0.045454362 0.056473601 0.038678168 0.0021870001
|
||||
2200 124 0.040260905 0.050021124 0.034386815 0.0040428451
|
||||
2300 124 0.017599392 0.021865912 0.017659763 0.0033409473
|
||||
2400 124 0.017871716 0.022204254 0.016705941 0.0035685425
|
||||
2500 124 0.010140454 0.012598746 0.010222061 0.0012285151
|
||||
2600 124 0.0087985619 0.010931547 0.0087284273 0.0012844023
|
||||
2700 124 0.007517679 0.0093401466 0.0071819965 0.0014841812
|
||||
2800 124 0.0062774012 0.0077991955 0.0059012475 0.0013323867
|
||||
2900 124 0.0038811559 0.0048220422 0.0039902314 0.0012740306
|
||||
3000 124 0.0040746036 0.0050623863 0.0038882236 0.0013782794
|
||||
3100 124 0.0020498002 0.0025467215 0.0022365676 0.00121108
|
||||
3200 124 0.0019550482 0.0024289992 0.0021292434 0.0011484714
|
||||
3300 124 0.0016148199 0.0020062914 0.001787787 0.0010893844
|
||||
3400 124 0.0013434329 0.0016691136 0.0014690989 0.001325505
|
||||
3500 124 0.0010971454 0.00136312 0.0012496656 0.0014062237
|
||||
3600 124 0.00089514745 0.0011121529 0.0010349137 0.0013004041
|
||||
3700 124 0.00079220295 0.00098425215 0.00089325412 0.0013154029
|
||||
3800 124 0.00072319138 0.0008985105 0.00082122483 0.0010962257
|
||||
3900 124 0.00059169918 0.00073514141 0.0006832875 0.0011623171
|
||||
4000 124 0.00049184916 0.00061108533 0.00058188229 0.0012411181
|
||||
4100 124 0.00040680153 0.00050542008 0.00047870676 0.0011629016
|
||||
4200 124 0.00030588217 0.00038003543 0.00038246927 0.001099663
|
||||
4300 124 0.00026922252 0.00033448858 0.00034959953 0.0011174124
|
||||
4400 124 0.00022239176 0.00027630491 0.0002971948 0.0011072118
|
||||
4500 124 0.00020343817 0.00025275651 0.00027474732 0.0011125161
|
||||
4600 124 0.00020212818 0.00025112896 0.00027242474 0.0011191532
|
||||
4700 124 0.00018351448 0.00022800283 0.00025264863 0.0011176353
|
||||
4800 124 0.00018007372 0.00022372795 0.00024857425 0.0011156418
|
||||
4900 124 0.00015459176 0.00019206855 0.00021711531 0.0011174087
|
||||
5000 124 0.00013814109 0.00017162984 0.00019806357 0.0011476165
|
||||
Loop time of 0.38831 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5562573.007 tau/day, 12876.326 timesteps/s, 1.597 Matom-step/s
|
||||
90.8% 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.0018869 | 0.015601 | 0.030549 | 10.9 | 4.02
|
||||
Neigh | 0.0018269 | 0.0044514 | 0.0069007 | 3.6 | 1.15
|
||||
Comm | 0.06426 | 0.079269 | 0.093176 | 4.8 | 20.41
|
||||
Output | 0.18739 | 0.22364 | 0.27884 | 7.6 | 57.59
|
||||
Modify | 0.0013862 | 0.002664 | 0.0040784 | 2.3 | 0.69
|
||||
Other | | 0.06269 | | | 16.14
|
||||
|
||||
Nlocal: 31 ave 55 max 6 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 118 max 69 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00013814109 0.00017162984 0.00019806357 0.0011393845
|
||||
5100 124 5.2497489 0.15227351 0.086950224 0.083018439
|
||||
5200 124 5.2667941 0.17345097 0.10004552 0.081933375
|
||||
5300 124 5.2702467 0.17774046 0.098721846 0.081858913
|
||||
5400 124 5.2810321 0.1911405 0.10284442 0.081908237
|
||||
5500 124 5.2869181 0.19845342 0.10520589 0.082475287
|
||||
5600 124 5.2903829 0.20275822 0.1062221 0.082060713
|
||||
5700 124 5.2972601 0.21130259 0.11014372 0.082904363
|
||||
5800 124 5.3133933 0.23134691 0.11895223 0.082638221
|
||||
5900 124 5.321421 0.24132073 0.12341367 0.08367512
|
||||
6000 124 5.3311871 0.25345436 0.1289868 0.08585114
|
||||
6100 124 5.3397784 0.26412833 0.13380251 0.083860885
|
||||
6200 124 5.3440946 0.26949097 0.13630397 0.084294896
|
||||
6300 124 5.3490438 0.27563994 0.13938066 0.084316514
|
||||
6400 124 5.3513948 0.27856086 0.14088282 0.084355453
|
||||
6500 124 5.3532922 0.28091822 0.14197211 0.084169662
|
||||
6600 124 5.3554267 0.28357014 0.14325168 0.084261645
|
||||
6700 124 5.3570557 0.2855941 0.14433458 0.084810743
|
||||
6800 124 5.360655 0.29006592 0.14636096 0.084297488
|
||||
6900 124 5.3655245 0.29611592 0.14908452 0.085243202
|
||||
7000 124 5.3671924 0.29818814 0.14990767 0.085406818
|
||||
7100 124 5.3695979 0.30117682 0.15113793 0.084784596
|
||||
7200 124 5.3704771 0.30226917 0.15173765 0.085669989
|
||||
7300 124 5.3706216 0.3024487 0.15180341 0.084798844
|
||||
7400 124 5.373135 0.30557147 0.15321903 0.085809531
|
||||
7500 124 5.377898 0.31148903 0.15599818 0.085242244
|
||||
7600 124 5.3787889 0.31259599 0.15641937 0.085326973
|
||||
7700 124 5.3793411 0.31328199 0.15676105 0.084950755
|
||||
7800 124 5.3803167 0.31449408 0.15736738 0.085202699
|
||||
7900 124 5.3797837 0.31383196 0.15704082 0.085404305
|
||||
8000 124 5.378568 0.31232146 0.15632737 0.084957387
|
||||
8100 124 5.3790479 0.31291774 0.15667738 0.08504012
|
||||
8200 124 5.3804618 0.3146744 0.15746304 0.085394022
|
||||
8300 124 5.381518 0.31598663 0.1580058 0.085647397
|
||||
8400 124 5.3814854 0.31594618 0.15794776 0.085483103
|
||||
8500 124 5.3828149 0.31759794 0.15875289 0.085382128
|
||||
8600 124 5.3832577 0.31814807 0.15901813 0.085100022
|
||||
8700 124 5.3838083 0.31883219 0.1593819 0.085126575
|
||||
8800 124 5.3842963 0.31943849 0.15972799 0.085207191
|
||||
8900 124 5.3846809 0.31991635 0.15992599 0.085139646
|
||||
9000 124 5.3850037 0.32031738 0.16014788 0.085113229
|
||||
9100 124 5.3849209 0.32021445 0.16009856 0.086008106
|
||||
9200 124 5.3851663 0.32051942 0.16025838 0.085113861
|
||||
9300 124 5.3847882 0.32004969 0.16001717 0.085571311
|
||||
9400 124 5.3845996 0.31981535 0.15990007 0.085364837
|
||||
9500 124 5.3847067 0.31994844 0.15998733 0.085299109
|
||||
9600 124 5.3849015 0.32019038 0.1601311 0.085276233
|
||||
9700 124 5.3850083 0.32032313 0.16021695 0.08525484
|
||||
9800 124 5.3852855 0.32066753 0.16041712 0.085313652
|
||||
9900 124 5.3850371 0.3203589 0.16026849 0.085310954
|
||||
10000 124 5.3851839 0.32054133 0.16038666 0.085302918
|
||||
Loop time of 0.416211 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5189670.286 tau/day, 12013.126 timesteps/s, 1.490 Matom-step/s
|
||||
91.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.0051455 | 0.025429 | 0.046204 | 12.6 | 6.11
|
||||
Neigh | 0.002146 | 0.0071526 | 0.012427 | 5.9 | 1.72
|
||||
Comm | 0.075914 | 0.099171 | 0.12133 | 7.0 | 23.83
|
||||
Output | 0.1817 | 0.21488 | 0.2715 | 8.0 | 51.63
|
||||
Modify | 0.0028369 | 0.0042822 | 0.0059817 | 2.2 | 1.03
|
||||
Other | | 0.0653 | | | 15.69
|
||||
|
||||
Nlocal: 31 ave 59 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Nghost: 93 ave 116 max 65 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 316
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.714 | 7.726 | 7.737 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.25799668 0.32054133 0.16038666 0.011646419
|
||||
10100 124 0.08324921 0.10343084 0.062335766 0.0036624752
|
||||
10200 124 0.055901794 0.069453744 0.049832932 0.0033728561
|
||||
10300 124 0.044027763 0.054701161 0.04185265 0.0026179937
|
||||
10400 124 0.033039084 0.04104856 0.033838053 0.0042759187
|
||||
10500 124 0.027910031 0.034676099 0.03032615 0.0035478069
|
||||
10600 124 0.023950341 0.029756484 0.027453511 0.0021787132
|
||||
10700 124 0.019265986 0.023936529 0.024195141 0.0021075014
|
||||
10800 124 0.01792324 0.022268268 0.02351488 0.0024045592
|
||||
10900 124 0.016637573 0.020670924 0.022003538 0.0034529435
|
||||
11000 124 0.01309629 0.016271149 0.019359267 0.0017153891
|
||||
11100 124 0.011683446 0.014515797 0.018854763 0.0026746409
|
||||
11200 124 0.010761235 0.013370019 0.018196576 0.0029245106
|
||||
11300 124 0.010091525 0.012537955 0.017818489 0.0015293592
|
||||
11400 124 0.0096257383 0.011959251 0.017339573 0.001738964
|
||||
11500 124 0.0090651598 0.011262774 0.017333091 0.001572136
|
||||
11600 124 0.0083289641 0.010348107 0.016333003 0.0017025439
|
||||
11700 124 0.0082472994 0.010246645 0.015938935 0.0014901853
|
||||
11800 124 0.0084807765 0.010536722 0.016623711 0.0014242448
|
||||
11900 124 0.007712302 0.009581951 0.016222065 0.001508232
|
||||
12000 124 0.0075675523 0.0094021104 0.016169534 0.0014905945
|
||||
12100 124 0.0079750147 0.0099083516 0.015149716 0.0018322585
|
||||
12200 124 0.0078458496 0.0097478738 0.015374706 0.0015492292
|
||||
12300 124 0.0067921053 0.0084386763 0.013486857 0.0029067448
|
||||
12400 124 0.0068508251 0.0085116312 0.014323963 0.0022197074
|
||||
12500 124 0.0066111171 0.0082138122 0.014731325 0.0019302025
|
||||
12600 124 0.0064707353 0.0080393984 0.014543367 0.0016587329
|
||||
12700 124 0.0063923274 0.0079419826 0.014294803 0.0021257946
|
||||
12800 124 0.0065672963 0.0081593681 0.014584204 0.0021816878
|
||||
12900 124 0.0059726164 0.0074205234 0.013858993 0.001530472
|
||||
13000 124 0.0058214195 0.0072326727 0.014246373 0.0022339129
|
||||
13100 124 0.0059612276 0.0074063737 0.015124804 0.0017832816
|
||||
13200 124 0.0054078557 0.006718851 0.014415419 0.0015478062
|
||||
13300 124 0.0050729677 0.0063027781 0.014411303 0.0034332889
|
||||
13400 124 0.0050627437 0.0062900755 0.014575044 0.0018503274
|
||||
13500 124 0.0046199761 0.0057399703 0.015232064 0.0015707131
|
||||
13600 124 0.0044802838 0.0055664132 0.015492936 0.0013436939
|
||||
13700 124 0.0039229012 0.0048739075 0.014834411 0.0015775897
|
||||
13800 124 0.0038496507 0.0047828994 0.014358939 0.0018648078
|
||||
13900 124 0.0038836627 0.0048251567 0.015268416 0.0016609027
|
||||
14000 124 0.0039681599 0.0049301381 0.015565026 0.0015819215
|
||||
14100 124 0.0038047814 0.0047271526 0.013834942 0.0026360599
|
||||
14200 124 0.0039663433 0.004927881 0.014740545 0.0017718033
|
||||
14300 124 0.0042501525 0.0052804925 0.015931298 0.0015106704
|
||||
14400 124 0.0043324422 0.0053827312 0.014699138 0.0017419936
|
||||
14500 124 0.0051700329 0.0064233742 0.014614744 0.0017929379
|
||||
14600 124 0.0051378715 0.006383416 0.015531966 0.001759876
|
||||
14700 124 0.0043671736 0.0054258823 0.014990071 0.0014624588
|
||||
14800 124 0.0045615958 0.0056674372 0.014632879 0.001980479
|
||||
14900 124 0.0043120591 0.0053574067 0.014648647 0.0017081314
|
||||
15000 124 0.0040016693 0.004971771 0.015227426 0.0014981674
|
||||
Loop time of 0.383969 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5625453.581 tau/day, 13021.883 timesteps/s, 1.615 Matom-step/s
|
||||
93.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.00068953 | 0.018285 | 0.03985 | 13.2 | 4.76
|
||||
Neigh | 0.00065387 | 0.0021284 | 0.0039605 | 3.2 | 0.55
|
||||
Comm | 0.067454 | 0.088442 | 0.1049 | 5.6 | 23.03
|
||||
Output | 0.17852 | 0.21163 | 0.26515 | 7.5 | 55.12
|
||||
Modify | 0.00076231 | 0.0021966 | 0.0037187 | 3.0 | 0.57
|
||||
Other | | 0.06129 | | | 15.96
|
||||
|
||||
Nlocal: 31 ave 54 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 116 max 70 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 88
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0040016693 0.004971771 0.015227426 0.0015086634
|
||||
15100 124 5.2391455 0.13909965 0.086544429 0.084187091
|
||||
15200 124 5.2856213 0.19684224 0.11745683 0.083186315
|
||||
15300 124 5.3131372 0.23102865 0.13493822 0.08605977
|
||||
15400 124 5.312441 0.23016376 0.13361748 0.085326393
|
||||
15500 124 5.3238039 0.24428132 0.13748765 0.083860323
|
||||
15600 124 5.3492159 0.27585379 0.15195482 0.090509109
|
||||
15700 124 5.3793259 0.31326319 0.16813451 0.094842314
|
||||
15800 124 5.3836817 0.31867484 0.17028976 0.089989699
|
||||
15900 124 5.3796952 0.31372196 0.16538847 0.094472961
|
||||
16000 124 5.4115814 0.3533382 0.18150785 0.091208354
|
||||
16100 124 5.3936511 0.33106115 0.17088137 0.093629945
|
||||
16200 124 5.3957378 0.33365363 0.17021817 0.099559486
|
||||
16300 124 5.4107263 0.35227575 0.17833256 0.097418633
|
||||
16400 124 5.4157911 0.35856834 0.18023194 0.094902693
|
||||
16500 124 5.4104949 0.35198831 0.17667749 0.098565938
|
||||
16600 124 5.409282 0.35048133 0.17592806 0.096041734
|
||||
16700 124 5.413877 0.35619023 0.1787891 0.092627526
|
||||
16800 124 5.41431 0.35672824 0.1791246 0.094118962
|
||||
16900 124 5.4131542 0.35529219 0.17881883 0.092708811
|
||||
17000 124 5.4141932 0.35658307 0.1798655 0.090520504
|
||||
17100 124 5.4220385 0.3663303 0.18519617 0.089222997
|
||||
17200 124 5.4046579 0.34473618 0.17738138 0.094492682
|
||||
17300 124 5.4056346 0.34594968 0.17932898 0.087067848
|
||||
17400 124 5.4625758 0.4166948 0.21590291 0.087573329
|
||||
17500 124 5.5101683 0.47582488 0.24840276 0.086186395
|
||||
17600 124 5.5878392 0.5723251 0.29850268 0.08748419
|
||||
17700 124 5.6772998 0.6834732 0.36153625 0.091782683
|
||||
17800 124 5.7649819 0.79241148 0.41944601 0.091955533
|
||||
17900 124 5.6293884 0.6239469 0.34262388 0.092222925
|
||||
18000 124 5.5993719 0.58665365 0.3202341 0.092041421
|
||||
18100 124 5.5929165 0.57863332 0.31757988 0.089752868
|
||||
18200 124 5.5194314 0.48733363 0.27391729 0.088604294
|
||||
18300 124 5.5558601 0.53259351 0.29860433 0.087707501
|
||||
18400 124 5.5243479 0.49344201 0.28138274 0.091109598
|
||||
18500 124 5.4712545 0.4274775 0.24899279 0.085579285
|
||||
18600 124 5.4614746 0.41532663 0.24277803 0.093560936
|
||||
18700 124 5.4335266 0.38060339 0.22486156 0.092857653
|
||||
18800 124 5.4062944 0.34676949 0.20805012 0.085928259
|
||||
18900 124 5.3680383 0.29923911 0.18445379 0.09139396
|
||||
19000 124 5.3612247 0.29077372 0.17705414 0.091152733
|
||||
19100 124 5.3657774 0.29643016 0.18163087 0.088533894
|
||||
19200 124 5.3753017 0.30826343 0.18731953 0.090708858
|
||||
19300 124 5.3788607 0.31268517 0.18511328 0.091858903
|
||||
19400 124 5.3753079 0.30827114 0.18028529 0.094270307
|
||||
19500 124 5.3793587 0.31330386 0.17822453 0.09479624
|
||||
19600 124 5.3794279 0.31338982 0.17247606 0.088668785
|
||||
19700 124 5.3883131 0.3244291 0.17733088 0.089605063
|
||||
19800 124 5.3862701 0.32189078 0.17600167 0.087391973
|
||||
19900 124 5.3627176 0.2926286 0.15793773 0.087196402
|
||||
20000 124 5.371666 0.30374625 0.16190487 0.08799023
|
||||
Loop time of 0.44519 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 4851866.281 tau/day, 11231.172 timesteps/s, 1.393 Matom-step/s
|
||||
94.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.010338 | 0.023654 | 0.039387 | 8.5 | 5.31
|
||||
Neigh | 0.0046555 | 0.0104 | 0.019115 | 5.9 | 2.34
|
||||
Comm | 0.082693 | 0.10525 | 0.12179 | 5.2 | 23.64
|
||||
Output | 0.1884 | 0.23171 | 0.29261 | 8.5 | 52.05
|
||||
Modify | 0.0033946 | 0.0047351 | 0.0067516 | 2.1 | 1.06
|
||||
Other | | 0.06944 | | | 15.60
|
||||
|
||||
Nlocal: 31 ave 73 max 6 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 93 ave 118 max 51 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 429
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.737 | 7.746 | 7.773 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 124 0.24447869 0.30374625 0.16190487 -0.013113207
|
||||
20100 124 0.058472851 0.072648087 0.051241435 0.0027199931
|
||||
20200 124 0.052338782 0.065026972 0.04463957 0.0049181017
|
||||
20300 124 0.059032454 0.073343352 0.046997972 0.0036432387
|
||||
20400 124 0.041540522 0.051610952 0.034851914 0.0080319941
|
||||
20500 124 0.034253651 0.042557567 0.030035232 0.0085785376
|
||||
20600 124 0.027090159 0.03365747 0.025218135 0.0056701536
|
||||
20700 124 0.023080903 0.028676274 0.022777714 0.0021487926
|
||||
20800 124 0.024811993 0.030827022 0.023644112 0.0031902401
|
||||
20900 124 0.02296688 0.028534608 0.022697322 0.0052975401
|
||||
21000 124 0.024959299 0.031010038 0.023833456 0.0049399041
|
||||
21100 124 0.024560924 0.030515087 0.022657931 0.0034176814
|
||||
21200 124 0.025331395 0.031472339 0.023297144 0.0051700371
|
||||
21300 124 0.023119592 0.028724342 0.021901117 0.0028542595
|
||||
21400 124 0.021068783 0.026176367 0.02024999 0.0066313423
|
||||
21500 124 0.019958716 0.024797192 0.020021151 0.0054394297
|
||||
21600 124 0.021501915 0.026714501 0.021044833 0.003139584
|
||||
21700 124 0.022663473 0.028157649 0.021375039 0.0047077744
|
||||
21800 124 0.017783349 0.022094464 0.018460952 0.0024408478
|
||||
21900 124 0.017441008 0.021669131 0.017976927 0.004236632
|
||||
22000 124 0.016834232 0.020915258 0.017867023 0.0032297246
|
||||
22100 124 0.016852641 0.02093813 0.017823693 0.0031993194
|
||||
22200 124 0.017260002 0.021444245 0.018617101 0.001645186
|
||||
22300 124 0.016279285 0.020225778 0.017759307 0.0048239099
|
||||
22400 124 0.013098535 0.016273937 0.014976085 0.0030481479
|
||||
22500 124 0.01253107 0.015568906 0.014821105 0.002818037
|
||||
22600 124 0.013231925 0.016439664 0.014841942 0.0061556104
|
||||
22700 124 0.010622794 0.013198017 0.013335312 0.0032549657
|
||||
22800 124 0.012715053 0.01579749 0.01437656 0.0017626703
|
||||
22900 124 0.01207747 0.015005341 0.013708244 0.0018658438
|
||||
23000 124 0.010825905 0.013450367 0.01253289 0.0024262171
|
||||
23100 124 0.010506745 0.013053834 0.012086254 0.0013807784
|
||||
23200 124 0.010816779 0.013439028 0.012089622 0.0020534022
|
||||
23300 124 0.010541511 0.013097028 0.012162291 0.0020542813
|
||||
23400 124 0.0094678491 0.011763085 0.011404012 0.0011667903
|
||||
23500 124 0.0083682956 0.010396973 0.010273685 0.0025941956
|
||||
23600 124 0.0076879289 0.0095516693 0.0099437632 0.0014724848
|
||||
23700 124 0.0087792045 0.010907496 0.010802224 0.0017158203
|
||||
23800 124 0.0070944354 0.0088142985 0.010176751 0.0030678737
|
||||
23900 124 0.0073071217 0.0090785451 0.010067352 0.0021355515
|
||||
24000 124 0.007092681 0.0088121188 0.0093578983 0.0037224355
|
||||
24100 124 0.0061240788 0.0076087039 0.0088323652 0.00075591612
|
||||
24200 124 0.0060997333 0.0075784566 0.0089160306 0.00074919945
|
||||
24300 124 0.0074369071 0.0092397936 0.0098936814 0.0016742568
|
||||
24400 124 0.0055774041 0.0069295021 0.0089788427 0.0010941333
|
||||
24500 124 0.0054891817 0.0068198925 0.0089585787 0.0010201513
|
||||
24600 124 0.0052665503 0.0065432898 0.0085195212 0.0027803091
|
||||
24700 124 0.0052229505 0.0064891203 0.0083245915 0.0032441386
|
||||
24800 124 0.0045885549 0.0057009318 0.0077639469 0.0021437792
|
||||
24900 124 0.0048155198 0.0059829185 0.0082794836 0.0013531019
|
||||
25000 124 0.0051022231 0.0063391257 0.0084155114 0.0026277693
|
||||
Loop time of 0.41091 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5256626.239 tau/day, 12168.116 timesteps/s, 1.509 Matom-step/s
|
||||
90.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.00076076 | 0.01794 | 0.039603 | 13.0 | 4.37
|
||||
Neigh | 0.00072049 | 0.0035802 | 0.0068029 | 4.6 | 0.87
|
||||
Comm | 0.075306 | 0.095878 | 0.11196 | 5.3 | 23.33
|
||||
Output | 0.17491 | 0.2221 | 0.28159 | 8.6 | 54.05
|
||||
Modify | 0.00088166 | 0.0023597 | 0.0040721 | 3.0 | 0.57
|
||||
Other | | 0.06906 | | | 16.81
|
||||
|
||||
Nlocal: 31 ave 58 max 5 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 119 max 66 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 149
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:02
|
||||
508
examples/gransurf/log.1Jul24.tribox.gran.surf.stl.g++.1
Normal file
508
examples/gransurf/log.1Jul24.tribox.gran.surf.stl.g++.1
Normal file
@ -0,0 +1,508 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
fix 20 all surface/local surf.tribox.stl
|
||||
Reading STL object STL version of surf.tribox from text file surf.tribox.stl
|
||||
set type 1 type 2
|
||||
Setting atom values ...
|
||||
24 settings made for type
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.31 | 7.31 | 7.31 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0029137134
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0043383984
|
||||
300 54 0.70118095 1.2814686 0.62987441 0.0046453238
|
||||
400 54 0.45057814 0.82347039 0.41172861 0.0030892546
|
||||
500 54 0.42112344 0.76963938 0.38709352 0.0065941015
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.37166521 0.51325196 0.26472957 0.0046580242
|
||||
700 88 0.41372338 0.57133229 0.29476966 0.0052995687
|
||||
800 88 0.456666 0.630634 0.32751956 0.0052868185
|
||||
900 88 0.39272615 0.54233611 0.28819808 0.0054685106
|
||||
1000 88 0.35151938 0.48543152 0.26491902 0.0075844126
|
||||
1100 88 0.34254338 0.47303609 0.2578388 0.0058365561
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.32173809 0.40053109 0.2195167 0.009133967
|
||||
1300 123 0.34297407 0.42696772 0.23049402 0.0064335441
|
||||
1400 123 0.29833429 0.37139575 0.20331799 0.0078377048
|
||||
1500 123 0.26892843 0.33478846 0.18670497 0.0068237101
|
||||
1600 123 0.24084602 0.29982872 0.16693769 0.0058533752
|
||||
1700 124 0.16657955 0.20696247 0.12302494 0.0070405476
|
||||
1800 124 0.10384588 0.12902064 0.086085999 0.0026199715
|
||||
1900 124 0.065080172 0.080857183 0.059672578 0.0039751399
|
||||
2000 124 0.05183749 0.064404155 0.04642994 0.0020956381
|
||||
2100 124 0.045454362 0.056473601 0.038678168 0.0021869997
|
||||
2200 124 0.040260905 0.050021124 0.034386815 0.0040428451
|
||||
2300 124 0.017599393 0.021865913 0.017659764 0.0033409468
|
||||
2400 124 0.017871721 0.022204259 0.016705944 0.0035685432
|
||||
2500 124 0.010140453 0.012598745 0.01022206 0.0012285049
|
||||
2600 124 0.0087985586 0.010931542 0.0087284393 0.0012843554
|
||||
2700 124 0.007517666 0.0093401305 0.00718198 0.0014841823
|
||||
2800 124 0.0062773841 0.0077991742 0.0059012301 0.0013324193
|
||||
2900 124 0.0038811224 0.0048220006 0.0039901849 0.0012740179
|
||||
3000 124 0.0040758656 0.0050639543 0.003890039 0.001333468
|
||||
3100 124 0.0020497159 0.0025466167 0.0022373889 0.0012963602
|
||||
3200 124 0.0019596496 0.0024347162 0.0021331337 0.0011575952
|
||||
3300 124 0.001619509 0.0020121172 0.0017930305 0.0011065531
|
||||
3400 124 0.0013352687 0.0016589702 0.0014836146 0.0013075216
|
||||
3500 124 0.0011048269 0.0013726637 0.0012547142 0.0016936826
|
||||
3600 124 0.00089868347 0.0011165461 0.0010379824 0.0013037755
|
||||
3700 124 0.00079538563 0.00098820638 0.0008953041 0.0011379267
|
||||
3800 124 0.00072591855 0.0009018988 0.00083210028 0.0014623234
|
||||
3900 124 0.00059200429 0.00073552048 0.00068255735 0.0011062713
|
||||
4000 124 0.00048509163 0.0006026896 0.00057581131 0.0011359453
|
||||
4100 124 0.00039281562 0.00048804365 0.00046290412 0.001112345
|
||||
4200 124 0.00033127035 0.00041157831 0.00040230271 0.0011101349
|
||||
4300 124 0.00025217556 0.00031330904 0.00033013679 0.001220284
|
||||
4400 124 0.00021998869 0.00027331928 0.00029069852 0.0010876934
|
||||
4500 124 0.0002012981 0.00025009764 0.00026845495 0.0011165366
|
||||
4600 124 0.00019974132 0.00024816346 0.00026538627 0.001112397
|
||||
4700 124 0.00018344096 0.0002279115 0.00024939407 0.0011208162
|
||||
4800 124 0.00017967553 0.00022323323 0.00024517143 0.0011139226
|
||||
4900 124 0.00015575257 0.00019351076 0.000215109 0.0011122181
|
||||
5000 124 0.00013945209 0.00017325866 0.00019787988 0.0011571915
|
||||
Loop time of 0.329081 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6563731.175 tau/day, 15193.822 timesteps/s, 1.884 Matom-step/s
|
||||
89.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.050766 | 0.050766 | 0.050766 | 0.0 | 15.43
|
||||
Neigh | 0.012777 | 0.012777 | 0.012777 | 0.0 | 3.88
|
||||
Comm | 0.00039761 | 0.00039761 | 0.00039761 | 0.0 | 0.12
|
||||
Output | 0.25886 | 0.25886 | 0.25886 | 0.0 | 78.66
|
||||
Modify | 0.0049275 | 0.0049275 | 0.0049275 | 0.0 | 1.50
|
||||
Other | | 0.00135 | | | 0.41
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.437 | 8.437 | 8.437 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00013945209 0.00017325866 0.00019787988 0.0011523447
|
||||
5100 124 5.2504023 0.15308533 0.087279574 0.082413806
|
||||
5200 124 5.2659596 0.17241407 0.099384862 0.083118924
|
||||
5300 124 5.2712193 0.17894892 0.099626237 0.084288849
|
||||
5400 124 5.2787049 0.18824913 0.10219206 0.081763058
|
||||
5500 124 5.2864544 0.19787729 0.10492289 0.082100381
|
||||
5600 124 5.2939393 0.20717681 0.10842003 0.081936074
|
||||
5700 124 5.3020913 0.21730504 0.11309658 0.083096264
|
||||
5800 124 5.3089934 0.22588036 0.11657282 0.083472698
|
||||
5900 124 5.3147183 0.23299307 0.12000481 0.083337683
|
||||
6000 124 5.3241216 0.24467603 0.12524512 0.083312456
|
||||
6100 124 5.3345453 0.25762669 0.13135815 0.083666287
|
||||
6200 124 5.3357153 0.25908032 0.13185776 0.083855111
|
||||
6300 124 5.3417298 0.26655284 0.13521844 0.084511512
|
||||
6400 124 5.3461733 0.27207356 0.1375877 0.08445019
|
||||
6500 124 5.3491551 0.27577827 0.13949034 0.084694686
|
||||
6600 124 5.3520289 0.27934872 0.14134154 0.084403705
|
||||
6700 124 5.355841 0.28408494 0.1435925 0.08479568
|
||||
6800 124 5.3608822 0.29034823 0.14636154 0.084796891
|
||||
6900 124 5.3641064 0.29435404 0.14822031 0.084636583
|
||||
7000 124 5.3664936 0.29731999 0.14957082 0.084681424
|
||||
7100 124 5.370434 0.30221567 0.15171915 0.084744017
|
||||
7200 124 5.3716029 0.30366789 0.15224159 0.085599998
|
||||
7300 124 5.3719337 0.30407894 0.15239181 0.085265794
|
||||
7400 124 5.3717886 0.30389862 0.15228125 0.085048862
|
||||
7500 124 5.3729819 0.30538125 0.15302965 0.085513236
|
||||
7600 124 5.3736409 0.30619992 0.15346603 0.085126903
|
||||
7700 124 5.3734973 0.30602161 0.15326715 0.085870776
|
||||
7800 124 5.3742065 0.3069027 0.1536922 0.085152121
|
||||
7900 124 5.3752637 0.30821621 0.15439789 0.085476609
|
||||
8000 124 5.3773145 0.31076416 0.15559007 0.085791749
|
||||
8100 124 5.3777123 0.31125838 0.15591462 0.08531435
|
||||
8200 124 5.3775898 0.31110617 0.1558302 0.085752338
|
||||
8300 124 5.3775553 0.31106337 0.15562475 0.086300437
|
||||
8400 124 5.3799091 0.31398779 0.1570463 0.085260347
|
||||
8500 124 5.3799831 0.31407966 0.15713064 0.085373576
|
||||
8600 124 5.380017 0.31412181 0.15720523 0.085342084
|
||||
8700 124 5.3799686 0.31406171 0.15721123 0.086223474
|
||||
8800 124 5.3813565 0.31578601 0.15798281 0.085392543
|
||||
8900 124 5.3815941 0.31608116 0.15818243 0.085482019
|
||||
9000 124 5.3815651 0.31604517 0.15821916 0.085538444
|
||||
9100 124 5.3816424 0.31614127 0.15829616 0.085684184
|
||||
9200 124 5.3815641 0.3160439 0.15831347 0.08526896
|
||||
9300 124 5.3811199 0.31549204 0.15801464 0.085848004
|
||||
9400 124 5.382478 0.31717943 0.15882722 0.086145692
|
||||
9500 124 5.3830353 0.31787185 0.15915683 0.085450771
|
||||
9600 124 5.3831332 0.31799341 0.15923155 0.085416324
|
||||
9700 124 5.3832948 0.31819419 0.15935762 0.085387545
|
||||
9800 124 5.3840779 0.31916711 0.15975721 0.08560667
|
||||
9900 124 5.3842171 0.31934012 0.159845 0.085547365
|
||||
10000 124 5.3862101 0.32181619 0.160876 0.085414766
|
||||
Loop time of 0.367085 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5884203.709 tau/day, 13620.842 timesteps/s, 1.689 Matom-step/s
|
||||
97.9% 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.073918 | 0.073918 | 0.073918 | 0.0 | 20.14
|
||||
Neigh | 0.020255 | 0.020255 | 0.020255 | 0.0 | 5.52
|
||||
Comm | 0.00045729 | 0.00045729 | 0.00045729 | 0.0 | 0.12
|
||||
Output | 0.26157 | 0.26157 | 0.26157 | 0.0 | 71.26
|
||||
Modify | 0.0093671 | 0.0093671 | 0.0093671 | 0.0 | 2.55
|
||||
Other | | 0.001516 | | | 0.41
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 315
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.562 | 7.562 | 7.562 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.25902279 0.32181619 0.160876 0.0066564852
|
||||
10100 124 0.078320106 0.097306799 0.060539222 0.007805448
|
||||
10200 124 0.055004387 0.068338784 0.052320677 0.0026461505
|
||||
10300 124 0.050013703 0.062138237 0.049351053 0.0027137895
|
||||
10400 124 0.043870518 0.054505795 0.044683006 0.0021708086
|
||||
10500 124 0.036776691 0.045692252 0.037872077 0.0025876629
|
||||
10600 124 0.030001621 0.037274742 0.032601767 0.0035817232
|
||||
10700 124 0.026098209 0.032425048 0.029320364 0.0019774985
|
||||
10800 124 0.024452388 0.03038024 0.028518503 0.0034548101
|
||||
10900 124 0.020787653 0.025827084 0.025880067 0.0023865627
|
||||
11000 124 0.018283729 0.022716148 0.024283842 0.0024791255
|
||||
11100 124 0.016795448 0.020867072 0.023416045 0.0016336875
|
||||
11200 124 0.014930262 0.01854972 0.021981853 0.0015505118
|
||||
11300 124 0.014012114 0.017408991 0.021130907 0.0017795037
|
||||
11400 124 0.013562682 0.016850605 0.020502505 0.0025724773
|
||||
11500 124 0.012884492 0.016008005 0.01991195 0.0015754014
|
||||
11600 124 0.011953832 0.014851731 0.018960689 0.0020007622
|
||||
11700 124 0.011836339 0.014705755 0.019435427 0.0016103993
|
||||
11800 124 0.011037076 0.013712731 0.018997693 0.0019540971
|
||||
11900 124 0.010932107 0.013582315 0.019072917 0.00147549
|
||||
12000 124 0.01099415 0.013659399 0.018695305 0.0016223256
|
||||
12100 124 0.010704976 0.013300121 0.018841965 0.0015737757
|
||||
12200 124 0.010244691 0.012728253 0.018984857 0.0023548154
|
||||
12300 124 0.0097078529 0.012061272 0.018340321 0.0020279841
|
||||
12400 124 0.0093873799 0.011663108 0.018058176 0.0017085133
|
||||
12500 124 0.0091864665 0.011413489 0.016617566 0.0029005125
|
||||
12600 124 0.0093721201 0.011644149 0.01659216 0.001843826
|
||||
12700 124 0.0085867868 0.010668432 0.01610889 0.0027852908
|
||||
12800 124 0.0080688661 0.010024955 0.016412496 0.0035052823
|
||||
12900 124 0.0070827536 0.0087997848 0.014807272 0.0023574294
|
||||
13000 124 0.0062582856 0.0077754457 0.01480373 0.0027340736
|
||||
13100 124 0.0057725257 0.0071719259 0.015062076 0.002487901
|
||||
13200 124 0.0052896823 0.0065720295 0.0154416 0.0015994582
|
||||
13300 124 0.0057364664 0.0071271249 0.015700129 0.0015451013
|
||||
13400 124 0.0062684466 0.00778807 0.016185631 0.0018109382
|
||||
13500 124 0.0057823202 0.0071840947 0.015642287 0.0023353672
|
||||
13600 124 0.0054893444 0.0068200946 0.015197387 0.0020769185
|
||||
13700 124 0.0052411899 0.0065117814 0.014647838 0.0018125771
|
||||
13800 124 0.0048067514 0.0059720245 0.014583902 0.0020513529
|
||||
13900 124 0.0050435734 0.0062662579 0.015595068 0.0014699579
|
||||
14000 124 0.0049460152 0.0061450492 0.015965634 0.001392331
|
||||
14100 124 0.0046219442 0.0057424155 0.015663384 0.0014890253
|
||||
14200 124 0.0048184995 0.0059866206 0.015290196 0.0017217599
|
||||
14300 124 0.0049531756 0.0061539454 0.015631133 0.0020820646
|
||||
14400 124 0.004608077 0.0057251866 0.01512022 0.0015346016
|
||||
14500 124 0.0044909079 0.0055796129 0.015032761 0.0016169354
|
||||
14600 124 0.0044307569 0.0055048797 0.015259724 0.0019791575
|
||||
14700 124 0.0042209282 0.0052441835 0.015206142 0.001634029
|
||||
14800 124 0.004931427 0.0061269245 0.015351353 0.0020991125
|
||||
14900 124 0.0043513432 0.0054062142 0.014367168 0.0022798395
|
||||
15000 124 0.0044465482 0.0055244993 0.014488799 0.0027071352
|
||||
Loop time of 0.342327 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6309759.447 tau/day, 14605.925 timesteps/s, 1.811 Matom-step/s
|
||||
92.9% 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.059911 | 0.059911 | 0.059911 | 0.0 | 17.50
|
||||
Neigh | 0.0061776 | 0.0061776 | 0.0061776 | 0.0 | 1.80
|
||||
Comm | 0.00033294 | 0.00033294 | 0.00033294 | 0.0 | 0.10
|
||||
Output | 0.26919 | 0.26919 | 0.26919 | 0.0 | 78.64
|
||||
Modify | 0.0053451 | 0.0053451 | 0.0053451 | 0.0 | 1.56
|
||||
Other | | 0.001367 | | | 0.40
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 94
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.437 | 8.437 | 8.437 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0044465482 0.0055244993 0.014488799 0.002682599
|
||||
15100 124 5.2439101 0.14501926 0.089393313 0.0861951
|
||||
15200 124 5.2871886 0.19878957 0.11689814 0.087629076
|
||||
15300 124 5.3269872 0.24823627 0.14065555 0.084448851
|
||||
15400 124 5.318405 0.23757348 0.13557872 0.08579496
|
||||
15500 124 5.322977 0.24325395 0.1367731 0.084332501
|
||||
15600 124 5.3387157 0.26280804 0.14469795 0.091920302
|
||||
15700 124 5.3468954 0.27297066 0.14714255 0.092776597
|
||||
15800 124 5.3787123 0.31250075 0.16363996 0.091882707
|
||||
15900 124 5.4124578 0.354427 0.18222961 0.090476713
|
||||
16000 124 5.4095058 0.35075937 0.17808408 0.090347477
|
||||
16100 124 5.4027965 0.34242354 0.1735999 0.091782107
|
||||
16200 124 5.4022601 0.34175711 0.17335141 0.094848056
|
||||
16300 124 5.4045444 0.34459525 0.17424728 0.093070457
|
||||
16400 124 5.4101141 0.35151512 0.17740527 0.091595086
|
||||
16500 124 5.4083344 0.34930396 0.1760425 0.09403337
|
||||
16600 124 5.4016713 0.34102557 0.17264803 0.091701205
|
||||
16700 124 5.3964053 0.33448303 0.16952454 0.097389495
|
||||
16800 124 5.4155708 0.35829473 0.18177437 0.092539674
|
||||
16900 124 5.428106 0.37386868 0.18956572 0.095082983
|
||||
17000 124 5.4113572 0.35305963 0.17951019 0.093172207
|
||||
17100 124 5.4017206 0.34108687 0.17437504 0.090773913
|
||||
17200 124 5.4156275 0.35836508 0.18539559 0.084238411
|
||||
17300 124 5.4009849 0.34017277 0.17748735 0.092123575
|
||||
17400 124 5.4017142 0.34107897 0.18110554 0.08358144
|
||||
17500 124 5.438404 0.38666317 0.20673435 0.08724577
|
||||
17600 124 5.5085355 0.47379629 0.25395237 0.085044882
|
||||
17700 124 5.573336 0.55430604 0.29833936 0.086018483
|
||||
17800 124 5.6428243 0.64063997 0.34884622 0.091543453
|
||||
17900 124 5.6885972 0.69750927 0.38081471 0.090348055
|
||||
18000 124 5.7119205 0.72648671 0.3965357 0.095583224
|
||||
18100 124 5.6590292 0.66077326 0.36523218 0.088750557
|
||||
18200 124 5.5763862 0.55809563 0.31550553 0.096656501
|
||||
18300 124 5.5505114 0.52594811 0.2987063 0.093142352
|
||||
18400 124 5.5205731 0.48875209 0.2808444 0.087905083
|
||||
18500 124 5.4892953 0.44989178 0.26426272 0.088670881
|
||||
18600 124 5.4222293 0.36656731 0.22263438 0.087525924
|
||||
18700 124 5.4048793 0.34501133 0.2146507 0.086965023
|
||||
18800 124 5.4091495 0.35031672 0.21471813 0.088080028
|
||||
18900 124 5.4055995 0.34590616 0.21031053 0.085893342
|
||||
19000 124 5.3793845 0.31333589 0.19319866 0.091199294
|
||||
19100 124 5.3860486 0.32161564 0.19859682 0.089765384
|
||||
19200 124 5.3927702 0.32996663 0.20403509 0.088705875
|
||||
19300 124 5.3971859 0.33545284 0.20175175 0.095973464
|
||||
19400 124 5.3788197 0.3126342 0.18579792 0.089895991
|
||||
19500 124 5.3885341 0.32470369 0.18948024 0.08907407
|
||||
19600 124 5.4101398 0.35154706 0.19813337 0.091175233
|
||||
19700 124 5.4044673 0.34449937 0.1920192 0.088240134
|
||||
19800 124 5.4173446 0.36049849 0.19933328 0.088942313
|
||||
19900 124 5.4076506 0.34845443 0.1927872 0.088186985
|
||||
20000 124 5.3956924 0.33359732 0.18569985 0.086310528
|
||||
Loop time of 0.389106 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5551183.841 tau/day, 12849.963 timesteps/s, 1.593 Matom-step/s
|
||||
95.9% 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.065646 | 0.065646 | 0.065646 | 0.0 | 16.87
|
||||
Neigh | 0.031221 | 0.031221 | 0.031221 | 0.0 | 8.02
|
||||
Comm | 0.00053075 | 0.00053075 | 0.00053075 | 0.0 | 0.14
|
||||
Output | 0.28071 | 0.28071 | 0.28071 | 0.0 | 72.14
|
||||
Modify | 0.0094938 | 0.0094938 | 0.0094938 | 0.0 | 2.44
|
||||
Other | | 0.001506 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 440
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.562 | 7.562 | 7.562 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 124 0.26850516 0.33359732 0.18569985 -0.00058742278
|
||||
20100 124 0.067549955 0.083925702 0.063062899 0.0045374238
|
||||
20200 124 0.066580568 0.082721312 0.059638881 0.0046773578
|
||||
20300 124 0.07628847 0.094782644 0.062421657 0.0046893994
|
||||
20400 124 0.052816991 0.06562111 0.047589744 0.0028448251
|
||||
20500 124 0.055535483 0.068998631 0.048552669 0.0030160754
|
||||
20600 124 0.057734099 0.071730244 0.048245877 0.0055952666
|
||||
20700 124 0.025276846 0.031404566 0.029056653 0.0010557897
|
||||
20800 124 0.027799744 0.034539076 0.028465929 0.0054351904
|
||||
20900 124 0.027298566 0.033916401 0.027639247 0.0040270655
|
||||
21000 124 0.024024164 0.029848203 0.024340109 0.0021868639
|
||||
21100 124 0.024987535 0.031045119 0.025194034 0.0031461768
|
||||
21200 124 0.022012372 0.027348704 0.023163575 0.0043315251
|
||||
21300 124 0.022655698 0.028147988 0.023878073 0.0020061516
|
||||
21400 124 0.021143161 0.026268775 0.022847649 0.0040014299
|
||||
21500 124 0.014709587 0.018275548 0.016687241 0.0023850643
|
||||
21600 124 0.015706963 0.019514711 0.017385202 0.0032947123
|
||||
21700 124 0.013349261 0.016585446 0.015935512 0.0031959548
|
||||
21800 124 0.014581152 0.018115977 0.016568563 0.0037723007
|
||||
21900 124 0.014163143 0.017596633 0.016786239 0.0026785551
|
||||
22000 124 0.016104454 0.020008564 0.018204239 0.0023406746
|
||||
22100 124 0.01339249 0.016639155 0.016215231 0.001863965
|
||||
22200 124 0.013630138 0.016934414 0.015604721 0.0028389532
|
||||
22300 124 0.014166961 0.017601376 0.015759254 0.0028485515
|
||||
22400 124 0.011839829 0.014710091 0.014221942 0.0017289255
|
||||
22500 124 0.013154489 0.016343456 0.015344524 0.002604136
|
||||
22600 124 0.01184812 0.014720391 0.014245522 0.0033590472
|
||||
22700 124 0.011433291 0.014204998 0.013639711 0.0033184417
|
||||
22800 124 0.012475296 0.01549961 0.014280851 0.0019255869
|
||||
22900 124 0.011013166 0.013683025 0.012635318 0.0022642412
|
||||
23000 124 0.011272729 0.014005511 0.012664054 0.0031554482
|
||||
23100 124 0.011308641 0.01405013 0.01269757 0.0012325204
|
||||
23200 124 0.010130039 0.012585807 0.012040563 0.0031495614
|
||||
23300 124 0.01068914 0.013280447 0.012068167 0.0030504659
|
||||
23400 124 0.0088509283 0.010996608 0.010081312 0.0011009871
|
||||
23500 124 0.0086960335 0.010804163 0.0098039166 0.0016850167
|
||||
23600 124 0.0099572186 0.01237109 0.010813937 0.0029185027
|
||||
23700 124 0.0099220344 0.012327376 0.01019147 0.0041517151
|
||||
23800 124 0.0074584766 0.0092665922 0.00878623 0.0033529004
|
||||
23900 124 0.0073723023 0.0091595271 0.0091933559 0.0011381908
|
||||
24000 124 0.0085493541 0.010621925 0.0099793177 0.0023747349
|
||||
24100 124 0.0067898783 0.0084359094 0.0089497737 0.0034141299
|
||||
24200 124 0.0060281758 0.0074895517 0.0087835149 0.0010072857
|
||||
24300 124 0.0060915949 0.0075683452 0.0085728503 0.0018651179
|
||||
24400 124 0.0064602712 0.0080263976 0.0089108593 0.00097753256
|
||||
24500 124 0.0069832749 0.00867619 0.0096009113 0.0012080821
|
||||
24600 124 0.006177616 0.0076752198 0.0086417752 0.0017792353
|
||||
24700 124 0.0052226061 0.0064886924 0.0082196264 0.0011437075
|
||||
24800 124 0.0051375444 0.0063830098 0.0083830573 0.0026277208
|
||||
24900 124 0.0037569854 0.0046677698 0.0072102729 0.0017298399
|
||||
25000 124 0.0039418359 0.0048974325 0.0073209218 0.0011140053
|
||||
Loop time of 0.347029 on 1 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 6224261.616 tau/day, 14408.013 timesteps/s, 1.787 Matom-step/s
|
||||
94.3% 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.057242 | 0.057242 | 0.057242 | 0.0 | 16.49
|
||||
Neigh | 0.01241 | 0.01241 | 0.01241 | 0.0 | 3.58
|
||||
Comm | 0.00038529 | 0.00038529 | 0.00038529 | 0.0 | 0.11
|
||||
Output | 0.27021 | 0.27021 | 0.27021 | 0.0 | 77.86
|
||||
Modify | 0.0054264 | 0.0054264 | 0.0054264 | 0.0 | 1.56
|
||||
Other | | 0.001359 | | | 0.39
|
||||
|
||||
Nlocal: 124 ave 124 max 124 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
|
||||
Neighbor list builds = 197
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:01
|
||||
509
examples/gransurf/log.1Jul24.tribox.gran.surf.stl.g++.4
Normal file
509
examples/gransurf/log.1Jul24.tribox.gran.surf.stl.g++.4
Normal file
@ -0,0 +1,509 @@
|
||||
LAMMPS (27 Jun 2024)
|
||||
WARNING: Using I/O redirection is unreliable with parallel runs. Better to use the -in switch to read input files. (../lammps.cpp:551)
|
||||
# pouring spheres into box made of triangles
|
||||
|
||||
units lj
|
||||
atom_style tri
|
||||
atom_modify map array
|
||||
boundary f f f
|
||||
dimension 3
|
||||
comm_modify vel yes
|
||||
|
||||
region box block -10 10 -10 10 -10 10 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-10 -10 -10) to (10 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
|
||||
fix 20 all surface/local surf.tribox.stl
|
||||
Reading STL object STL version of surf.tribox from text file surf.tribox.stl
|
||||
set type 1 type 2
|
||||
Setting atom values ...
|
||||
24 settings made for type
|
||||
|
||||
pair_style hybrid gran/hooke 4000.0 NULL 100.0 NULL 0.5 1 tri/gran/hooke 4000.0 NULL 100.0 50.0 0.5 1
|
||||
pair_coeff 1 1 gran/hooke
|
||||
pair_coeff 1 2 tri/gran/hooke
|
||||
pair_coeff 2 2 none
|
||||
|
||||
group sphere type 1
|
||||
0 atoms in group sphere
|
||||
group tri type 2
|
||||
24 atoms in group tri
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
#displace_atoms all rotate 0 0 0 0 0 1 45
|
||||
|
||||
fix 2 sphere nve/sphere
|
||||
fix 3 sphere gravity 1.0 vector 0 0 -1
|
||||
#fix 4 sphere viscous 0.2
|
||||
|
||||
region slab block -2 2 -2 2 -2 2 units box
|
||||
fix ins sphere pour 100 1 4767548 vol 0.4 10 diam one 1.0 region slab ignore
|
||||
Particle insertion: 48 every 566 steps, 100 by step 1133
|
||||
|
||||
timestep 0.005
|
||||
|
||||
compute 1 sphere temp
|
||||
compute_modify 1 dynamic yes
|
||||
|
||||
compute 2 sphere temp/sphere
|
||||
compute_modify 2 dynamic yes
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step atoms temp c_1 c_2 press
|
||||
thermo_modify lost ignore
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump 2 all image 100 tmp.image.*.ppm type type zoom 1.4 adiam 1.0 tri type 2 0.2
|
||||
dump_modify 2 pad 5
|
||||
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7.1245553
|
||||
ghost atom cutoff = 7.1245553
|
||||
binsize = 3.5622777, bins = 6 6 6
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair gran/hooke, perpetual, skip trim from (3)
|
||||
attributes: half, newton on, size, cut 1.3, off2on
|
||||
pair build: skip/trim/size/off2on
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair tri/gran/hooke, perpetual, skip from (3)
|
||||
attributes: half, newton on, size, onesided, off2on
|
||||
pair build: skip/size/off2on/oneside
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/atomonly/newtoff
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.337 | 7.338 | 7.342 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
0 24 0 0 0 0
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
100 54 0.43980579 0.803783 0.39507978 0.0029137134
|
||||
200 54 0.65485258 1.1967995 0.5882574 0.0043383984
|
||||
300 54 0.70118095 1.2814686 0.62987441 0.0046453238
|
||||
400 54 0.45057814 0.82347039 0.41172861 0.0030892546
|
||||
500 54 0.42112344 0.76963938 0.38709352 0.0065941015
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
600 88 0.37166521 0.51325196 0.26472957 0.0046580242
|
||||
700 88 0.41372338 0.57133229 0.29476966 0.0052995687
|
||||
800 88 0.456666 0.630634 0.32751956 0.0052868185
|
||||
900 88 0.39272615 0.54233611 0.28819808 0.0054685106
|
||||
1000 88 0.35151938 0.48543152 0.26491902 0.0075844126
|
||||
1100 88 0.34254338 0.47303609 0.2578388 0.0058365561
|
||||
WARNING: Fewer insertions than requested (../fix_pour.cpp:683)
|
||||
1200 123 0.32173809 0.40053109 0.2195167 0.009133967
|
||||
1300 123 0.34297407 0.42696772 0.23049402 0.0064335441
|
||||
1400 123 0.29833429 0.37139575 0.20331799 0.0078377048
|
||||
1500 123 0.26892843 0.33478846 0.18670497 0.0068237101
|
||||
1600 123 0.24084602 0.29982872 0.16693769 0.0058533752
|
||||
1700 124 0.16657955 0.20696247 0.12302494 0.0070405476
|
||||
1800 124 0.10384588 0.12902064 0.086085999 0.0026199715
|
||||
1900 124 0.065080172 0.080857183 0.059672578 0.0039751399
|
||||
2000 124 0.05183749 0.064404155 0.04642994 0.0020956381
|
||||
2100 124 0.045454362 0.056473601 0.038678168 0.0021870001
|
||||
2200 124 0.040260905 0.050021124 0.034386815 0.0040428451
|
||||
2300 124 0.017599392 0.021865912 0.017659763 0.0033409473
|
||||
2400 124 0.017871716 0.022204254 0.016705941 0.0035685425
|
||||
2500 124 0.010140454 0.012598746 0.010222061 0.0012285151
|
||||
2600 124 0.0087985619 0.010931547 0.0087284273 0.0012844023
|
||||
2700 124 0.007517679 0.0093401466 0.0071819965 0.0014841812
|
||||
2800 124 0.0062774012 0.0077991955 0.0059012475 0.0013323867
|
||||
2900 124 0.0038811559 0.0048220422 0.0039902314 0.0012740306
|
||||
3000 124 0.0040746036 0.0050623863 0.0038882236 0.0013782794
|
||||
3100 124 0.0020498002 0.0025467215 0.0022365676 0.00121108
|
||||
3200 124 0.0019550482 0.0024289992 0.0021292434 0.0011484714
|
||||
3300 124 0.0016148199 0.0020062914 0.001787787 0.0010893844
|
||||
3400 124 0.0013434329 0.0016691136 0.0014690989 0.001325505
|
||||
3500 124 0.0010971454 0.00136312 0.0012496656 0.0014062237
|
||||
3600 124 0.00089514745 0.0011121529 0.0010349137 0.0013004041
|
||||
3700 124 0.00079220295 0.00098425215 0.00089325412 0.0013154029
|
||||
3800 124 0.00072319138 0.0008985105 0.00082122483 0.0010962257
|
||||
3900 124 0.00059169918 0.00073514141 0.0006832875 0.0011623171
|
||||
4000 124 0.00049184916 0.00061108533 0.00058188229 0.0012411181
|
||||
4100 124 0.00040680153 0.00050542008 0.00047870676 0.0011629016
|
||||
4200 124 0.00030588217 0.00038003543 0.00038246927 0.001099663
|
||||
4300 124 0.00026922252 0.00033448858 0.00034959953 0.0011174124
|
||||
4400 124 0.00022239176 0.00027630491 0.0002971948 0.0011072118
|
||||
4500 124 0.00020343817 0.00025275651 0.00027474732 0.0011125161
|
||||
4600 124 0.00020212818 0.00025112896 0.00027242474 0.0011191532
|
||||
4700 124 0.00018351448 0.00022800283 0.00025264863 0.0011176353
|
||||
4800 124 0.00018007372 0.00022372795 0.00024857425 0.0011156418
|
||||
4900 124 0.00015459176 0.00019206855 0.00021711531 0.0011174087
|
||||
5000 124 0.00013814109 0.00017162984 0.00019806357 0.0011476165
|
||||
Loop time of 0.4577 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 4719248.480 tau/day, 10924.186 timesteps/s, 1.355 Matom-step/s
|
||||
93.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 | 0.0022346 | 0.016804 | 0.033685 | 11.1 | 3.67
|
||||
Neigh | 0.0020117 | 0.0046796 | 0.0070742 | 3.5 | 1.02
|
||||
Comm | 0.06899 | 0.08616 | 0.10138 | 5.0 | 18.82
|
||||
Output | 0.20305 | 0.26373 | 0.33837 | 10.2 | 57.62
|
||||
Modify | 0.0017927 | 0.0031945 | 0.0052327 | 2.5 | 0.70
|
||||
Other | | 0.08314 | | | 18.16
|
||||
|
||||
Nlocal: 31 ave 55 max 6 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 118 max 69 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 270
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 0 0 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
5000 124 0.00013814109 0.00017162984 0.00019806357 0.0011393845
|
||||
5100 124 5.2497489 0.15227351 0.086950224 0.083018439
|
||||
5200 124 5.2667941 0.17345097 0.10004552 0.081933375
|
||||
5300 124 5.2702467 0.17774046 0.098721846 0.081858913
|
||||
5400 124 5.2810321 0.1911405 0.10284442 0.081908237
|
||||
5500 124 5.2869181 0.19845342 0.10520589 0.082475287
|
||||
5600 124 5.2903829 0.20275822 0.1062221 0.082060713
|
||||
5700 124 5.2972601 0.21130259 0.11014372 0.082904363
|
||||
5800 124 5.3133933 0.23134691 0.11895223 0.082638221
|
||||
5900 124 5.321421 0.24132073 0.12341367 0.08367512
|
||||
6000 124 5.3311871 0.25345436 0.1289868 0.08585114
|
||||
6100 124 5.3397784 0.26412833 0.13380251 0.083860885
|
||||
6200 124 5.3440946 0.26949097 0.13630397 0.084294896
|
||||
6300 124 5.3490438 0.27563994 0.13938066 0.084316514
|
||||
6400 124 5.3513948 0.27856086 0.14088282 0.084355453
|
||||
6500 124 5.3532922 0.28091822 0.14197211 0.084169662
|
||||
6600 124 5.3554267 0.28357014 0.14325168 0.084261645
|
||||
6700 124 5.3570557 0.2855941 0.14433458 0.084810743
|
||||
6800 124 5.360655 0.29006592 0.14636096 0.084297488
|
||||
6900 124 5.3655245 0.29611592 0.14908452 0.085243202
|
||||
7000 124 5.3671924 0.29818814 0.14990767 0.085406818
|
||||
7100 124 5.3695979 0.30117682 0.15113793 0.084784596
|
||||
7200 124 5.3704771 0.30226917 0.15173765 0.085669989
|
||||
7300 124 5.3706216 0.3024487 0.15180341 0.084798844
|
||||
7400 124 5.373135 0.30557147 0.15321903 0.085809531
|
||||
7500 124 5.377898 0.31148903 0.15599818 0.085242244
|
||||
7600 124 5.3787889 0.31259599 0.15641937 0.085326973
|
||||
7700 124 5.3793411 0.31328199 0.15676105 0.084950755
|
||||
7800 124 5.3803167 0.31449408 0.15736738 0.085202699
|
||||
7900 124 5.3797837 0.31383196 0.15704082 0.085404305
|
||||
8000 124 5.378568 0.31232146 0.15632737 0.084957387
|
||||
8100 124 5.3790479 0.31291774 0.15667738 0.08504012
|
||||
8200 124 5.3804618 0.3146744 0.15746304 0.085394022
|
||||
8300 124 5.381518 0.31598663 0.1580058 0.085647397
|
||||
8400 124 5.3814854 0.31594618 0.15794776 0.085483103
|
||||
8500 124 5.3828149 0.31759794 0.15875289 0.085382128
|
||||
8600 124 5.3832577 0.31814807 0.15901813 0.085100022
|
||||
8700 124 5.3838083 0.31883219 0.1593819 0.085126575
|
||||
8800 124 5.3842963 0.31943849 0.15972799 0.085207191
|
||||
8900 124 5.3846809 0.31991635 0.15992599 0.085139646
|
||||
9000 124 5.3850037 0.32031738 0.16014788 0.085113229
|
||||
9100 124 5.3849209 0.32021445 0.16009856 0.086008106
|
||||
9200 124 5.3851663 0.32051942 0.16025838 0.085113861
|
||||
9300 124 5.3847882 0.32004969 0.16001717 0.085571311
|
||||
9400 124 5.3845996 0.31981535 0.15990007 0.085364837
|
||||
9500 124 5.3847067 0.31994844 0.15998733 0.085299109
|
||||
9600 124 5.3849015 0.32019038 0.1601311 0.085276233
|
||||
9700 124 5.3850083 0.32032313 0.16021695 0.08525484
|
||||
9800 124 5.3852855 0.32066753 0.16041712 0.085313652
|
||||
9900 124 5.3850371 0.3203589 0.16026849 0.085310954
|
||||
10000 124 5.3851839 0.32054133 0.16038666 0.085302918
|
||||
Loop time of 0.409799 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5270871.402 tau/day, 12201.091 timesteps/s, 1.513 Matom-step/s
|
||||
93.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.0051334 | 0.025604 | 0.046384 | 12.8 | 6.25
|
||||
Neigh | 0.0021156 | 0.0071148 | 0.012216 | 5.9 | 1.74
|
||||
Comm | 0.074209 | 0.097182 | 0.11963 | 7.1 | 23.71
|
||||
Output | 0.17917 | 0.21221 | 0.26696 | 7.7 | 51.78
|
||||
Modify | 0.0025472 | 0.0042401 | 0.0062812 | 2.4 | 1.03
|
||||
Other | | 0.06344 | | | 15.48
|
||||
|
||||
Nlocal: 31 ave 59 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Nghost: 93 ave 116 max 65 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 316
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.714 | 7.726 | 7.737 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
10000 124 0.25799668 0.32054133 0.16038666 0.011646419
|
||||
10100 124 0.08324921 0.10343084 0.062335766 0.0036624752
|
||||
10200 124 0.055901794 0.069453744 0.049832932 0.0033728561
|
||||
10300 124 0.044027763 0.054701161 0.04185265 0.0026179937
|
||||
10400 124 0.033039084 0.04104856 0.033838053 0.0042759187
|
||||
10500 124 0.027910031 0.034676099 0.03032615 0.0035478069
|
||||
10600 124 0.023950341 0.029756484 0.027453511 0.0021787132
|
||||
10700 124 0.019265986 0.023936529 0.024195141 0.0021075014
|
||||
10800 124 0.01792324 0.022268268 0.02351488 0.0024045592
|
||||
10900 124 0.016637573 0.020670924 0.022003538 0.0034529435
|
||||
11000 124 0.01309629 0.016271149 0.019359267 0.0017153891
|
||||
11100 124 0.011683446 0.014515797 0.018854763 0.0026746409
|
||||
11200 124 0.010761235 0.013370019 0.018196576 0.0029245106
|
||||
11300 124 0.010091525 0.012537955 0.017818489 0.0015293592
|
||||
11400 124 0.0096257383 0.011959251 0.017339573 0.001738964
|
||||
11500 124 0.0090651598 0.011262774 0.017333091 0.001572136
|
||||
11600 124 0.0083289641 0.010348107 0.016333003 0.0017025439
|
||||
11700 124 0.0082472994 0.010246645 0.015938935 0.0014901853
|
||||
11800 124 0.0084807765 0.010536722 0.016623711 0.0014242448
|
||||
11900 124 0.007712302 0.009581951 0.016222065 0.001508232
|
||||
12000 124 0.0075675523 0.0094021104 0.016169534 0.0014905945
|
||||
12100 124 0.0079750147 0.0099083516 0.015149716 0.0018322585
|
||||
12200 124 0.0078458496 0.0097478738 0.015374706 0.0015492292
|
||||
12300 124 0.0067921053 0.0084386763 0.013486857 0.0029067448
|
||||
12400 124 0.0068508251 0.0085116312 0.014323963 0.0022197074
|
||||
12500 124 0.0066111171 0.0082138122 0.014731325 0.0019302025
|
||||
12600 124 0.0064707353 0.0080393984 0.014543367 0.0016587329
|
||||
12700 124 0.0063923274 0.0079419826 0.014294803 0.0021257946
|
||||
12800 124 0.0065672963 0.0081593681 0.014584204 0.0021816878
|
||||
12900 124 0.0059726164 0.0074205234 0.013858993 0.001530472
|
||||
13000 124 0.0058214195 0.0072326727 0.014246373 0.0022339129
|
||||
13100 124 0.0059612276 0.0074063737 0.015124804 0.0017832816
|
||||
13200 124 0.0054078557 0.006718851 0.014415419 0.0015478062
|
||||
13300 124 0.0050729677 0.0063027781 0.014411303 0.0034332889
|
||||
13400 124 0.0050627437 0.0062900755 0.014575044 0.0018503274
|
||||
13500 124 0.0046199761 0.0057399703 0.015232064 0.0015707131
|
||||
13600 124 0.0044802838 0.0055664132 0.015492936 0.0013436939
|
||||
13700 124 0.0039229012 0.0048739075 0.014834411 0.0015775897
|
||||
13800 124 0.0038496507 0.0047828994 0.014358939 0.0018648078
|
||||
13900 124 0.0038836627 0.0048251567 0.015268416 0.0016609027
|
||||
14000 124 0.0039681599 0.0049301381 0.015565026 0.0015819215
|
||||
14100 124 0.0038047814 0.0047271526 0.013834942 0.0026360599
|
||||
14200 124 0.0039663433 0.004927881 0.014740545 0.0017718033
|
||||
14300 124 0.0042501525 0.0052804925 0.015931298 0.0015106704
|
||||
14400 124 0.0043324422 0.0053827312 0.014699138 0.0017419936
|
||||
14500 124 0.0051700329 0.0064233742 0.014614744 0.0017929379
|
||||
14600 124 0.0051378715 0.006383416 0.015531966 0.001759876
|
||||
14700 124 0.0043671736 0.0054258823 0.014990071 0.0014624588
|
||||
14800 124 0.0045615958 0.0056674372 0.014632879 0.001980479
|
||||
14900 124 0.0043120591 0.0053574067 0.014648647 0.0017081314
|
||||
15000 124 0.0040016693 0.004971771 0.015227426 0.0014981674
|
||||
Loop time of 0.388132 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5565117.226 tau/day, 12882.216 timesteps/s, 1.597 Matom-step/s
|
||||
90.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.00066988 | 0.018356 | 0.040036 | 13.2 | 4.73
|
||||
Neigh | 0.00064433 | 0.0021311 | 0.00401 | 3.2 | 0.55
|
||||
Comm | 0.066969 | 0.087733 | 0.10454 | 5.6 | 22.60
|
||||
Output | 0.1811 | 0.21514 | 0.2695 | 7.6 | 55.43
|
||||
Modify | 0.00073098 | 0.0022522 | 0.0043484 | 3.3 | 0.58
|
||||
Other | | 0.06252 | | | 16.11
|
||||
|
||||
Nlocal: 31 ave 54 max 8 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 116 max 70 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 88
|
||||
Dangerous builds = 0
|
||||
|
||||
fix 1 tri move rotate 0 0 0 1 1 1 25
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.589 | 8.601 | 8.612 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
15000 124 0.0040016693 0.004971771 0.015227426 0.0015086634
|
||||
15100 124 5.2391455 0.13909965 0.086544429 0.084187091
|
||||
15200 124 5.2856213 0.19684224 0.11745683 0.083186315
|
||||
15300 124 5.3131372 0.23102865 0.13493822 0.08605977
|
||||
15400 124 5.312441 0.23016376 0.13361748 0.085326393
|
||||
15500 124 5.3238039 0.24428132 0.13748765 0.083860323
|
||||
15600 124 5.3492159 0.27585379 0.15195482 0.090509109
|
||||
15700 124 5.3793259 0.31326319 0.16813451 0.094842314
|
||||
15800 124 5.3836817 0.31867484 0.17028976 0.089989699
|
||||
15900 124 5.3796952 0.31372196 0.16538847 0.094472961
|
||||
16000 124 5.4115814 0.3533382 0.18150785 0.091208354
|
||||
16100 124 5.3936511 0.33106115 0.17088137 0.093629945
|
||||
16200 124 5.3957378 0.33365363 0.17021817 0.099559486
|
||||
16300 124 5.4107263 0.35227575 0.17833256 0.097418633
|
||||
16400 124 5.4157911 0.35856834 0.18023194 0.094902693
|
||||
16500 124 5.4104949 0.35198831 0.17667749 0.098565938
|
||||
16600 124 5.409282 0.35048133 0.17592806 0.096041734
|
||||
16700 124 5.413877 0.35619023 0.1787891 0.092627526
|
||||
16800 124 5.41431 0.35672824 0.1791246 0.094118962
|
||||
16900 124 5.4131542 0.35529219 0.17881883 0.092708811
|
||||
17000 124 5.4141932 0.35658307 0.1798655 0.090520504
|
||||
17100 124 5.4220385 0.3663303 0.18519617 0.089222997
|
||||
17200 124 5.4046579 0.34473618 0.17738138 0.094492682
|
||||
17300 124 5.4056346 0.34594968 0.17932898 0.087067848
|
||||
17400 124 5.4625758 0.4166948 0.21590291 0.087573329
|
||||
17500 124 5.5101683 0.47582488 0.24840276 0.086186395
|
||||
17600 124 5.5878392 0.5723251 0.29850268 0.08748419
|
||||
17700 124 5.6772998 0.6834732 0.36153625 0.091782683
|
||||
17800 124 5.7649819 0.79241148 0.41944601 0.091955533
|
||||
17900 124 5.6293884 0.6239469 0.34262388 0.092222925
|
||||
18000 124 5.5993719 0.58665365 0.3202341 0.092041421
|
||||
18100 124 5.5929165 0.57863332 0.31757988 0.089752868
|
||||
18200 124 5.5194314 0.48733363 0.27391729 0.088604294
|
||||
18300 124 5.5558601 0.53259351 0.29860433 0.087707501
|
||||
18400 124 5.5243479 0.49344201 0.28138274 0.091109598
|
||||
18500 124 5.4712545 0.4274775 0.24899279 0.085579285
|
||||
18600 124 5.4614746 0.41532663 0.24277803 0.093560936
|
||||
18700 124 5.4335266 0.38060339 0.22486156 0.092857653
|
||||
18800 124 5.4062944 0.34676949 0.20805012 0.085928259
|
||||
18900 124 5.3680383 0.29923911 0.18445379 0.09139396
|
||||
19000 124 5.3612247 0.29077372 0.17705414 0.091152733
|
||||
19100 124 5.3657774 0.29643016 0.18163087 0.088533894
|
||||
19200 124 5.3753017 0.30826343 0.18731953 0.090708858
|
||||
19300 124 5.3788607 0.31268517 0.18511328 0.091858903
|
||||
19400 124 5.3753079 0.30827114 0.18028529 0.094270307
|
||||
19500 124 5.3793587 0.31330386 0.17822453 0.09479624
|
||||
19600 124 5.3794279 0.31338982 0.17247606 0.088668785
|
||||
19700 124 5.3883131 0.3244291 0.17733088 0.089605063
|
||||
19800 124 5.3862701 0.32189078 0.17600167 0.087391973
|
||||
19900 124 5.3627176 0.2926286 0.15793773 0.087196402
|
||||
20000 124 5.371666 0.30374625 0.16190487 0.08799023
|
||||
Loop time of 0.446069 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 4842295.219 tau/day, 11209.017 timesteps/s, 1.390 Matom-step/s
|
||||
93.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.010367 | 0.024106 | 0.040606 | 8.9 | 5.40
|
||||
Neigh | 0.004444 | 0.010596 | 0.019572 | 6.1 | 2.38
|
||||
Comm | 0.083456 | 0.10705 | 0.1247 | 5.4 | 24.00
|
||||
Output | 0.1825 | 0.23041 | 0.29061 | 8.5 | 51.65
|
||||
Modify | 0.0032429 | 0.0048904 | 0.0074544 | 2.4 | 1.10
|
||||
Other | | 0.06902 | | | 15.47
|
||||
|
||||
Nlocal: 31 ave 73 max 6 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 93 ave 118 max 51 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 429
|
||||
Dangerous builds = 0
|
||||
|
||||
unfix 1
|
||||
set type 1 angmom 0.0 0.0 0.0
|
||||
Setting atom values ...
|
||||
100 settings made for angmom
|
||||
velocity tri set 0.0 0.0 0.0
|
||||
run 5000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.737 | 7.746 | 7.773 Mbytes
|
||||
Step Atoms Temp c_1 c_2 Press
|
||||
20000 124 0.24447869 0.30374625 0.16190487 -0.013113207
|
||||
20100 124 0.058472851 0.072648087 0.051241435 0.0027199931
|
||||
20200 124 0.052338782 0.065026972 0.04463957 0.0049181017
|
||||
20300 124 0.059032454 0.073343352 0.046997972 0.0036432387
|
||||
20400 124 0.041540522 0.051610952 0.034851914 0.0080319941
|
||||
20500 124 0.034253651 0.042557567 0.030035232 0.0085785376
|
||||
20600 124 0.027090159 0.03365747 0.025218135 0.0056701536
|
||||
20700 124 0.023080903 0.028676274 0.022777714 0.0021487926
|
||||
20800 124 0.024811993 0.030827022 0.023644112 0.0031902401
|
||||
20900 124 0.02296688 0.028534608 0.022697322 0.0052975401
|
||||
21000 124 0.024959299 0.031010038 0.023833456 0.0049399041
|
||||
21100 124 0.024560924 0.030515087 0.022657931 0.0034176814
|
||||
21200 124 0.025331395 0.031472339 0.023297144 0.0051700371
|
||||
21300 124 0.023119592 0.028724342 0.021901117 0.0028542595
|
||||
21400 124 0.021068783 0.026176367 0.02024999 0.0066313423
|
||||
21500 124 0.019958716 0.024797192 0.020021151 0.0054394297
|
||||
21600 124 0.021501915 0.026714501 0.021044833 0.003139584
|
||||
21700 124 0.022663473 0.028157649 0.021375039 0.0047077744
|
||||
21800 124 0.017783349 0.022094464 0.018460952 0.0024408478
|
||||
21900 124 0.017441008 0.021669131 0.017976927 0.004236632
|
||||
22000 124 0.016834232 0.020915258 0.017867023 0.0032297246
|
||||
22100 124 0.016852641 0.02093813 0.017823693 0.0031993194
|
||||
22200 124 0.017260002 0.021444245 0.018617101 0.001645186
|
||||
22300 124 0.016279285 0.020225778 0.017759307 0.0048239099
|
||||
22400 124 0.013098535 0.016273937 0.014976085 0.0030481479
|
||||
22500 124 0.01253107 0.015568906 0.014821105 0.002818037
|
||||
22600 124 0.013231925 0.016439664 0.014841942 0.0061556104
|
||||
22700 124 0.010622794 0.013198017 0.013335312 0.0032549657
|
||||
22800 124 0.012715053 0.01579749 0.01437656 0.0017626703
|
||||
22900 124 0.01207747 0.015005341 0.013708244 0.0018658438
|
||||
23000 124 0.010825905 0.013450367 0.01253289 0.0024262171
|
||||
23100 124 0.010506745 0.013053834 0.012086254 0.0013807784
|
||||
23200 124 0.010816779 0.013439028 0.012089622 0.0020534022
|
||||
23300 124 0.010541511 0.013097028 0.012162291 0.0020542813
|
||||
23400 124 0.0094678491 0.011763085 0.011404012 0.0011667903
|
||||
23500 124 0.0083682956 0.010396973 0.010273685 0.0025941956
|
||||
23600 124 0.0076879289 0.0095516693 0.0099437632 0.0014724848
|
||||
23700 124 0.0087792045 0.010907496 0.010802224 0.0017158203
|
||||
23800 124 0.0070944354 0.0088142985 0.010176751 0.0030678737
|
||||
23900 124 0.0073071217 0.0090785451 0.010067352 0.0021355515
|
||||
24000 124 0.007092681 0.0088121188 0.0093578983 0.0037224355
|
||||
24100 124 0.0061240788 0.0076087039 0.0088323652 0.00075591612
|
||||
24200 124 0.0060997333 0.0075784566 0.0089160306 0.00074919945
|
||||
24300 124 0.0074369071 0.0092397936 0.0098936814 0.0016742568
|
||||
24400 124 0.0055774041 0.0069295021 0.0089788427 0.0010941333
|
||||
24500 124 0.0054891817 0.0068198925 0.0089585787 0.0010201513
|
||||
24600 124 0.0052665503 0.0065432898 0.0085195212 0.0027803091
|
||||
24700 124 0.0052229505 0.0064891203 0.0083245915 0.0032441386
|
||||
24800 124 0.0045885549 0.0057009318 0.0077639469 0.0021437792
|
||||
24900 124 0.0048155198 0.0059829185 0.0082794836 0.0013531019
|
||||
25000 124 0.0051022231 0.0063391257 0.0084155114 0.0026277693
|
||||
Loop time of 0.422905 on 4 procs for 5000 steps with 124 atoms
|
||||
|
||||
Performance: 5107527.533 tau/day, 11822.980 timesteps/s, 1.466 Matom-step/s
|
||||
92.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.00078007 | 0.018612 | 0.041595 | 13.3 | 4.40
|
||||
Neigh | 0.0007419 | 0.0036728 | 0.0070159 | 4.7 | 0.87
|
||||
Comm | 0.075945 | 0.098004 | 0.1149 | 5.5 | 23.17
|
||||
Output | 0.17815 | 0.22946 | 0.29026 | 8.8 | 54.26
|
||||
Modify | 0.0008285 | 0.0025442 | 0.0042422 | 3.2 | 0.60
|
||||
Other | | 0.07061 | | | 16.70
|
||||
|
||||
Nlocal: 31 ave 58 max 5 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 93 ave 119 max 66 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Neighbor list builds = 149
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:02
|
||||
15
examples/gransurf/surf.line
Normal file
15
examples/gransurf/surf.line
Normal file
@ -0,0 +1,15 @@
|
||||
LAMMPS molecule file for line box
|
||||
|
||||
9 lines
|
||||
|
||||
Lines
|
||||
|
||||
1 1 2 7 0 10 10
|
||||
2 1 2 10 10 0 7
|
||||
3 1 2 0 7 -10 10
|
||||
4 1 2 -10 10 -7 0
|
||||
5 1 2 -7 0 -10 -10
|
||||
6 1 2 -10 -10 0 -10
|
||||
7 1 2 0 -10 10 -10
|
||||
8 1 2 10 -10 10 0
|
||||
9 1 2 0 -9.9 0 -4
|
||||
10
examples/gransurf/surf.tri
Normal file
10
examples/gransurf/surf.tri
Normal file
@ -0,0 +1,10 @@
|
||||
LAMMPS data file for tri plane
|
||||
|
||||
4 triangles
|
||||
|
||||
Triangles
|
||||
|
||||
1 1 2 -6 -6 0 6 -6 0 0 0 0
|
||||
2 1 2 6 -6 0 6 6 0 0 0 0
|
||||
3 1 2 6 6 0 -6 6 0 0 0 0
|
||||
4 1 2 -6 -6 0 0 0 0 -6 6 0
|
||||
30
examples/gransurf/surf.tri.stl
Normal file
30
examples/gransurf/surf.tri.stl
Normal file
@ -0,0 +1,30 @@
|
||||
solid STL version of surf.tri
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6 -6 0
|
||||
vertex 6 -6 0
|
||||
vertex 0 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6 -6 0
|
||||
vertex 6 6 0
|
||||
vertex 0 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6 6 0
|
||||
vertex -6 6 0
|
||||
vertex 0 0 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6 -6 0
|
||||
vertex 0 0 0
|
||||
vertex -6 6 0
|
||||
endloop
|
||||
endfacet
|
||||
endsolid STL version of surf.tri
|
||||
31
examples/gransurf/surf.tribox
Normal file
31
examples/gransurf/surf.tribox
Normal file
@ -0,0 +1,31 @@
|
||||
LAMMPS data file for tri box
|
||||
|
||||
24 triangles
|
||||
|
||||
Triangles
|
||||
|
||||
1 1 2 0.0 0.0 -6.0 6.0 6.0 -6.0 6.0 -6.0 -6.0
|
||||
2 1 2 0.0 0.0 6.0 6.0 -6.0 6.0 6.0 6.0 6.0
|
||||
3 1 2 0.0 0.0 6.0 -6.0 -6.0 6.0 6.0 -6.0 6.0
|
||||
4 1 2 -6.0 6.0 6.0 -6.0 -6.0 6.0 0.0 0.0 6.0
|
||||
5 1 2 -6.0 -6.0 -6.0 0.0 0.0 -6.0 6.0 -6.0 -6.0
|
||||
6 1 2 0.0 0.0 -6.0 -6.0 -6.0 -6.0 -6.0 6.0 -6.0
|
||||
7 1 2 0.0 0.0 6.0 6.0 6.0 6.0 -6.0 6.0 6.0
|
||||
8 1 2 6.0 6.0 -6.0 0.0 0.0 -6.0 -6.0 6.0 -6.0
|
||||
9 1 2 6.0 6.0 -6.0 0.0 6.0 0.0 6.0 6.0 6.0
|
||||
10 1 2 0.0 6.0 0.0 -6.0 6.0 6.0 6.0 6.0 6.0
|
||||
11 1 2 6.0 -6.0 6.0 0.0 -6.0 0.0 6.0 -6.0 -6.0
|
||||
12 1 2 0.0 -6.0 0.0 6.0 -6.0 6.0 -6.0 -6.0 6.0
|
||||
13 1 2 0.0 6.0 0.0 6.0 6.0 -6.0 -6.0 6.0 -6.0
|
||||
14 1 2 -6.0 6.0 6.0 0.0 6.0 0.0 -6.0 6.0 -6.0
|
||||
15 1 2 0.0 -6.0 0.0 -6.0 -6.0 -6.0 6.0 -6.0 -6.0
|
||||
16 1 2 0.0 -6.0 0.0 -6.0 -6.0 6.0 -6.0 -6.0 -6.0
|
||||
17 1 2 6.0 6.0 6.0 6.0 0.0 0.0 6.0 6.0 -6.0
|
||||
18 1 2 6.0 0.0 0.0 6.0 -6.0 -6.0 6.0 6.0 -6.0
|
||||
19 1 2 -6.0 6.0 -6.0 -6.0 0.0 0.0 -6.0 6.0 6.0
|
||||
20 1 2 -6.0 0.0 0.0 -6.0 6.0 -6.0 -6.0 -6.0 -6.0
|
||||
21 1 2 6.0 0.0 0.0 6.0 6.0 6.0 6.0 -6.0 6.0
|
||||
22 1 2 6.0 -6.0 -6.0 6.0 0.0 0.0 6.0 -6.0 6.0
|
||||
23 1 2 -6.0 0.0 0.0 -6.0 -6.0 6.0 -6.0 6.0 6.0
|
||||
24 1 2 -6.0 0.0 0.0 -6.0 -6.0 -6.0 -6.0 -6.0 6.0
|
||||
|
||||
171
examples/gransurf/surf.tribox.stl
Normal file
171
examples/gransurf/surf.tribox.stl
Normal file
@ -0,0 +1,171 @@
|
||||
solid STL version of surf.tribox
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 0.0 -6.0
|
||||
vertex 6.0 6.0 -6.0
|
||||
vertex 6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 0.0 6.0
|
||||
vertex 6.0 -6.0 6.0
|
||||
vertex 6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 0.0 6.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
vertex 6.0 -6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 6.0 6.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
vertex 0.0 0.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 -6.0 -6.0
|
||||
vertex 0.0 0.0 -6.0
|
||||
vertex 6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 0.0 -6.0
|
||||
vertex -6.0 -6.0 -6.0
|
||||
vertex -6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 0.0 6.0
|
||||
vertex 6.0 6.0 6.0
|
||||
vertex -6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 6.0 -6.0
|
||||
vertex 0.0 0.0 -6.0
|
||||
vertex -6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 6.0 -6.0
|
||||
vertex 0.0 6.0 0.0
|
||||
vertex 6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 6.0 0.0
|
||||
vertex -6.0 6.0 6.0
|
||||
vertex 6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 -6.0 6.0
|
||||
vertex 0.0 -6.0 0.0
|
||||
vertex 6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 -6.0 0.0
|
||||
vertex 6.0 -6.0 6.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 6.0 0.0
|
||||
vertex 6.0 6.0 -6.0
|
||||
vertex -6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 6.0 6.0
|
||||
vertex 0.0 6.0 0.0
|
||||
vertex -6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 -6.0 0.0
|
||||
vertex -6.0 -6.0 -6.0
|
||||
vertex 6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 0.0 -6.0 0.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
vertex -6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 6.0 6.0
|
||||
vertex 6.0 0.0 0.0
|
||||
vertex 6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 0.0 0.0
|
||||
vertex 6.0 -6.0 -6.0
|
||||
vertex 6.0 6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 6.0 -6.0
|
||||
vertex -6.0 0.0 0.0
|
||||
vertex -6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 0.0 0.0
|
||||
vertex -6.0 6.0 -6.0
|
||||
vertex -6.0 -6.0 -6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 0.0 0.0
|
||||
vertex 6.0 6.0 6.0
|
||||
vertex 6.0 -6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex 6.0 -6.0 -6.0
|
||||
vertex 6.0 0.0 0.0
|
||||
vertex 6.0 -6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 0.0 0.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
vertex -6.0 6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.0 0.0 0.0
|
||||
outer loop
|
||||
vertex -6.0 0.0 0.0
|
||||
vertex -6.0 -6.0 -6.0
|
||||
vertex -6.0 -6.0 6.0
|
||||
endloop
|
||||
endfacet
|
||||
endsolid STL version of surf.tribox
|
||||
|
||||
18
src/.gitignore
vendored
18
src/.gitignore
vendored
@ -1045,6 +1045,12 @@
|
||||
/fix_srd.h
|
||||
/fix_store_kim.cpp
|
||||
/fix_store_kim.h
|
||||
/fix_surface.cpp
|
||||
/fix_surface.h
|
||||
/fix_surface_global.cpp
|
||||
/fix_surface_global.h
|
||||
/fix_surface_local.cpp
|
||||
/fix_surface_local.h
|
||||
/fix_temp_rescale_eff.cpp
|
||||
/fix_temp_rescale_eff.h
|
||||
/fix_tgnh_drude.cpp
|
||||
@ -1269,6 +1275,8 @@
|
||||
/pair_gran_hooke.h
|
||||
/pair_gran_hooke_history.cpp
|
||||
/pair_gran_hooke_history.h
|
||||
/pair_surf_granular.cpp
|
||||
/pair_surf_granular.h
|
||||
/pair_gw.cpp
|
||||
/pair_gw.h
|
||||
/pair_gw_zbl.cpp
|
||||
@ -1297,6 +1305,10 @@
|
||||
/pair_lebedeva_z.h
|
||||
/pair_line_lj.cpp
|
||||
/pair_line_lj.h
|
||||
/pair_line_gran_hooke.cpp
|
||||
/pair_line_gran_hooke.h
|
||||
/pair_line_gran_hooke_history.cpp
|
||||
/pair_line_gran_hooke_history.h
|
||||
/pair_list.cpp
|
||||
/pair_list.h
|
||||
/pair_lj_charmm_coul_charmm.cpp
|
||||
@ -1472,6 +1484,10 @@
|
||||
/pair_tracker.cpp
|
||||
/pair_tri_lj.cpp
|
||||
/pair_tri_lj.h
|
||||
/pair_tri_gran_hooke.cpp
|
||||
/pair_tri_gran_hooke.h
|
||||
/pair_tri_gran_hooke_history.cpp
|
||||
/pair_tri_gran_hooke_history.h
|
||||
/pair_yukawa_colloid.cpp
|
||||
/pair_yukawa_colloid.h
|
||||
/pair_wf_cut.cpp
|
||||
@ -1558,6 +1574,8 @@
|
||||
/smd_material_models.cpp
|
||||
/smd_material_models.h
|
||||
/smd_math.h
|
||||
/surf_extra.cpp
|
||||
/surf_extra.h
|
||||
/tad.cpp
|
||||
/tad.h
|
||||
/temper.cpp
|
||||
|
||||
672
src/GRANSURF/fix_surface.cpp
Normal file
672
src/GRANSURF/fix_surface.cpp
Normal file
@ -0,0 +1,672 @@
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "fix_surface.h"
|
||||
|
||||
#include "atom.h"
|
||||
#include "domain.h"
|
||||
#include "error.h"
|
||||
#include "memory.h"
|
||||
#include "molecule.h"
|
||||
#include "stl_reader.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
static constexpr int DELTA = 128;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixSurface::FixSurface(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixSurface::~FixSurface() {}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
extract lines or tris from a molecule template ID for one or more molecules
|
||||
concatenate into single list of points and lines or tris
|
||||
identify unique points using hash
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void FixSurface::extract_from_molecule(char *molID,
|
||||
std::map<std::tuple<double,double,double>,int> *hash,
|
||||
int &npoints, int &maxpoints,
|
||||
Point *&points, int &nlines, Line *&lines,
|
||||
int &ntris, Tri *&tris)
|
||||
{
|
||||
int dimension = domain->dimension;
|
||||
|
||||
int imol = atom->find_molecule(molID);
|
||||
if (imol == -1)
|
||||
error->all(FLERR,"Molecule template ID for fix surface does not exist");
|
||||
|
||||
// loop over one or more molecules in molID
|
||||
|
||||
Molecule **onemols = &atom->molecules[imol];
|
||||
int nmol = onemols[0]->nset;
|
||||
|
||||
for (int m = 0; m < nmol; m++) {
|
||||
if (dimension == 2)
|
||||
if (onemols[m]->lineflag == 0)
|
||||
error->all(FLERR,"Fix surface molecule must have lines");
|
||||
if (dimension == 3)
|
||||
if (onemols[m]->triflag == 0)
|
||||
error->all(FLERR,"Fix surface molecule must have triangles");
|
||||
|
||||
int nl = onemols[m]->nlines;
|
||||
int nt = onemols[m]->ntris;
|
||||
|
||||
nlines += nl;
|
||||
ntris += nt;
|
||||
lines = (Line *) memory->srealloc(lines,nlines*sizeof(Line),
|
||||
"surface:lines");
|
||||
tris = (Tri *) memory->srealloc(tris,ntris*sizeof(Tri),
|
||||
"surface:tris");
|
||||
|
||||
// offset line/tri index lists by previous npoints
|
||||
// pi,p2,p3 are C-style indices into points vector
|
||||
|
||||
if (dimension == 2) {
|
||||
int *molline = onemols[m]->molline;
|
||||
int *typeline = onemols[m]->typeline;
|
||||
double **epts = onemols[m]->lines;
|
||||
int iline = nlines - nl;
|
||||
|
||||
for (int i = 0; i < nl; i++) {
|
||||
lines[iline].mol = molline[i];
|
||||
lines[iline].type = typeline[i];
|
||||
|
||||
auto key = std::make_tuple(epts[i][0],epts[i][1],0.0);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = epts[i][0];
|
||||
points[npoints].x[1] = epts[i][1];
|
||||
points[npoints].x[2] = 0.0;
|
||||
lines[iline].p1 = npoints;
|
||||
npoints++;
|
||||
} else lines[iline].p1 = (*hash)[key];
|
||||
|
||||
key = std::make_tuple(epts[i][2],epts[i][3],0.0);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = epts[i][2];
|
||||
points[npoints].x[1] = epts[i][3];
|
||||
points[npoints].x[2] = 0.0;
|
||||
lines[iline].p2 = npoints;
|
||||
npoints++;
|
||||
} else lines[iline].p2 = (*hash)[key];
|
||||
|
||||
iline++;
|
||||
}
|
||||
}
|
||||
|
||||
if (dimension == 3) {
|
||||
int *moltri = onemols[m]->moltri;
|
||||
int *typetri = onemols[m]->typetri;
|
||||
double **cpts = onemols[m]->tris;
|
||||
int itri = ntris - nt;
|
||||
|
||||
for (int i = 0; i < nt; i++) {
|
||||
tris[itri].mol = moltri[i];
|
||||
tris[itri].type = typetri[i];
|
||||
|
||||
auto key = std::make_tuple(cpts[i][0],cpts[i][1],cpts[i][2]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = cpts[i][0];
|
||||
points[npoints].x[1] = cpts[i][1];
|
||||
points[npoints].x[2] = cpts[i][2];
|
||||
tris[itri].p1 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p1 = (*hash)[key];
|
||||
|
||||
key = std::make_tuple(cpts[i][3],cpts[i][4],cpts[i][5]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = cpts[i][3];
|
||||
points[npoints].x[1] = cpts[i][4];
|
||||
points[npoints].x[2] = cpts[i][5];
|
||||
tris[itri].p2 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p2 = (*hash)[key];
|
||||
|
||||
key = std::make_tuple(cpts[i][6],cpts[i][7],cpts[i][8]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = cpts[i][6];
|
||||
points[npoints].x[1] = cpts[i][7];
|
||||
points[npoints].x[2] = cpts[i][8];
|
||||
tris[itri].p3 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p3 = (*hash)[key];
|
||||
|
||||
itri++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
extract triangles from an STL file, can be text or binary
|
||||
concatenate into single list of points and tris
|
||||
identify unique points using hash
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void FixSurface::extract_from_stlfile(char *filename, int stype,
|
||||
std::map<std::tuple<double,double,double>,int> *hash,
|
||||
int &npoints, int &maxpoints,
|
||||
Point *&points, int &ntris, Tri *&tris)
|
||||
{
|
||||
if (domain->dimension == 2)
|
||||
error->all(FLERR,"Fix surface cannot use an STL file for 2d simulations");
|
||||
|
||||
// read tris from STL file
|
||||
// stltris = tri coords internal to STL reader
|
||||
|
||||
STLReader *stl = new STLReader(lmp);
|
||||
double **stltris;
|
||||
ntris = stl->read_file(filename,stltris);
|
||||
|
||||
tris = (Tri *) memory->srealloc(tris,ntris*sizeof(Tri),"surface:tris");
|
||||
|
||||
// loop over STL tris
|
||||
// populate points and tris data structs
|
||||
// for each tri: set molID = 1 and type = stype
|
||||
|
||||
for (int itri = 0; itri < ntris; itri++) {
|
||||
tris[itri].mol = 1;
|
||||
tris[itri].type = stype;
|
||||
|
||||
auto key = std::make_tuple(stltris[itri][0],stltris[itri][1],stltris[itri][2]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = stltris[itri][0];
|
||||
points[npoints].x[1] = stltris[itri][1];
|
||||
points[npoints].x[2] = stltris[itri][2];
|
||||
tris[itri].p1 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p1 = (*hash)[key];
|
||||
|
||||
key = std::make_tuple(stltris[itri][3],stltris[itri][4],stltris[itri][5]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = stltris[itri][3];
|
||||
points[npoints].x[1] = stltris[itri][4];
|
||||
points[npoints].x[2] = stltris[itri][5];
|
||||
tris[itri].p2 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p2 = (*hash)[key];
|
||||
|
||||
key = std::make_tuple(stltris[itri][6],stltris[itri][7],stltris[itri][8]);
|
||||
if (hash->find(key) == hash->end()) {
|
||||
if (npoints == maxpoints) {
|
||||
maxpoints += DELTA;
|
||||
points = (Point *) memory->srealloc(points,maxpoints*sizeof(Point),
|
||||
"surface:points");
|
||||
}
|
||||
(*hash)[key] = npoints;
|
||||
points[npoints].x[0] = stltris[itri][6];
|
||||
points[npoints].x[1] = stltris[itri][7];
|
||||
points[npoints].x[2] = stltris[itri][8];
|
||||
tris[itri].p3 = npoints;
|
||||
npoints++;
|
||||
} else tris[itri].p3 = (*hash)[key];
|
||||
}
|
||||
|
||||
// delete STL reader
|
||||
|
||||
delete stl;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
create and initialize Connect2d info for global lines
|
||||
global lines were read from molecule file(s)
|
||||
creates connect2d data structs
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void FixSurface::connectivity2d_global(int npoints, int nlines, Line *lines,
|
||||
Connect2d *&connect2d,
|
||||
int **&neigh_p1, int **&neigh_p2)
|
||||
{
|
||||
connect2d = (Connect2d *)
|
||||
memory->smalloc(nlines*sizeof(Connect2d),"surface:connect2d");
|
||||
|
||||
// setup line end point connectivity lists
|
||||
// counts = # of lines containing each end point (including self)
|
||||
// plines = ragged 2d array with indices of lines which contain each point
|
||||
|
||||
int *counts;
|
||||
memory->create(counts,npoints,"surface:counts");
|
||||
|
||||
for (int i = 0; i < npoints; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
counts[lines[i].p1]++;
|
||||
counts[lines[i].p2]++;
|
||||
}
|
||||
|
||||
int **plines;
|
||||
memory->create_ragged(plines,npoints,counts,"surface:plines");
|
||||
|
||||
for (int i = 0; i < npoints; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
plines[lines[i].p1][counts[lines[i].p1]++] = i;
|
||||
plines[lines[i].p2][counts[lines[i].p2]++] = i;
|
||||
}
|
||||
|
||||
// p12_counts = # of lines connecting to endpoints p12 of each line
|
||||
// do NOT include self
|
||||
|
||||
int *p1_counts,*p2_counts;
|
||||
memory->create(p1_counts,nlines,"surface:p1_counts");
|
||||
memory->create(p2_counts,nlines,"surface:p2_counts");
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
p1_counts[i] = counts[lines[i].p1] - 1;
|
||||
p2_counts[i] = counts[lines[i].p2] - 1;
|
||||
}
|
||||
|
||||
// allocate all ragged arrays which Connect2d will point to
|
||||
|
||||
memory->create_ragged(neigh_p1,nlines,p1_counts,"surface:neigh_p1");
|
||||
memory->create_ragged(neigh_p2,nlines,p2_counts,"surface:neigh_p2");
|
||||
|
||||
// set connect2d vector ptrs to rows of corresponding ragged arrays
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
connect2d[i].np1 = p1_counts[i];
|
||||
if (connect2d[i].np1 == 0) connect2d[i].neigh_p1 = nullptr;
|
||||
else connect2d[i].neigh_p1 = neigh_p1[i];
|
||||
|
||||
connect2d[i].np2 = p2_counts[i];
|
||||
if (connect2d[i].np2 == 0) connect2d[i].neigh_p2 = nullptr;
|
||||
else connect2d[i].neigh_p2 = neigh_p2[i];
|
||||
}
|
||||
|
||||
// initialize connect2d neigh vectors for each end point of each line
|
||||
// do NOT include self
|
||||
|
||||
int j,m;
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
if (p1_counts[i]) {
|
||||
j = 0;
|
||||
for (m = 0; m <= p1_counts[i]; m++) {
|
||||
if (plines[lines[i].p1][m] == i) continue;
|
||||
connect2d[i].neigh_p1[j] = plines[lines[i].p1][m];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
if (p2_counts[i]) {
|
||||
j = 0;
|
||||
for (m = 0; m <= p2_counts[i]; m++) {
|
||||
if (plines[lines[i].p2][m] == i) continue;
|
||||
connect2d[i].neigh_p2[j] = plines[lines[i].p2][m];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// deallocate counts, plines, p12_counts
|
||||
|
||||
memory->destroy(counts);
|
||||
memory->destroy(plines);
|
||||
memory->destroy(p1_counts);
|
||||
memory->destroy(p2_counts);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
create and initialize Connect3d info for global triangles
|
||||
global triangles were read from molecule or STL file(s)
|
||||
creates connect3d data structs
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int FixSurface::connectivity3d_global(int npoints, int ntris, Tri *tris,
|
||||
Connect3d *&connect3d,
|
||||
int **&neigh_e1, int **&neigh_e2,
|
||||
int **&neigh_e3,
|
||||
int **&neigh_c1, int **&neigh_c2,
|
||||
int **&neigh_c3)
|
||||
{
|
||||
int p1,p2,p3;
|
||||
|
||||
connect3d = (Connect3d *)
|
||||
memory->smalloc(ntris*sizeof(Connect3d),"surface:connect3d");
|
||||
|
||||
// create hash = map of unique edges
|
||||
// key = <p1,p2> indices of 2 points, in either order
|
||||
// value = index of the unique edge (0 to Nedge-1)
|
||||
// tri2edges[i][j] = index of unique edge for tri I and edge J
|
||||
// nedges = total count of unique edges, returned
|
||||
|
||||
int **tri2edge;
|
||||
memory->create(tri2edge,ntris,3,"surface::tri2edge");
|
||||
|
||||
std::map<std::tuple<int,int>,int> hash;
|
||||
int nedges = 0;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
p1 = tris[i].p1;
|
||||
p2 = tris[i].p2;
|
||||
p3 = tris[i].p3;
|
||||
|
||||
auto key1 = std::make_tuple(p1,p2);
|
||||
auto key2 = std::make_tuple(p2,p1);
|
||||
|
||||
if (hash.find(key1) == hash.end() && hash.find(key2) == hash.end()) {
|
||||
hash[key1] = nedges;
|
||||
tri2edge[i][0] = nedges;
|
||||
nedges++;
|
||||
}
|
||||
else if (hash.find(key1) != hash.end()) tri2edge[i][0] = hash[key1];
|
||||
else if (hash.find(key2) != hash.end()) tri2edge[i][0] = hash[key2];
|
||||
|
||||
key1 = std::make_tuple(p2,p3);
|
||||
key2 = std::make_tuple(p3,p2);
|
||||
|
||||
if (hash.find(key1) == hash.end() && hash.find(key2) == hash.end()) {
|
||||
hash[key1] = nedges;
|
||||
tri2edge[i][1] = nedges;
|
||||
nedges++;
|
||||
}
|
||||
else if (hash.find(key1) != hash.end()) tri2edge[i][1] = hash[key1];
|
||||
else if (hash.find(key2) != hash.end()) tri2edge[i][1] = hash[key2];
|
||||
|
||||
key1 = std::make_tuple(p3,p1);
|
||||
key2 = std::make_tuple(p1,p3);
|
||||
|
||||
if (hash.find(key1) == hash.end() && hash.find(key2) == hash.end()) {
|
||||
hash[key1] = nedges;
|
||||
tri2edge[i][2] = nedges;
|
||||
nedges++;
|
||||
}
|
||||
else if (hash.find(key1) != hash.end()) tri2edge[i][2] = hash[key1];
|
||||
else if (hash.find(key2) != hash.end()) tri2edge[i][2] = hash[key2];
|
||||
}
|
||||
|
||||
// setup tri edge connectivity lists
|
||||
// counts = # of tris containing each edge (including self)
|
||||
// etris = ragged 2d array with indices of tris which contain each edge
|
||||
|
||||
int *counts;
|
||||
memory->create(counts,nedges,"surface:count");
|
||||
|
||||
for (int i = 0; i < nedges; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
counts[tri2edge[i][0]]++;
|
||||
counts[tri2edge[i][1]]++;
|
||||
counts[tri2edge[i][2]]++;
|
||||
}
|
||||
|
||||
int **etris;
|
||||
memory->create_ragged(etris,nedges,counts,"surface:etris");
|
||||
|
||||
for (int i = 0; i < nedges; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
etris[tri2edge[i][0]][counts[tri2edge[i][0]]++] = i;
|
||||
etris[tri2edge[i][1]][counts[tri2edge[i][1]]++] = i;
|
||||
etris[tri2edge[i][2]][counts[tri2edge[i][2]]++] = i;
|
||||
}
|
||||
|
||||
// e123_counts = # of edges connecting to edges e123 of each tri
|
||||
// do NOT include self
|
||||
|
||||
int *e1_counts,*e2_counts,*e3_counts;
|
||||
memory->create(e1_counts,ntris,"surface:e1_counts");
|
||||
memory->create(e2_counts,ntris,"surface:e2_counts");
|
||||
memory->create(e3_counts,ntris,"surface:e3_counts");
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
e1_counts[i] = counts[tri2edge[i][0]] - 1;
|
||||
e2_counts[i] = counts[tri2edge[i][1]] - 1;
|
||||
e3_counts[i] = counts[tri2edge[i][2]] - 1;
|
||||
}
|
||||
|
||||
// allocate all edge ragged arrays which Connect3d will point to
|
||||
|
||||
memory->create_ragged(neigh_e1,ntris,e1_counts,"surface:neigh_e1");
|
||||
memory->create_ragged(neigh_e2,ntris,e2_counts,"surface:neigh_e2");
|
||||
memory->create_ragged(neigh_e3,ntris,e3_counts,"surface:neigh_e3");
|
||||
|
||||
// set connect3d edge vector ptrs to rows of corresponding edge ragged arrays
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
connect3d[i].ne1 = e1_counts[i];
|
||||
if (connect3d[i].ne1 == 0) connect3d[i].neigh_e1 = nullptr;
|
||||
else connect3d[i].neigh_e1 = neigh_e1[i];
|
||||
|
||||
connect3d[i].ne2 = e2_counts[i];
|
||||
if (connect3d[i].ne2 == 0) connect3d[i].neigh_e2 = nullptr;
|
||||
else connect3d[i].neigh_e2 = neigh_e2[i];
|
||||
|
||||
connect3d[i].ne3 = e3_counts[i];
|
||||
if (connect3d[i].ne3 == 0) connect3d[i].neigh_e3 = nullptr;
|
||||
else connect3d[i].neigh_e3 = neigh_e3[i];
|
||||
}
|
||||
|
||||
// initialize connect3d edge neigh vectors for each edge of each tri
|
||||
// do NOT include self
|
||||
|
||||
int j,m;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
if (connect3d[i].ne1) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tri2edge[i][0]]; m++) {
|
||||
if (etris[tri2edge[i][0]][m] == i) continue;
|
||||
connect3d[i].neigh_e1[j] = etris[tri2edge[i][0]][m];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
if (connect3d[i].ne2) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tri2edge[i][1]]; m++) {
|
||||
if (etris[tri2edge[i][1]][m] == i) continue;
|
||||
connect3d[i].neigh_e2[j] = etris[tri2edge[i][1]][m];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
if (connect3d[i].ne3) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tri2edge[i][2]]; m++) {
|
||||
if (etris[tri2edge[i][2]][m] == i) continue;
|
||||
connect3d[i].neigh_e3[j] = etris[tri2edge[i][2]][m];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// deallocate counts, tri2edge, etris, e123_counts
|
||||
|
||||
memory->destroy(counts);
|
||||
memory->destroy(tri2edge);
|
||||
memory->destroy(etris);
|
||||
memory->destroy(e1_counts);
|
||||
memory->destroy(e2_counts);
|
||||
memory->destroy(e3_counts);
|
||||
|
||||
// setup tri corner point connectivity lists
|
||||
// counts = # of tris containing each corner point (including self)
|
||||
// ctris = ragged 2d array with indices of tris which contain each point
|
||||
|
||||
memory->create(counts,npoints,"surface:counts");
|
||||
|
||||
for (int i = 0; i < npoints; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
counts[tris[i].p1]++;
|
||||
counts[tris[i].p2]++;
|
||||
counts[tris[i].p3]++;
|
||||
}
|
||||
|
||||
int **ctris;
|
||||
memory->create_ragged(ctris,npoints,counts,"surface:ctris");
|
||||
|
||||
for (int i = 0; i < npoints; i++) counts[i] = 0;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
ctris[tris[i].p1][counts[tris[i].p1]++] = i;
|
||||
ctris[tris[i].p2][counts[tris[i].p2]++] = i;
|
||||
ctris[tris[i].p3][counts[tris[i].p3]++] = i;
|
||||
}
|
||||
|
||||
// c123_counts = # of tris connecting to corner points c123 of each tri
|
||||
// do NOT include self or tris which connect to an edge
|
||||
// only include tris which only connect at the corner point
|
||||
|
||||
int *c1_counts,*c2_counts,*c3_counts;
|
||||
memory->create(c1_counts,ntris,"surface:c1_counts");
|
||||
memory->create(c2_counts,ntris,"surface:c2_counts");
|
||||
memory->create(c3_counts,ntris,"surface:c3_counts");
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
c1_counts[i] = counts[tris[i].p1] - 1;
|
||||
c1_counts[i] -= connect3d[i].ne3 + connect3d[i].ne1;
|
||||
c2_counts[i] = counts[tris[i].p2] - 1;
|
||||
c2_counts[i] -= connect3d[i].ne1 + connect3d[i].ne2;
|
||||
c3_counts[i] = counts[tris[i].p3] - 1;
|
||||
c3_counts[i] -= connect3d[i].ne2 + connect3d[i].ne3;
|
||||
}
|
||||
|
||||
// allocate all corner ragged arrays which Connect3d will point to
|
||||
|
||||
memory->create_ragged(neigh_c1,ntris,c1_counts,"surface:neigh_c1");
|
||||
memory->create_ragged(neigh_c2,ntris,c2_counts,"surface:neigh_c2");
|
||||
memory->create_ragged(neigh_c3,ntris,c3_counts,"surface:neigh_c3");
|
||||
|
||||
// set connect3d corner vector ptrs to rows of corresponding corner ragged arrays
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
connect3d[i].nc1 = c1_counts[i];
|
||||
if (connect3d[i].nc1) connect3d[i].neigh_c1 = neigh_c1[i];
|
||||
else connect3d[i].neigh_c1 = nullptr;
|
||||
|
||||
connect3d[i].nc2 = c2_counts[i];
|
||||
if (connect3d[i].nc2) connect3d[i].neigh_c2 = neigh_c2[i];
|
||||
else connect3d[i].neigh_c2 = nullptr;
|
||||
|
||||
connect3d[i].nc3 = c3_counts[i];
|
||||
if (connect3d[i].nc3) connect3d[i].neigh_c3 = neigh_c3[i];
|
||||
else connect3d[i].neigh_c3 = nullptr;
|
||||
}
|
||||
|
||||
// initialize connect3d corner neigh vectors for each corner of each tri
|
||||
// do NOT include self or tris which connect to an edge
|
||||
// only include tris which only connect at the corner point
|
||||
|
||||
int n,medge,skipflag;
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
if (connect3d[i].nc1) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tris[i].p1]; m++) {
|
||||
n = ctris[tris[i].p1][m];
|
||||
if (n == i) continue;
|
||||
|
||||
skipflag = 0;
|
||||
for (medge = 0; medge < connect3d[i].ne3; medge++)
|
||||
if (n == connect3d[i].neigh_e3[medge]) skipflag = 1;
|
||||
for (medge = 0; medge < connect3d[i].ne1; medge++)
|
||||
if (n == connect3d[i].neigh_e1[medge]) skipflag = 1;
|
||||
if (skipflag) continue;
|
||||
|
||||
connect3d[i].neigh_c1[j] = n;
|
||||
j++;
|
||||
}
|
||||
}
|
||||
if (connect3d[i].nc2) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tris[i].p2]; m++) {
|
||||
n = ctris[tris[i].p2][m];
|
||||
if (n == i) continue;
|
||||
|
||||
skipflag = 0;
|
||||
for (medge = 0; medge < connect3d[i].ne1; medge++)
|
||||
if (n == connect3d[i].neigh_e1[medge]) skipflag = 1;
|
||||
for (medge = 0; medge < connect3d[i].ne2; medge++)
|
||||
if (n == connect3d[i].neigh_e2[medge]) skipflag = 1;
|
||||
if (skipflag) continue;
|
||||
|
||||
connect3d[i].neigh_c2[j] = n;
|
||||
j++;
|
||||
}
|
||||
}
|
||||
if (connect3d[i].nc3) {
|
||||
j = 0;
|
||||
for (m = 0; m < counts[tris[i].p3]; m++) {
|
||||
n = ctris[tris[i].p3][m];
|
||||
if (n == i) continue;
|
||||
|
||||
skipflag = 0;
|
||||
for (medge = 0; medge < connect3d[i].ne2; medge++)
|
||||
if (n == connect3d[i].neigh_e2[medge]) skipflag = 1;
|
||||
for (medge = 0; medge < connect3d[i].ne3; medge++)
|
||||
if (n == connect3d[i].neigh_e3[medge]) skipflag = 1;
|
||||
if (skipflag) continue;
|
||||
|
||||
connect3d[i].neigh_c3[j] = n;
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// deallocate counts, ctris, c123_counts
|
||||
|
||||
memory->destroy(counts);
|
||||
memory->destroy(ctris);
|
||||
memory->destroy(c1_counts);
|
||||
memory->destroy(c2_counts);
|
||||
memory->destroy(c3_counts);
|
||||
|
||||
// return edge count
|
||||
|
||||
return nedges;
|
||||
}
|
||||
145
src/GRANSURF/fix_surface.h
Normal file
145
src/GRANSURF/fix_surface.h
Normal file
@ -0,0 +1,145 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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_FIX_SURFACE_H
|
||||
#define LMP_FIX_SURFACE_H
|
||||
|
||||
#include "fix.h"
|
||||
#include <map>
|
||||
#include <tuple>
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class FixSurface : public Fix {
|
||||
public:
|
||||
|
||||
// connectivity info between lines or tris
|
||||
|
||||
struct Connect2d { // line connectivity
|
||||
|
||||
// counts, not including self
|
||||
int np1,np2; // # of lines connected to endpts 1/2
|
||||
|
||||
int exposed_pt[2]; // whether p1 and p2 are exposed
|
||||
|
||||
// pairs of endpoint connections
|
||||
tagint *neigh_p1; // indices (or IDs) of lines connected to endpt 1
|
||||
tagint *neigh_p2; // ditto for connections to endpt 2
|
||||
int *pwhich_p1; // which point (0,1) on other line is endpt 1
|
||||
int *pwhich_p2; // ditto for endpt 2
|
||||
int *nside_p1; // consistency of other line normal
|
||||
int *nside_p2; // ditto for endpt 2
|
||||
// SAME_SIDE = 2 normals are on same side of surf
|
||||
// OPPOSITE_SIDE = opposite sides of surf
|
||||
int *aflag_p1; // is this line + other line a FLAT,CONCAVE,CONVEX surf
|
||||
int *aflag_p2; // ditto for endpt 2
|
||||
// surf = on normal side of this line
|
||||
// aflag = FLAT, CONCAVE, CONVEX
|
||||
};
|
||||
|
||||
struct Connect3d { // tri connectivity
|
||||
|
||||
// counts, not including self
|
||||
// also not including edge-connected tris for corner pts
|
||||
int ne1,ne2,ne3; // # of tris connected to edges 1,2,3
|
||||
int nc1,nc2,nc3; // # of tris connected to corner pts 1,2,3
|
||||
|
||||
int exposed_pt[3]; // whether p1, p2, and p3 are exposed
|
||||
int exposed_edge[3]; // whether e1, e2, and e3 are exposed
|
||||
|
||||
// pairs of edge connections
|
||||
tagint *neigh_e1; // indices (or IDs) of tris connected to edge 1
|
||||
tagint *neigh_e2; // ditto for connections to edge 2
|
||||
tagint *neigh_e3; // ditto for connections to edge 3
|
||||
int *ewhich_e1; // which edge (0,1,2) on other tri shares edge 1
|
||||
int *ewhich_e2; // ditto for edge 2
|
||||
int *ewhich_e3; // ditto for edge 3
|
||||
int *nside_e1; // consistency of other tri normal
|
||||
int *nside_e2; // ditto for edge 2
|
||||
int *nside_e3; // ditto for edge 3
|
||||
// SAME_SIDE = 2 normals are on same side of surf
|
||||
// OPPOSITE_SIDE = opposite sides of surf
|
||||
int *aflag_e1; // is this tri + other tri a FLAT,CONCAVE,CONVEX surf
|
||||
int *aflag_e2; // ditto for edge 2
|
||||
int *aflag_e3; // ditto for edge 3
|
||||
// surf = on normal side of this tri
|
||||
// aflag = FLAT, CONCAVE, CONVEX
|
||||
|
||||
// pairs of corner pt connections
|
||||
tagint *neigh_c1; // indices (or IDs) of tris connected to corner pt 1
|
||||
tagint *neigh_c2; // ditto for connections to corner pt 2
|
||||
tagint *neigh_c3; // ditto for connections to corner pt 3
|
||||
int *cwhich_c1; // which corner pt (0,1,2) on other tri shares corner pt 1
|
||||
int *cwhich_c2; // ditto for corner pt 2
|
||||
int *cwhich_c3; // ditto for corner pt 3
|
||||
int *nside_c1; // consistency of normals, only meaningful for FLAT
|
||||
int *nside_c2; // ditto for corner 2
|
||||
int *nside_c3; // ditto for corner 3
|
||||
int *aflag_c1; // are tris FLAT or CONCAVE (no CONVEX)
|
||||
int *aflag_c2; // ditto for corner 2
|
||||
int *aflag_c3; // ditto for corner 3
|
||||
};
|
||||
|
||||
// struct for storing contact data
|
||||
|
||||
struct ContactSurf {
|
||||
int index, neigh_index, type, flag, nside, exposed, concave_contact;
|
||||
double overlap, overlap_ext, overlap_force;
|
||||
double weight_ext, weight_convex, weight_overlap, weight_contribution;
|
||||
double contact[3], dr[3], surf_norm[3], force_norm[3], dr_ext[3];
|
||||
};
|
||||
|
||||
FixSurface(class LAMMPS *, int, char **);
|
||||
~FixSurface() override;
|
||||
|
||||
virtual int setmask() = 0;
|
||||
|
||||
virtual void post_constructor() {}
|
||||
|
||||
protected:
|
||||
|
||||
// surfs read from molecule or STL files
|
||||
|
||||
struct Point {
|
||||
double x[3];
|
||||
};
|
||||
|
||||
struct Line {
|
||||
int mol,type; // molID and type of the line
|
||||
int p1,p2; // indices of points in line segment
|
||||
double norm[3]; // unit normal to line = Z x (p2-p1)
|
||||
};
|
||||
|
||||
struct Tri {
|
||||
int mol,type; // modID and type of the triangle
|
||||
int p1,p2,p3; // indices of points in triangle
|
||||
double norm[3]; // unit normal to tri plane = (p2-p1) x (p3-p1)
|
||||
};
|
||||
|
||||
// methods common to both global and local surfs
|
||||
|
||||
void extract_from_molecule(char *, std::map<std::tuple<double,double,double>,int> *,
|
||||
int &, int &, Point *&,
|
||||
int &, Line *&, int &, Tri *&);
|
||||
void extract_from_stlfile(char *, int, std::map<std::tuple<double,double,double>,int> *,
|
||||
int &, int &, Point *&, int &, Tri *&);
|
||||
|
||||
void connectivity2d_global(int, int, Line *, Connect2d *&, int **&, int **&);
|
||||
int connectivity3d_global(int, int, Tri *, Connect3d *&,
|
||||
int **&, int **&, int **&,
|
||||
int **&, int **&, int **&);
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
4145
src/GRANSURF/fix_surface_global.cpp
Normal file
4145
src/GRANSURF/fix_surface_global.cpp
Normal file
File diff suppressed because it is too large
Load Diff
244
src/GRANSURF/fix_surface_global.h
Normal file
244
src/GRANSURF/fix_surface_global.h
Normal file
@ -0,0 +1,244 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(surface/global,FixSurfaceGlobal)
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
#ifndef LMP_FIX_SURFACE_GLOBAL_H
|
||||
#define LMP_FIX_SURFACE_GLOBAL_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include "fix_surface.h"
|
||||
#include <map>
|
||||
#include <unordered_set>
|
||||
#include <vector>
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
namespace Granular_NS {
|
||||
class GranularModel;
|
||||
}
|
||||
|
||||
class FixSurfaceGlobal : public FixSurface {
|
||||
public:
|
||||
|
||||
// neighbor lists for spheres with surfs and shear history
|
||||
// accessed by fix shear/history
|
||||
|
||||
class NeighList *list;
|
||||
class NeighList *listhistory;
|
||||
|
||||
FixSurfaceGlobal(class LAMMPS *, int, char **);
|
||||
~FixSurfaceGlobal();
|
||||
int setmask();
|
||||
void post_constructor();
|
||||
|
||||
void init() override;
|
||||
void setup_pre_neighbor() override;
|
||||
void initial_integrate(int) override;
|
||||
void pre_neighbor() override;
|
||||
void post_force(int) override;
|
||||
|
||||
int modify_param(int, char **x) override;
|
||||
void reset_dt() override;
|
||||
double memory_usage() override;
|
||||
|
||||
void *extract(const char *, int &) override;
|
||||
int image(int *&, double **&) override;
|
||||
|
||||
private:
|
||||
int dimension,firsttime,use_history;
|
||||
double dt,skin;
|
||||
double flatthresh;
|
||||
double Twall;
|
||||
int tvar;
|
||||
char *tstr;
|
||||
|
||||
// per-surf properties
|
||||
|
||||
int maxsurftype;
|
||||
double **xsurf,**vsurf,**omegasurf,*radsurf;
|
||||
|
||||
// granular models
|
||||
|
||||
struct ModelTypes {
|
||||
int plo,phi;
|
||||
int slo,shi;
|
||||
};
|
||||
|
||||
ModelTypes *modeltypes;
|
||||
class Granular_NS::GranularModel **models; // list of command-line models
|
||||
class Granular_NS::GranularModel ***types2model; // model assigned to each particle/surf type pair
|
||||
|
||||
int nmodel, maxmodel;
|
||||
int history, size_history, heat_flag;
|
||||
|
||||
// neighbor params
|
||||
|
||||
double triggersq;
|
||||
|
||||
// settings for motion applied to specific surf types
|
||||
|
||||
struct Motion {
|
||||
int active;
|
||||
int mstyle;
|
||||
int vxflag,vyflag,vzflag;
|
||||
int axflag,ayflag,azflag;
|
||||
int xvar,yvar,zvar;
|
||||
int vxvar,vyvar,vzvar;
|
||||
double vx,vy,vz;
|
||||
double ax,ay,az;
|
||||
double dx,dy,dz;
|
||||
double period;
|
||||
double point[3],axis[3],unit[3];
|
||||
double omega;
|
||||
char *xvarstr,*yvarstr,*zvarstr;
|
||||
char *vxvarstr,*vyvarstr,*vzvarstr;
|
||||
double time_origin;
|
||||
};
|
||||
|
||||
struct Motion *motions; // list of defined motions, can be flagged inactive
|
||||
int nmotion,maxmotion; // # of defined motions versus allocated size
|
||||
int anymove; // 1 if any surf motion is enabled
|
||||
int anymove_variable; // 1 if any surf motion is style VARIABLE
|
||||
|
||||
int *type2motion; // assingment of surf types (1 to Ntype) to motions
|
||||
// -1 = non-moving surf type
|
||||
|
||||
double **points_original,**xsurf_original;
|
||||
double **points_lastneigh;
|
||||
int *pointmove;
|
||||
|
||||
// storage of granular history info
|
||||
|
||||
class FixNeighHistory *fix_history;
|
||||
double *zeroes;
|
||||
|
||||
// rigid body masses for use in granular interactions
|
||||
|
||||
class Fix *fix_rigid; // ptr to rigid body fix, NULL if none
|
||||
double *mass_rigid; // rigid mass for owned+ghost atoms
|
||||
int nmax; // allocated size of mass_rigid
|
||||
|
||||
// data structs for extracting surfs from molecule or STL files
|
||||
|
||||
Point *points; // global list of unique points
|
||||
Line *lines; // global list of lines
|
||||
Tri *tris; // global list of tris
|
||||
int npoints,nlines,ntris; // count of each
|
||||
int nedges; // count of unique tri edges
|
||||
int maxpoints; // allocated length of points
|
||||
int nsurf; // count of lines or tris for 2d/3d
|
||||
|
||||
// ragged 2d arrays for 2d connectivity
|
||||
|
||||
int **neigh_p1; // indices of other lines connected to endpt 1
|
||||
int **pwhich_p1; // which point (0/1) on other line is endpt 1
|
||||
int **nside_p1; // consistency of other line normal
|
||||
// SAME_SIDE or OPPOSITE_SIDE
|
||||
int **aflag_p1; // is this line + other line a FLAT,CONCAVE,CONVEX surf
|
||||
// surf = on normal side of this line
|
||||
int **neigh_p2; // ditto for connections to endpt 2
|
||||
int **pwhich_p2; // ditto for endpt 2
|
||||
int **nside_p2; // ditto for endpt 2
|
||||
int **aflag_p2; // ditto for endpt 2
|
||||
|
||||
// ragged 2d arrays for 3d edge connectivity
|
||||
|
||||
int **neigh_e1; // indices of other tris connected to edge 1
|
||||
int **ewhich_e1; // which edge (0/1/2) on other tri is edge 1
|
||||
int **nside_e1; // consistency of other tri normal
|
||||
// SAME_SIDE or OPPOSITE_SIDE
|
||||
int **aflag_e1; // is this tri + other tri a FLAT,CONCAVE,CONVEX surf
|
||||
// surf = on normal side of this tri
|
||||
int **neigh_e2; // ditto for connections to edge 2
|
||||
int **ewhich_e2; // ditto for edge 2
|
||||
int **nside_e2; // ditto for edge 2
|
||||
int **aflag_e2; // ditto for edge 2
|
||||
int **neigh_e3; // ditto for connections to edge 3
|
||||
int **ewhich_e3; // ditto for edge 3
|
||||
int **nside_e3; // ditto for edge 3
|
||||
int **aflag_e3; // ditto for edge 3
|
||||
|
||||
// ragged 2d arrays for 3d corner connectivity
|
||||
|
||||
int **neigh_c1; // indices of other tris connected to cpt 1
|
||||
int **cwhich_c1; // which corner point (0/1/2) on other tri is cpt 1
|
||||
int **nside_c1; // consistency of other tri normal
|
||||
// SAME_SIDE or OPPOSITE_SIDE, only meaningful for FLAT
|
||||
int **aflag_c1; // is this tri + other tri a FLAT or CONCAVE surf
|
||||
// surf = on normal side of this tri
|
||||
int **neigh_c2; // indices of other tris connected to cpt 21
|
||||
int **cwhich_c2; // which corner point (0/1/2) on other tri is cpt 2
|
||||
int **nside_c2; // ditto for corner 2
|
||||
int **aflag_c2; // ditto for corner 2
|
||||
int **neigh_c3; // indices of tris connected to cpt 3
|
||||
int **cwhich_c3; // which corner point (0/1/2) on other tri is cpt 3
|
||||
int **nside_c3; // ditto for corner 3
|
||||
int **aflag_c3; // ditto for corner 3
|
||||
|
||||
// per-surface 2d/3d connectivity
|
||||
|
||||
Connect2d *connect2d; // 2d connection info
|
||||
Connect3d *connect3d; // 3d connection info
|
||||
|
||||
class ContactSurf *contact_surfs;
|
||||
int nmax_contact_surfs;
|
||||
|
||||
// data for DumpImage
|
||||
|
||||
int *imflag;
|
||||
double **imdata;
|
||||
int imax;
|
||||
|
||||
// private methods
|
||||
|
||||
void check2d();
|
||||
void check3d();
|
||||
void connectivity2d_complete();
|
||||
void connectivity3d_complete();
|
||||
void check_molecules();
|
||||
void stats2d();
|
||||
void stats3d();
|
||||
|
||||
void surface_attributes();
|
||||
void surface_connectivity_attributes();
|
||||
|
||||
// contact processing and force calculation
|
||||
|
||||
void prewalk_connections2d(int, int, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void prewalk_connections3d(int, int, std::vector<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void walk_connections2d(int, std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void walk_connections3d(int, std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void adjust_external_corner(int, int, int, int);
|
||||
void calculate_2d_forces(std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *);
|
||||
void calculate_3d_forces(std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *);
|
||||
|
||||
// surface movement
|
||||
|
||||
int modify_param_move(Motion *, int, char **);
|
||||
void move_linear(int, int);
|
||||
void move_wiggle(int, int);
|
||||
void move_rotate(int, int);
|
||||
void move_transrotate(int, int);
|
||||
void move_rotate_point(int, double *, double *, double, double);
|
||||
void move_variable(int, int);
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
#endif
|
||||
3778
src/GRANSURF/fix_surface_local.cpp
Normal file
3778
src/GRANSURF/fix_surface_local.cpp
Normal file
File diff suppressed because it is too large
Load Diff
223
src/GRANSURF/fix_surface_local.h
Normal file
223
src/GRANSURF/fix_surface_local.h
Normal file
@ -0,0 +1,223 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
|
||||
FixStyle(surface/local,FixSurfaceLocal)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_FIX_SURFACE_LOCAL_H
|
||||
#define LMP_FIX_SURFACE_LOCAL_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include "fix_surface.h"
|
||||
#include <map>
|
||||
#include "my_pool_chunk.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class FixSurfaceLocal : public FixSurface {
|
||||
public:
|
||||
|
||||
// 2d/3d connectivity
|
||||
|
||||
Connect2d *connect2d; // 2d connection info
|
||||
Connect3d *connect3d; // 3d connection info
|
||||
int nmax_connect; // allocated size of connect2d/3d
|
||||
|
||||
FixSurfaceLocal(class LAMMPS *, int, char **);
|
||||
virtual ~FixSurfaceLocal();
|
||||
int setmask();
|
||||
void post_constructor();
|
||||
|
||||
void setup_pre_neighbor() override;
|
||||
void pre_neighbor() override;
|
||||
|
||||
void grow_arrays(int) override;
|
||||
void grow_connect();
|
||||
void copy_arrays(int, int, int) override;
|
||||
void set_arrays(int) override;
|
||||
void clear_bonus() override;
|
||||
|
||||
int pack_border(int, int *, double *) override;
|
||||
int unpack_border(int, int, double *) override;
|
||||
int pack_exchange(int, double *) override;
|
||||
int unpack_exchange(int, double *) override;
|
||||
int pack_forward_comm(int, int *, double *, int, int *) override;
|
||||
void unpack_forward_comm(int, int, double *) override;
|
||||
|
||||
double memory_usage() override;
|
||||
|
||||
private:
|
||||
int dimension,mode;
|
||||
double flatthresh;
|
||||
double Twall;
|
||||
int tvar;
|
||||
char *tstr;
|
||||
|
||||
int ninput;
|
||||
int *input_modes,*input_stypes;
|
||||
char **input_sources;
|
||||
|
||||
int flag_complete; // whether one-time connectivity info has been calculated
|
||||
|
||||
class AtomVecLine *avec_line;
|
||||
class AtomVecTri *avec_tri;
|
||||
|
||||
// memory allocation for tagint and int vectors in Connect 2d/3d
|
||||
|
||||
MyPoolChunk<int> *ipc; // allocator for most 2d/3d connectivity vecs
|
||||
MyPoolChunk<tagint> *tpc; // allocator for tagint 2d/3d connectivity vecs
|
||||
|
||||
struct Pool2d {
|
||||
int neigh_p1,neigh_p2; // pool indices of neigh_p12 chunks
|
||||
int pwhich_p1,pwhich_p2; // pool indices of pwhich_p12 chunks
|
||||
int nside_p1,nside_p2; // pool indices of nside_p12 chunks
|
||||
int aflag_p1,aflag_p2; // pool indices of aflag_p12 chunks
|
||||
};
|
||||
|
||||
struct Pool3d {
|
||||
int neigh_e1,neigh_e2,neigh_e3; // pool indices of neigh_e123 chunks
|
||||
int ewhich_e1,ewhich_e2,ewhich_e3; // pool indices of neigh_e123 chunks
|
||||
int nside_e1,nside_e2,nside_e3; // pool indices of neigh_e123 chunks
|
||||
int aflag_e1,aflag_e2,aflag_e3; // pool indices of neigh_e123 chunks
|
||||
int neigh_c1,neigh_c2,neigh_c3; // pool indices of neigh_c123 chunks
|
||||
int cwhich_c1,cwhich_c2,cwhich_c3; // pool indices of neigh_c123 chunks
|
||||
int nside_c1,nside_c2,nside_c3; // pool indices of neigh_c123 chunks
|
||||
int aflag_c1,aflag_c2,aflag_c3; // pool indices of neigh_c123 chunks
|
||||
};
|
||||
|
||||
Pool2d *pool2d; // pool indices of connect2d vectors
|
||||
Pool3d *pool3d; // pool indices of connect3d vectors
|
||||
|
||||
int *atom2connect; // per-atom index into connect 2d/3d vecs, -1 if none
|
||||
int *connect2atom; // per-connect index into atoms
|
||||
|
||||
// ragged 2d arrays for 2d connectivity for global case
|
||||
|
||||
tagint **neigh_p1,**neigh_p2;
|
||||
|
||||
// ragged 2d arrays for 3d connectivity for global case
|
||||
|
||||
tagint **neigh_e1,**neigh_e2,**neigh_e3;
|
||||
tagint **neigh_c1,**neigh_c2,**neigh_c3;
|
||||
|
||||
// size of local/ghost connection info vectors
|
||||
|
||||
int nlocal_connect,nghost_connect;
|
||||
|
||||
// data structs for calculating global connectivity of line/tri particles
|
||||
// only used by Rvous comm during setup
|
||||
|
||||
struct InRvous { // datum for each bin of each endpt in each line
|
||||
int proc; // owning proc
|
||||
int ibin; // bin assignment
|
||||
int ilocal; // index of line/tri particle
|
||||
int ipoint; // 0/1 for line endpt, 0/1/2 for tri corner pt
|
||||
tagint atomID; // ID of line/tri particle
|
||||
double x[3]; // coords of endpt or corner pt
|
||||
};
|
||||
|
||||
struct OutRvous { // datum returned to owning proc
|
||||
int ilocal; // index of line/tri particle
|
||||
int ipoint; // 0/1 for line endpt, 0/1/2 for tri corner pt
|
||||
tagint atomID; // ID of other line/tri particle with matching point
|
||||
};
|
||||
|
||||
double bboxlo[3],bboxhi[3]; // bounding box around all lines/tris
|
||||
|
||||
// data structs for extracting surfs from molecule template or STL file
|
||||
// these are global data structs for all surfs, including connectivity
|
||||
// only used during setup, then deleted
|
||||
|
||||
Point *points; // global list of points
|
||||
Line *lines; // global list of lines
|
||||
Tri *tris; // global list of tris
|
||||
int npoints,nlines,ntris; // count of each
|
||||
int maxpoints;
|
||||
|
||||
Connect2d *connect2dall; // global connectivity info
|
||||
Connect3d *connect3dall;
|
||||
|
||||
int **plines; // ragged 2d array for global line end pt lists
|
||||
int **etris; // ragged 2d array for global tri edge lists
|
||||
int **ctris; // ragged 2d array for global tri corner pt lists
|
||||
|
||||
struct OnePt { // one end/corner point of iline/itri in a bin
|
||||
int iatom; // local index of the line/tri in atom list
|
||||
int iconnect; // local index of the line/tri in connect list
|
||||
int ptwhich; // 1/2 for two end pts of line
|
||||
// 1/2/3 for three corner pts of tri
|
||||
};
|
||||
|
||||
OnePt *pts; // list of pts in all bins
|
||||
int *bincount; // # of pts per bin
|
||||
int *binfirst; // index into pts of first pt in bin
|
||||
int nbins,nbinx,nbiny,nbinz; // # of total bins and in each dim
|
||||
double invbinx,invbiny,invbinz; // inverse of bin size
|
||||
double binlo[3],binhi[3]; // bounds of region that is binned
|
||||
|
||||
double eps,epssq; // distance tolerance for matching 2 points
|
||||
// for different lines/tris to be connected
|
||||
|
||||
int nmatch; // # of line connections
|
||||
int nmatch1,nmatch2; // # of tri connections
|
||||
int errormatch; // # of errors with line connectivity
|
||||
int errormatch1,errormatch2; // # of errors with tri connectivity
|
||||
|
||||
int vecflag; // 0/1 whether tri matching should also
|
||||
// store variable-length vecs of corner connections
|
||||
|
||||
// static variable for Rvous communication callback to access class data
|
||||
// callback functions for Rvous communication
|
||||
|
||||
static FixSurfaceLocal *fptr;
|
||||
static void linematch(int, char *);
|
||||
static void trimatch(int, char *);
|
||||
static int point_match(int, char *, int &, int *&, char *&, void *);
|
||||
|
||||
// private methods
|
||||
|
||||
// local connectivity build from line or triangle particles
|
||||
|
||||
void connectivity2d_local();
|
||||
void connectivity3d_local();
|
||||
void calculate_endpts(double **);
|
||||
int overlap_bins_2d(double *, double, int *);
|
||||
void calculate_corners(double **);
|
||||
int overlap_bins_3d(double *, double, int *);
|
||||
|
||||
// global connectivity build from molecule or STL files
|
||||
|
||||
int check_exist();
|
||||
void assign2d();
|
||||
void assign3d();
|
||||
|
||||
// finish the connectivity build for both local and global cases
|
||||
|
||||
void connectivity2d_complete();
|
||||
void connectivity3d_complete();
|
||||
int same_point(double *, double *);
|
||||
void epsilon_calculate();
|
||||
|
||||
void check2d();
|
||||
void check3d();
|
||||
void stats2d();
|
||||
void stats3d();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
284
src/GRANSURF/pair_line_gran_hooke.cpp
Normal file
284
src/GRANSURF/pair_line_gran_hooke.cpp
Normal file
@ -0,0 +1,284 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "pair_line_gran_hooke.h"
|
||||
|
||||
#include "atom.h"
|
||||
#include "comm.h"
|
||||
#include "error.h"
|
||||
#include "force.h"
|
||||
#include "memory.h"
|
||||
#include "neigh_list.h"
|
||||
#include "neighbor.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
PairLineGranHooke::PairLineGranHooke(LAMMPS *lmp) :
|
||||
PairLineGranHookeHistory(lmp)
|
||||
{
|
||||
history = 0;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHooke::compute(int eflag, int vflag)
|
||||
{
|
||||
int i,j,k,ii,jj,inum,jnum,jflag,kflag,otherflag;
|
||||
double xtmp,ytmp,ztmp,delx,dely,delz,fx,fy,fz;
|
||||
double radi,radj,radsum,rsq,r,rinv,rsqinv;
|
||||
double factor_couple;
|
||||
double vr1,vr2,vr3,vnnr,vn1,vn2,vn3,vt1,vt2,vt3;
|
||||
double wr1,wr2,wr3;
|
||||
double vtr1,vtr2,vtr3,vrel;
|
||||
double mi,mj,meff,mline;
|
||||
double damp,ccel,tor1,tor2,tor3;
|
||||
double fn,fs,ft,fs1,fs2,fs3;
|
||||
double dr[3],ds[3],vline[3],contact[3];
|
||||
int *ilist,*jlist,*numneigh,**firstneigh;
|
||||
|
||||
if (eflag || vflag) ev_setup(eflag,vflag);
|
||||
else evflag = vflag_fdotr = 0;
|
||||
|
||||
// if just reneighbored:
|
||||
// update rigid body masses for owned/ghost atoms if using FixRigid
|
||||
// body[i] = which body atom I is in, -1 if none
|
||||
// mass_body = mass of each rigid body
|
||||
// forward comm mass_rigid so have it for ghost lines
|
||||
|
||||
if (neighbor->ago == 0) {
|
||||
if (fix_rigid) {
|
||||
int tmp;
|
||||
int *body = (int *) fix_rigid->extract("body",tmp);
|
||||
double *mass_body = (double *) fix_rigid->extract("masstotal",tmp);
|
||||
if (atom->nmax > nmax) {
|
||||
memory->destroy(mass_rigid);
|
||||
nmax = atom->nmax;
|
||||
memory->create(mass_rigid,nmax,"line/gran:mass_rigid");
|
||||
}
|
||||
int nlocal = atom->nlocal;
|
||||
for (i = 0; i < nlocal; i++) {
|
||||
if (body[i] >= 0) mass_rigid[i] = mass_body[body[i]];
|
||||
else mass_rigid[i] = 0.0;
|
||||
}
|
||||
comm->forward_comm(this);
|
||||
}
|
||||
|
||||
connect2d = fsl->connect2d;
|
||||
}
|
||||
|
||||
// pre-calculate current end pts of owned+ghost lines
|
||||
// only once per reneighbor if surfs not moving
|
||||
|
||||
if (surfmoveflag || neighbor->ago == 0) calculate_endpts();
|
||||
|
||||
// loop over neighbors of my atoms
|
||||
// I is always sphere, J is always line
|
||||
|
||||
double **x = atom->x;
|
||||
double **v = atom->v;
|
||||
double **f = atom->f;
|
||||
double **omega = atom->omega;
|
||||
double **torque = atom->torque;
|
||||
double *radius = atom->radius;
|
||||
double *rmass = atom->rmass;
|
||||
tagint *tag = atom->tag;
|
||||
int *line = atom->line;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
int newton_pair = force->newton_pair;
|
||||
|
||||
inum = list->inum;
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
firstneigh = list->firstneigh;
|
||||
|
||||
for (ii = 0; ii < inum; ii++) {
|
||||
i = ilist[ii];
|
||||
xtmp = x[i][0];
|
||||
ytmp = x[i][1];
|
||||
ztmp = x[i][2];
|
||||
radi = radius[i];
|
||||
jlist = firstneigh[i];
|
||||
jnum = numneigh[i];
|
||||
|
||||
for (jj = 0; jj < jnum; jj++) {
|
||||
j = jlist[jj];
|
||||
j &= NEIGHMASK;
|
||||
|
||||
delx = xtmp - x[j][0];
|
||||
dely = ytmp - x[j][1];
|
||||
delz = ztmp - x[j][2];
|
||||
rsq = delx*delx + dely*dely + delz*delz;
|
||||
radj = radius[j];
|
||||
radsum = radi + radj;
|
||||
|
||||
if (rsq < radsum*radsum) {
|
||||
|
||||
// sanity check that neighbor list is built correctly
|
||||
|
||||
if (line[i] >= 0 || line[j] < 0)
|
||||
error->one(FLERR,"Pair line/gran iteraction is invalid");
|
||||
|
||||
// check for overlap of sphere and line segment
|
||||
// jflag = 0 for no overlap, 1 for interior line pt, -1/-2 for end pts
|
||||
// if no overlap, just continue
|
||||
// for overlap, also return:
|
||||
// contact = nearest point on line to sphere center
|
||||
// dr = vector from contact pt to sphere center
|
||||
// rsq = squared length of dr
|
||||
|
||||
jflag = overlap_sphere_line(i,j,contact,dr,rsq);
|
||||
|
||||
if (!jflag) continue;
|
||||
|
||||
// if contact = line end pt:
|
||||
// check overlap status of line adjacent to the end pt
|
||||
// otherflag = 0/1 for this/other line performs calculation
|
||||
|
||||
if (jflag < 0) {
|
||||
otherflag = endpt_neigh_check(i,j,jflag);
|
||||
if (otherflag) continue;
|
||||
}
|
||||
|
||||
//printf("CONTACT %ld: %d %d: %d %d\n",update->ntimestep,i,j,
|
||||
// tag[i],tag[j]);
|
||||
|
||||
// NOTE: add logic to check for coupled contacts and weight them
|
||||
|
||||
factor_couple = 1.0;
|
||||
|
||||
// ds = vector from line center to contact pt
|
||||
|
||||
r = sqrt(rsq);
|
||||
rinv = 1.0/r;
|
||||
rsqinv = 1.0/rsq;
|
||||
|
||||
ds[0] = contact[0] - x[j][0];
|
||||
ds[1] = contact[1] - x[j][1];
|
||||
ds[2] = contact[2] - x[j][2];
|
||||
|
||||
// vline = velocity of contact pt on line, translation + rotation
|
||||
|
||||
vline[0] = v[j][0] + (omega[j][1]*ds[2] - omega[j][2]*ds[1]);
|
||||
vline[1] = v[j][1] + (omega[j][2]*ds[0] - omega[j][0]*ds[2]);
|
||||
vline[2] = v[j][2] + (omega[j][0]*ds[1] - omega[j][1]*ds[0]);
|
||||
|
||||
// relative translational velocity
|
||||
|
||||
vr1 = v[i][0] - vline[0];
|
||||
vr2 = v[i][1] - vline[1];
|
||||
vr3 = v[i][2] - vline[2];
|
||||
|
||||
// normal component
|
||||
|
||||
vnnr = vr1*dr[0] + vr2*dr[1] + vr3*dr[2];
|
||||
vn1 = dr[0]*vnnr * rsqinv;
|
||||
vn2 = dr[1]*vnnr * rsqinv;
|
||||
vn3 = dr[2]*vnnr * rsqinv;
|
||||
|
||||
// tangential component
|
||||
|
||||
vt1 = vr1 - vn1;
|
||||
vt2 = vr2 - vn2;
|
||||
vt3 = vr3 - vn3;
|
||||
|
||||
// relative rotational velocity
|
||||
|
||||
wr1 = (radi*omega[i][0]) * rinv;
|
||||
wr2 = (radi*omega[i][1]) * rinv;
|
||||
wr3 = (radi*omega[i][2]) * rinv;
|
||||
|
||||
// meff = effective mass of sphere and line
|
||||
// if I or J is part of rigid body, use body mass
|
||||
// if line is not part of rigid body assume infinite mass
|
||||
|
||||
meff = rmass[i];
|
||||
if (fix_rigid) {
|
||||
if (mass_rigid[i] > 0.0) meff = mass_rigid[i];
|
||||
if (mass_rigid[j] > 0.0) {
|
||||
mline = mass_rigid[j];
|
||||
meff = meff*mline / (meff+mline);
|
||||
}
|
||||
}
|
||||
|
||||
// normal forces = Hookian contact + normal velocity damping
|
||||
|
||||
damp = meff*gamman*vnnr*rsqinv;
|
||||
ccel = kn*(radi-r)*rinv - damp;
|
||||
ccel *= factor_couple;
|
||||
|
||||
// relative velocities
|
||||
|
||||
vtr1 = vt1 - (dr[2]*wr2-dr[1]*wr3);
|
||||
vtr2 = vt2 - (dr[0]*wr3-dr[2]*wr1);
|
||||
vtr3 = vt3 - (dr[1]*wr1-dr[0]*wr2);
|
||||
vrel = vtr1*vtr1 + vtr2*vtr2 + vtr3*vtr3;
|
||||
vrel = sqrt(vrel);
|
||||
|
||||
// force normalization
|
||||
|
||||
fn = xmu * fabs(ccel*r);
|
||||
fs = meff*gammat*vrel;
|
||||
if (vrel != 0.0) ft = MIN(fn,fs) / vrel;
|
||||
else ft = 0.0;
|
||||
|
||||
// tangential force due to tangential velocity damping
|
||||
|
||||
fs1 = -ft*vtr1 * factor_couple;
|
||||
fs2 = -ft*vtr2 * factor_couple;
|
||||
fs3 = -ft*vtr3 * factor_couple;
|
||||
|
||||
// total force on sphere
|
||||
|
||||
fx = dr[0]*ccel + fs1;
|
||||
fy = dr[1]*ccel + fs2;
|
||||
fz = dr[2]*ccel + fs3;
|
||||
|
||||
// sphere force & torque
|
||||
|
||||
f[i][0] += fx;
|
||||
f[i][1] += fy;
|
||||
f[i][2] += fz;
|
||||
|
||||
tor1 = rinv * (dr[1]*fs3 - dr[2]*fs2);
|
||||
tor2 = rinv * (dr[2]*fs1 - dr[0]*fs3);
|
||||
tor3 = rinv * (dr[0]*fs2 - dr[1]*fs1);
|
||||
torque[i][0] -= radi*tor1;
|
||||
torque[i][1] -= radi*tor2;
|
||||
torque[i][2] -= radi*tor3;
|
||||
|
||||
// line force & torque
|
||||
// torque applied at contact pt
|
||||
// use total force for torque
|
||||
// since opposite force is not norm/tang to line at its end pt
|
||||
|
||||
f[j][0] -= fx;
|
||||
f[j][1] -= fy;
|
||||
f[j][2] -= fz;
|
||||
|
||||
torque[j][0] -= ds[1]*fz - ds[2]*fy;
|
||||
torque[j][1] -= ds[2]*fx - ds[0]*fz;
|
||||
torque[j][2] -= ds[0]*fy - ds[1]*fx;
|
||||
|
||||
if (evflag) ev_tally_xyz(i,j,nlocal,newton_pair,
|
||||
0.0,0.0,fx,fy,fz,dr[0],dr[1],dr[2]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// NOTE: should there be virial contributions from boundary tris?
|
||||
|
||||
if (vflag_fdotr) virial_fdotr_compute();
|
||||
}
|
||||
37
src/GRANSURF/pair_line_gran_hooke.h
Normal file
37
src/GRANSURF/pair_line_gran_hooke.h
Normal file
@ -0,0 +1,37 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(line/gran/hooke,PairLineGranHooke)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_LINE_GRAN_HOOKE_H
|
||||
#define LMP_PAIR_LINE_GRAN_HOOKE_H
|
||||
|
||||
#include "pair_line_gran_hooke_history.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairLineGranHooke : public PairLineGranHookeHistory {
|
||||
public:
|
||||
PairLineGranHooke(class LAMMPS *);
|
||||
~PairLineGranHooke() {}
|
||||
void compute(int, int);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
961
src/GRANSURF/pair_line_gran_hooke_history.cpp
Normal file
961
src/GRANSURF/pair_line_gran_hooke_history.cpp
Normal file
@ -0,0 +1,961 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "pair_line_gran_hooke_history.h"
|
||||
|
||||
#include "atom.h"
|
||||
#include "atom_vec_line.h"
|
||||
#include "comm.h"
|
||||
#include "error.h"
|
||||
#include "fix.h"
|
||||
#include "fix_dummy.h"
|
||||
#include "fix_neigh_history.h"
|
||||
#include "fix_surface_local.h"
|
||||
#include "force.h"
|
||||
#include "math_extra.h"
|
||||
#include "memory.h"
|
||||
#include "modify.h"
|
||||
#include "neigh_list.h"
|
||||
#include "neighbor.h"
|
||||
#include "update.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
PairLineGranHookeHistory::PairLineGranHookeHistory(LAMMPS *lmp) : Pair(lmp)
|
||||
{
|
||||
single_enable = 0;
|
||||
history = 1;
|
||||
size_history = 3;
|
||||
|
||||
nmax = 0;
|
||||
mass_rigid = nullptr;
|
||||
|
||||
emax = 0;
|
||||
endpts = nullptr;
|
||||
|
||||
// set comm size needed by this Pair if used with fix rigid
|
||||
|
||||
comm_forward = 1;
|
||||
|
||||
// create dummy fix as placeholder for FixNeighHistory
|
||||
// this is so final order of Modify:fix will conform to input script
|
||||
|
||||
fix_history = nullptr;
|
||||
fix_dummy = dynamic_cast<FixDummy *>(
|
||||
modify->add_fix("NEIGH_HISTORY_HHLINE_DUMMY" + std::to_string(instance_me) + " all DUMMY"));
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
PairLineGranHookeHistory::~PairLineGranHookeHistory()
|
||||
{
|
||||
delete [] svector;
|
||||
|
||||
if (!fix_history)
|
||||
modify->delete_fix("NEIGH_HISTORY_HHLINE_DUMMY" + std::to_string(instance_me));
|
||||
else
|
||||
modify->delete_fix("NEIGH_HISTORY_HHLINE" + std::to_string(instance_me));
|
||||
|
||||
if (allocated) {
|
||||
memory->destroy(setflag);
|
||||
memory->destroy(cutsq);
|
||||
|
||||
delete [] onerad_dynamic;
|
||||
delete [] onerad_frozen;
|
||||
delete [] maxrad_dynamic;
|
||||
delete [] maxrad_frozen;
|
||||
}
|
||||
|
||||
memory->destroy(mass_rigid);
|
||||
memory->destroy(endpts);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::compute(int eflag, int vflag)
|
||||
{
|
||||
int i,j,k,ii,jj,inum,jnum,jflag,kflag,otherflag;
|
||||
double xtmp,ytmp,ztmp,delx,dely,delz,fx,fy,fz;
|
||||
double radi,radj,radsum,rsq,r,rinv,rsqinv;
|
||||
double factor_couple;
|
||||
double vr1,vr2,vr3,vnnr,vn1,vn2,vn3,vt1,vt2,vt3;
|
||||
double wr1,wr2,wr3;
|
||||
double vtr1,vtr2,vtr3,vrel;
|
||||
double mi,mj,meff,mline;
|
||||
double damp,ccel,tor1,tor2,tor3;
|
||||
double fn,fs,ft,fs1,fs2,fs3;
|
||||
double shrmag,rsht;
|
||||
double dr[3],ds[3],vline[3],contact[3];
|
||||
int *ilist,*jlist,*numneigh,**firstneigh;
|
||||
int *touch,**firsttouch;
|
||||
double *shear,*allshear,**firstshear;
|
||||
|
||||
if (eflag || vflag) ev_setup(eflag,vflag);
|
||||
else evflag = vflag_fdotr = 0;
|
||||
|
||||
int shearupdate = 1;
|
||||
if (update->setupflag) shearupdate = 0;
|
||||
|
||||
// if just reneighbored:
|
||||
// update rigid body info for owned & ghost atoms if using FixRigid masses
|
||||
// body[i] = which body atom I is in, -1 if none
|
||||
// mass_body = mass of each rigid body
|
||||
// forward comm mass_rigid so have it for ghost lines
|
||||
// also grab current line connectivity info from FixSurfaceLocal
|
||||
|
||||
if (neighbor->ago == 0) {
|
||||
if (fix_rigid) {
|
||||
int tmp;
|
||||
int *body = (int *) fix_rigid->extract("body",tmp);
|
||||
double *mass_body = (double *) fix_rigid->extract("masstotal",tmp);
|
||||
if (atom->nmax > nmax) {
|
||||
memory->destroy(mass_rigid);
|
||||
nmax = atom->nmax;
|
||||
memory->create(mass_rigid,nmax,"line/gran:mass_rigid");
|
||||
}
|
||||
int nlocal = atom->nlocal;
|
||||
for (i = 0; i < nlocal; i++)
|
||||
if (body[i] >= 0)
|
||||
mass_rigid[i] = mass_body[body[i]];
|
||||
else
|
||||
mass_rigid[i] = 0.0;
|
||||
comm->forward_comm(this);
|
||||
}
|
||||
|
||||
connect2d = fsl->connect2d;
|
||||
}
|
||||
|
||||
// pre-calculate current end pts of owned+ghost lines
|
||||
// only once per reneighbor if surfs not moving
|
||||
|
||||
if (surfmoveflag || neighbor->ago == 0) calculate_endpts();
|
||||
|
||||
// loop over neighbors of my atoms
|
||||
// I is always sphere, J is always line
|
||||
|
||||
double **x = atom->x;
|
||||
double **v = atom->v;
|
||||
double **f = atom->f;
|
||||
double **omega = atom->omega;
|
||||
double **torque = atom->torque;
|
||||
double *radius = atom->radius;
|
||||
double *rmass = atom->rmass;
|
||||
tagint *tag = atom->tag;
|
||||
int *line = atom->line;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
int newton_pair = force->newton_pair;
|
||||
|
||||
inum = list->inum;
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
firstneigh = list->firstneigh;
|
||||
firsttouch = fix_history->firstflag;
|
||||
firstshear = fix_history->firstvalue;
|
||||
|
||||
for (ii = 0; ii < inum; ii++) {
|
||||
i = ilist[ii];
|
||||
xtmp = x[i][0];
|
||||
ytmp = x[i][1];
|
||||
ztmp = x[i][2];
|
||||
radi = radius[i];
|
||||
touch = firsttouch[i];
|
||||
allshear = firstshear[i];
|
||||
jlist = firstneigh[i];
|
||||
jnum = numneigh[i];
|
||||
|
||||
for (jj = 0; jj < jnum; jj++) {
|
||||
j = jlist[jj];
|
||||
j &= NEIGHMASK;
|
||||
delx = xtmp - x[j][0];
|
||||
dely = ytmp - x[j][1];
|
||||
delz = ztmp - x[j][2];
|
||||
rsq = delx*delx + dely*dely + delz*delz;
|
||||
radj = radius[j];
|
||||
radsum = radi + radj;
|
||||
|
||||
/*
|
||||
if (touch[jj]) {
|
||||
shear = &allshear[3*jj];
|
||||
printf("PRE step %ld ij %d %d shear %g %g %g\n",
|
||||
update->ntimestep,atom->tag[i],tag[j],
|
||||
shear[0],shear[1],shear[2]);
|
||||
}
|
||||
*/
|
||||
|
||||
if (rsq >= radsum*radsum) {
|
||||
|
||||
// unset non-touching neighbors
|
||||
// do same below if sphere/line are not overlapping
|
||||
|
||||
touch[jj] = 0;
|
||||
shear = &allshear[3*jj];
|
||||
shear[0] = 0.0;
|
||||
shear[1] = 0.0;
|
||||
shear[2] = 0.0;
|
||||
|
||||
} else {
|
||||
|
||||
// sanity check that neighbor list is built correctly
|
||||
|
||||
if (line[i] >= 0 || line[j] < 0)
|
||||
error->one(FLERR,"Pair line/gran iteraction is invalid");
|
||||
|
||||
// check for overlap of sphere and line segment
|
||||
// jflag = 0 for no overlap, 1 for interior line pt, -1/-2 for end pts
|
||||
// if no overlap, just continue
|
||||
// for overlap, also return:
|
||||
// contact = nearest point on line to sphere center
|
||||
// dr = vector from contact pt to sphere center
|
||||
// rsq = squared length of dr
|
||||
|
||||
jflag = overlap_sphere_line(i,j,contact,dr,rsq);
|
||||
|
||||
if (!jflag) {
|
||||
touch[jj] = 0;
|
||||
shear = &allshear[3*jj];
|
||||
shear[0] = 0.0;
|
||||
shear[1] = 0.0;
|
||||
shear[2] = 0.0;
|
||||
continue;
|
||||
}
|
||||
|
||||
// if contact = line end pt:
|
||||
// check overlap status of line adjacent to the end pt
|
||||
// otherflag = 0/1 for this/other line performs calculation
|
||||
|
||||
if (jflag < 0) {
|
||||
otherflag = endpt_neigh_check(i,j,jflag);
|
||||
if (otherflag) continue;
|
||||
}
|
||||
|
||||
// NOTE: add logic to persist shear history if contact has changed
|
||||
|
||||
// NOTE: add logic to check for coupled contacts and weight them
|
||||
|
||||
factor_couple = 1.0;
|
||||
|
||||
// ds = vector from line center to contact pt
|
||||
|
||||
r = sqrt(rsq);
|
||||
rinv = 1.0/r;
|
||||
rsqinv = 1.0/rsq;
|
||||
|
||||
ds[0] = contact[0] - x[j][0];
|
||||
ds[1] = contact[1] - x[j][1];
|
||||
ds[2] = contact[2] - x[j][2];
|
||||
|
||||
// vline = velocity of contact pt on line, translation + rotation
|
||||
|
||||
vline[0] = v[j][0] + (omega[j][1]*ds[2] - omega[j][2]*ds[1]);
|
||||
vline[1] = v[j][1] + (omega[j][2]*ds[0] - omega[j][0]*ds[2]);
|
||||
vline[2] = v[j][2] + (omega[j][0]*ds[1] - omega[j][1]*ds[0]);
|
||||
|
||||
// relative translational velocity
|
||||
|
||||
vr1 = v[i][0] - vline[0];
|
||||
vr2 = v[i][1] - vline[1];
|
||||
vr3 = v[i][2] - vline[2];
|
||||
|
||||
// normal component
|
||||
|
||||
vnnr = vr1*dr[0] + vr2*dr[1] + vr3*dr[2];
|
||||
vn1 = dr[0]*vnnr * rsqinv;
|
||||
vn2 = dr[1]*vnnr * rsqinv;
|
||||
vn3 = dr[2]*vnnr * rsqinv;
|
||||
|
||||
// tangential component
|
||||
|
||||
vt1 = vr1 - vn1;
|
||||
vt2 = vr2 - vn2;
|
||||
vt3 = vr3 - vn3;
|
||||
|
||||
// relative rotational velocity
|
||||
|
||||
wr1 = (radi*omega[i][0]) * rinv;
|
||||
wr2 = (radi*omega[i][1]) * rinv;
|
||||
wr3 = (radi*omega[i][2]) * rinv;
|
||||
|
||||
// meff = effective mass of sphere and line
|
||||
// if I or J is part of rigid body, use body mass
|
||||
// if line is not part of rigid body assume infinite mass
|
||||
|
||||
meff = rmass[i];
|
||||
if (fix_rigid) {
|
||||
if (mass_rigid[i] > 0.0) meff = mass_rigid[i];
|
||||
if (mass_rigid[j] > 0.0) {
|
||||
mline = mass_rigid[j];
|
||||
meff = meff*mline / (meff+mline);
|
||||
}
|
||||
}
|
||||
|
||||
// normal forces = Hookian contact + normal velocity damping
|
||||
|
||||
damp = meff*gamman*vnnr*rsqinv;
|
||||
ccel = kn*(radi-r)*rinv - damp;
|
||||
ccel *= factor_couple;
|
||||
|
||||
// relative velocities
|
||||
|
||||
vtr1 = vt1 - (dr[2]*wr2-dr[1]*wr3);
|
||||
vtr2 = vt2 - (dr[0]*wr3-dr[2]*wr1);
|
||||
vtr3 = vt3 - (dr[1]*wr1-dr[0]*wr2);
|
||||
vrel = vtr1*vtr1 + vtr2*vtr2 + vtr3*vtr3;
|
||||
vrel = sqrt(vrel);
|
||||
|
||||
// shear history effects
|
||||
|
||||
touch[jj] = 1;
|
||||
shear = &allshear[3*jj];
|
||||
|
||||
if (shearupdate) {
|
||||
shear[0] += vtr1*dt;
|
||||
shear[1] += vtr2*dt;
|
||||
shear[2] += vtr3*dt;
|
||||
}
|
||||
shrmag = sqrt(shear[0]*shear[0] + shear[1]*shear[1] +
|
||||
shear[2]*shear[2]);
|
||||
|
||||
// rotate shear displacements
|
||||
|
||||
rsht = shear[0]*delx + shear[1]*dely + shear[2]*delz;
|
||||
rsht *= rsqinv;
|
||||
if (shearupdate) {
|
||||
shear[0] -= rsht*delx;
|
||||
shear[1] -= rsht*dely;
|
||||
shear[2] -= rsht*delz;
|
||||
}
|
||||
|
||||
// tangential force due to tangential velocity damping
|
||||
|
||||
fs1 = - (kt*shear[0] + meff*gammat*vtr1) * factor_couple;;
|
||||
fs2 = - (kt*shear[1] + meff*gammat*vtr2) * factor_couple;;
|
||||
fs3 = - (kt*shear[2] + meff*gammat*vtr3) * factor_couple;;
|
||||
|
||||
// rescale frictional displacements and forces if needed
|
||||
|
||||
fs = sqrt(fs1*fs1 + fs2*fs2 + fs3*fs3);
|
||||
fn = xmu * fabs(ccel*r);
|
||||
|
||||
if (fs > fn) {
|
||||
if (shrmag != 0.0) {
|
||||
shear[0] = (fn/fs) * (shear[0] + meff*gammat*vtr1/kt) -
|
||||
meff*gammat*vtr1/kt;
|
||||
shear[1] = (fn/fs) * (shear[1] + meff*gammat*vtr2/kt) -
|
||||
meff*gammat*vtr2/kt;
|
||||
shear[2] = (fn/fs) * (shear[2] + meff*gammat*vtr3/kt) -
|
||||
meff*gammat*vtr3/kt;
|
||||
fs1 *= fn/fs;
|
||||
fs2 *= fn/fs;
|
||||
fs3 *= fn/fs;
|
||||
} else fs1 = fs2 = fs3 = 0.0;
|
||||
}
|
||||
|
||||
// total force on sphere
|
||||
|
||||
fx = dr[0]*ccel + fs1;
|
||||
fy = dr[1]*ccel + fs2;
|
||||
fz = dr[2]*ccel + fs3;
|
||||
|
||||
// sphere force & torque
|
||||
|
||||
f[i][0] += fx;
|
||||
f[i][1] += fy;
|
||||
f[i][2] += fz;
|
||||
|
||||
tor1 = rinv * (dr[1]*fs3 - dr[2]*fs2);
|
||||
tor2 = rinv * (dr[2]*fs1 - dr[0]*fs3);
|
||||
tor3 = rinv * (dr[0]*fs2 - dr[1]*fs1);
|
||||
torque[i][0] -= radi*tor1;
|
||||
torque[i][1] -= radi*tor2;
|
||||
torque[i][2] -= radi*tor3;
|
||||
|
||||
// line force & torque
|
||||
// torque applied at contact pt
|
||||
// use total force for torque
|
||||
// since opposite force is not norm/tang to line at its end pt
|
||||
|
||||
f[j][0] -= fx;
|
||||
f[j][1] -= fy;
|
||||
f[j][2] -= fz;
|
||||
|
||||
torque[j][0] -= ds[1]*fz - ds[2]*fy;
|
||||
torque[j][1] -= ds[2]*fx - ds[0]*fz;
|
||||
torque[j][2] -= ds[0]*fy - ds[1]*fx;
|
||||
|
||||
if (evflag) ev_tally_xyz(i,j,nlocal,newton_pair,
|
||||
0.0,0.0,fx,fy,fz,dr[0],dr[1],dr[2]);
|
||||
}
|
||||
|
||||
/*
|
||||
if (touch[jj]) {
|
||||
shear = &allshear[3*jj];
|
||||
printf("POST step %ld ij %d %d shear %g %g %g\n",
|
||||
update->ntimestep,atom->tag[i],tag[j],
|
||||
shear[0],shear[1],shear[2]);
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// NOTE: should there be virial contributions from boundary tris?
|
||||
|
||||
if (vflag_fdotr) virial_fdotr_compute();
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
allocate all arrays
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::allocate()
|
||||
{
|
||||
allocated = 1;
|
||||
int n = atom->ntypes;
|
||||
|
||||
memory->create(setflag,n+1,n+1,"pair:setflag");
|
||||
for (int i = 1; i <= n; i++)
|
||||
for (int j = i; j <= n; j++)
|
||||
setflag[i][j] = 0;
|
||||
|
||||
memory->create(cutsq,n+1,n+1,"pair:cutsq");
|
||||
|
||||
onerad_dynamic = new double[n+1];
|
||||
onerad_frozen = new double[n+1];
|
||||
maxrad_dynamic = new double[n+1];
|
||||
maxrad_frozen = new double[n+1];
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
global settings
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::settings(int narg, char **arg)
|
||||
{
|
||||
if (narg != 6 && narg != 7) error->all(FLERR,"Illegal pair_style command");
|
||||
|
||||
kn = utils::numeric(FLERR,arg[0],false,lmp);
|
||||
if (strcmp(arg[1],"NULL") == 0)
|
||||
kt = kn * 2.0/7.0;
|
||||
else
|
||||
kt = utils::numeric(FLERR,arg[1],false,lmp);
|
||||
|
||||
gamman = utils::numeric(FLERR,arg[2],false,lmp);
|
||||
if (strcmp(arg[3],"NULL") == 0)
|
||||
gammat = 0.5 * gamman;
|
||||
else
|
||||
gammat = utils::numeric(FLERR,arg[3],false,lmp);
|
||||
|
||||
xmu = utils::numeric(FLERR,arg[4],false,lmp);
|
||||
dampflag = utils::inumeric(FLERR,arg[5],false,lmp);
|
||||
if (dampflag == 0) gammat = 0.0;
|
||||
|
||||
limit_damping = 0;
|
||||
if (narg == 7) {
|
||||
if (strcmp(arg[6], "limit_damping") == 0)
|
||||
limit_damping = 1;
|
||||
else
|
||||
error->all(FLERR, "Illegal pair_style command");
|
||||
}
|
||||
|
||||
if (kn < 0.0 || kt < 0.0 || gamman < 0.0 || gammat < 0.0 ||
|
||||
xmu < 0.0 || xmu > 10000.0 || dampflag < 0 || dampflag > 1)
|
||||
error->all(FLERR,"Illegal pair_style command");
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
set coeffs for one or more type pairs
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::coeff(int narg, char **arg)
|
||||
{
|
||||
if (narg > 2) error->all(FLERR,"Incorrect args for pair coefficients");
|
||||
if (!allocated) allocate();
|
||||
|
||||
int ilo,ihi,jlo,jhi;
|
||||
utils::bounds(FLERR,arg[0],1,atom->ntypes,ilo,ihi,error);
|
||||
utils::bounds(FLERR,arg[1],1,atom->ntypes,jlo,jhi,error);
|
||||
|
||||
int count = 0;
|
||||
for (int i = ilo; i <= ihi; i++) {
|
||||
for (int j = MAX(jlo,i); j <= jhi; j++) {
|
||||
setflag[i][j] = 1;
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
if (count == 0) error->all(FLERR,"Incorrect args for pair coefficients");
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
init specific to this pair style
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::init_style()
|
||||
{
|
||||
int i;
|
||||
|
||||
dt = update->dt;
|
||||
|
||||
// error and warning checks
|
||||
|
||||
avec = (AtomVecLine *) atom->style_match("line");
|
||||
if (!avec) error->all(FLERR,"Pair line/gran requires atom style line");
|
||||
if (!atom->radius_flag || !atom->rmass_flag)
|
||||
error->all(FLERR, "Pair line/gran requires atom attributes radius, rmass");
|
||||
if (!force->newton_pair)
|
||||
error->all(FLERR,"Pair style line/gran requires newton pair on");
|
||||
if (comm->ghost_velocity == 0)
|
||||
error->all(FLERR,"Pair line/gran requires ghost atoms store velocity");
|
||||
|
||||
// need a granular neighbor list
|
||||
|
||||
if (history)
|
||||
neighbor->add_request(this,NeighConst::REQ_SIZE | NeighConst::REQ_ONESIDED |
|
||||
NeighConst::REQ_HISTORY);
|
||||
else
|
||||
neighbor->add_request(this, NeighConst::REQ_SIZE | NeighConst::REQ_ONESIDED);
|
||||
|
||||
// if history is stored and first init, create Fix to store history
|
||||
// it replaces FixDummy, created in the constructor
|
||||
// this is so its order in the fix list is preserved
|
||||
|
||||
if (history && (fix_history == nullptr)) {
|
||||
auto cmd = fmt::format("NEIGH_HISTORY_HHLINE{} all NEIGH_HISTORY {} onesided", instance_me, size_history);
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(
|
||||
modify->replace_fix("NEIGH_HISTORY_HHLINE_DUMMY" + std::to_string(instance_me), cmd, 1));
|
||||
fix_history->pair = this;
|
||||
}
|
||||
|
||||
// set ptr to FixSurfaceLocal for surf connectivity info
|
||||
|
||||
fsl = nullptr;
|
||||
for (int m = 0; m < modify->nfix; m++) {
|
||||
if (strcmp(modify->fix[m]->style,"surface/local") == 0) {
|
||||
if (fsl)
|
||||
error->all(FLERR,"Pair line/gran requires single fix surface/local");
|
||||
fsl = (FixSurfaceLocal *) modify->fix[m];
|
||||
}
|
||||
}
|
||||
if (!fsl) error->all(FLERR,"Pair line/gran requires a fix surface/local");
|
||||
|
||||
// surfmoveflag = 1 if surfs may move at every step
|
||||
// yes if fix move exists and its group includes lines
|
||||
// NOTE: are there other conditions, like fix deform or fix npt?
|
||||
|
||||
surfmoveflag = 0;
|
||||
for (int m = 0; m < modify->nfix; m++) {
|
||||
if (strcmp(modify->fix[m]->style,"move") == 0) {
|
||||
int groupbit = modify->fix[m]->groupbit;
|
||||
int *line = atom->line;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
int flag = 0;
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
if (line[i] < 0) continue;
|
||||
if (mask[i] & groupbit) flag = 1;
|
||||
}
|
||||
int any;
|
||||
MPI_Allreduce(&flag,&any,1,MPI_INT,MPI_SUM,world);
|
||||
if (any) surfmoveflag = 1;
|
||||
}
|
||||
}
|
||||
|
||||
// check for FixFreeze and set freeze_group_bit
|
||||
|
||||
auto fixlist = modify->get_fix_by_style("^freeze");
|
||||
if (fixlist.size() == 0)
|
||||
freeze_group_bit = 0;
|
||||
else if (fixlist.size() > 1)
|
||||
error->all(FLERR, "Only one fix freeze command at a time allowed");
|
||||
else
|
||||
freeze_group_bit = fixlist.front()->groupbit;
|
||||
|
||||
// check for FixRigid so can extract rigid body masses
|
||||
|
||||
fix_rigid = nullptr;
|
||||
for (const auto &ifix : modify->get_fix_list()) {
|
||||
if (ifix->rigid_flag) {
|
||||
if (fix_rigid)
|
||||
error->all(FLERR, "Only one fix rigid command at a time allowed");
|
||||
else
|
||||
fix_rigid = ifix;
|
||||
}
|
||||
}
|
||||
|
||||
// check for FixPour and FixDeposit so can extract particle radii
|
||||
|
||||
auto pours = modify->get_fix_by_style("^pour");
|
||||
auto deps = modify->get_fix_by_style("^deposit");
|
||||
|
||||
// set maxrad_dynamic and maxrad_frozen for each type
|
||||
// include future FixPour and FixDeposit particles as dynamic
|
||||
// lines cannot be frozen
|
||||
|
||||
int itype;
|
||||
for (i = 1; i <= atom->ntypes; i++) {
|
||||
onerad_dynamic[i] = onerad_frozen[i] = 0.0;
|
||||
for (auto &ipour : pours) {
|
||||
itype = i;
|
||||
double maxrad = *((double *) ipour->extract("radius", itype));
|
||||
if (maxrad > 0.0) onerad_dynamic[i] = maxrad;
|
||||
}
|
||||
for (auto &idep : deps) {
|
||||
itype = i;
|
||||
double maxrad = *((double *) idep->extract("radius", itype));
|
||||
if (maxrad > 0.0) onerad_dynamic[i] = maxrad;
|
||||
}
|
||||
}
|
||||
|
||||
double *radius = atom->radius;
|
||||
int *line = atom->line;
|
||||
int *mask = atom->mask;
|
||||
int *type = atom->type;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
for (i = 0; i < nlocal; i++) {
|
||||
if (line[i] >= 0)
|
||||
onerad_dynamic[type[i]] = MAX(onerad_dynamic[type[i]],radius[i]);
|
||||
else {
|
||||
if (mask[i] & freeze_group_bit)
|
||||
onerad_frozen[type[i]] = MAX(onerad_frozen[type[i]],radius[i]);
|
||||
else
|
||||
onerad_dynamic[type[i]] = MAX(onerad_dynamic[type[i]],radius[i]);
|
||||
}
|
||||
}
|
||||
|
||||
MPI_Allreduce(&onerad_dynamic[1],&maxrad_dynamic[1],atom->ntypes,
|
||||
MPI_DOUBLE,MPI_MAX,world);
|
||||
MPI_Allreduce(&onerad_frozen[1],&maxrad_frozen[1],atom->ntypes,
|
||||
MPI_DOUBLE,MPI_MAX,world);
|
||||
|
||||
// set fix which stores history info
|
||||
|
||||
if (history) {
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(
|
||||
modify->get_fix_by_id("NEIGH_HISTORY_HHLINE" + std::to_string(instance_me)));
|
||||
if (!fix_history) error->all(FLERR, "Could not find pair fix neigh history ID");
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
init for one type pair i,j and corresponding j,i
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
double PairLineGranHookeHistory::init_one(int i, int j)
|
||||
{
|
||||
if (!allocated) allocate();
|
||||
|
||||
// cutoff = sum of max I,J radii for
|
||||
// dynamic/dynamic & dynamic/frozen interactions, but not frozen/frozen
|
||||
|
||||
double cutoff = maxrad_dynamic[i]+maxrad_dynamic[j];
|
||||
cutoff = MAX(cutoff,maxrad_frozen[i]+maxrad_dynamic[j]);
|
||||
cutoff = MAX(cutoff,maxrad_dynamic[i]+maxrad_frozen[j]);
|
||||
return cutoff;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
proc 0 writes to restart file
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::write_restart(FILE *fp)
|
||||
{
|
||||
write_restart_settings(fp);
|
||||
|
||||
int i,j;
|
||||
for (i = 1; i <= atom->ntypes; i++)
|
||||
for (j = i; j <= atom->ntypes; j++)
|
||||
fwrite(&setflag[i][j],sizeof(int),1,fp);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
proc 0 reads from restart file, bcasts
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::read_restart(FILE *fp)
|
||||
{
|
||||
read_restart_settings(fp);
|
||||
allocate();
|
||||
|
||||
int i,j;
|
||||
int me = comm->me;
|
||||
for (i = 1; i <= atom->ntypes; i++)
|
||||
for (j = i; j <= atom->ntypes; j++) {
|
||||
if (me == 0)
|
||||
utils::sfread(FLERR,&setflag[i][j],sizeof(int),1,fp,nullptr,error);
|
||||
MPI_Bcast(&setflag[i][j],1,MPI_INT,0,world);
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
proc 0 writes to restart file
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::write_restart_settings(FILE *fp)
|
||||
{
|
||||
fwrite(&kn,sizeof(double),1,fp);
|
||||
fwrite(&kt,sizeof(double),1,fp);
|
||||
fwrite(&gamman,sizeof(double),1,fp);
|
||||
fwrite(&gammat,sizeof(double),1,fp);
|
||||
fwrite(&xmu,sizeof(double),1,fp);
|
||||
fwrite(&dampflag,sizeof(int),1,fp);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
proc 0 reads from restart file, bcasts
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::read_restart_settings(FILE *fp)
|
||||
{
|
||||
if (comm->me == 0) {
|
||||
utils::sfread(FLERR,&kn,sizeof(double),1,fp,nullptr,error);
|
||||
utils::sfread(FLERR,&kt,sizeof(double),1,fp,nullptr,error);
|
||||
utils::sfread(FLERR,&gamman,sizeof(double),1,fp,nullptr,error);
|
||||
utils::sfread(FLERR,&gammat,sizeof(double),1,fp,nullptr,error);
|
||||
utils::sfread(FLERR,&xmu,sizeof(double),1,fp,nullptr,error);
|
||||
utils::sfread(FLERR,&dampflag,sizeof(int),1,fp,nullptr,error);
|
||||
}
|
||||
MPI_Bcast(&kn,1,MPI_DOUBLE,0,world);
|
||||
MPI_Bcast(&kt,1,MPI_DOUBLE,0,world);
|
||||
MPI_Bcast(&gamman,1,MPI_DOUBLE,0,world);
|
||||
MPI_Bcast(&gammat,1,MPI_DOUBLE,0,world);
|
||||
MPI_Bcast(&xmu,1,MPI_DOUBLE,0,world);
|
||||
MPI_Bcast(&dampflag,1,MPI_INT,0,world);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::reset_dt()
|
||||
{
|
||||
dt = update->dt;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
int PairLineGranHookeHistory::pack_forward_comm(int n, int *list, double *buf,
|
||||
int pbc_flag, int *pbc)
|
||||
{
|
||||
int i,j,m;
|
||||
|
||||
m = 0;
|
||||
for (i = 0; i < n; i++) {
|
||||
j = list[i];
|
||||
buf[m++] = mass_rigid[j];
|
||||
}
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::unpack_forward_comm(int n, int first,
|
||||
double *buf)
|
||||
{
|
||||
int i,m,last;
|
||||
|
||||
m = 0;
|
||||
last = first + n;
|
||||
|
||||
for (i = first; i < last; i++)
|
||||
mass_rigid[i] = buf[m++];
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
memory usage of local atom-based arrays
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
double PairLineGranHookeHistory::memory_usage()
|
||||
{
|
||||
double bytes = nmax * sizeof(double);
|
||||
bytes = emax*4 * sizeof(double); // endpts array for line particles
|
||||
return bytes;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// ----------------------------------------------------------------------
|
||||
// private methods specific to PairLineGranHookeHistory
|
||||
// ----------------------------------------------------------------------
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
compute current end points of owned and ghost lines
|
||||
nothing computed for particles that are not lines
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PairLineGranHookeHistory::calculate_endpts()
|
||||
{
|
||||
int i,m;
|
||||
double length,theta,dx,dy;
|
||||
double *endpt;
|
||||
|
||||
// realloc endpts array if necssary
|
||||
|
||||
if (fsl->nmax_connect > emax) {
|
||||
memory->destroy(endpts);
|
||||
emax = fsl->nmax_connect;
|
||||
memory->create(endpts,emax,4,"line/gran:endpts");
|
||||
}
|
||||
|
||||
AtomVecLine::Bonus *bonus = avec->bonus;
|
||||
double **x = atom->x;
|
||||
int *line = atom->line;
|
||||
int n = atom->nlocal + atom->nghost;
|
||||
|
||||
for (i = 0; i < n; i++) {
|
||||
if (line[i] < 0) continue;
|
||||
m = line[i];
|
||||
length = bonus[m].length;
|
||||
theta = bonus[m].theta;
|
||||
dx = 0.5*length*cos(theta);
|
||||
dy = 0.5*length*sin(theta);
|
||||
endpt = endpts[m];
|
||||
endpt[0] = x[i][0] - dx;
|
||||
endpt[1] = x[i][1] - dy;
|
||||
endpt[2] = x[i][0] + dx;
|
||||
endpt[3] = x[i][1] + dy;
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
compute nearest point between sphere I and line segment J
|
||||
return 0 if no contact, 1 if pt is interior to line segment,
|
||||
-1/-2 if pt = line end point 1/2
|
||||
if contact, return:
|
||||
pt = point on line segment
|
||||
r = vector from pt to sphere center
|
||||
rsq = squared length of r
|
||||
based on geometry.cpp::distsq_point_line() in SPARTA
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int PairLineGranHookeHistory::overlap_sphere_line(int i, int j, double *pt,
|
||||
double *r, double &rsq)
|
||||
{
|
||||
double p1[3],p2[3];
|
||||
double a[3],b[3];
|
||||
|
||||
// P1,P2 = end points of line segment
|
||||
|
||||
double *endpt = endpts[atom->line[j]];
|
||||
|
||||
p1[0] = endpt[0];
|
||||
p1[1] = endpt[1];
|
||||
p1[2] = 0.0;
|
||||
p2[0] = endpt[2];
|
||||
p2[1] = endpt[3];
|
||||
p2[2] = 0.0;
|
||||
|
||||
// A = vector from P1 to Xsphere
|
||||
// B = vector from P1 to P2
|
||||
|
||||
double *xsphere = atom->x[i];
|
||||
MathExtra::sub3(xsphere,p1,a);
|
||||
MathExtra::sub3(p2,p1,b);
|
||||
|
||||
// alpha = fraction of distance from P1 to P2 that P is located at
|
||||
// P = projected point on infinite line that is nearest to Xsphere center
|
||||
// alpha can be any value
|
||||
|
||||
double alpha = MathExtra::dot3(a,b) / MathExtra::lensq3(b);
|
||||
|
||||
// pt = point on line segment that is nearest to Xsphere center
|
||||
// if alpha <= 0.0, pt = P1, ptflag = -1
|
||||
// if alpha >= 1.0, pt = P2, ptflag = -2
|
||||
// else pt = P1 + alpha*(P2-P1), ptflag = 1
|
||||
|
||||
int ptflag;
|
||||
if (alpha <= 0.0) {
|
||||
ptflag = -1;
|
||||
pt[0] = p1[0];
|
||||
pt[1] = p1[1];
|
||||
pt[2] = p1[2];
|
||||
} else if (alpha >= 1.0) {
|
||||
ptflag = -2;
|
||||
pt[0] = p2[0];
|
||||
pt[1] = p2[1];
|
||||
pt[2] = p2[2];
|
||||
} else {
|
||||
ptflag = 1;
|
||||
pt[0] = p1[0] + alpha*b[0];
|
||||
pt[1] = p1[1] + alpha*b[1];
|
||||
pt[2] = p1[2] + alpha*b[2];
|
||||
}
|
||||
|
||||
// R = vector from nearest pt on line to Xsphere center
|
||||
// return ptflag if len(R) < sphere radius
|
||||
// else no contact, return 0
|
||||
|
||||
double radsq = atom->radius[i] * atom->radius[i];
|
||||
MathExtra::sub3(xsphere,pt,r);
|
||||
rsq = MathExtra::lensq3(r);
|
||||
if (rsq < radsq) return ptflag;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
check overlap status of sphere I with line J versus any neighbor lines K
|
||||
I overlaps J at jflag = -1,-2 for two end points
|
||||
return 0 if this line J performs computation
|
||||
return 1 if some other line K performs computation
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int PairLineGranHookeHistory::endpt_neigh_check(int i, int j, int jflag)
|
||||
{
|
||||
// ncheck = # of neighbor lines to check
|
||||
// neighs = indices of neighbor lines (including self)
|
||||
|
||||
int ncheck;
|
||||
int *neighs;
|
||||
|
||||
int jc = atom->line[j];
|
||||
if (jflag == -1) {
|
||||
if (connect2d[jc].np1 == 1) return 0;
|
||||
ncheck = connect2d[jc].np1;
|
||||
neighs = connect2d[jc].neigh_p1;
|
||||
} else if (jflag == -2) {
|
||||
if (connect2d[jc].np2 == 1) return 0;
|
||||
ncheck = connect2d[jc].np2;
|
||||
neighs = connect2d[jc].neigh_p2;
|
||||
}
|
||||
|
||||
// check overlap with each neighbor line
|
||||
// if any line has interior overlap, another line computes
|
||||
// if all lines have endpt overlap, line with lowest ID computes
|
||||
// kflag = overlap status with neighbor line
|
||||
// kflag = 1, interior overlap
|
||||
// kflag = 0, no overlap, should not be possible
|
||||
// kflag < 0, overlap at endpt
|
||||
|
||||
tagint *tag = atom->tag;
|
||||
|
||||
int k,kflag;
|
||||
double rsq;
|
||||
double dr[3],contact[3];
|
||||
|
||||
int linemin = tag[j];
|
||||
|
||||
for (int m = 0; m < ncheck; m++) {
|
||||
if (neighs[m] == tag[j]) continue; // skip self line
|
||||
k = atom->map(neighs[m]);
|
||||
if (k < 0) error->one(FLERR,"Pair line/gran neighbor line is missing");
|
||||
kflag = overlap_sphere_line(i,k,contact,dr,rsq);
|
||||
if (kflag > 0) return 1;
|
||||
if (kflag == 0) error->one(FLERR,"Fix surface/global neighbor line overlap is invalid");
|
||||
linemin = MIN(linemin,tag[k]);
|
||||
}
|
||||
|
||||
if (tag[j] == linemin) return 0;
|
||||
return 1;
|
||||
}
|
||||
93
src/GRANSURF/pair_line_gran_hooke_history.h
Normal file
93
src/GRANSURF/pair_line_gran_hooke_history.h
Normal file
@ -0,0 +1,93 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(line/gran/hooke/history,PairLineGranHookeHistory)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_LINE_GRAN_HOOKE_HISTORY_H
|
||||
#define LMP_PAIR_LINE_GRAN_HOOKE_HISTORY_H
|
||||
|
||||
#include "pair.h"
|
||||
#include "fix_surface_local.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairLineGranHookeHistory : public Pair {
|
||||
public:
|
||||
PairLineGranHookeHistory(class LAMMPS *);
|
||||
virtual ~PairLineGranHookeHistory();
|
||||
virtual void compute(int, int);
|
||||
void settings(int, char **);
|
||||
void coeff(int, char **);
|
||||
void init_style();
|
||||
double init_one(int, int);
|
||||
void write_restart(FILE *);
|
||||
void read_restart(FILE *);
|
||||
void write_restart_settings(FILE *);
|
||||
void read_restart_settings(FILE *);
|
||||
void reset_dt();
|
||||
virtual int pack_forward_comm(int, int *, double *, int, int *);
|
||||
virtual void unpack_forward_comm(int, int, double *);
|
||||
double memory_usage();
|
||||
|
||||
protected:
|
||||
double kn,kt,gamman,gammat,xmu;
|
||||
int dampflag,limit_damping;
|
||||
double dt;
|
||||
int freeze_group_bit;
|
||||
int history;
|
||||
|
||||
int neighprev;
|
||||
double *onerad_dynamic,*onerad_frozen;
|
||||
double *maxrad_dynamic,*maxrad_frozen;
|
||||
|
||||
int size_history;
|
||||
int surfmoveflag;
|
||||
|
||||
class FixDummy *fix_dummy;
|
||||
class FixNeighHistory *fix_history;
|
||||
|
||||
int emax; // allocated size of endpt list
|
||||
double **endpts; // current end pts of each line
|
||||
// Nall x 4 array for local + ghost atoms
|
||||
|
||||
// ptr to AtomVec for bonus line info
|
||||
|
||||
class AtomVecLine *avec;
|
||||
|
||||
// line connectivity info for owned and ghost lines
|
||||
|
||||
class FixSurfaceLocal *fsl; // ptr to surface/local fix
|
||||
FixSurfaceLocal::Connect2d *connect2d; // ptr to connectivity info
|
||||
|
||||
// storage of rigid body masses for use in granular interactions
|
||||
|
||||
class Fix *fix_rigid; // ptr to rigid body fix, NULL if none
|
||||
double *mass_rigid; // rigid mass for owned+ghost atoms
|
||||
int nmax; // allocated size of mass_rigid
|
||||
|
||||
// local methods
|
||||
|
||||
void allocate();
|
||||
void calculate_endpts();
|
||||
int overlap_sphere_line(int, int, double *, double *, double &);
|
||||
int endpt_neigh_check(int, int, int);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
1710
src/GRANSURF/pair_surf_granular.cpp
Normal file
1710
src/GRANSURF/pair_surf_granular.cpp
Normal file
File diff suppressed because it is too large
Load Diff
87
src/GRANSURF/pair_surf_granular.h
Normal file
87
src/GRANSURF/pair_surf_granular.h
Normal file
@ -0,0 +1,87 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(surf/granular,PairSurfGranular)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_SURF_GRANULAR_H
|
||||
#define LMP_PAIR_SURF_GRANULAR_H
|
||||
|
||||
#include "pair_granular.h"
|
||||
#include "fix_surface_local.h"
|
||||
#include "fix_surface.h"
|
||||
#include <map>
|
||||
#include <unordered_set>
|
||||
#include <vector>
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairSurfGranular : public PairGranular {
|
||||
public:
|
||||
PairSurfGranular(class LAMMPS *);
|
||||
~PairSurfGranular() override;
|
||||
void compute(int, int) override;
|
||||
void init_style() override;
|
||||
double memory_usage() override;
|
||||
|
||||
protected:
|
||||
int surfmoveflag;
|
||||
|
||||
int style;
|
||||
int emax; // allocated size of endpt list
|
||||
double **endpts; // current end pts of each line
|
||||
// Nall x 6 array for local + ghost atoms
|
||||
|
||||
int cmax; // allocated size of corners
|
||||
double **corners; // current corner pts and norm of each tri
|
||||
// Nall x 12 array for local + ghost atoms
|
||||
|
||||
// ptr to AtomVec for bonus info
|
||||
|
||||
class AtomVecLine *avecline;
|
||||
class AtomVecTri *avectri;
|
||||
|
||||
// line connectivity info for owned and ghost lines
|
||||
|
||||
class FixSurfaceLocal *fsl; // ptr to surface/local fix
|
||||
FixSurfaceLocal::Connect2d *connect2d; // ptr to connectivity info
|
||||
FixSurfaceLocal::Connect3d *connect3d; // ptr to connectivity info
|
||||
MyPoolChunk<int> *tcp; // allocator for connectivity info
|
||||
|
||||
class FixSurface::ContactSurf *contact_surfs;
|
||||
int nmax_contact_surfs;
|
||||
|
||||
// lines and tris
|
||||
|
||||
void calculate_endpts();
|
||||
void calculate_corners();
|
||||
void corners2norm(double *, double *);
|
||||
|
||||
// contact processing and force calculation
|
||||
|
||||
void prewalk_connections2d(int, int, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void prewalk_connections3d(int, int, std::vector<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void walk_connections2d(int, std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void walk_connections3d(int, std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::unordered_set<int> *, std::map<int, int> *);
|
||||
void adjust_external_corner(int, int, int, int);
|
||||
void calculate_2d_forces(std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *);
|
||||
void calculate_3d_forces(std::vector<int> *, std::unordered_set<int> *, std::unordered_set<int> *);
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
#endif
|
||||
286
src/GRANSURF/pair_tri_gran_hooke.cpp
Normal file
286
src/GRANSURF/pair_tri_gran_hooke.cpp
Normal file
@ -0,0 +1,286 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "pair_tri_gran_hooke.h"
|
||||
|
||||
#include "atom.h"
|
||||
#include "comm.h"
|
||||
#include "error.h"
|
||||
#include "force.h"
|
||||
#include "memory.h"
|
||||
#include "neigh_list.h"
|
||||
#include "neighbor.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
PairTriGranHooke::PairTriGranHooke(LAMMPS *lmp) : PairTriGranHookeHistory(lmp)
|
||||
{
|
||||
history = 0;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairTriGranHooke::compute(int eflag, int vflag)
|
||||
{
|
||||
int i,j,k,ii,jj,inum,jnum,isphere,itri,jflag,kflag,otherflag;
|
||||
double xtmp,ytmp,ztmp,delx,dely,delz,fx,fy,fz;
|
||||
double radi,radj,radsum,radsphere,rsq,r,rinv,rsqinv;
|
||||
double factor_couple;
|
||||
double vr1,vr2,vr3,vnnr,vn1,vn2,vn3,vt1,vt2,vt3;
|
||||
double wr1,wr2,wr3;
|
||||
double vtr1,vtr2,vtr3,vrel;
|
||||
double mi,mj,meff,mtri;
|
||||
double damp,ccel,tor1,tor2,tor3;
|
||||
double fn,fs,ft,fs1,fs2,fs3;
|
||||
double dr[3],ds[3],vtri[3],contact[3];
|
||||
int *ilist,*jlist,*numneigh,**firstneigh;
|
||||
|
||||
if (eflag || vflag) ev_setup(eflag,vflag);
|
||||
else evflag = vflag_fdotr = 0;
|
||||
|
||||
// if just reneighbored:
|
||||
// update rigid body masses for owned/ghost atoms if using FixRigid
|
||||
// body[i] = which body atom I is in, -1 if none
|
||||
// mass_body = mass of each rigid body
|
||||
// forward comm mass_rigid so have it for ghost lines
|
||||
|
||||
if (neighbor->ago == 0) {
|
||||
if (fix_rigid) {
|
||||
int tmp;
|
||||
int *body = (int *) fix_rigid->extract("body",tmp);
|
||||
double *mass_body = (double *) fix_rigid->extract("masstotal",tmp);
|
||||
if (atom->nmax > nmax) {
|
||||
memory->destroy(mass_rigid);
|
||||
nmax = atom->nmax;
|
||||
memory->create(mass_rigid,nmax,"line/gran:mass_rigid");
|
||||
}
|
||||
int nlocal = atom->nlocal;
|
||||
for (i = 0; i < nlocal; i++) {
|
||||
if (body[i] >= 0) mass_rigid[i] = mass_body[body[i]];
|
||||
else mass_rigid[i] = 0.0;
|
||||
}
|
||||
comm->forward_comm(this);
|
||||
}
|
||||
|
||||
connect3d = fsl->connect3d;
|
||||
}
|
||||
|
||||
// pre-calculate current end pts of owned+ghost lines
|
||||
// only once per reneighbor if surfs not moving
|
||||
|
||||
if (surfmoveflag || neighbor->ago == 0) calculate_corners();
|
||||
|
||||
// loop over neighbors of my atoms
|
||||
// I is always sphere, J is always tri
|
||||
|
||||
double **x = atom->x;
|
||||
double **v = atom->v;
|
||||
double **f = atom->f;
|
||||
double **omega = atom->omega;
|
||||
double **torque = atom->torque;
|
||||
double *radius = atom->radius;
|
||||
double *rmass = atom->rmass;
|
||||
tagint *tag = atom->tag;
|
||||
int *tri = atom->tri;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
int newton_pair = force->newton_pair;
|
||||
|
||||
inum = list->inum;
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
firstneigh = list->firstneigh;
|
||||
|
||||
for (ii = 0; ii < inum; ii++) {
|
||||
i = ilist[ii];
|
||||
xtmp = x[i][0];
|
||||
ytmp = x[i][1];
|
||||
ztmp = x[i][2];
|
||||
radi = radius[i];
|
||||
jlist = firstneigh[i];
|
||||
jnum = numneigh[i];
|
||||
|
||||
for (jj = 0; jj < jnum; jj++) {
|
||||
j = jlist[jj];
|
||||
j &= NEIGHMASK;
|
||||
|
||||
delx = xtmp - x[j][0];
|
||||
dely = ytmp - x[j][1];
|
||||
delz = ztmp - x[j][2];
|
||||
rsq = delx*delx + dely*dely + delz*delz;
|
||||
radj = radius[j];
|
||||
radsum = radi + radj;
|
||||
|
||||
if (rsq < radsum*radsum) {
|
||||
|
||||
// sanity check that neighbor list is built correctly
|
||||
|
||||
if (tri[i] >= 0 || tri[j] < 0)
|
||||
error->one(FLERR,"Pair tri/gran iteraction is invalid");
|
||||
|
||||
// check for overlap of sphere and triangle
|
||||
// jflag = 0 for no overlap, 1 for interior line pt,
|
||||
// -1/-2/-3 for 3 edges, -4/-5/-6 for 3 corner pts
|
||||
// if no overlap, just continue
|
||||
// for overlap, also returns:
|
||||
// contact = nearest point on tri to sphere center
|
||||
// dr = vector from contact pt to sphere center
|
||||
// rsq = squared length of dr
|
||||
|
||||
jflag = overlap_sphere_tri(i,j,contact,dr,rsq);
|
||||
if (!jflag) continue;
|
||||
|
||||
// if contact = tri edge or corner:
|
||||
// check status of the tri(s) adjacent to edge or corner
|
||||
// otherflag = 0/1 for this/other tri performs calculation
|
||||
|
||||
if (jflag < 0) {
|
||||
if (jflag >= -3) {
|
||||
otherflag = edge_neigh_check(i,j,jflag);
|
||||
if (otherflag) continue;
|
||||
} else {
|
||||
otherflag = corner_neigh_check(i,j,jflag);
|
||||
if (otherflag) continue;
|
||||
}
|
||||
}
|
||||
|
||||
// NOTE: add logic to check for coupled contacts and weight them
|
||||
|
||||
factor_couple = 1.0;
|
||||
|
||||
// ds = vector from tri center to contact pt
|
||||
|
||||
r = sqrt(rsq);
|
||||
rinv = 1.0/r;
|
||||
rsqinv = 1.0/rsq;
|
||||
|
||||
ds[0] = contact[0] - x[j][0];
|
||||
ds[1] = contact[1] - x[j][1];
|
||||
ds[2] = contact[2] - x[j][2];
|
||||
|
||||
// vtri = velocity of contact pt on tri, translation + rotation
|
||||
// omega for tri was set from angmom by calculate_corners()
|
||||
|
||||
vtri[0] = v[j][0] + (omega[j][1]*ds[2] - omega[j][2]*ds[1]);
|
||||
vtri[1] = v[j][1] + (omega[j][2]*ds[0] - omega[j][0]*ds[2]);
|
||||
vtri[2] = v[j][2] + (omega[j][0]*ds[1] - omega[j][1]*ds[0]);
|
||||
|
||||
// relative translational velocity
|
||||
|
||||
vr1 = v[i][0] - vtri[0];
|
||||
vr2 = v[i][1] - vtri[1];
|
||||
vr3 = v[i][2] - vtri[2];
|
||||
|
||||
// normal component
|
||||
|
||||
vnnr = vr1*dr[0] + vr2*dr[1] + vr3*dr[2];
|
||||
vn1 = dr[0]*vnnr * rsqinv;
|
||||
vn2 = dr[1]*vnnr * rsqinv;
|
||||
vn3 = dr[2]*vnnr * rsqinv;
|
||||
|
||||
// tangential component
|
||||
|
||||
vt1 = vr1 - vn1;
|
||||
vt2 = vr2 - vn2;
|
||||
vt3 = vr3 - vn3;
|
||||
|
||||
// relative rotational velocity
|
||||
|
||||
wr1 = (radi*omega[i][0]) * rinv;
|
||||
wr2 = (radi*omega[i][1]) * rinv;
|
||||
wr3 = (radi*omega[i][2]) * rinv;
|
||||
|
||||
// meff = effective mass of sphere and tri
|
||||
// if I or J is part of rigid body, use body mass
|
||||
// if tri is not part of rigid body assume infinite mass
|
||||
|
||||
meff = rmass[i];
|
||||
if (fix_rigid) {
|
||||
if (mass_rigid[i] > 0.0) meff = mass_rigid[i];
|
||||
if (mass_rigid[j] > 0.0) {
|
||||
mtri = mass_rigid[j];
|
||||
meff = meff*mtri / (meff+mtri);
|
||||
}
|
||||
}
|
||||
|
||||
// normal forces = Hookian contact + normal velocity damping
|
||||
|
||||
damp = meff*gamman*vnnr*rsqinv;
|
||||
ccel = kn*(radi-r)*rinv - damp;
|
||||
ccel *= factor_couple;
|
||||
|
||||
// relative velocities
|
||||
|
||||
vtr1 = vt1 - (dr[2]*wr2-dr[1]*wr3);
|
||||
vtr2 = vt2 - (dr[0]*wr3-dr[2]*wr1);
|
||||
vtr3 = vt3 - (dr[1]*wr1-dr[0]*wr2);
|
||||
vrel = vtr1*vtr1 + vtr2*vtr2 + vtr3*vtr3;
|
||||
vrel = sqrt(vrel);
|
||||
|
||||
// force normalization
|
||||
|
||||
fn = xmu * fabs(ccel*r);
|
||||
fs = meff*gammat*vrel;
|
||||
if (vrel != 0.0) ft = MIN(fn,fs) / vrel;
|
||||
else ft = 0.0;
|
||||
|
||||
// tangential force due to tangential velocity damping
|
||||
|
||||
fs1 = -ft*vtr1 * factor_couple;
|
||||
fs2 = -ft*vtr2 * factor_couple;
|
||||
fs3 = -ft*vtr3 * factor_couple;
|
||||
|
||||
// total force on sphere
|
||||
|
||||
fx = dr[0]*ccel + fs1;
|
||||
fy = dr[1]*ccel + fs2;
|
||||
fz = dr[2]*ccel + fs3;
|
||||
|
||||
// sphere force & torque
|
||||
|
||||
f[i][0] += fx;
|
||||
f[i][1] += fy;
|
||||
f[i][2] += fz;
|
||||
|
||||
tor1 = rinv * (dr[1]*fs3 - dr[2]*fs2);
|
||||
tor2 = rinv * (dr[2]*fs1 - dr[0]*fs3);
|
||||
tor3 = rinv * (dr[0]*fs2 - dr[1]*fs1);
|
||||
torque[i][0] -= radi*tor1;
|
||||
torque[i][1] -= radi*tor2;
|
||||
torque[i][2] -= radi*tor3;
|
||||
|
||||
// tri force & torque
|
||||
// torque applied at contact pt
|
||||
// use total force for torque
|
||||
// since opposite force is not norm/tang to tri at its contact pt
|
||||
|
||||
f[j][0] -= fx;
|
||||
f[j][1] -= fy;
|
||||
f[j][2] -= fz;
|
||||
|
||||
torque[j][0] -= ds[1]*fz - ds[2]*fy;
|
||||
torque[j][1] -= ds[2]*fx - ds[0]*fz;
|
||||
torque[j][2] -= ds[0]*fy - ds[1]*fx;
|
||||
|
||||
if (evflag) ev_tally_xyz(i,j,nlocal,newton_pair,
|
||||
0.0,0.0,fx,fy,fz,dr[0],dr[1],dr[2]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// NOTE: should there be virial contributions from boundary lines?
|
||||
|
||||
if (vflag_fdotr) virial_fdotr_compute();
|
||||
}
|
||||
37
src/GRANSURF/pair_tri_gran_hooke.h
Normal file
37
src/GRANSURF/pair_tri_gran_hooke.h
Normal file
@ -0,0 +1,37 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(tri/gran/hooke,PairTriGranHooke)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_TRI_GRAN_HOOKE_H
|
||||
#define LMP_PAIR_TRI_GRAN_HOOKE_H
|
||||
|
||||
#include "pair_tri_gran_hooke_history.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairTriGranHooke : public PairTriGranHookeHistory {
|
||||
public:
|
||||
PairTriGranHooke(class LAMMPS *);
|
||||
~PairTriGranHooke() {}
|
||||
void compute(int, int);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
1190
src/GRANSURF/pair_tri_gran_hooke_history.cpp
Normal file
1190
src/GRANSURF/pair_tri_gran_hooke_history.cpp
Normal file
File diff suppressed because it is too large
Load Diff
97
src/GRANSURF/pair_tri_gran_hooke_history.h
Normal file
97
src/GRANSURF/pair_tri_gran_hooke_history.h
Normal file
@ -0,0 +1,97 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(tri/gran/hooke/history,PairTriGranHookeHistory)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_TRI_GRAN_HOOKE_HISTORY_H
|
||||
#define LMP_PAIR_TRI_GRAN_HOOKE_HISTORY_H
|
||||
|
||||
#include "pair.h"
|
||||
#include "fix_surface_local.h"
|
||||
#include "my_pool_chunk.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairTriGranHookeHistory : public Pair {
|
||||
public:
|
||||
PairTriGranHookeHistory(class LAMMPS *);
|
||||
virtual ~PairTriGranHookeHistory();
|
||||
virtual void compute(int, int);
|
||||
void settings(int, char **);
|
||||
void coeff(int, char **);
|
||||
void init_style();
|
||||
double init_one(int, int);
|
||||
void write_restart(FILE *);
|
||||
void read_restart(FILE *);
|
||||
void write_restart_settings(FILE *);
|
||||
void read_restart_settings(FILE *);
|
||||
void reset_dt();
|
||||
int pack_forward_comm(int, int *, double *, int, int *);
|
||||
void unpack_forward_comm(int, int, double *);
|
||||
double memory_usage();
|
||||
|
||||
protected:
|
||||
double kn,kt,gamman,gammat,xmu;
|
||||
int dampflag,limit_damping;
|
||||
double dt;
|
||||
int freeze_group_bit;
|
||||
int history;
|
||||
|
||||
int neighprev;
|
||||
double *onerad_dynamic,*onerad_frozen;
|
||||
double *maxrad_dynamic,*maxrad_frozen;
|
||||
|
||||
int size_history;
|
||||
int surfmoveflag;
|
||||
|
||||
class FixDummy *fix_dummy;
|
||||
class FixNeighHistory *fix_history;
|
||||
|
||||
int cmax; // allocated size of corners
|
||||
double **corners; // current corner pts and norm of each tri
|
||||
// Nall x 12 array for local + ghost atoms
|
||||
|
||||
// ptr to AtomVec for bonus tri info
|
||||
|
||||
class AtomVecTri *avec;
|
||||
|
||||
// tri connectivity info for owned and ghost tris
|
||||
|
||||
class FixSurfaceLocal *fsl; // ptr to surface/local fix
|
||||
FixSurfaceLocal::Connect3d *connect3d; // ptr to connectivity info
|
||||
|
||||
// storage of rigid body masses for use in granular interactions
|
||||
|
||||
class Fix *fix_rigid; // ptr to rigid body fix, NULL if none
|
||||
double *mass_rigid; // rigid mass for owned+ghost atoms
|
||||
int nmax; // allocated size of mass_rigid
|
||||
|
||||
// local methods
|
||||
|
||||
void allocate();
|
||||
void calculate_corners();
|
||||
void corners2norm(double *, double *);
|
||||
int overlap_sphere_tri(int, int, double *, double *, double &);
|
||||
int nearest_point_line(double *, double *, double *, double *);
|
||||
int edge_neigh_check(int, int, int);
|
||||
int corner_neigh_check(int, int, int);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
298
src/GRANSURF/surf_extra.cpp
Normal file
298
src/GRANSURF/surf_extra.cpp
Normal file
@ -0,0 +1,298 @@
|
||||
// clang-format off
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "surf_extra.h"
|
||||
|
||||
#include "math_extra.h"
|
||||
|
||||
using namespace MathExtra;
|
||||
|
||||
namespace SurfExtra {
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
compute nearest point between sphere I and line segment J
|
||||
return 0 if no contact, 1 if pt is interior to line segment,
|
||||
-1/-2 if pt = line end point 1/2
|
||||
if contact, return:
|
||||
pt = point on line segment
|
||||
r = vector from pt to sphere center
|
||||
rsq = squared length of r
|
||||
based on geometry.cpp::distsq_point_line() in SPARTA
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int overlap_sphere_line(double *xsphere, double radius, double *p1, double *p2,
|
||||
double *pt, double *r, double &rsq)
|
||||
{
|
||||
double a[3],b[3];
|
||||
|
||||
// A = vector from P1 to Xsphere
|
||||
// B = vector from P1 to P2
|
||||
|
||||
MathExtra::sub3(xsphere,p1,a);
|
||||
MathExtra::sub3(p2,p1,b);
|
||||
|
||||
// alpha = fraction of distance from P1 to P2 that P is located at
|
||||
// P = projected point on infinite line that is nearest to Xsphere center
|
||||
// alpha can be any value
|
||||
|
||||
double alpha = MathExtra::dot3(a,b) / MathExtra::lensq3(b);
|
||||
|
||||
// pt = point on line segment that is nearest to Xsphere center
|
||||
// if alpha <= 0.0, pt = P1, ptflag = -1
|
||||
// if alpha >= 1.0, pt = P2, ptflag = -2
|
||||
// else pt = P1 + alpha*(P2-P1), ptflag = 1
|
||||
|
||||
int ptflag;
|
||||
if (alpha <= 0.0) {
|
||||
ptflag = -1;
|
||||
pt[0] = p1[0];
|
||||
pt[1] = p1[1];
|
||||
pt[2] = p1[2];
|
||||
} else if (alpha >= 1.0) {
|
||||
ptflag = -2;
|
||||
pt[0] = p2[0];
|
||||
pt[1] = p2[1];
|
||||
pt[2] = p2[2];
|
||||
} else {
|
||||
ptflag = 1;
|
||||
pt[0] = p1[0] + alpha*b[0];
|
||||
pt[1] = p1[1] + alpha*b[1];
|
||||
pt[2] = p1[2] + alpha*b[2];
|
||||
}
|
||||
|
||||
// R = vector from nearest pt on line to Xsphere center
|
||||
// return ptflag if len(R) < sphere radius
|
||||
// else no contact, return 0
|
||||
|
||||
double radsq = radius * radius;
|
||||
MathExtra::sub3(xsphere,pt,r);
|
||||
|
||||
rsq = MathExtra::lensq3(r);
|
||||
if (rsq < radsq) return ptflag;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
compute nearest point between sphere I and triangle J
|
||||
return 0 if no contact, 1 if pt is interior to triangle,
|
||||
-1/-2/-3 if pt on tri edges, -4/-5/-6 if pt = tri corners 1/2/3
|
||||
if contact, return:
|
||||
pt = point on triangle
|
||||
r = vector from pt to sphere center
|
||||
rsq = squared length of r
|
||||
based on geometry.cpp::distsq_point_tri() in SPARTA
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int overlap_sphere_tri(double *xsphere, double radius,
|
||||
double *p1, double *p2, double *p3, double *norm,
|
||||
double *pt, double *r, double &rsq)
|
||||
{
|
||||
int e12flag,e23flag,e31flag,o12flag,o23flag,o31flag;
|
||||
int esum,osum,lineflag;
|
||||
double dot;
|
||||
double a[3],point[3],edge[3],pvec[3],xproduct[3];
|
||||
|
||||
// A = vector from P1 to Xsphere
|
||||
|
||||
MathExtra::sub3(xsphere,p1,a);
|
||||
|
||||
// pt = projected point on infinite triangle plane
|
||||
|
||||
double alpha = MathExtra::dot3(a,norm);
|
||||
pt[0] = xsphere[0] - alpha*norm[0];
|
||||
pt[1] = xsphere[1] - alpha*norm[1];
|
||||
pt[2] = xsphere[2] - alpha*norm[2];
|
||||
|
||||
// test if projected point is inside triangle
|
||||
// inside = interior + boundary of tri
|
||||
// edge = edge vector of triangle
|
||||
// pvec = vector from triangle vertex to projected point
|
||||
// xproduct = cross product of edge with pvec
|
||||
// if dot product of xproduct with norm < 0.0 for any of 3 edges,
|
||||
// projected point is outside tri
|
||||
// NOTE: worry about round-off for pt being on edge or corner?
|
||||
|
||||
int inside = 1;
|
||||
e12flag = e23flag = e31flag = 0;
|
||||
o12flag = o23flag = o31flag = 0;
|
||||
|
||||
MathExtra::sub3(p2,p1,edge);
|
||||
MathExtra::sub3(pt,p1,pvec);
|
||||
MathExtra::cross3(edge,pvec,xproduct);
|
||||
dot = MathExtra::dot3(xproduct,norm);
|
||||
if (dot <= 0.0) {
|
||||
o12flag = 1;
|
||||
if (dot == 0.0) e12flag = 1;
|
||||
else inside = 0;
|
||||
}
|
||||
|
||||
MathExtra::sub3(p3,p2,edge);
|
||||
MathExtra::sub3(pt,p2,pvec);
|
||||
MathExtra::cross3(edge,pvec,xproduct);
|
||||
dot = MathExtra::dot3(xproduct,norm);
|
||||
if (dot <= 0.0) {
|
||||
o23flag = 1;
|
||||
if (dot == 0.0) e23flag = 1;
|
||||
else inside = 0;
|
||||
}
|
||||
|
||||
MathExtra::sub3(p1,p3,edge);
|
||||
MathExtra::sub3(pt,p3,pvec);
|
||||
MathExtra::cross3(edge,pvec,xproduct);
|
||||
dot = MathExtra::dot3(xproduct,norm);
|
||||
if (dot <= 0.0) {
|
||||
o31flag = 1;
|
||||
if (dot == 0.0) e31flag = 1;
|
||||
else inside = 0;
|
||||
}
|
||||
|
||||
// projected point is inside tri = interior or boundary
|
||||
// set ptflag = 1 for interior
|
||||
// set ptflag = -1,-2,-3 for 3 edges E12,E23,E31
|
||||
// set ptflag = -4,-5,-6 for 3 corner pts P1,P2,P3
|
||||
|
||||
int flag = 0;
|
||||
if (inside) {
|
||||
flag = 1;
|
||||
esum = e12flag + e23flag + e31flag;
|
||||
if (esum) {
|
||||
if (esum == 1) {
|
||||
if (e12flag) flag = -1;
|
||||
else if (e23flag) flag = -2;
|
||||
else flag = -3;
|
||||
} else {
|
||||
if (!e12flag) flag = -6;
|
||||
else if (!e23flag) flag = -4;
|
||||
else flag = -5;
|
||||
}
|
||||
}
|
||||
|
||||
// projected point is outside tri
|
||||
// reset pt to nearest point to tri center
|
||||
// set ptflag = -1,-2,-3 if pt on edges
|
||||
// set ptflag = -4,-5,-6 if pt = corner pts
|
||||
|
||||
} else {
|
||||
osum = o12flag + o23flag + o31flag;
|
||||
if (osum == 1) {
|
||||
if (o12flag) {
|
||||
lineflag = SurfExtra::nearest_point_line(xsphere,p1,p2,pt);
|
||||
if (lineflag == 1) flag = -1;
|
||||
else if (lineflag == -1) flag = -4;
|
||||
else flag = -5;
|
||||
} else if (o23flag) {
|
||||
lineflag = SurfExtra::nearest_point_line(xsphere,p2,p3,pt);
|
||||
if (lineflag == 1) flag = -2;
|
||||
else if (lineflag == -1) flag = -5;
|
||||
else flag = -6;
|
||||
} else {
|
||||
lineflag = SurfExtra::nearest_point_line(xsphere,p3,p1,pt);
|
||||
if (lineflag == 1) flag = -3;
|
||||
else if (lineflag == -1) flag = -6;
|
||||
else flag = -4;
|
||||
}
|
||||
} else {
|
||||
if (!o12flag) {
|
||||
flag = -6;
|
||||
pt[0] = p3[0];
|
||||
pt[1] = p3[1];
|
||||
pt[2] = p3[2];
|
||||
} else if (!o23flag) {
|
||||
flag = -4;
|
||||
pt[0] = p1[0];
|
||||
pt[1] = p1[1];
|
||||
pt[2] = p1[2];
|
||||
} else {
|
||||
flag = -5;
|
||||
pt[0] = p2[0];
|
||||
pt[1] = p2[1];
|
||||
pt[2] = p2[2];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// test if point is exactly a corner pt
|
||||
// if so, reset ptwhich to corner pt
|
||||
|
||||
/*
|
||||
if (pt[0] == p1[0] && pt[1] == p1[1] && pt[2] == p1[2]) flag == -4;
|
||||
else if (pt[0] == p2[0] && pt[1] == p2[1] && pt[2] == p2[2]) flag == -5;
|
||||
else if (pt[0] == p3[0] && pt[1] == p3[1] && pt[2] == p3[2]) flag == -6;
|
||||
*/
|
||||
|
||||
// R = vector from nearest pt on line to Xsphere center
|
||||
// return flag if len(R) < sphere radius
|
||||
// else no contact, return 0
|
||||
|
||||
double radsq = radius * radius;
|
||||
MathExtra::sub3(xsphere,pt,r);
|
||||
rsq = MathExtra::lensq3(r);
|
||||
|
||||
if (rsq < radsq) return flag;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
compute nearest point between point X and line segment P1 to P2
|
||||
return pt = nearest point within line segment
|
||||
return 1 if pt is interior to line segment
|
||||
return -1/-2 if pt = line segment end point 1/2
|
||||
based on geometry.cpp::distsq_point_line() in SPARTA
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int nearest_point_line(double *x, double *p1, double *p2, double *pt)
|
||||
{
|
||||
double a[3],b[3];
|
||||
|
||||
// A = vector from P1 to X
|
||||
// B = vector from P1 to P2
|
||||
|
||||
MathExtra::sub3(x,p1,a);
|
||||
MathExtra::sub3(p2,p1,b);
|
||||
|
||||
// alpha = fraction of distance from P1 to P2 that P is located at
|
||||
// P = projected point on infinite line that is nearest to X
|
||||
// alpha can be any value
|
||||
|
||||
double alpha = MathExtra::dot3(a,b) / MathExtra::lensq3(b);
|
||||
|
||||
// pt = point on line segment that is nearest to X
|
||||
// if alpha <= 0.0, pt = P1, ptflag = -1
|
||||
// if alpha >= 1.0, pt = P2, ptflag = -2
|
||||
// else pt = P1 + alpha*(P2-P1), ptflag = 1
|
||||
|
||||
int ptflag;
|
||||
if (alpha <= 0.0) {
|
||||
ptflag = -1;
|
||||
pt[0] = p1[0];
|
||||
pt[1] = p1[1];
|
||||
pt[2] = p1[2];
|
||||
} else if (alpha >= 1.0) {
|
||||
ptflag = -2;
|
||||
pt[0] = p2[0];
|
||||
pt[1] = p2[1];
|
||||
pt[2] = p2[2];
|
||||
} else {
|
||||
ptflag = 1;
|
||||
pt[0] = p1[0] + alpha*b[0];
|
||||
pt[1] = p1[1] + alpha*b[1];
|
||||
pt[2] = p1[2] + alpha*b[2];
|
||||
}
|
||||
|
||||
return ptflag;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
}
|
||||
28
src/GRANSURF/surf_extra.h
Normal file
28
src/GRANSURF/surf_extra.h
Normal file
@ -0,0 +1,28 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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_SURF_EXTRA_H
|
||||
#define LMP_SURF_EXTRA_H
|
||||
|
||||
namespace SurfExtra {
|
||||
|
||||
int overlap_sphere_line(double *, double, double *, double *,
|
||||
double *, double *, double &);
|
||||
int overlap_sphere_tri(double *, double,
|
||||
double *, double *, double *, double *,
|
||||
double *, double *, double &);
|
||||
int nearest_point_line(double *, double *, double *, double *);
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@ -317,9 +317,9 @@ void FixWallGran::init()
|
||||
|
||||
if (heat_flag) {
|
||||
if (!atom->temperature_flag)
|
||||
error->all(FLERR,"Heat conduction in fix wall/gran requires atom style with temperature property");
|
||||
error->all(FLERR, "Heat conduction in fix wall/gran requires atom style with temperature property");
|
||||
if (!atom->heatflow_flag)
|
||||
error->all(FLERR,"Heat conduction in fix wall/gran requires atom style with heatflow property");
|
||||
error->all(FLERR, "Heat conduction in fix wall/gran requires atom style with heatflow property");
|
||||
}
|
||||
|
||||
// check for FixRigid so can extract rigid body masses
|
||||
|
||||
@ -383,7 +383,10 @@ bool GranularModel::check_contact()
|
||||
radsum = radi;
|
||||
if (radj == 0) Reff = radi;
|
||||
else Reff = radi * radj / (radi + radj);
|
||||
} else {
|
||||
} else if (contact_type == SURFACE) {
|
||||
// Used by GRANSURF package
|
||||
// initial definitions of rsq and radj for contact
|
||||
// detection distinct from those in calculate_forces()
|
||||
sub3(xi, xj, dx);
|
||||
rsq = lensq3(dx);
|
||||
radsum = radi + radj;
|
||||
@ -391,6 +394,7 @@ bool GranularModel::check_contact()
|
||||
}
|
||||
|
||||
touch = normal_model->touch();
|
||||
|
||||
return touch;
|
||||
}
|
||||
|
||||
@ -400,7 +404,13 @@ void GranularModel::calculate_forces()
|
||||
{
|
||||
// Standard geometric quantities
|
||||
|
||||
if (contact_type == SURFACE) {
|
||||
radsum = radi;
|
||||
Reff = radi;
|
||||
}
|
||||
|
||||
if (contact_type != WALLREGION) r = sqrt(rsq);
|
||||
|
||||
rinv = 1.0 / r;
|
||||
delta = radsum - r;
|
||||
dR = delta * Reff;
|
||||
|
||||
@ -32,7 +32,8 @@ enum SubModelType {
|
||||
enum ContactType {
|
||||
PAIR = 0,
|
||||
WALL = 1,
|
||||
WALLREGION = 2
|
||||
WALLREGION = 2,
|
||||
SURFACE = 3
|
||||
};
|
||||
|
||||
// forward declarations
|
||||
|
||||
@ -76,8 +76,11 @@ PairGranular::PairGranular(LAMMPS *lmp) : Pair(lmp)
|
||||
// create dummy fix as placeholder for FixNeighHistory
|
||||
// this is so final order of Modify:fix will conform to input script
|
||||
|
||||
id_dummy = utils::strdup(std::string("NEIGH_HISTORY_GRANULAR_DUMMY") + std::to_string(instance_me));
|
||||
id_history = utils::strdup(std::string("NEIGH_HISTORY_GRANULAR") + std::to_string(instance_me));
|
||||
|
||||
fix_history = nullptr;
|
||||
fix_dummy = dynamic_cast<FixDummy *>(modify->add_fix("NEIGH_HISTORY_GRANULAR_DUMMY all DUMMY"));
|
||||
fix_dummy = dynamic_cast<FixDummy *>(modify->add_fix(fmt::format("{} all DUMMY", id_dummy)));
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -86,8 +89,10 @@ PairGranular::~PairGranular()
|
||||
{
|
||||
delete[] svector;
|
||||
|
||||
if (!fix_history) modify->delete_fix("NEIGH_HISTORY_GRANULAR_DUMMY");
|
||||
else modify->delete_fix("NEIGH_HISTORY_GRANULAR");
|
||||
if (!fix_history) modify->delete_fix(id_dummy);
|
||||
else modify->delete_fix(id_history);
|
||||
delete[] id_dummy;
|
||||
delete[] id_history;
|
||||
|
||||
if (allocated) {
|
||||
memory->destroy(setflag);
|
||||
@ -458,13 +463,10 @@ void PairGranular::init_style()
|
||||
// this is so its order in the fix list is preserved
|
||||
|
||||
if (use_history && fix_history == nullptr) {
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(modify->replace_fix("NEIGH_HISTORY_GRANULAR_DUMMY",
|
||||
"NEIGH_HISTORY_GRANULAR"
|
||||
" all NEIGH_HISTORY "
|
||||
+ std::to_string(size_history),1));
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(modify->replace_fix(id_dummy, fmt::format("{} all NEIGH_HISTORY {}", id_history, size_history),1));
|
||||
fix_history->pair = this;
|
||||
} else if (use_history) {
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(modify->get_fix_by_id("NEIGH_HISTORY_GRANULAR"));
|
||||
fix_history = dynamic_cast<FixNeighHistory *>(modify->get_fix_by_id(id_history));
|
||||
if (!fix_history) error->all(FLERR,"Could not find pair fix neigh history ID");
|
||||
}
|
||||
|
||||
|
||||
@ -58,6 +58,8 @@ class PairGranular : public Pair {
|
||||
|
||||
class FixDummy *fix_dummy;
|
||||
class FixNeighHistory *fix_history;
|
||||
char *id_dummy;
|
||||
char *id_history;
|
||||
|
||||
// storage of rigid body masses for use in granular interactions
|
||||
|
||||
@ -69,7 +71,6 @@ class PairGranular : public Pair {
|
||||
void transfer_history(double *, double *, int, int) override;
|
||||
void prune_models();
|
||||
|
||||
private:
|
||||
int size_history;
|
||||
int heat_flag;
|
||||
|
||||
|
||||
@ -83,6 +83,7 @@ PACKAGE = \
|
||||
fep \
|
||||
gpu \
|
||||
granular \
|
||||
gransurf \
|
||||
h5md \
|
||||
intel \
|
||||
interlayer \
|
||||
@ -178,6 +179,7 @@ PACKMOST = \
|
||||
extra-pair \
|
||||
fep \
|
||||
granular \
|
||||
gransurf \
|
||||
interlayer \
|
||||
manybody \
|
||||
mc \
|
||||
|
||||
@ -61,7 +61,7 @@ AtomVecTri::AtomVecTri(LAMMPS *lmp) : AtomVec(lmp)
|
||||
fields_comm_vel = {"omega", "angmom"};
|
||||
fields_reverse = {"torque"};
|
||||
fields_border = {"molecule", "radius", "rmass"};
|
||||
fields_border_vel = {"molecule", "radius", "rmass", "omega"};
|
||||
fields_border_vel = {"molecule", "radius", "rmass", "omega", "angmom"};
|
||||
fields_exchange = {"molecule", "radius", "rmass", "omega", "angmom"};
|
||||
fields_restart = {"molecule", "radius", "rmass", "omega", "angmom"};
|
||||
fields_create = {"molecule", "radius", "rmass", "omega", "angmom", "tri"};
|
||||
|
||||
@ -715,8 +715,8 @@ void FixMove::initial_integrate(int /*vflag*/)
|
||||
if (omega_flag) {
|
||||
flag = 0;
|
||||
if (radius_flag && radius[i] > 0.0) flag = 1;
|
||||
if (line_flag && line[i] >= 0.0) flag = 1;
|
||||
if (tri_flag && tri[i] >= 0.0) flag = 1;
|
||||
if (line_flag && line[i] >= 0) flag = 1;
|
||||
if (tri_flag && tri[i] >= 0) flag = 1;
|
||||
if (flag) {
|
||||
omega[i][0] = omega_rotate * runit[0];
|
||||
omega[i][1] = omega_rotate * runit[1];
|
||||
@ -756,7 +756,7 @@ void FixMove::initial_integrate(int /*vflag*/)
|
||||
|
||||
// theta for lines
|
||||
|
||||
if (theta_flag && line[i] >= 0.0) {
|
||||
if (theta_flag && line[i] >= 0) {
|
||||
theta_new = fmod(toriginal[i] + arg, MY_2PI);
|
||||
avec_line->bonus[atom->line[i]].theta = theta_new;
|
||||
}
|
||||
@ -848,8 +848,8 @@ void FixMove::initial_integrate(int /*vflag*/)
|
||||
if (omega_flag) {
|
||||
flag = 0;
|
||||
if (radius_flag && radius[i] > 0.0) flag = 1;
|
||||
if (line_flag && line[i] >= 0.0) flag = 1;
|
||||
if (tri_flag && tri[i] >= 0.0) flag = 1;
|
||||
if (line_flag && line[i] >= 0) flag = 1;
|
||||
if (tri_flag && tri[i] >= 0) flag = 1;
|
||||
if (flag) {
|
||||
omega[i][0] = omega_rotate * runit[0];
|
||||
omega[i][1] = omega_rotate * runit[1];
|
||||
@ -889,7 +889,7 @@ void FixMove::initial_integrate(int /*vflag*/)
|
||||
|
||||
// theta for lines
|
||||
|
||||
if (theta_flag && line[i] >= 0.0) {
|
||||
if (theta_flag && line[i] >= 0) {
|
||||
theta_new = fmod(toriginal[i] + arg, MY_2PI);
|
||||
avec_line->bonus[atom->line[i]].theta = theta_new;
|
||||
}
|
||||
@ -1352,7 +1352,7 @@ void FixMove::set_arrays(int i)
|
||||
|
||||
// theta for lines
|
||||
|
||||
if (theta_flag && line[i] >= 0.0) {
|
||||
if (theta_flag && line[i] >= 0) {
|
||||
theta = avec_line->bonus[atom->line[i]].theta;
|
||||
toriginal[i] = theta - 0.0; // NOTE: edit this line
|
||||
}
|
||||
@ -1415,7 +1415,7 @@ void FixMove::set_arrays(int i)
|
||||
|
||||
// theta for lines
|
||||
|
||||
if (theta_flag && line[i] >= 0.0) {
|
||||
if (theta_flag && line[i] >= 0) {
|
||||
theta = avec_line->bonus[atom->line[i]].theta;
|
||||
toriginal[i] = theta - 0.0; // NOTE: edit this line
|
||||
}
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
#include "atom.h"
|
||||
#include "comm.h"
|
||||
#include "error.h"
|
||||
#include "fix_surface_global.h"
|
||||
#include "force.h"
|
||||
#include "memory.h"
|
||||
#include "modify.h"
|
||||
@ -35,7 +36,7 @@ FixNeighHistory::FixNeighHistory(LAMMPS *lmp, int narg, char **arg) :
|
||||
Fix(lmp, narg, arg), pair(nullptr), npartner(nullptr), partner(nullptr), valuepartner(nullptr),
|
||||
ipage_atom(nullptr), dpage_atom(nullptr), ipage_neigh(nullptr), dpage_neigh(nullptr)
|
||||
{
|
||||
if (narg != 4) error->all(FLERR, "Illegal fix NEIGH_HISTORY command");
|
||||
if (narg < 4) error->all(FLERR, "Illegal fix NEIGH_HISTORY command");
|
||||
|
||||
restart_peratom = 1;
|
||||
restart_global = 1;
|
||||
@ -53,8 +54,17 @@ FixNeighHistory::FixNeighHistory(LAMMPS *lmp, int narg, char **arg) :
|
||||
for (int i = 0; i < dnum; i++) zeroes[i] = 0.0;
|
||||
|
||||
onesided = 0;
|
||||
if (strcmp(id, "LINE_NEIGH_HISTORY") == 0) onesided = 1;
|
||||
if (strcmp(id, "TRI_NEIGH_HISTORY") == 0) onesided = 1;
|
||||
surface_global = 0;
|
||||
int iarg = 4;
|
||||
while (iarg < narg) {
|
||||
if (strcmp(arg[iarg], "onesided") == 0) onesided = 1;
|
||||
else if (strcmp(arg[iarg], "surface/global") == 0) surface_global = 1;
|
||||
else error->all(FLERR, "Illegal fix neigh/history command {}", arg[iarg]);
|
||||
iarg += 1;
|
||||
}
|
||||
|
||||
if (surface_global && !onesided)
|
||||
error->all(FLERR, "Surface global must be used with onesided");
|
||||
|
||||
if (newton_pair)
|
||||
comm_reverse = 1; // just for single npartner value
|
||||
@ -262,7 +272,11 @@ void FixNeighHistory::pre_exchange_onesided()
|
||||
for (i = 0; i < nlocal_neigh; i++) npartner[i] = 0;
|
||||
|
||||
tagint *tag = atom->tag;
|
||||
NeighList *list = pair->list;
|
||||
NeighList *list;
|
||||
if (surface_global)
|
||||
list = fix->list;
|
||||
else
|
||||
list = pair->list;
|
||||
inum = list->inum;
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
@ -308,7 +322,10 @@ void FixNeighHistory::pre_exchange_onesided()
|
||||
j = jlist[jj];
|
||||
j &= NEIGHMASK;
|
||||
m = npartner[i]++;
|
||||
partner[i][m] = tag[j];
|
||||
if (surface_global)
|
||||
partner[i][m] = j;
|
||||
else
|
||||
partner[i][m] = tag[j];
|
||||
memcpy(&valuepartner[i][dnum * m], onevalues, dnumbytes);
|
||||
}
|
||||
}
|
||||
@ -616,7 +633,11 @@ void FixNeighHistory::post_neighbor()
|
||||
dpage_neigh->reset();
|
||||
|
||||
tagint *tag = atom->tag;
|
||||
NeighList *list = pair->list;
|
||||
NeighList *list;
|
||||
if (surface_global)
|
||||
list = fix->list;
|
||||
else
|
||||
list = pair->list;
|
||||
inum = list->inum;
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
@ -634,7 +655,7 @@ void FixNeighHistory::post_neighbor()
|
||||
for (jj = 0; jj < jnum; jj++) {
|
||||
j = jlist[jj];
|
||||
|
||||
if (use_bit_flag) {
|
||||
if (use_bit_flag && !surface_global) {
|
||||
rflag = histmask(j) | pair->beyond_contact;
|
||||
j &= HISTMASK;
|
||||
jlist[jj] = j;
|
||||
@ -652,9 +673,14 @@ void FixNeighHistory::post_neighbor()
|
||||
// apply a mask for history (and they could use the bits for special bonds)
|
||||
|
||||
if (rflag) {
|
||||
jtag = tag[j];
|
||||
for (m = 0; m < np; m++)
|
||||
if (partner[i][m] == jtag) break;
|
||||
if (surface_global) {
|
||||
for (m = 0; m < np; m++)
|
||||
if (partner[i][m] == j) break;
|
||||
} else {
|
||||
jtag = tag[j];
|
||||
for (m = 0; m < np; m++)
|
||||
if (partner[i][m] == jtag) break;
|
||||
}
|
||||
if (m < np) {
|
||||
allflags[jj] = 1;
|
||||
memcpy(&allvalues[nn], &valuepartner[i][dnum * m], dnumbytes);
|
||||
|
||||
@ -26,12 +26,13 @@ namespace LAMMPS_NS {
|
||||
|
||||
class FixNeighHistory : public Fix {
|
||||
public:
|
||||
int nlocal_neigh; // nlocal at last time neigh list was built
|
||||
int nall_neigh; // ditto for nlocal+nghost
|
||||
int use_bit_flag; // flag whether this fix uses the extra bit in the nlist
|
||||
int **firstflag; // ptr to each atom's neighbor flsg
|
||||
double **firstvalue; // ptr to each atom's values
|
||||
class Pair *pair; // ptr to pair style that uses neighbor history
|
||||
int nlocal_neigh; // nlocal at last time neigh list was built
|
||||
int nall_neigh; // ditto for nlocal+nghost
|
||||
int use_bit_flag; // flag whether this fix uses the extra bit in the nlist
|
||||
int **firstflag; // ptr to each atom's neighbor flag
|
||||
double **firstvalue; // ptr to each atom's values
|
||||
class Pair *pair; // ptr to pair style that uses neighbor history
|
||||
class FixSurfaceGlobal *fix; // ptr to fix surface/global that uses neighbor history
|
||||
|
||||
FixNeighHistory(class LAMMPS *, int, char **);
|
||||
~FixNeighHistory() override;
|
||||
@ -62,11 +63,17 @@ class FixNeighHistory : public Fix {
|
||||
|
||||
int get_dnum() const { return dnum; }
|
||||
int get_maxpartner() const { return maxpartner; }
|
||||
int *get_npartner() const { return npartner; }
|
||||
tagint **get_partner() const { return partner; }
|
||||
double **get_valuepartner() const { return valuepartner; }
|
||||
MyPage<tagint> *get_ipage_atom() const { return ipage_atom; }
|
||||
MyPage<double> *get_dpage_atom() const { return dpage_atom; }
|
||||
|
||||
protected:
|
||||
int newton_pair; // same as force setting
|
||||
int dnum, dnumbytes; // dnum = # of values per neighbor
|
||||
int onesided; // 1 for line/tri history, else 0
|
||||
int surface_global; // 1 for surface/global, else 0
|
||||
|
||||
int maxatom; // max size of firstflag and firstvalue
|
||||
int commflag; // mode of reverse comm to get ghost info
|
||||
|
||||
@ -242,6 +242,10 @@ class Memory : protected Pointers {
|
||||
return array;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
create a 3d array with a ragged 3rd dimension
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
template <typename TYPE>
|
||||
TYPE ***create_ragged(TYPE ***&array, int n1, int *n2, int **n3, const char *name)
|
||||
{
|
||||
|
||||
206
src/molecule.cpp
206
src/molecule.cpp
@ -41,7 +41,10 @@ static constexpr double SINERTIA = 0.4; // moment of inertia prefactor for sp
|
||||
|
||||
Molecule::Molecule(LAMMPS *lmp, int narg, char **arg, int &index) :
|
||||
Pointers(lmp), id(nullptr), x(nullptr), type(nullptr), molecule(nullptr), q(nullptr),
|
||||
radius(nullptr), rmass(nullptr), mu(nullptr), num_bond(nullptr), bond_type(nullptr),
|
||||
radius(nullptr), rmass(nullptr), mu(nullptr),
|
||||
lines(nullptr), tris(nullptr),
|
||||
molline(nullptr), typeline(nullptr), moltri(nullptr), typetri(nullptr),
|
||||
num_bond(nullptr), bond_type(nullptr),
|
||||
bond_atom(nullptr), num_angle(nullptr), angle_type(nullptr), angle_atom1(nullptr),
|
||||
angle_atom2(nullptr), angle_atom3(nullptr), num_dihedral(nullptr), dihedral_type(nullptr),
|
||||
dihedral_atom1(nullptr), dihedral_atom2(nullptr), dihedral_atom3(nullptr),
|
||||
@ -155,7 +158,7 @@ Molecule::Molecule(LAMMPS *lmp, int narg, char **arg, int &index) :
|
||||
// stats
|
||||
|
||||
if (title.empty()) title = "(no title)";
|
||||
if (me == 0)
|
||||
if (me == 0) {
|
||||
utils::logmesg(lmp,
|
||||
"Read molecule template {}:\n{}\n"
|
||||
" {} molecules\n"
|
||||
@ -167,6 +170,9 @@ Molecule::Molecule(LAMMPS *lmp, int narg, char **arg, int &index) :
|
||||
" {} impropers with max type {}\n",
|
||||
id, title, nmolecules, nfragments, natoms, ntypes, nbonds, nbondtypes, nangles,
|
||||
nangletypes, ndihedrals, ndihedraltypes, nimpropers, nimpropertypes);
|
||||
if (nlines) utils::logmesg(lmp," {} lines\n",nlines);
|
||||
if (ntris) utils::logmesg(lmp," {} triangles\n",ntris);
|
||||
}
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -442,6 +448,7 @@ void Molecule::read(int flag)
|
||||
if (text.empty()) continue;
|
||||
|
||||
// search line for header keywords and set corresponding variable
|
||||
|
||||
try {
|
||||
ValueTokenizer values(text);
|
||||
|
||||
@ -450,6 +457,14 @@ void Molecule::read(int flag)
|
||||
if (values.matches("^\\s*\\d+\\s+atoms")) {
|
||||
natoms = values.next_int();
|
||||
nwant = 2;
|
||||
|
||||
} else if (values.matches("^\\s*\\d+\\s+lines")) {
|
||||
nlines = values.next_int();
|
||||
nwant = 2;
|
||||
} else if (values.matches("^\\s*\\d+\\s+triangles")) {
|
||||
ntris = values.next_int();
|
||||
nwant = 2;
|
||||
|
||||
} else if (values.matches("^\\s*\\d+\\s+bonds")) {
|
||||
nbonds = values.next_int();
|
||||
nwant = 2;
|
||||
@ -462,6 +477,7 @@ void Molecule::read(int flag)
|
||||
} else if (values.matches("^\\s*\\d+\\s+impropers")) {
|
||||
nimpropers = values.next_int();
|
||||
nwant = 2;
|
||||
|
||||
} else if (values.matches("^\\s*\\d+\\s+fragments")) {
|
||||
nfragments = values.next_int();
|
||||
nwant = 2;
|
||||
@ -519,15 +535,31 @@ void Molecule::read(int flag)
|
||||
|
||||
// error checks
|
||||
|
||||
if (natoms < 1) error->all(FLERR, "No atoms or invalid atom count in molecule file");
|
||||
if (natoms < 0) error->all(FLERR, "No atoms or invalid atom count in molecule file");
|
||||
if (nlines < 0) error->all(FLERR,"Invalid line count in molecule file");
|
||||
if (ntris < 0) error->all(FLERR,"Invalid triangle count in molecule file");
|
||||
|
||||
if (nbonds < 0) error->all(FLERR, "Invalid bond count in molecule file");
|
||||
if (nangles < 0) error->all(FLERR, "Invalid angle count in molecule file");
|
||||
if (ndihedrals < 0) error->all(FLERR, "Invalid dihedral count in molecule file");
|
||||
if (nimpropers < 0) error->all(FLERR, "Invalid improper count in molecule file");
|
||||
|
||||
// count = vector for tallying bonds,angles,etc per atom
|
||||
if (natoms == 0 && nlines == 0 && ntris == 0)
|
||||
error->all(FLERR,"Molecule file must define either atoms or lines or triangles");
|
||||
|
||||
if (flag == 0) memory->create(count, natoms, "molecule:count");
|
||||
if (nlines && domain->dimension != 2)
|
||||
error->all(FLERR,"Molecule file with lines must be for 2d simulation");
|
||||
if (ntris && domain->dimension != 3)
|
||||
error->all(FLERR,"Molecule file with triangles must be for 3d simulation");
|
||||
|
||||
// count = vector for tallying values in different sections of file
|
||||
// set length to max of natoms, nlines, ntris
|
||||
|
||||
if (flag == 0) {
|
||||
int maxcount = MAX(natoms,nlines);
|
||||
maxcount = MAX(maxcount,ntris);
|
||||
memory->create(count, maxcount, "molecule:count");
|
||||
}
|
||||
|
||||
// grab keyword and skip next line
|
||||
|
||||
@ -588,6 +620,19 @@ void Molecule::read(int flag)
|
||||
else
|
||||
skip_lines(natoms, line, keyword);
|
||||
|
||||
} else if (keyword == "Lines") {
|
||||
lineflag = 1;
|
||||
if (flag)
|
||||
line_segments(line);
|
||||
else
|
||||
skip_lines(nlines, line, keyword);
|
||||
} else if (keyword == "Triangles") {
|
||||
triflag = 1;
|
||||
if (flag)
|
||||
triangles(line);
|
||||
else
|
||||
skip_lines(ntris, line, keyword);
|
||||
|
||||
} else if (keyword == "Bonds") {
|
||||
if (nbonds == 0) error->all(FLERR, "Found Bonds section but no nbonds setting in header");
|
||||
bondflag = tag_require = 1;
|
||||
@ -819,8 +864,8 @@ void Molecule::types(char *line)
|
||||
}
|
||||
// clang-format off
|
||||
/* ----------------------------------------------------------------------
|
||||
read molecules from file
|
||||
set nmolecules = max of any molecule type
|
||||
read molecule IDs from file
|
||||
set nmolecules = max of any molecule ID
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void Molecule::molecules(char *line)
|
||||
@ -1025,6 +1070,124 @@ void Molecule::masses(char *line)
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
read line segments from file
|
||||
do NOT subtract one from point indices
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void Molecule::line_segments(char *line)
|
||||
{
|
||||
for (int i = 0; i < nlines; i++) count[i] = 0;
|
||||
try {
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
readline(line);
|
||||
|
||||
ValueTokenizer values(utils::trim_comment(line));
|
||||
if (values.count() != 7)
|
||||
error->all(FLERR, "Invalid line in Lines section of molecule file: {}", line);
|
||||
|
||||
int iline = values.next_int() - 1;
|
||||
if (iline < 0 || iline >= nlines)
|
||||
error->all(FLERR, "Invalid line index in Lines section of molecule file");
|
||||
count[iline]++;
|
||||
molline[iline] = values.next_int();
|
||||
typeline[iline] = values.next_int();
|
||||
lines[iline][0] = values.next_double();
|
||||
lines[iline][1] = values.next_double();
|
||||
lines[iline][2] = values.next_double();
|
||||
lines[iline][3] = values.next_double();
|
||||
|
||||
// apply geometric operations to line points
|
||||
|
||||
lines[iline][0] *= sizescale;
|
||||
lines[iline][1] *= sizescale;
|
||||
lines[iline][2] *= sizescale;
|
||||
lines[iline][3] *= sizescale;
|
||||
}
|
||||
} catch (TokenizerException &e) {
|
||||
error->all(FLERR, "Invalid line in Lines section of molecule file: {}\n{}", e.what(), line);
|
||||
}
|
||||
|
||||
// check all line molecule-IDs and types
|
||||
// add toffset to line type
|
||||
|
||||
for (int i = 0; i < nlines; i++) {
|
||||
if (count[i] == 0)
|
||||
error->all(FLERR, "Line {} missing in Lines section of molecule file", i + 1);
|
||||
if (molline[i] < 0)
|
||||
error->all(FLERR,"Invalid line molecule ID in molecule file");
|
||||
if (typeline[i] <= 0)
|
||||
error->all(FLERR,"Invalid line type in molecule file");
|
||||
|
||||
typeline[i] += toffset;
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
read triangles from file
|
||||
do NOT subtract one from point indices
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void Molecule::triangles(char *line)
|
||||
{
|
||||
for (int i = 0; i < ntris; i++) count[i] = 0;
|
||||
try {
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
readline(line);
|
||||
|
||||
ValueTokenizer values(utils::trim_comment(line));
|
||||
if (values.count() != 12)
|
||||
error->all(FLERR, "Invalid triangle in Triangles section of molecule file: {}", line);
|
||||
|
||||
int itri = values.next_int() - 1;
|
||||
if (itri < 0 || itri >= ntris)
|
||||
error->all(FLERR, "Invalid triangle index in Triangles section of molecule file");
|
||||
count[itri]++;
|
||||
moltri[itri] = values.next_int();
|
||||
typetri[itri] = values.next_int();
|
||||
|
||||
tris[itri][0] = values.next_double();
|
||||
tris[itri][1] = values.next_double();
|
||||
tris[itri][2] = values.next_double();
|
||||
tris[itri][3] = values.next_double();
|
||||
tris[itri][4] = values.next_double();
|
||||
tris[itri][5] = values.next_double();
|
||||
tris[itri][6] = values.next_double();
|
||||
tris[itri][7] = values.next_double();
|
||||
tris[itri][8] = values.next_double();
|
||||
|
||||
// apply geometric operations to triangle points
|
||||
|
||||
tris[itri][0] *= sizescale;
|
||||
tris[itri][1] *= sizescale;
|
||||
tris[itri][2] *= sizescale;
|
||||
tris[itri][3] *= sizescale;
|
||||
tris[itri][4] *= sizescale;
|
||||
tris[itri][5] *= sizescale;
|
||||
tris[itri][6] *= sizescale;
|
||||
tris[itri][7] *= sizescale;
|
||||
tris[itri][8] *= sizescale;
|
||||
}
|
||||
|
||||
} catch (TokenizerException &e) {
|
||||
error->all(FLERR, "Invalid tri in Triangles section of molecule file: {}\n{}", e.what(), line);
|
||||
}
|
||||
|
||||
// check all triangle molecule-IDs and types
|
||||
// add toffset to triangle type
|
||||
|
||||
for (int i = 0; i < ntris; i++) {
|
||||
if (count[i] == 0)
|
||||
error->all(FLERR, "Triangle {} missing in Triangles section of molecule file", i + 1);
|
||||
if (moltri[i] < 0)
|
||||
error->all(FLERR,"Invalid triangle molecule ID in molecule file");
|
||||
if (typetri[i] <= 0)
|
||||
error->all(FLERR,"Invalid triangle type in molecule file");
|
||||
|
||||
typetri[i] += toffset;
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
read bonds from file
|
||||
set nbondtypes = max type of any bond
|
||||
@ -1921,6 +2084,7 @@ void Molecule::initialize()
|
||||
nbondtypes = nangletypes = ndihedraltypes = nimpropertypes = 0;
|
||||
nibody = ndbody = 0;
|
||||
nfragments = 0;
|
||||
nlines = ntris = 0;
|
||||
|
||||
bond_per_atom = angle_per_atom = dihedral_per_atom = improper_per_atom = 0;
|
||||
maxspecial = 0;
|
||||
@ -1930,6 +2094,7 @@ void Molecule::initialize()
|
||||
nspecialflag = specialflag = 0;
|
||||
shakeflag = shakeflagflag = shakeatomflag = shaketypeflag = 0;
|
||||
bodyflag = ibodyflag = dbodyflag = 0;
|
||||
lineflag = triflag = 0;
|
||||
|
||||
centerflag = massflag = comflag = inertiaflag = 0;
|
||||
tag_require = 0;
|
||||
@ -1940,6 +2105,13 @@ void Molecule::initialize()
|
||||
radius = nullptr;
|
||||
rmass = nullptr;
|
||||
|
||||
molline = NULL;
|
||||
typeline = NULL;
|
||||
lines = NULL;
|
||||
moltri = NULL;
|
||||
typetri = NULL;
|
||||
tris = NULL;
|
||||
|
||||
num_bond = nullptr;
|
||||
bond_type = nullptr;
|
||||
bond_atom = nullptr;
|
||||
@ -1992,6 +2164,19 @@ void Molecule::allocate()
|
||||
if (radiusflag) memory->create(radius, natoms, "molecule:radius");
|
||||
if (rmassflag) memory->create(rmass, natoms, "molecule:rmass");
|
||||
|
||||
// lines or triangles with corner points
|
||||
|
||||
if (lineflag) {
|
||||
memory->create(molline,nlines,"molecule:molline");
|
||||
memory->create(typeline,nlines,"molecule:typeline");
|
||||
memory->create(lines,nlines,4,"molecule:lines");
|
||||
}
|
||||
if (triflag) {
|
||||
memory->create(moltri,ntris,"molecule:moltri");
|
||||
memory->create(typetri,ntris,"molecule:typetri");
|
||||
memory->create(tris,ntris,9,"molecule:tris");
|
||||
}
|
||||
|
||||
// always allocate num_bond,num_angle,etc and nspecial
|
||||
// even if not in molecule file, initialize to 0
|
||||
// this is so methods that use these arrays don't have to check they exist
|
||||
@ -2068,6 +2253,13 @@ void Molecule::deallocate()
|
||||
|
||||
if (fragmentflag) { fragmentnames.clear(); }
|
||||
|
||||
memory->destroy(molline);
|
||||
memory->destroy(typeline);
|
||||
memory->destroy(lines);
|
||||
memory->destroy(moltri);
|
||||
memory->destroy(typetri);
|
||||
memory->destroy(tris);
|
||||
|
||||
memory->destroy(num_bond);
|
||||
memory->destroy(bond_type);
|
||||
memory->destroy(bond_atom);
|
||||
|
||||
@ -29,12 +29,14 @@ class Molecule : protected Pointers {
|
||||
|
||||
// number of atoms,bonds,etc in molecule
|
||||
// nibody,ndbody = # of integer/double fields in body
|
||||
// number of lines or triangles
|
||||
|
||||
int natoms;
|
||||
int nbonds, nangles, ndihedrals, nimpropers;
|
||||
int ntypes, nmolecules, nfragments;
|
||||
int nbondtypes, nangletypes, ndihedraltypes, nimpropertypes;
|
||||
int nibody, ndbody;
|
||||
int nlines,ntris;
|
||||
|
||||
// max bond,angle,etc per atom
|
||||
|
||||
@ -48,6 +50,7 @@ class Molecule : protected Pointers {
|
||||
int nspecialflag, specialflag;
|
||||
int shakeflag, shakeflagflag, shakeatomflag, shaketypeflag;
|
||||
int bodyflag, ibodyflag, dbodyflag;
|
||||
int lineflag, triflag;
|
||||
|
||||
// 1 if attribute defined or computed, 0 if not
|
||||
|
||||
@ -61,12 +64,19 @@ class Molecule : protected Pointers {
|
||||
|
||||
double **x; // displacement of each atom from origin
|
||||
int *type; // type of each atom
|
||||
tagint *molecule; // molecule of each atom
|
||||
tagint *molecule; // molecule-ID of each atom
|
||||
double *q; // charge on each atom
|
||||
double *radius; // radius of each atom
|
||||
double *rmass; // mass of each atom
|
||||
double **mu; // dipole vector of each atom
|
||||
|
||||
int *molline; // molecule-ID of each line
|
||||
int *typeline; // type of each line
|
||||
double **lines; // line end points
|
||||
int *moltri; // molecule-ID of each triangles
|
||||
int *typetri; // type of each triangle
|
||||
double **tris; // triangle corner points
|
||||
|
||||
int *num_bond; // bonds, angles, dihedrals, impropers for each atom
|
||||
int **bond_type;
|
||||
tagint **bond_atom;
|
||||
@ -147,6 +157,8 @@ class Molecule : protected Pointers {
|
||||
void diameters(char *);
|
||||
void dipoles(char *);
|
||||
void masses(char *);
|
||||
void line_segments(char *);
|
||||
void triangles(char *);
|
||||
void bonds(int, char *);
|
||||
void angles(int, char *);
|
||||
void dihedrals(int, char *);
|
||||
|
||||
@ -85,6 +85,7 @@ MyPoolChunk<T>::MyPoolChunk(int user_minchunk, int user_maxchunk, int user_nbin,
|
||||
}
|
||||
|
||||
/** Destroy class instance and free all allocated memory */
|
||||
|
||||
template <class T> MyPoolChunk<T>::~MyPoolChunk()
|
||||
{
|
||||
delete[] freehead;
|
||||
|
||||
@ -277,6 +277,7 @@ void NeighRequest::apply_flags(int flags)
|
||||
if (flags & REQ_RESPA_INOUT) { respainner = respaouter = 1; }
|
||||
if (flags & REQ_RESPA_ALL) { respainner = respamiddle = respaouter = 1; }
|
||||
if (flags & REQ_SSA) { ssa = 1; }
|
||||
if (flags & REQ_ONESIDED) { granonesided = 1; }
|
||||
// clang-format on
|
||||
}
|
||||
|
||||
|
||||
@ -946,8 +946,8 @@ int Neighbor::init_pair()
|
||||
|
||||
flag = choose_pair(requests[i]);
|
||||
lists[i]->pair_method = flag;
|
||||
if (flag < 0)
|
||||
error->all(FLERR,"Requested neighbor pair method does not exist");
|
||||
if (flag < 0 && comm->me == 0)
|
||||
error->warning(FLERR,"Requested neighbor pair method does not exist");
|
||||
}
|
||||
|
||||
// instantiate unique Bin,Stencil classes in neigh_bin & neigh_stencil vecs
|
||||
@ -1283,11 +1283,12 @@ void Neighbor::morph_skip()
|
||||
// these flags must be same,
|
||||
// else 2 lists do not store same pairs
|
||||
// or their data structures are different
|
||||
// NOTE: need check for 2 Kokkos flags?
|
||||
// no need to check for history flag
|
||||
// it does not affect what pairs are stored in neigh list
|
||||
// NOTE: need to check for 2 Kokkos flags ?
|
||||
|
||||
if (irq->ghost != jrq->ghost) continue;
|
||||
if (irq->size != jrq->size) continue;
|
||||
if (irq->history != jrq->history) continue;
|
||||
if (irq->bond != jrq->bond) continue;
|
||||
if (irq->omp != jrq->omp) continue;
|
||||
if (irq->intel != jrq->intel) continue;
|
||||
@ -1304,12 +1305,12 @@ void Neighbor::morph_skip()
|
||||
// else create a new identical list except non-skip
|
||||
// for new list, set neigh = 1, skip = 0, no skip vec/array,
|
||||
// copy unique flag (since copy_request() will not do it)
|
||||
// note: parents of skip lists do not have associated history
|
||||
// b/c child skip lists have the associated history
|
||||
// ensure parent history flag is set if any child sets history flag
|
||||
|
||||
if (jj < nrequest) {
|
||||
irq->skiplist = j;
|
||||
irq->trim = trim_flag;
|
||||
if (irq->history) jrq->history = 1;
|
||||
} else {
|
||||
int newrequest = request(this,-1);
|
||||
irq->skiplist = newrequest;
|
||||
@ -1319,6 +1320,7 @@ void Neighbor::morph_skip()
|
||||
nrq->pair = nrq->fix = nrq->compute = nrq->command = 0;
|
||||
nrq->neigh = 1;
|
||||
nrq->skip = 0;
|
||||
if (irq->history) nrq->history = 1;
|
||||
if (irq->unique) nrq->unique = 1;
|
||||
|
||||
sort_requests();
|
||||
@ -1374,8 +1376,8 @@ void Neighbor::morph_granular()
|
||||
// force parent newton off (newton = 2) to enable onesided skip by child
|
||||
// set parent granonesided = 0, so it stores all neighs in usual manner
|
||||
// set off2on = 1 for all children, since they expect newton on lists
|
||||
// this is b/c granonesided only set by line/gran and tri/gran which
|
||||
// both require system newton on
|
||||
// this is b/c granonesided is currently only set by line/tri gran
|
||||
// both of those pair styles require newton on
|
||||
|
||||
if (onesided == 2) {
|
||||
irq->newton = 2;
|
||||
@ -1447,10 +1449,12 @@ void Neighbor::morph_halffull()
|
||||
// these flags must be same,
|
||||
// else 2 lists do not store same pairs
|
||||
// or their data structures are different
|
||||
// no need to check for history flag
|
||||
// it does not affect what pairs are stored in neigh list
|
||||
// NOTE: need to check for 2 Kokkos flags ?
|
||||
|
||||
if (irq->ghost != jrq->ghost) continue;
|
||||
if (irq->size != jrq->size) continue;
|
||||
if (irq->history != jrq->history) continue;
|
||||
if (irq->bond != jrq->bond) continue;
|
||||
if (irq->omp != jrq->omp) continue;
|
||||
if (irq->intel != jrq->intel) continue;
|
||||
@ -1556,11 +1560,13 @@ void Neighbor::morph_copy_trim()
|
||||
// these flags must be same,
|
||||
// else 2 lists do not store same pairs
|
||||
// or their data structures are different
|
||||
// no need to check omp b/c it stores same pairs
|
||||
// NOTE: need check for 2 Kokkos flags?
|
||||
// ghost flag logic was checked above
|
||||
// no need to check for history flag
|
||||
// it does not affect what pairs are stored in neigh list
|
||||
// no need to check for omp flag b/c it stores same pairs
|
||||
// NOTE: need to check for 2 Kokkos flags ?
|
||||
|
||||
if (irq->size != jrq->size) continue;
|
||||
if (irq->history != jrq->history) continue;
|
||||
if (irq->bond != jrq->bond) continue;
|
||||
if (irq->intel != jrq->intel) continue;
|
||||
if (irq->kokkos_host && !jrq->kokkos_host) continue;
|
||||
@ -2104,12 +2110,12 @@ int Neighbor::choose_pair(NeighRequest *rq)
|
||||
|
||||
int molecular = atom->molecular;
|
||||
|
||||
//printf("PAIR RQ FLAGS: hf %d %d n %d g %d sz %d gos %d r %d b %d o %d i %d "
|
||||
// "kk %d %d ss %d dn %d sk %d cp %d hf %d oo %d\n",
|
||||
// rq->half,rq->full,rq->newton,rq->ghost,rq->size,
|
||||
// rq->granonesided,rq->respaouter,rq->bond,rq->omp,rq->intel,
|
||||
// rq->kokkos_host,rq->kokkos_device,rq->ssa,rq->dnum,
|
||||
// rq->skip,rq->copy,rq->halffull,rq->off2on);
|
||||
//printf("PAIR RQ FLAGS: hf %d %d nw %d gh %d sz %d gos %d ro %d bn %d om %d in %d "
|
||||
// "kk %d %d ss %d sk %d cp %d hf %d o2o %d\n",
|
||||
// rq->half,rq->full,rq->newton,rq->ghost,rq->size,
|
||||
// rq->granonesided,rq->respaouter,rq->bond,rq->omp,rq->intel,
|
||||
// rq->kokkos_host,rq->kokkos_device,rq->ssa,
|
||||
// rq->skip,rq->copy,rq->halffull,rq->off2on);
|
||||
|
||||
// use request and system settings to match exactly one NPair class mask
|
||||
// checks are bitwise using NeighConst bit masks
|
||||
|
||||
@ -355,6 +355,7 @@ namespace NeighConst {
|
||||
REQ_NEWTON_ON = 1 << 8,
|
||||
REQ_NEWTON_OFF = 1 << 9,
|
||||
REQ_SSA = 1 << 10,
|
||||
REQ_ONESIDED = 1 << 11
|
||||
};
|
||||
} // namespace NeighConst
|
||||
|
||||
|
||||
192
src/stl_reader.cpp
Normal file
192
src/stl_reader.cpp
Normal file
@ -0,0 +1,192 @@
|
||||
// clang-format off
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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 "stl_reader.h"
|
||||
|
||||
#include "comm.h"
|
||||
#include "error.h"
|
||||
#include "memory.h"
|
||||
#include "text_file_reader.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
#define DELTA 16384
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
STLReader::STLReader(LAMMPS *lmp) : Pointers(lmp)
|
||||
{
|
||||
ntris = maxtris = 0;
|
||||
tris = nullptr;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
STLReader::~STLReader()
|
||||
{
|
||||
memory->destroy(tris);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
int STLReader::read_file(const char *filename, double **&caller_tris)
|
||||
{
|
||||
int me = comm->me;
|
||||
|
||||
if (me == 0) {
|
||||
|
||||
// open file (text or binary)
|
||||
|
||||
FILE *fp = fopen(filename, "rb");
|
||||
if (fp == nullptr) error->one(FLERR, "Cannot open file {}: {}", filename, utils::getsyserror());
|
||||
|
||||
// try reading the file in ASCII format
|
||||
|
||||
TextFileReader reader(fp, "STL mesh");
|
||||
|
||||
try {
|
||||
|
||||
char *line = reader.next_line();
|
||||
if (!line || !utils::strmatch(line, "^solid"))
|
||||
throw TokenizerException("Invalid STL mesh file format", "");
|
||||
|
||||
line += 6;
|
||||
if (utils::strmatch(line, "^binary"))
|
||||
throw TokenizerException("Invalid STL mesh file format", "");
|
||||
|
||||
utils::logmesg(lmp, "Reading STL object {} from text file {}\n", utils::trim(line), filename);
|
||||
|
||||
while ((line = reader.next_line())) {
|
||||
|
||||
// next line is facet line with 5 words
|
||||
|
||||
auto values = utils::split_words(line);
|
||||
|
||||
// otherwise next line should be endsolid and are done reading file
|
||||
|
||||
if ((values.size() != 5) || !utils::strmatch(values[0], "^facet")) {
|
||||
if (!utils::strmatch(values[0], "^endsolid"))
|
||||
throw TokenizerException("Error reading endsolid", "");
|
||||
break;
|
||||
}
|
||||
|
||||
// ignore normal
|
||||
|
||||
line = reader.next_line(2);
|
||||
if (!line || !utils::strmatch(line, "^ *outer *loop"))
|
||||
throw TokenizerException("Error reading outer loop", "");
|
||||
|
||||
// three corner points of a single triangle
|
||||
|
||||
if (ntris == maxtris) {
|
||||
maxtris += DELTA;
|
||||
memory->grow(tris,maxtris,9,"stl_reader:tris");
|
||||
}
|
||||
|
||||
for (int k = 0; k < 3; ++k) {
|
||||
line = reader.next_line(4);
|
||||
values = utils::split_words(line);
|
||||
if ((values.size() != 4) || !utils::strmatch(values[0], "^vertex"))
|
||||
throw TokenizerException("Error reading vertex", "");
|
||||
|
||||
tris[ntris][3*k+0] = utils::numeric(FLERR, values[1], false, lmp);
|
||||
tris[ntris][3*k+1] = utils::numeric(FLERR, values[2], false, lmp);
|
||||
tris[ntris][3*k+2] = utils::numeric(FLERR, values[3], false, lmp);
|
||||
}
|
||||
|
||||
line = reader.next_line(1);
|
||||
if (!line || !utils::strmatch(line, "^ *endloop"))
|
||||
throw TokenizerException("Error reading endloop", "");
|
||||
line = reader.next_line(1);
|
||||
if (!line || !utils::strmatch(line, "^ *endfacet"))
|
||||
throw TokenizerException("Error reading endfacet", "");
|
||||
|
||||
ntris++;
|
||||
}
|
||||
|
||||
// if read as text file failed, try reading as binary file
|
||||
|
||||
} catch (std::exception &e) {
|
||||
|
||||
if (utils::strmatch(e.what(), "^Invalid STL mesh file format")) {
|
||||
char title[80];
|
||||
float triangle[12];
|
||||
uint32_t untri;
|
||||
uint16_t attr;
|
||||
size_t count;
|
||||
|
||||
rewind(fp);
|
||||
count = fread(title, sizeof(char), 80, fp);
|
||||
title[79] = '\0';
|
||||
count = fread(&untri, sizeof(untri), 1, fp);
|
||||
if (count <= 0) {
|
||||
error->one(FLERR, "Error reading STL file {}: {}", filename, utils::getsyserror());
|
||||
} else {
|
||||
utils::logmesg(lmp, "Reading STL object {} from binary file {}\n", utils::trim(title),
|
||||
filename);
|
||||
}
|
||||
|
||||
if (untri > MAXSMALLINT)
|
||||
error->one(FLERR, "Triangle counts in STL file exceed integer limit");
|
||||
|
||||
ntris = untri;
|
||||
memory->create(tris,ntris,9,"stl_reader:tris");
|
||||
|
||||
for (int i = 0; i < ntris; ++i) {
|
||||
count = fread(triangle, sizeof(float), 12, fp);
|
||||
if (count != 12)
|
||||
error->one(FLERR, "Error reading STL file {}: {}", filename, utils::getsyserror());
|
||||
count = fread(&attr, sizeof(attr), 1, fp);
|
||||
|
||||
// ignore normal
|
||||
|
||||
int m = 0;
|
||||
for (int j = 0; j < 3; ++j)
|
||||
for (int k = 0; k < 3; ++k)
|
||||
tris[i][m++] = triangle[3*j + k + 3];
|
||||
}
|
||||
|
||||
} else {
|
||||
error->all(FLERR, "Error reading STL file {}: {}", filename, e.what());
|
||||
}
|
||||
}
|
||||
|
||||
if (fp) fclose(fp);
|
||||
}
|
||||
|
||||
// MPI broadcast of triangle vertex coords to all procs
|
||||
// allow for 9*ntris to exceed max-allowed size of MPI_Bcast()
|
||||
|
||||
MPI_Bcast(&ntris,1,MPI_INT,0,world);
|
||||
if (ntris == 0) error->all(FLERR,"STL file has no triangles");
|
||||
if (me) memory->create(tris,ntris,9,"stl_reader:tris");
|
||||
|
||||
bigint ntotal = (bigint) ntris * 9;
|
||||
if (ntotal < MAXSMALLINT)
|
||||
MPI_Bcast(&tris[0][0],9*ntris,MPI_DOUBLE,0,world);
|
||||
else {
|
||||
double *source = &tris[0][0];
|
||||
bigint n = 0;
|
||||
while (n < ntotal) {
|
||||
int nsize = MIN(MAXSMALLINT,ntotal-n);
|
||||
MPI_Bcast(&source[n],nsize,MPI_DOUBLE,0,world);
|
||||
n += nsize;
|
||||
}
|
||||
}
|
||||
|
||||
// return values
|
||||
|
||||
caller_tris = tris;
|
||||
return ntris;
|
||||
}
|
||||
35
src/stl_reader.h
Normal file
35
src/stl_reader.h
Normal file
@ -0,0 +1,35 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
LAMMPS development team: developers@lammps.org
|
||||
|
||||
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_STL_READER_H
|
||||
#define LMP_STL_READER_H
|
||||
|
||||
#include "pointers.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class STLReader : protected Pointers {
|
||||
public:
|
||||
STLReader(class LAMMPS *);
|
||||
~STLReader();
|
||||
int read_file(const char *, double **&);
|
||||
|
||||
private:
|
||||
int ntris,maxtris;
|
||||
double **tris;
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
@ -25,6 +25,7 @@ eam_generate 2nd tool to generate EAM alloy potential files
|
||||
eff scripts for working with the eFF (electron force field)
|
||||
emacs add-ons to EMACS editor for editing LAMMPS input scripts
|
||||
fep scripts for free-energy perturbation with FEP pkg
|
||||
granlar_surfaces scripts for working with surfaces of tris/lines (3d/2d)
|
||||
i-pi Python wrapper for performing path-integral MD (PIMD)
|
||||
ipp input pre-processor Perl tool for creating input scripts
|
||||
kate add-ons to Kate editor for editing LAMMPS input scripts
|
||||
|
||||
704
tools/gransurf/refine.py
Normal file
704
tools/gransurf/refine.py
Normal file
@ -0,0 +1,704 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# Script: refine.py
|
||||
# Purpose: refine a set of granular surface elements for input to LAMMPS
|
||||
# elements in 2d = line segments, elements in 3d = triangles
|
||||
# Syntax: refine.py dim insource infile thresh outsource outfile
|
||||
# dim = 2 or 3
|
||||
# insource = mol for molecule file, stl for STL file
|
||||
# infile = molecule or STL filename
|
||||
# thresh = max size of resulting surface eleents
|
||||
# outsource = mol for molecule file, stl for STL file
|
||||
# outfile = molecule or STL filename
|
||||
# Author: Steve Plimpton (Sandia), sjplimp at gmail.com
|
||||
|
||||
# TODO:
|
||||
# print stats at each stage
|
||||
# could also work with local surfs via data and/or dump file
|
||||
# howto assign tri type, molID for output into molfile
|
||||
# maybe should be persisted from input molfile (but not input STL)
|
||||
|
||||
import sys
|
||||
from operator import itemgetter
|
||||
from math import sqrt
|
||||
|
||||
# ----------
|
||||
# classes
|
||||
# ----------
|
||||
|
||||
class Point:
|
||||
def __init__(self,x,y,z):
|
||||
self.x = (x,y,z)
|
||||
|
||||
class Line:
|
||||
def __init__(self,point1,point2):
|
||||
self.active = 1
|
||||
self.point1 = point1
|
||||
self.point2 = point2
|
||||
self.p1 = self.p2 = -1
|
||||
|
||||
class Edge: # unique tri edges
|
||||
def __init__(self,p1,p2):
|
||||
self.active = 1
|
||||
self.p1 = p1
|
||||
self.p2 = p2
|
||||
self.neigh = []
|
||||
self.which = []
|
||||
|
||||
class Tri:
|
||||
def __init__(self,point1,point2,point3):
|
||||
self.active = 1
|
||||
self.point1 = point1
|
||||
self.point2 = point2
|
||||
self.point3 = point3
|
||||
self.p1 = self.p2 = self.p3 = -1
|
||||
|
||||
# ----------
|
||||
# functions
|
||||
# ----------
|
||||
|
||||
def error(txt=None):
|
||||
if not txt: print("Syntax: refine.py dim insource infile thresh outsource outfile")
|
||||
else: print("ERROR:",txt)
|
||||
sys.exit()
|
||||
|
||||
def distance(x1,x2):
|
||||
dx = x1[0] - x2[0]
|
||||
dy = x1[1] - x2[1]
|
||||
dz = x1[2] - x2[2]
|
||||
r = sqrt(dx*dx + dy*dy + dz*dz)
|
||||
return r
|
||||
|
||||
def midpt(x1,x2):
|
||||
xnew = 0.5 * (x1[0] + x2[0])
|
||||
ynew = 0.5 * (x1[1] + x2[1])
|
||||
znew = 0.5 * (x1[2] + x2[2])
|
||||
return (xnew,ynew,znew)
|
||||
|
||||
# mybisect in place of Python 3.10 bisect module
|
||||
# NOTE: explain why Python module does not work
|
||||
# forward: one > all values before its insertion point
|
||||
# reverse: one > all values after its insertion point
|
||||
|
||||
def mybisect(vec,one,func,reverse):
|
||||
value = func(one)
|
||||
ilo = 0
|
||||
ihi = len(vec)
|
||||
niter = 0
|
||||
while 1:
|
||||
if niter > 10: break
|
||||
niter += 1
|
||||
imid = (ilo+ihi) // 2
|
||||
if ilo == ihi: break
|
||||
if not reverse:
|
||||
if value <= func(vec[imid]): ihi = imid
|
||||
else: ilo = imid+1
|
||||
else:
|
||||
if value > func(vec[imid]): ihi = imid
|
||||
else: ilo = imid+1
|
||||
return imid
|
||||
|
||||
# debug functions
|
||||
|
||||
def print_lines(txt,lines):
|
||||
nactive = 0
|
||||
for line in lines:
|
||||
if line.active: nactive += 1
|
||||
print(txt,len(lines),nactive)
|
||||
for iline,line in enumerate(lines):
|
||||
if not line.active: continue
|
||||
print(iline,line.active,distance(points[line.p1].x,points[line.p2].x),
|
||||
line.point1,line.point2)
|
||||
|
||||
def print_edges(txt,edges):
|
||||
nactive = 0
|
||||
for edge in edges:
|
||||
if edge.active: nactive += 1
|
||||
print(txt,len(edges),nactive)
|
||||
for iedge,edge in enumerate(edges):
|
||||
if not edge.active: continue
|
||||
print(iedge,edge.active,distance(points[edge.p1].x,points[edge.p2].x),
|
||||
edge.p1,edge.p2,points[edge.p1].x,points[edge.p2].x,
|
||||
edge.neigh,edge.which)
|
||||
|
||||
def print_tris(txt,tris):
|
||||
nactive = 0
|
||||
for tri in tris:
|
||||
if tri.active: nactive += 1
|
||||
print(txt,len(tris),nactive)
|
||||
for itri,tri in enumerate(tris):
|
||||
if not tri.active: continue
|
||||
print(itri,tri.active,distance(points[tri.p1].x,points[tri.p2].x),
|
||||
distance(points[tri.p2].x,points[tri.p3].x),
|
||||
distance(points[tri.p3].x,points[tri.p1].x),
|
||||
tri.point1,tri.point2,tri.point3)
|
||||
|
||||
# read a molecule file with lines
|
||||
|
||||
def read_molfile_2d(filename):
|
||||
filelines = open(filename,"r").readlines()[1:]
|
||||
|
||||
nlines = 0
|
||||
|
||||
# read header of molecule file
|
||||
|
||||
for i,oneline in enumerate(filelines):
|
||||
oneline = oneline.strip()
|
||||
if not oneline: continue
|
||||
if oneline[0] == '#': continue
|
||||
if nlines: break
|
||||
words = oneline.split()
|
||||
if words[1] == "lines": nlines = int(words[0])
|
||||
if nlines <= 0: error("Molecule file header is invalid for 2d lines")
|
||||
|
||||
# read Lines section of molecule file
|
||||
|
||||
section_word = 0
|
||||
count = 0
|
||||
lines = []
|
||||
|
||||
for oneline in filelines[i:]:
|
||||
oneline = oneline.strip()
|
||||
if not oneline: continue
|
||||
if section_word == 0:
|
||||
if oneline != "Lines":
|
||||
error("Molecule file section is invalid for 2d lines")
|
||||
section_word = 1
|
||||
continue
|
||||
count += 1
|
||||
words = oneline.split()
|
||||
if int(words[0]) != count:
|
||||
error("Molecule file section is invalid for 2d lines")
|
||||
line = Line((float(words[3]),float(words[4]),0.0),
|
||||
(float(words[5]),float(words[6]),0.0))
|
||||
lines.append(line)
|
||||
|
||||
if count != nlines:
|
||||
error("Molecule file section is invalid for 2d lines")
|
||||
|
||||
return lines
|
||||
|
||||
# read a molecule file with tris
|
||||
|
||||
def read_molfile_3d(filename):
|
||||
filelines = open(filename,"r").readlines()[1:]
|
||||
|
||||
ntris = 0
|
||||
|
||||
# read header of molecule file
|
||||
|
||||
for i,oneline in enumerate(filelines):
|
||||
oneline = oneline.strip()
|
||||
if not oneline: continue
|
||||
if oneline[0] == '#': continue
|
||||
if ntris: break
|
||||
words = oneline.split()
|
||||
if words[1] == "triangles": ntris = int(words[0])
|
||||
if ntris <= 0: error("Molecule file header is invalid for 3d triangles")
|
||||
|
||||
# read Lines section of molecule file
|
||||
|
||||
section_word = 0
|
||||
count = 0
|
||||
tris = []
|
||||
|
||||
for oneline in filelines[i:]:
|
||||
oneline = oneline.strip()
|
||||
if not oneline: continue
|
||||
if section_word == 0:
|
||||
if oneline != "Triangles":
|
||||
error("Molecule file section is invalid for 3d triangles")
|
||||
section_word = 1
|
||||
continue
|
||||
count += 1
|
||||
words = oneline.split()
|
||||
if int(words[0]) != count:
|
||||
error("Molecule file section is invalid for 3d triangles")
|
||||
tri = Tri((float(words[3]),float(words[4]),float(words[5])),
|
||||
(float(words[6]),float(words[7]),float(words[8])),
|
||||
(float(words[9]),float(words[10]),float(words[11])))
|
||||
tris.append(tri)
|
||||
|
||||
if count != ntris:
|
||||
error("Molecule file section is invalid for 3d triangles")
|
||||
|
||||
return tris
|
||||
|
||||
# read an STL file with tris
|
||||
|
||||
def read_stlfile(filename):
|
||||
filelines = open(filename,"r").readlines()
|
||||
|
||||
if not filelines[0].startswith("solid "):
|
||||
error("STL file first line is invalid")
|
||||
if not filelines[-1].startswith("endsolid "):
|
||||
error("STL file last line is invalid")
|
||||
|
||||
filelines = filelines[1:-1]
|
||||
if (len(filelines) % 7) != 0:
|
||||
error("STL file facet format is invalid")
|
||||
|
||||
tris = []
|
||||
|
||||
iline = 2
|
||||
while iline < len(filelines):
|
||||
v1 = filelines[iline].split()
|
||||
v2 = filelines[iline+1].split()
|
||||
v3 = filelines[iline+2].split()
|
||||
if v1[0] != "vertex" or v2[0] != "vertex" or v3[0] != "vertex":
|
||||
error("STL file vertex format is invalid")
|
||||
tri = Tri((float(v1[1]),float(v1[2]),float(v1[3])),
|
||||
(float(v2[1]),float(v2[2]),float(v2[3])),
|
||||
(float(v3[1]),float(v3[2]),float(v3[3])))
|
||||
tris.append(tri)
|
||||
iline += 7
|
||||
|
||||
return tris
|
||||
|
||||
# create list of unique line end points
|
||||
|
||||
def extract_points_2d(lines):
|
||||
points = []
|
||||
hash = {}
|
||||
for line in lines:
|
||||
if line.point1 not in hash:
|
||||
line.p1 = len(points)
|
||||
hash[line.point1] = len(points)
|
||||
pt = line.point1
|
||||
point = Point(pt[0],pt[1],0.0)
|
||||
points.append(point)
|
||||
else: line.p1 = hash[line.point1]
|
||||
if line.point2 not in hash:
|
||||
line.p2 = len(points)
|
||||
hash[line.point2] = len(points)
|
||||
pt = line.point2
|
||||
point = Point(pt[0],pt[1],0.0)
|
||||
points.append(point)
|
||||
else: line.p2 = hash[line.point2]
|
||||
return points
|
||||
|
||||
# create list of unique tri corner points
|
||||
|
||||
def extract_points_3d(tris):
|
||||
points = []
|
||||
hash = {}
|
||||
for tri in tris:
|
||||
if tri.point1 not in hash:
|
||||
tri.p1 = len(points)
|
||||
hash[tri.point1] = len(points)
|
||||
pt = tri.point1
|
||||
point = Point(pt[0],pt[1],pt[2])
|
||||
points.append(point)
|
||||
else: tri.p1 = hash[tri.point1]
|
||||
if tri.point2 not in hash:
|
||||
tri.p2 = len(points)
|
||||
hash[tri.point2] = len(points)
|
||||
pt = tri.point2
|
||||
point = Point(pt[0],pt[1],pt[2])
|
||||
points.append(point)
|
||||
else: tri.p2 = hash[tri.point2]
|
||||
if tri.point3 not in hash:
|
||||
tri.p3 = len(points)
|
||||
hash[tri.point3] = len(points)
|
||||
pt = tri.point3
|
||||
point = Point(pt[0],pt[1],pt[2])
|
||||
points.append(point)
|
||||
else: tri.p3 = hash[tri.point3]
|
||||
return points
|
||||
|
||||
# create list of unique tri edges
|
||||
# also create ehash so can search for edges in refine_3d()
|
||||
# key = (p1,p2), value = index into list of edges
|
||||
|
||||
def edges_3d(points,tris):
|
||||
hash = {}
|
||||
for i,tri in enumerate(tris):
|
||||
if (tri.p1,tri.p2) in hash: hash[(tri.p1,tri.p2)].append((i,0))
|
||||
elif (tri.p2,tri.p1) in hash: hash[(tri.p2,tri.p1)].append((i,0))
|
||||
else: hash[(tri.p1,tri.p2)] = [(i,0)]
|
||||
if (tri.p2,tri.p3) in hash: hash[(tri.p2,tri.p3)].append((i,1))
|
||||
elif (tri.p3,tri.p2) in hash: hash[(tri.p3,tri.p2)].append((i,1))
|
||||
else: hash[(tri.p2,tri.p3)] = [(i,1)]
|
||||
if (tri.p3,tri.p1) in hash: hash[(tri.p3,tri.p1)].append((i,2))
|
||||
elif (tri.p1,tri.p3) in hash: hash[(tri.p1,tri.p3)].append((i,2))
|
||||
else: hash[(tri.p3,tri.p1)] = [(i,2)]
|
||||
|
||||
edges = []
|
||||
for key,value in hash.items():
|
||||
edge = Edge(key[0],key[1])
|
||||
edge.neigh = [item[0] for item in value]
|
||||
edge.which = [item[1] for item in value]
|
||||
edges.append(edge)
|
||||
|
||||
ehash = {}
|
||||
for iedge,edge in enumerate(edges):
|
||||
ehash[(edge.p1,edge.p2)] = iedge
|
||||
|
||||
return edges,ehash
|
||||
|
||||
# successively refine lines which are too long
|
||||
|
||||
def refine_2d(points,lines):
|
||||
sizes = []
|
||||
for iline,line in enumerate(lines):
|
||||
sizes.append((iline,distance(points[line.p1].x,points[line.p2].x)))
|
||||
sizes = sorted(sizes,key=itemgetter(1),reverse=True)
|
||||
|
||||
# loop until no line is too long
|
||||
|
||||
while sizes[0][1] > thresh:
|
||||
#print(sizes)
|
||||
iline = sizes[0][0]
|
||||
dist = sizes[0][1]
|
||||
|
||||
# add new point
|
||||
|
||||
middle = midpt(points[lines[iline].p1].x,points[lines[iline].p2].x)
|
||||
point = Point(middle[0],middle[1],0.0)
|
||||
points.append(point)
|
||||
npoints = len(points)
|
||||
|
||||
# mark split line as inactive
|
||||
# add 2 new lines from split line
|
||||
|
||||
lines[iline].active = 0
|
||||
|
||||
newline = Line(lines[iline].point1,middle)
|
||||
newline.p1 = lines[iline].p1
|
||||
newline.p2 = npoints - 1
|
||||
lines.append(newline)
|
||||
inewline1 = len(lines) - 1
|
||||
|
||||
newline = Line(lines[iline].point2,middle)
|
||||
newline.p1 = lines[iline].p2
|
||||
newline.p2 = npoints - 1
|
||||
lines.append(newline)
|
||||
inewline2 = len(lines) - 1
|
||||
|
||||
nlines = len(lines)
|
||||
|
||||
# remove split line from sorted list
|
||||
# add 2 new lines to sorted list in appropriate locations
|
||||
|
||||
del sizes[0]
|
||||
|
||||
newsize = (inewline1,0.5*dist)
|
||||
isize = mybisect(sizes,newsize,sizeindex,1)
|
||||
sizes.insert(isize,newsize)
|
||||
|
||||
newsize = (inewline2,0.5*dist)
|
||||
isize = mybisect(sizes,newsize,sizeindex,1)
|
||||
sizes.insert(isize,newsize)
|
||||
|
||||
# successively refine tris while any edge is too long
|
||||
|
||||
def refine_3d(points,edges,ehash,tris):
|
||||
sizes = []
|
||||
for iedge,edge in enumerate(edges):
|
||||
sizes.append((iedge,distance(points[edge.p1].x,points[edge.p2].x)))
|
||||
sizes = sorted(sizes,key=itemgetter(1),reverse=True)
|
||||
|
||||
# loop until no tri edge is too long
|
||||
|
||||
while sizes[0][1] > thresh:
|
||||
iedge = sizes[0][0]
|
||||
dist = sizes[0][1]
|
||||
edges[iedge].active = 0
|
||||
|
||||
# add new point
|
||||
|
||||
middle = midpt(points[edges[iedge].p1].x,points[edges[iedge].p2].x)
|
||||
point = Point(middle[0],middle[1],middle[2])
|
||||
points.append(point)
|
||||
npoints = len(points)
|
||||
|
||||
# loop over tris sharing the split edge
|
||||
# mark each tri inactive
|
||||
# add 2 new tris to replace inactive tri
|
||||
# add new edge between pair of new tris
|
||||
# reset neighs of non-split and non-new edge for each tri in pair
|
||||
# prev_nedges/ntris = number of edges and tris before adding new ones
|
||||
|
||||
neigh = edges[iedge].neigh
|
||||
which = edges[iedge].which
|
||||
nedges_prev = len(edges)
|
||||
ntris_prev = len(tris)
|
||||
|
||||
for itri,iwhich in zip(neigh,which):
|
||||
tris[itri].active = 0
|
||||
|
||||
# NOTE:are not updating neighs in edge correctly
|
||||
|
||||
if iwhich == 0:
|
||||
newtri = Tri(tris[itri].point1,middle,tris[itri].point3)
|
||||
newtri.p1 = tris[itri].p1
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p3
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p3,tris[itri].p1) in ehash:
|
||||
jedge = ehash[(tris[itri].p3,tris[itri].p1)]
|
||||
else: jedge = ehash[(tris[itri].p1,tris[itri].p3)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newtri = Tri(tris[itri].point2,middle,tris[itri].point3)
|
||||
newtri.p1 = tris[itri].p2
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p3
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p2,tris[itri].p3) in ehash:
|
||||
jedge = ehash[(tris[itri].p2,tris[itri].p3)]
|
||||
else: jedge = ehash[(tris[itri].p3,tris[itri].p2)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newedge = Edge(tris[itri].p3,npoints-1)
|
||||
newedge.neigh = [len(tris)-2,len(tris)-1]
|
||||
newedge.which = [1,1]
|
||||
edges.append(newedge)
|
||||
ehash[(newedge.p1,newedge.p2)] = len(edges)-1
|
||||
|
||||
elif iwhich == 1:
|
||||
newtri = Tri(tris[itri].point2,middle,tris[itri].point1)
|
||||
newtri.p1 = tris[itri].p2
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p1
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p1,tris[itri].p2) in ehash:
|
||||
jedge = ehash[(tris[itri].p1,tris[itri].p2)]
|
||||
else: jedge = ehash[(tris[itri].p2,tris[itri].p1)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newtri = Tri(tris[itri].point3,middle,tris[itri].point1)
|
||||
newtri.p1 = tris[itri].p3
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p1
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p3,tris[itri].p1) in ehash:
|
||||
jedge = ehash[(tris[itri].p3,tris[itri].p1)]
|
||||
else: jedge = ehash[(tris[itri].p1,tris[itri].p3)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newedge = Edge(tris[itri].p1,npoints-1)
|
||||
newedge.neigh = [len(tris)-2,len(tris)-1]
|
||||
newedge.which = [1,1]
|
||||
edges.append(newedge)
|
||||
ehash[(newedge.p1,newedge.p2)] = len(edges)-1
|
||||
|
||||
elif iwhich == 2:
|
||||
newtri = Tri(tris[itri].point3,middle,tris[itri].point2)
|
||||
newtri.p1 = tris[itri].p3
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p2
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p2,tris[itri].p3) in ehash:
|
||||
jedge = ehash[(tris[itri].p2,tris[itri].p3)]
|
||||
else: jedge = ehash[(tris[itri].p3,tris[itri].p2)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newtri = Tri(tris[itri].point1,middle,tris[itri].point2)
|
||||
newtri.p1 = tris[itri].p1
|
||||
newtri.p2 = npoints - 1
|
||||
newtri.p3 = tris[itri].p2
|
||||
tris.append(newtri)
|
||||
|
||||
if (tris[itri].p1,tris[itri].p2) in ehash:
|
||||
jedge = ehash[(tris[itri].p1,tris[itri].p2)]
|
||||
else: jedge = ehash[(tris[itri].p2,tris[itri].p1)]
|
||||
index = edges[jedge].neigh.index(itri)
|
||||
edges[jedge].neigh[index] = len(tris)-1
|
||||
edges[jedge].which[index] = 2
|
||||
|
||||
newedge = Edge(tris[itri].p2,npoints-1)
|
||||
newedge.neigh = [len(tris)-2,len(tris)-1]
|
||||
newedge.which = [1,1]
|
||||
edges.append(newedge)
|
||||
ehash[(newedge.p1,newedge.p2)] = len(edges)-1
|
||||
|
||||
# add 2 additional new edges to replace split edge
|
||||
# neigh of each new edge depends on order of points in original tri
|
||||
# both new edges are first edge 0 in all new tris
|
||||
|
||||
newedge1 = Edge(edges[iedge].p1,npoints-1)
|
||||
neigh1 = newedge1.neigh
|
||||
newedge2 = Edge(edges[iedge].p2,npoints-1)
|
||||
neigh2 = newedge2.neigh
|
||||
|
||||
for itri in range(ntris_prev,len(tris)):
|
||||
if edges[iedge].p1 == tris[itri].p1: neigh1.append(itri)
|
||||
else: neigh2.append(itri)
|
||||
|
||||
newedge1.which = (len(neigh1))*[0]
|
||||
newedge2.which = (len(neigh2))*[0]
|
||||
|
||||
edges.append(newedge1)
|
||||
ehash[(newedge1.p1,newedge1.p2)] = len(edges)-1
|
||||
edges.append(newedge2)
|
||||
ehash[(newedge2.p1,newedge2.p2)] = len(edges)-1
|
||||
|
||||
# remove split edge from sorted list
|
||||
# add all new edges to sorted list in appropriate locations
|
||||
|
||||
del sizes[0]
|
||||
|
||||
for iedge in range(nedges_prev,len(edges)):
|
||||
newsize = (iedge,distance(points[edges[iedge].p1].x,points[edges[iedge].p2].x))
|
||||
isize = mybisect(sizes,newsize,sizeindex,1)
|
||||
sizes.insert(isize,newsize)
|
||||
|
||||
# function called by bisect() to return entry field that list is sorted on
|
||||
|
||||
def sizeindex(entry):
|
||||
return entry[-1]
|
||||
|
||||
# write a new molecule file with lines
|
||||
|
||||
def write_molfile_2d(outfile,lines,infile,thresh):
|
||||
nactive = 0
|
||||
for line in lines:
|
||||
if line.active: nactive += 1
|
||||
|
||||
fp = open(outfile,"w")
|
||||
print("LAMMPS molecule file created by refine.py from %s with threshold %g\n" %
|
||||
(infile,thresh),file=fp)
|
||||
print("%d lines\n" % nactive,file=fp)
|
||||
print("Lines\n",file=fp)
|
||||
|
||||
count = 0
|
||||
for line in lines:
|
||||
if not line.active: continue
|
||||
count += 1
|
||||
print("%d %d %d %g %g %g %g" % (count,1,1,
|
||||
line.point1[0],line.point1[1],
|
||||
line.point2[0],line.point2[1]),file=fp)
|
||||
fp.close()
|
||||
|
||||
# write a new molecule file with tris
|
||||
|
||||
def write_molfile_3d(outfile,tris,infile,thresh):
|
||||
nactive = 0
|
||||
for tri in tris:
|
||||
if tri.active: nactive += 1
|
||||
|
||||
fp = open(outfile,"w")
|
||||
print("LAMMPS molecule file created by refine.py from %s with threshold %g\n" %
|
||||
(infile,thresh),file=fp)
|
||||
print("%d triangles\n" % nactive,file=fp)
|
||||
print("Triangles\n",file=fp)
|
||||
|
||||
count = 0
|
||||
for tri in tris:
|
||||
if not tri.active: continue
|
||||
count += 1
|
||||
print("%d %d %d %g %g %g %g %g %g %g %g %g" %
|
||||
(count,1,1,
|
||||
tri.point1[0],tri.point1[1],tri.point1[2],
|
||||
tri.point2[0],tri.point2[1],tri.point2[2],
|
||||
tri.point3[0],tri.point3[1],tri.point3[2]),
|
||||
file=fp)
|
||||
fp.close()
|
||||
|
||||
# write a new STL file with tris
|
||||
|
||||
def write_stlfile(outfile,tris,infile,thresh):
|
||||
nactive = 0
|
||||
for tri in tris:
|
||||
if tri.active: nactive += 1
|
||||
|
||||
fp = open(outfile,"w")
|
||||
print("solid STL version of %s with threshold %g" %
|
||||
(infile,thresh),file=fp)
|
||||
|
||||
for tri in tris:
|
||||
if not tri.active: continue
|
||||
print(" facet normal 0.0 0.0 0.0",file=fp)
|
||||
print(" outer loop",file=fp)
|
||||
print(" vertex %g %g %g" %
|
||||
(tri.point1[0],tri.point1[1],tri.point1[2]),file=fp)
|
||||
print(" vertex %g %g %g" %
|
||||
(tri.point2[0],tri.point2[1],tri.point2[2]),file=fp)
|
||||
print(" vertex %g %g %g" %
|
||||
(tri.point3[0],tri.point3[1],tri.point3[2]),file=fp)
|
||||
print(" endloop",file=fp)
|
||||
print(" endfacet",file=fp)
|
||||
|
||||
print("endsolid STL version of %s with threshold %g" %
|
||||
(infile,thresh),file=fp)
|
||||
fp.close()
|
||||
|
||||
# ----------
|
||||
# main program
|
||||
# ----------
|
||||
|
||||
# parse command-line args
|
||||
|
||||
args = sys.argv[1:]
|
||||
narg = len(args)
|
||||
|
||||
if narg != 6: error()
|
||||
|
||||
dim = int(args[0])
|
||||
insource = args[1]
|
||||
infile = args[2]
|
||||
thresh = float(args[3])
|
||||
outsource = args[4]
|
||||
outfile = args[5]
|
||||
|
||||
if dim != 2 and dim != 3: error("Involid dim argument")
|
||||
|
||||
# read input file
|
||||
# lines/tris = list of lines or tris
|
||||
|
||||
if insource == "mol" and dim == 2:
|
||||
lines = read_molfile_2d(infile)
|
||||
elif insource == "mol" and dim == 3:
|
||||
tris = read_molfile_3d(infile)
|
||||
elif insource == "stl" and dim == 3:
|
||||
tris = read_stlfile(infile)
|
||||
else:
|
||||
error("Invalid insource argument")
|
||||
|
||||
# points = list of unique points
|
||||
|
||||
if dim == 2: points = extract_points_2d(lines)
|
||||
if dim == 3: points = extract_points_3d(tris)
|
||||
|
||||
npoints = len(points)
|
||||
if dim == 2:
|
||||
nlines = len(lines)
|
||||
if dim == 3:
|
||||
ntris = len(tris)
|
||||
|
||||
# edges = list of unique edges for tris
|
||||
# ehash = enables search for a p1,p2 edge in edges
|
||||
|
||||
if dim == 3: edges,ehash = edges_3d(points,tris)
|
||||
|
||||
# perform refinement
|
||||
|
||||
if dim == 2: refine_2d(points,lines)
|
||||
if dim == 3: refine_3d(points,edges,ehash,tris)
|
||||
|
||||
# write output file
|
||||
|
||||
if outsource == "mol" and dim == 2:
|
||||
write_molfile_2d(outfile,lines,infile,thresh)
|
||||
elif outsource == "mol" and dim == 3:
|
||||
write_molfile_3d(outfile,tris,infile,thresh)
|
||||
elif outsource == "stl" and dim == 3:
|
||||
write_stlfile(outfile,tris,infile,thresh)
|
||||
else:
|
||||
error("Invalid outsource argument")
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user