Merge branch 'dpd_charged' of https://github.com/Eddy-Barraud/lammps-custom into dpd_charged
This commit is contained in:
4
.github/workflows/unittest-macos.yml
vendored
4
.github/workflows/unittest-macos.yml
vendored
@ -15,7 +15,7 @@ jobs:
|
||||
build:
|
||||
name: MacOS Unit Test
|
||||
if: ${{ github.repository == 'lammps/lammps' }}
|
||||
runs-on: macos-latest
|
||||
runs-on: macos-13
|
||||
env:
|
||||
CCACHE_DIR: ${{ github.workspace }}/.ccache
|
||||
|
||||
@ -43,6 +43,8 @@ jobs:
|
||||
working-directory: build
|
||||
run: |
|
||||
ccache -z
|
||||
python3 -m venv macosenv
|
||||
source macosenv/bin/activate
|
||||
python3 -m pip install numpy
|
||||
python3 -m pip install pyyaml
|
||||
cmake -C ../cmake/presets/clang.cmake \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
message(STATUS "Downloading and building OpenCL loader library")
|
||||
set(OPENCL_LOADER_URL "${LAMMPS_THIRDPARTY_URL}/opencl-loader-2024.02.09.tar.gz" CACHE STRING "URL for OpenCL loader tarball")
|
||||
set(OPENCL_LOADER_MD5 "f3573cf9daa3558ba46fd5866517f38f" CACHE STRING "MD5 checksum of OpenCL loader tarball")
|
||||
set(OPENCL_LOADER_URL "${LAMMPS_THIRDPARTY_URL}/opencl-loader-2024.05.09.tar.gz" CACHE STRING "URL for OpenCL loader tarball")
|
||||
set(OPENCL_LOADER_MD5 "e7796826b21c059224fabe997e0f2075" CACHE STRING "MD5 checksum of OpenCL loader tarball")
|
||||
mark_as_advanced(OPENCL_LOADER_URL)
|
||||
mark_as_advanced(OPENCL_LOADER_MD5)
|
||||
|
||||
|
||||
@ -45,8 +45,8 @@ if(DOWNLOAD_KOKKOS)
|
||||
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_EXTENSIONS=${CMAKE_CXX_EXTENSIONS}")
|
||||
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
|
||||
include(ExternalProject)
|
||||
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.3.00.tar.gz" CACHE STRING "URL for KOKKOS tarball")
|
||||
set(KOKKOS_MD5 "889dcea2b5ced3debdc5b0820044bdc4" CACHE STRING "MD5 checksum of KOKKOS tarball")
|
||||
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.3.01.tar.gz" CACHE STRING "URL for KOKKOS tarball")
|
||||
set(KOKKOS_MD5 "243de871b3dc2cf3990c1c404032df83" CACHE STRING "MD5 checksum of KOKKOS tarball")
|
||||
mark_as_advanced(KOKKOS_URL)
|
||||
mark_as_advanced(KOKKOS_MD5)
|
||||
GetFallbackURL(KOKKOS_URL KOKKOS_FALLBACK)
|
||||
@ -71,7 +71,7 @@ if(DOWNLOAD_KOKKOS)
|
||||
add_dependencies(LAMMPS::KOKKOSCORE kokkos_build)
|
||||
add_dependencies(LAMMPS::KOKKOSCONTAINERS kokkos_build)
|
||||
elseif(EXTERNAL_KOKKOS)
|
||||
find_package(Kokkos 4.3.00 REQUIRED CONFIG)
|
||||
find_package(Kokkos 4.3.01 REQUIRED CONFIG)
|
||||
target_link_libraries(lammps PRIVATE Kokkos::kokkos)
|
||||
else()
|
||||
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)
|
||||
|
||||
@ -10,6 +10,14 @@ endif()
|
||||
|
||||
option(MLIAP_ENABLE_PYTHON "Build ML-IAP package with Python support" ${MLIAP_ENABLE_PYTHON_DEFAULT})
|
||||
|
||||
# if ML-PACE package *and* MLIAP with Python is enabled is included we may also include ML-PACE support in ML-IAP
|
||||
set(MLIAP_ENABLE_ACE_DEFAULT OFF)
|
||||
if(PKG_ML-PACE)
|
||||
set(MLIAP_ENABLE_ACE_DEFAULT ON)
|
||||
endif()
|
||||
|
||||
option(MLIAP_ENABLE_ACE "Build ML-IAP package with ACE support" ${MLIAP_ENABLE_ACE_DEFAULT})
|
||||
|
||||
if(MLIAP_ENABLE_PYTHON)
|
||||
find_package(Cythonize REQUIRED)
|
||||
find_package(Python COMPONENTS NumPy REQUIRED)
|
||||
@ -36,3 +44,10 @@ if(MLIAP_ENABLE_PYTHON)
|
||||
target_compile_definitions(lammps PRIVATE -DMLIAP_PYTHON)
|
||||
target_include_directories(lammps PRIVATE ${MLIAP_BINARY_DIR})
|
||||
endif()
|
||||
|
||||
if(MLIAP_ENABLE_ACE)
|
||||
if(NOT PKG_ML-PACE)
|
||||
message(FATAL_ERROR "Must enable ML-PACE package for including ACE support in ML-IAP")
|
||||
endif()
|
||||
target_compile_definitions(lammps PRIVATE -DMLIAP_ACE)
|
||||
endif()
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
.TH LAMMPS "1" "7 February 2024" "2024-02-07"
|
||||
.TH LAMMPS "1" "17 April 2024" "2024-04-17"
|
||||
.SH NAME
|
||||
.B LAMMPS
|
||||
\- Molecular Dynamics Simulator. Version 7 February 2024
|
||||
\- Molecular Dynamics Simulator. Version 17 April 2024
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B lmp
|
||||
@ -297,7 +297,7 @@ the chapter on errors in the
|
||||
manual gives some additional information about error messages, if possible.
|
||||
|
||||
.SH COPYRIGHT
|
||||
© 2003--2022 Sandia Corporation
|
||||
© 2003--2024 Sandia Corporation
|
||||
|
||||
This package is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 as
|
||||
|
||||
@ -89,6 +89,7 @@ OPT.
|
||||
* :doc:`cosine/shift (o) <angle_cosine_shift>`
|
||||
* :doc:`cosine/shift/exp (o) <angle_cosine_shift_exp>`
|
||||
* :doc:`cosine/squared (o) <angle_cosine_squared>`
|
||||
* :doc:`cosine/squared/restricted (o) <angle_cosine_squared_restricted>`
|
||||
* :doc:`cross <angle_cross>`
|
||||
* :doc:`dipole (o) <angle_dipole>`
|
||||
* :doc:`fourier (o) <angle_fourier>`
|
||||
@ -127,6 +128,7 @@ OPT.
|
||||
* :doc:`charmmfsw (k) <dihedral_charmm>`
|
||||
* :doc:`class2 (ko) <dihedral_class2>`
|
||||
* :doc:`cosine/shift/exp (o) <dihedral_cosine_shift_exp>`
|
||||
* :doc:`cosine/squared/restricted <dihedral_cosine_squared_restricted>`
|
||||
* :doc:`fourier (io) <dihedral_fourier>`
|
||||
* :doc:`harmonic (iko) <dihedral_harmonic>`
|
||||
* :doc:`helix (o) <dihedral_helix>`
|
||||
|
||||
@ -245,6 +245,7 @@ OPT.
|
||||
* :doc:`oxrna2/coaxstk <pair_oxrna2>`
|
||||
* :doc:`pace (k) <pair_pace>`
|
||||
* :doc:`pace/extrapolation (k) <pair_pace>`
|
||||
* :doc:`pedone (o) <pair_pedone>`
|
||||
* :doc:`pod <pair_pod>`
|
||||
* :doc:`peri/eps <pair_peri>`
|
||||
* :doc:`peri/lps (o) <pair_peri>`
|
||||
|
||||
@ -7883,12 +7883,6 @@ keyword to allow for additional bonds to be formed
|
||||
Fix poems cannot (yet) work with coupled bodies whose joints connect
|
||||
the bodies in a tree structure.
|
||||
|
||||
*Triclinic box skew is too large*
|
||||
The displacement in a skewed direction must be less than half the box
|
||||
length in that dimension. E.g. the xy tilt must be between -half and
|
||||
+half of the x box length. This constraint can be relaxed by using
|
||||
the box tilt command.
|
||||
|
||||
*Tried to convert a double to int, but input_double > INT_MAX*
|
||||
Self-explanatory.
|
||||
|
||||
|
||||
@ -752,13 +752,6 @@ This will most likely cause errors in kinetic fluctuations.
|
||||
More than the maximum # of neighbors was found multiple times. This
|
||||
was unexpected.
|
||||
|
||||
*Triclinic box skew is large*
|
||||
The displacement in a skewed direction is normally required to be less
|
||||
than half the box length in that dimension. E.g. the xy tilt must be
|
||||
between -half and +half of the x box length. You have relaxed the
|
||||
constraint using the box tilt command, but the warning means that a
|
||||
LAMMPS simulation may be inefficient as a result.
|
||||
|
||||
*Use special bonds = 0,1,1 with bond style fene*
|
||||
Most FENE models need this setting for the special_bonds command.
|
||||
|
||||
|
||||
@ -1,42 +1,112 @@
|
||||
2d simulations
|
||||
==============
|
||||
================
|
||||
2d simulations
|
||||
================
|
||||
|
||||
Use the :doc:`dimension <dimension>` command to specify a 2d simulation.
|
||||
You must use the :doc:`dimension <dimension>` command to specify a 2d
|
||||
simulation. The default is 3d.
|
||||
|
||||
Make the simulation box periodic in z via the :doc:`boundary <boundary>`
|
||||
command. This is the default.
|
||||
A 2d simulation box must be periodic in z as set by the :doc:`boundary
|
||||
<boundary>` command. This is the default.
|
||||
|
||||
If using the :doc:`create_box <create_box>` command to define a
|
||||
simulation box, set the z dimensions narrow, but finite, so that the
|
||||
:doc:`create_atoms <create_atoms>` command will fill the 3d simulation
|
||||
box with a single z plane of atoms - e.g.
|
||||
Simulation boxes in LAMMPS can be either orthogonal or triclinic in
|
||||
shape. Orthogonal boxes in 2d are a rectangle with 4 edges that are
|
||||
each perpendicular to either the x or y coordinate axes. Triclinic
|
||||
boxes in 2d are a parallelogram with opposite pairs of faces parallel
|
||||
to each other. LAMMPS supports two forms of triclinic boxes,
|
||||
restricted and general, which for 2d differ in how the box is oriented
|
||||
with respect to the xy coordinate axes. See the :doc:`Howto triclinic
|
||||
<Howto_triclinic>` for a detailed description of all 3 kinds of
|
||||
simulation boxes.
|
||||
|
||||
Here are examples of using the :doc:`create_box <create_box>` command
|
||||
to define the simulation box for a 2d system.
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
create_box 1 -10 10 -10 10 -0.25 0.25
|
||||
# 2d orthogonal box using a block-style region
|
||||
region mybox block -10 10 0 10 -0.5 0.5
|
||||
create_box 1 mybox
|
||||
|
||||
If using the :doc:`read_data <read_data>` command to read in a file of
|
||||
atom coordinates, set the "zlo zhi" values to be finite but narrow,
|
||||
similar to the create_box command settings just described. For each
|
||||
atom in the file, assign a z coordinate so it falls inside the
|
||||
z-boundaries of the box - e.g. 0.0.
|
||||
# 2d restricted triclinic box using a prism-style region with only xy tilt
|
||||
region mybox prism 0 10 0 10 -0.5 0.5 2.0 0.0 0.0
|
||||
create_box 1 mybox
|
||||
|
||||
Use the :doc:`fix enforce2d <fix_enforce2d>` command as the last
|
||||
defined fix to ensure that the z-components of velocities and forces
|
||||
are zeroed out every timestep. The reason to make it the last fix is
|
||||
so that any forces induced by other fixes will be zeroed out.
|
||||
# 2d general triclinic box using a primitive cell for a 2d hex lattice
|
||||
lattice custom 1.0 a1 1.0 0.0 0.0 a2 0.5 0.86602540378 0.0 &
|
||||
a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 triclinic/general
|
||||
create_box 1 NULL 0 5 0 5 -0.5 0.5
|
||||
|
||||
Many of the example input scripts included in the LAMMPS distribution
|
||||
Note that for 2d orthogonal or restricted triclinic boxes, the box has
|
||||
a 3rd dimension which must straddle z = 0.0 in the z dimension.
|
||||
Typically the width of box in the z dimension should be narrow,
|
||||
e.g. -0.5 to 0.5, but that is not required. For a 2d general
|
||||
triclinic box, the *a3* vector defined by the :doc:`lattice <lattice>`
|
||||
command must be (0.0,0.0,1.0), which is its default value. Also the
|
||||
*clo* and *chi* arguments of the :doc:`create_box <create_box>`
|
||||
command must be -0.5 and 0.5.
|
||||
|
||||
Here are examples of using the :doc:`read_data <read_data>` command
|
||||
to define the simulation box for a 2d system via keywords in the
|
||||
header section of the data file. These are the same boxes as the examples
|
||||
for the :doc:`create_box <create_box>` command
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
# 2d orthogonal box
|
||||
-10 10 xlo xhi
|
||||
0 10 ylo yhi
|
||||
-0.5 0.5 zlo zhi # this is the default, so no need to specify
|
||||
|
||||
# 2d restricted triclinic box with only xy tilt
|
||||
-10 10 xlo xhi
|
||||
0 10 ylo yhi
|
||||
-0.5 0.5 zlo zhi # this is the default, so no need to specify
|
||||
2.0 0.0 0.0 xy xz yz
|
||||
|
||||
# 3d general triclinic box using a primitive cell for a 2d hex lattice
|
||||
5 0 0 avec
|
||||
2.5 4.3301270189 0 bvec
|
||||
0 0 1 cvec # this is the default, so no need to specify
|
||||
0 0 -0.5 abc origin # this is the default for 2d, so no need to specify
|
||||
|
||||
Note that for 2d orthogonal or restricted triclinic boxes, the box has
|
||||
a 3rd dimension specified by the *zlo zhi* values, which must straddle
|
||||
z = 0.0. Typically the width of box in the z dimension should be
|
||||
narrow, e.g. -0.5 to 0.5, but that is not required. For a 2d general
|
||||
triclinic box, the z component of *avec* and *bvec* must be zero, and
|
||||
*cvec* must be (0,0,1), which is the default. The z component of *abc
|
||||
origin* must also be -0.5, which is the default.
|
||||
|
||||
If using the :doc:`create_atoms <create_atoms>` command to create
|
||||
atoms in the 2d simulation box, all the z coordinates of created atoms
|
||||
will be zero.
|
||||
|
||||
If using the :doc:`read_data <read_data>` command to read in a data
|
||||
file of atom coordinates for a 2d system, the z coordinates of all
|
||||
atoms should be zero. A value within epsilon of zero is also allowed
|
||||
in case the data file was generated by another program with finite
|
||||
numeric precision, in which case the z coord for the atom will be set
|
||||
to zero.
|
||||
|
||||
Use the :doc:`fix enforce2d <fix_enforce2d>` command as the last fix
|
||||
defined in the input script. It ensures that the z-components of
|
||||
velocities and forces are zeroed out every timestep. The reason to
|
||||
make it the last fix is so that any forces added by other fixes will
|
||||
also be zeroed out.
|
||||
|
||||
Many of the example input scripts included in the examples directory
|
||||
are for 2d models.
|
||||
|
||||
.. note::
|
||||
|
||||
Some models in LAMMPS treat particles as finite-size spheres, as
|
||||
opposed to point particles. See the :doc:`atom_style sphere <atom_style>` and :doc:`fix nve/sphere <fix_nve_sphere>`
|
||||
commands for details. By default, for 2d simulations, such particles
|
||||
will still be modeled as 3d spheres, not 2d discs (circles), meaning
|
||||
opposed to point particles. See the :doc:`atom_style sphere
|
||||
<atom_style>` and :doc:`fix nve/sphere <fix_nve_sphere>` commands
|
||||
for details. By default, for 2d simulations, such particles will
|
||||
still be modeled as 3d spheres, not 2d discs (circles), meaning
|
||||
their moment of inertia will be that of a sphere. If you wish to
|
||||
model them as 2d discs, see the :doc:`set density/disc <set>` command
|
||||
and the *disc* option for the :doc:`fix nve/sphere <fix_nve_sphere>`,
|
||||
:doc:`fix nvt/sphere <fix_nvt_sphere>`, :doc:`fix nph/sphere <fix_nph_sphere>`, :doc:`fix npt/sphere <fix_npt_sphere>`
|
||||
commands.
|
||||
model them as 2d discs, see the :doc:`set density/disc <set>`
|
||||
command and the *disc* option for the :doc:`fix nve/sphere
|
||||
<fix_nve_sphere>`, :doc:`fix nvt/sphere <fix_nvt_sphere>`,
|
||||
:doc:`fix nph/sphere <fix_nph_sphere>`, :doc:`fix npt/sphere
|
||||
<fix_npt_sphere>` commands.
|
||||
|
||||
@ -102,8 +102,19 @@ particles of different styles
|
||||
| :doc:`dump image <dump_image>` | output body particle attributes as an image |
|
||||
+------------------------------------------------+-----------------------------------------------------+
|
||||
|
||||
The pair styles defined for use with specific body styles are listed
|
||||
in the sections below.
|
||||
The pair styles currently defined for use with specific body styles
|
||||
are listed in the sections below.
|
||||
|
||||
Note that for all the body styles, if the data file defines a general
|
||||
triclinic box, then the orientation of the body particle and its
|
||||
corresponding 6 moments of inertia and other orientation-dependent
|
||||
values should reflect the fact the body is defined withing a general
|
||||
triclinic box with edge vectors **A**,**B**,**C**. LAMMPS will rotate
|
||||
the box to convert it to a restricted triclinic box. This operation
|
||||
will also rotate the orientation of the body particles. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` doc page for more details.
|
||||
The sections below highlight the orientation-dependent values specific
|
||||
to each body style.
|
||||
|
||||
----------
|
||||
|
||||
@ -154,12 +165,18 @@ values consistent with the current orientation of the rigid body
|
||||
around its center of mass. The values are with respect to the
|
||||
simulation box XYZ axes, not with respect to the principal axes of the
|
||||
rigid body itself. LAMMPS performs the latter calculation internally.
|
||||
|
||||
The coordinates of each sub-particle are specified as its x,y,z
|
||||
displacement from the center-of-mass of the body particle. The
|
||||
center-of-mass position of the particle is specified by the x,y,z
|
||||
values in the *Atoms* section of the data file, as is the total mass
|
||||
of the body particle.
|
||||
|
||||
Note that if the data file defines a general triclinic simulation box,
|
||||
these sub-particle displacements are orientation-dependent and, as
|
||||
mentioned above, should reflect the body particle's orientation within
|
||||
the general triclinic box.
|
||||
|
||||
The :doc:`pair_style body/nparticle <pair_body_nparticle>` command can be used
|
||||
with this body style to compute body/body and body/non-body interactions.
|
||||
|
||||
@ -226,6 +243,7 @@ values consistent with the current orientation of the rigid body
|
||||
around its center of mass. The values are with respect to the
|
||||
simulation box XYZ axes, not with respect to the principal axes of the
|
||||
rigid body itself. LAMMPS performs the latter calculation internally.
|
||||
|
||||
The coordinates of each vertex are specified as its x,y,z displacement
|
||||
from the center-of-mass of the body particle. The center-of-mass
|
||||
position of the particle is specified by the x,y,z values in the
|
||||
@ -270,6 +288,11 @@ A disk, whose diameter is 3.0, mass 1.0, is specified as follows:
|
||||
0 0 0
|
||||
3.0
|
||||
|
||||
Note that if the data file defines a general triclinic simulation box,
|
||||
these polygon vertex displacements are orientation-dependent and, as
|
||||
mentioned above, should reflect the body particle's orientation within
|
||||
the general triclinic box.
|
||||
|
||||
The :doc:`pair_style body/rounded/polygon <pair_body_rounded_polygon>`
|
||||
command can be used with this body style to compute body/body
|
||||
interactions. The :doc:`fix wall/body/polygon <fix_wall_body_polygon>`
|
||||
@ -366,6 +389,7 @@ values consistent with the current orientation of the rigid body
|
||||
around its center of mass. The values are with respect to the
|
||||
simulation box XYZ axes, not with respect to the principal axes of the
|
||||
rigid body itself. LAMMPS performs the latter calculation internally.
|
||||
|
||||
The coordinates of each vertex are specified as its x,y,z displacement
|
||||
from the center-of-mass of the body particle. The center-of-mass
|
||||
position of the particle is specified by the x,y,z values in the
|
||||
@ -435,6 +459,11 @@ A sphere whose diameter is 3.0 and mass 1.0, is specified as follows:
|
||||
The number of edges and faces for a rod or sphere must be listed,
|
||||
but is ignored.
|
||||
|
||||
Note that if the data file defines a general triclinic simulation box,
|
||||
these polyhedron vertex displacements are orientation-dependent and,
|
||||
as mentioned above, should reflect the body particle's orientation
|
||||
within the general triclinic box.
|
||||
|
||||
The :doc:`pair_style body/rounded/polhedron
|
||||
<pair_body_rounded_polyhedron>` command can be used with this body
|
||||
style to compute body/body interactions. The :doc:`fix
|
||||
|
||||
@ -15,7 +15,8 @@ orientation for rotational models. This produces a stress-free initial
|
||||
state. Furthermore, bonds are allowed to break under large strains,
|
||||
producing fracture. The examples/bpm directory has sample input scripts
|
||||
for simulations of the fragmentation of an impacted plate and the
|
||||
pouring of extended, elastic bodies.
|
||||
pouring of extended, elastic bodies. See :ref:`(Clemmer) <howto-Clemmer>`
|
||||
for more general information on the approach and the LAMMPS implementation.
|
||||
|
||||
----------
|
||||
|
||||
@ -150,3 +151,9 @@ the following are currently compatible with BPM bond styles:
|
||||
interactions, one will need to switch between different *special_bonds*
|
||||
settings in the input script. An example is found in
|
||||
``examples/bpm/impact``.
|
||||
|
||||
----------
|
||||
|
||||
.. _howto-Clemmer:
|
||||
|
||||
**(Clemmer)** Clemmer, Monti, Lechman, Soft Matter, 20, 1702 (2024).
|
||||
|
||||
@ -2,43 +2,195 @@ Triclinic (non-orthogonal) simulation boxes
|
||||
===========================================
|
||||
|
||||
By default, LAMMPS uses an orthogonal simulation box to encompass the
|
||||
particles. The :doc:`boundary <boundary>` command sets the boundary
|
||||
conditions of the box (periodic, non-periodic, etc). The orthogonal
|
||||
box has its "origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors
|
||||
starting from the origin given by **a** = (xhi-xlo,0,0); **b** =
|
||||
(0,yhi-ylo,0); **c** = (0,0,zhi-zlo). The 6 parameters
|
||||
particles. The orthogonal box has its "origin" at (xlo,ylo,zlo) and
|
||||
extends to (xhi,yhi,zhi). Conceptually it is defined by 3 edge
|
||||
vectors starting from the origin given by **A** = (xhi-xlo,0,0); **B**
|
||||
= (0,yhi-ylo,0); **C** = (0,0,zhi-zlo). The :doc:`boundary
|
||||
<boundary>` command sets the boundary conditions for the 6 faces of
|
||||
the box (periodic, non-periodic, etc). The 6 parameters
|
||||
(xlo,xhi,ylo,yhi,zlo,zhi) are defined at the time the simulation box
|
||||
is created, e.g. by the :doc:`create_box <create_box>` or
|
||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands. Additionally, LAMMPS defines box size parameters lx,ly,lz
|
||||
where lx = xhi-xlo, and similarly in the y and z dimensions. The 6
|
||||
parameters, as well as lx,ly,lz, can be output via the
|
||||
:doc:`thermo_style custom <thermo_style>` command.
|
||||
is created by one of these commands:
|
||||
|
||||
LAMMPS also allows simulations to be performed in triclinic
|
||||
(non-orthogonal) simulation boxes shaped as a parallelepiped with
|
||||
triclinic symmetry. The parallelepiped has its "origin" at
|
||||
(xlo,ylo,zlo) and is defined by 3 edge vectors starting from the
|
||||
origin given by **a** = (xhi-xlo,0,0); **b** = (xy,yhi-ylo,0); **c** =
|
||||
(xz,yz,zhi-zlo). *xy,xz,yz* can be 0.0 or positive or negative values
|
||||
and are called "tilt factors" because they are the amount of
|
||||
displacement applied to faces of an originally orthogonal box to
|
||||
transform it into the parallelepiped. In LAMMPS the triclinic
|
||||
simulation box edge vectors **a**, **b**, and **c** cannot be arbitrary
|
||||
vectors. As indicated, **a** must lie on the positive x axis. **b** must
|
||||
lie in the xy plane, with strictly positive y component. **c** may have
|
||||
any orientation with strictly positive z component. The requirement
|
||||
that **a**, **b**, and **c** have strictly positive x, y, and z components,
|
||||
respectively, ensures that **a**, **b**, and **c** form a complete
|
||||
right-handed basis. These restrictions impose no loss of generality,
|
||||
since it is possible to rotate/invert any set of 3 crystal basis
|
||||
vectors so that they conform to the restrictions.
|
||||
* :doc:`create_box <create_box>`
|
||||
* :doc:`read_data <read_data>`
|
||||
* :doc:`read_restart <read_restart>`
|
||||
* :doc:`read_dump <read_dump>`
|
||||
|
||||
For example, assume that the 3 vectors **A**,\ **B**,\ **C** are the edge
|
||||
vectors of a general parallelepiped, where there is no restriction on
|
||||
**A**,\ **B**,\ **C** other than they form a complete right-handed basis i.e.
|
||||
**A** x **B** . **C** > 0. The equivalent LAMMPS **a**,\ **b**,\ **c** are a linear
|
||||
rotation of **A**, **B**, and **C** and can be computed as follows:
|
||||
Internally, LAMMPS defines box size parameters lx,ly,lz where lx =
|
||||
xhi-xlo, and similarly in the y and z dimensions. The 6 parameters, as
|
||||
well as lx,ly,lz, can be output via the :doc:`thermo_style custom
|
||||
<thermo_style>` command. See the :doc:`Howto 2d <Howto_2d>` doc page
|
||||
for info on how zlo and zhi are defined for 2d simulations.
|
||||
|
||||
----------
|
||||
|
||||
Triclinic simulation boxes
|
||||
""""""""""""""""""""""""""
|
||||
|
||||
LAMMPS also allows simulations to be performed using triclinic
|
||||
(non-orthogonal) simulation boxes shaped as a 3d parallelepiped with
|
||||
triclinic symmetry. For 2d simulations a triclinic simulation box is
|
||||
effectively a parallelogram; see the :doc:`Howto 2d <Howto_2d>` doc
|
||||
page for details.
|
||||
|
||||
One use of triclinic simulation boxes is to model solid-state crystals
|
||||
with triclinic symmetry. The :doc:`lattice <lattice>` command can be
|
||||
used with non-orthogonal basis vectors to define a lattice that will
|
||||
tile a triclinic simulation box via the :doc:`create_atoms
|
||||
<create_atoms>` command.
|
||||
|
||||
A second use is to run Parrinello-Rahman dynamics via the :doc:`fix
|
||||
npt <fix_nh>` command, which will adjust the xy, xz, yz tilt factors
|
||||
to compensate for off-diagonal components of the pressure tensor. The
|
||||
analog for an :doc:`energy minimization <minimize>` is the :doc:`fix
|
||||
box/relax <fix_box_relax>` command.
|
||||
|
||||
A third use is to shear a bulk solid to study the response of the
|
||||
material. The :doc:`fix deform <fix_deform>` command can be used for
|
||||
this purpose. It allows dynamic control of the xy, xz, yz tilt
|
||||
factors as a simulation runs. This is discussed in the :doc:`Howto
|
||||
NEMD <Howto_nemd>` doc page on non-equilibrium MD (NEMD) simulations.
|
||||
|
||||
Conceptually, a triclinic parallelepiped is defined with an "origin"
|
||||
at (xlo,ylo,zhi) and 3 edge vectors **A** = (ax,ay,az), **B** =
|
||||
(bx,by,bz), **C** = (cx,cy,cz) which can be arbitrary vectors, so long
|
||||
as they are non-zero, distinct, and not co-planar. In addition, they
|
||||
must define a right-handed system, such that (**A** cross **B**)
|
||||
points in the direction of **C**. Note that a left-handed system can
|
||||
be converted to a right-handed system by simply swapping the order of
|
||||
any pair of the **A**, **B**, **C** vectors.
|
||||
|
||||
The 4 commands listed above for defining orthogonal simulation boxes
|
||||
have triclinic options which allow for specification of the origin and
|
||||
edge vectors **A**, **B**, **C**. For each command, this can be done
|
||||
in one of two ways, for what LAMMPS calls a *general* triclinic box or
|
||||
a *restricted* triclinic box.
|
||||
|
||||
A *general* triclinic box is specified by an origin (xlo, ylo, zlo)
|
||||
and arbitrary edge vectors **A** = (ax,ay,az), **B** = (bx,by,bz), and
|
||||
**C** = (cx,cy,cz). So there are 12 parameters in total.
|
||||
|
||||
A *restricted* triclinic box also has an origin (xlo,ylo,zlo), but its
|
||||
edge vectors are of the following restricted form: **A** =
|
||||
(xhi-xlo,0,0), **B** = (xy,yhi-ylo,0), **C** = (xz,yz,zhi-zlo). So
|
||||
there are 9 parameters in total. Note that the restricted form
|
||||
requires **A** to be along the x-axis, **B** to be in the xy plane
|
||||
with a y-component in the +y direction, and **C** to have its
|
||||
z-component in the +z direction. Note that a restricted triclinic box
|
||||
is *right-handed* by construction since (**A** cross **B**) points in
|
||||
the direction of **C**.
|
||||
|
||||
The *xy,xz,yz* values can be zero or positive or negative. They are
|
||||
called "tilt factors" because they are the amount of displacement
|
||||
applied to edges of faces of an orthogonal box to change it into a
|
||||
restricted triclinic parallelepiped.
|
||||
|
||||
.. note::
|
||||
|
||||
Any right-handed general triclinic box (i.e. solid-state crystal
|
||||
basis vectors) can be rotated in 3d around its origin in order to
|
||||
conform to the LAMMPS definition of a restricted triclinic box.
|
||||
See the discussion in the next sub-section about general triclinic
|
||||
simulation boxes in LAMMPS.
|
||||
|
||||
Note that the :doc:`thermo_style custom <thermo_style>` command has
|
||||
keywords for outputting the various parameters that define the size
|
||||
and shape of orthogonal, restricted triclinic, and general triclinic
|
||||
simulation boxes.
|
||||
|
||||
For orthogonal boxes there 6 thermo keywords (xlo,ylo,zlo) and
|
||||
(xhi,yhi,zhi).
|
||||
|
||||
For restricted triclinic boxes there are 9 thermo keywords for
|
||||
(xlo,ylo,zlo), (xhi,yhi,zhi), and the (xy,xz,yz) tilt factors.
|
||||
|
||||
For general triclinic boxes there are 12 thermo keywords for
|
||||
(xlo,ylo,zhi) and the components of the **A**, **B**, **C** edge
|
||||
vectors, namely (avecx,avecy,avecz), (bvecx,bvecy,bvecz), and
|
||||
(cvecx,cvecy,cvecz),
|
||||
|
||||
The remainder of this doc page explains (a) how LAMMPS operates with
|
||||
general triclinic simulation boxes, (b) mathematical transformations
|
||||
between general and restricted triclinic boxes which may be useful
|
||||
when creating LAMMPS inputs or interpreting outputs for triclinic
|
||||
simulations, and (c) how LAMMPS uses tilt factors for restricted
|
||||
triclinic simulation boxes.
|
||||
|
||||
----------
|
||||
|
||||
General triclinic simulation boxes in LAMMPS
|
||||
""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
LAMMPS allows specification of general triclinic simulation boxes with
|
||||
their atoms as a convenience for users who may be converting data from
|
||||
solid-state crystallographic representations or from DFT codes for
|
||||
input to LAMMPS. Likewise it allows output of dump files, data files,
|
||||
and thermodynamic data (e.g. pressure tensor) in a general triclinic
|
||||
format.
|
||||
|
||||
However internally, LAMMPS only uses restricted triclinic simulation
|
||||
boxes. This is for parallel efficiency and to formulate partitioning
|
||||
of the simulation box across processors, neighbor list building, and
|
||||
inter-processor communication of per-atom data with methods similar to
|
||||
those used for orthogonal boxes.
|
||||
|
||||
This means 4 things which are important to understand:
|
||||
|
||||
* Input of a general triclinic system is immediately converted to a
|
||||
restricted triclinic system.
|
||||
* If output of per-atom data for a general triclinic system is
|
||||
requested (e.g. for atom coordinates in a dump file),
|
||||
conversion from a restricted to general triclinic system is done at
|
||||
the time of output.
|
||||
* The conversion of the simulation box and per-atom data from general
|
||||
triclinic to restricted triclinic (and vice versa) is a 3d rotation
|
||||
operation around an origin, which is the lower left corner of the
|
||||
simulation box. This means an input data file for a general
|
||||
triclinic system should specify all per-atom quantities consistent
|
||||
with the general triclinic box and its orientation relative to the
|
||||
standard x,y,z coordinate axes. For example, atom coordinates
|
||||
should be inside the general triclinic simulation box defined by the
|
||||
edge vectors **A**, **B**, **C** and its origin. Likewise per-atom
|
||||
velocities should be in directions consistent with the general
|
||||
triclinic box orientation. E.g. a velocity vector which will be in
|
||||
the +x direction once LAMMPS converts from a general to restricted
|
||||
triclinic box, should be specified in the data file in the direction
|
||||
of the **A** edge vector. See the :doc:`read_data <read_data>` doc
|
||||
page for info on all the per-atom vector quantities to which this
|
||||
rule applies when a data file for a general triclinic box is input.
|
||||
* If commands such as :doc:`write_data <write_data>` or :doc:`dump
|
||||
custom <dump>` are used to output general triclinic information, it
|
||||
is effectively the inverse of the operation described in the
|
||||
preceding bullet.
|
||||
* Other LAMMPS commands such as :doc:`region <region>` or
|
||||
:doc:`velocity <velocity>` or :doc:`set <set>`, operate on a
|
||||
restricted triclinic system even if a general triclinic system was
|
||||
defined initially.
|
||||
|
||||
This is the list of commands which have general triclinic options:
|
||||
|
||||
* :doc:`create_box <create_box>` - define a general triclinic box
|
||||
* :doc:`create_atoms <create_atoms>` - add atoms to a general triclinic box
|
||||
* :doc:`lattice <lattice>` - define a custom lattice consistent with the **A**, **B**, **C** edge vectors of a general triclinic box
|
||||
* :doc:`read_data <read_data>` - read a data file for a general triclinic system
|
||||
* :doc:`write_data <write_data>` - write a data file for a general triclinic system
|
||||
* :doc:`dump atom, dump custom <dump>` - output dump snapshots in general triclinic format
|
||||
* :doc:`dump_modify triclinic/general <dump_modify>` - select general triclinic format for dump output
|
||||
* :doc:`thermo_style <thermo_style>` - output the pressure tensor in
|
||||
general triclinic format
|
||||
* :doc:`thermo_modify triclinic/general <thermo_modify>` - select general triclinic format for thermo output
|
||||
* :doc:`read_restart <read_restart>` - read a restart file for a general triclinic system
|
||||
* :doc:`write_restart <read_restart>` - write a restart file for a general triclinic system
|
||||
|
||||
----------
|
||||
|
||||
Transformation from general to restricted triclinic boxes
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
Let **A**,\ **B**,\ **C** be the right-handed edge vectors of a
|
||||
general triclinic simulation box. The equivalent LAMMPS **a**,\
|
||||
**b**,\ **c** for a restricted triclinic box are a 3d rotation of
|
||||
**A**, **B**, and **C** and can be computed as follows:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -55,23 +207,17 @@ rotation of **A**, **B**, and **C** and can be computed as follows:
|
||||
c_y = & \mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})} \times \mathbf{\hat{A}} \quad = \quad \frac{\mathbf{B} \cdot \mathbf{C} - b_x c_x}{b_y} \\
|
||||
c_z = & |\mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})}|\quad = \quad \sqrt{C^2 - {c_x}^2 - {c_y}^2}
|
||||
|
||||
where A = \| **A** \| indicates the scalar length of **A**\ . The hat symbol (\^)
|
||||
indicates the corresponding unit vector. :math:`\beta` and :math:`\gamma` are angles
|
||||
between the vectors described below. Note that by construction,
|
||||
**a**, **b**, and **c** have strictly positive x, y, and z components, respectively.
|
||||
If it should happen that
|
||||
**A**, **B**, and **C** form a left-handed basis, then the above equations
|
||||
are not valid for **c**\ . In this case, it is necessary
|
||||
to first apply an inversion. This can be achieved
|
||||
by interchanging two basis vectors or by changing the sign of one of them.
|
||||
where A = \| **A** \| indicates the scalar length of **A**\ . The hat
|
||||
symbol (\^) indicates the corresponding unit vector. :math:`\beta` and
|
||||
:math:`\gamma` are angles between the **A**, **B**, **C** vectors
|
||||
as described below.
|
||||
|
||||
For consistency, the same rotation/inversion applied to the basis vectors
|
||||
must also be applied to atom positions, velocities,
|
||||
and any other vector quantities.
|
||||
This can be conveniently achieved by first converting to
|
||||
fractional coordinates in the
|
||||
old basis and then converting to distance coordinates in the new basis.
|
||||
The transformation is given by the following equation:
|
||||
For consistency, the same rotation applied to the triclinic box edge
|
||||
vectors can also be applied to atom positions, velocities, and other
|
||||
vector quantities. This can be conveniently achieved by first
|
||||
converting to fractional coordinates in the general triclinic
|
||||
coordinates and then converting to coordinates in the restricted
|
||||
triclinic basis. The transformation is given by the following equation:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -82,87 +228,24 @@ The transformation is given by the following equation:
|
||||
\mathbf{A \times B}
|
||||
\end{pmatrix} \cdot \mathbf{X}
|
||||
|
||||
where *V* is the volume of the box, **X** is the original vector quantity and
|
||||
**x** is the vector in the LAMMPS basis.
|
||||
where *V* is the volume of the box (same in either basis), **X** is
|
||||
the fractional vector in the general triclinic basis and **x** is the
|
||||
resulting vector in the restricted triclinic basis.
|
||||
|
||||
There is no requirement that a triclinic box be periodic in any
|
||||
dimension, though it typically should be in at least the second dimension
|
||||
of the tilt (y in xy) if you want to enforce a shift in periodic
|
||||
boundary conditions across that boundary. Some commands that work
|
||||
with triclinic boxes, e.g. the :doc:`fix deform <fix_deform>` and :doc:`fix npt <fix_nh>` commands, require periodicity or non-shrink-wrap
|
||||
boundary conditions in specific dimensions. See the command doc pages
|
||||
for details.
|
||||
----------
|
||||
|
||||
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
|
||||
time the simulation box is created. This happens in one of 3 ways.
|
||||
If the :doc:`create_box <create_box>` command is used with a region of
|
||||
style *prism*, then a triclinic box is setup. See the
|
||||
:doc:`region <region>` command for details. If the
|
||||
:doc:`read_data <read_data>` command is used to define the simulation
|
||||
box, and the header of the data file contains a line with the "xy xz
|
||||
yz" keyword, then a triclinic box is setup. See the
|
||||
:doc:`read_data <read_data>` command for details. Finally, if the
|
||||
:doc:`read_restart <read_restart>` command reads a restart file which
|
||||
was written from a simulation using a triclinic box, then a triclinic
|
||||
box will be setup for the restarted simulation.
|
||||
Crystallographic general triclinic representation of a simulation box
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
Note that you can define a triclinic box with all 3 tilt factors =
|
||||
0.0, so that it is initially orthogonal. This is necessary if the box
|
||||
will become non-orthogonal, e.g. due to the :doc:`fix npt <fix_nh>` or
|
||||
:doc:`fix deform <fix_deform>` commands. Alternatively, you can use the
|
||||
:doc:`change_box <change_box>` command to convert a simulation box from
|
||||
orthogonal to triclinic and vice versa.
|
||||
|
||||
As with orthogonal boxes, LAMMPS defines triclinic box size parameters
|
||||
lx,ly,lz where lx = xhi-xlo, and similarly in the y and z dimensions.
|
||||
The 9 parameters, as well as lx,ly,lz, can be output via the
|
||||
:doc:`thermo_style custom <thermo_style>` command.
|
||||
|
||||
To avoid extremely tilted boxes (which would be computationally
|
||||
inefficient), LAMMPS normally requires that no tilt factor can skew
|
||||
the box more than half the distance of the parallel box length, which
|
||||
is the first dimension in the tilt factor (x for xz). This is required
|
||||
both when the simulation box is created, e.g. via the
|
||||
:doc:`create_box <create_box>` or :doc:`read_data <read_data>` commands,
|
||||
as well as when the box shape changes dynamically during a simulation,
|
||||
e.g. via the :doc:`fix deform <fix_deform>` or :doc:`fix npt <fix_nh>`
|
||||
commands.
|
||||
|
||||
For example, if xlo = 2 and xhi = 12, then the x box length is 10 and
|
||||
the xy tilt factor must be between -5 and 5. Similarly, both xz and
|
||||
yz must be between -(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is
|
||||
not a limitation, since if the maximum tilt factor is 5 (as in this
|
||||
example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
|
||||
... are geometrically all equivalent. If the box tilt exceeds this
|
||||
limit during a dynamics run (e.g. via the :doc:`fix deform <fix_deform>`
|
||||
command), then the box is "flipped" to an equivalent shape with a tilt
|
||||
factor within the bounds, so the run can continue. See the :doc:`fix deform <fix_deform>` page for further details.
|
||||
|
||||
One exception to this rule is if the first dimension in the tilt
|
||||
factor (x for xy) is non-periodic. In that case, the limits on the
|
||||
tilt factor are not enforced, since flipping the box in that dimension
|
||||
does not change the atom positions due to non-periodicity. In this
|
||||
mode, if you tilt the system to extreme angles, the simulation will
|
||||
simply become inefficient, due to the highly skewed simulation box.
|
||||
|
||||
Box flips that may occur using the :doc:`fix deform <fix_deform>` or
|
||||
:doc:`fix npt <fix_nh>` commands can be turned off using the *flip no*
|
||||
option with either of the commands.
|
||||
|
||||
Note that if a simulation box has a large tilt factor, LAMMPS will run
|
||||
less efficiently, due to the large volume of communication needed to
|
||||
acquire ghost atoms around a processor's irregular-shaped subdomain.
|
||||
For extreme values of tilt, LAMMPS may also lose atoms and generate an
|
||||
error.
|
||||
|
||||
Triclinic crystal structures are often defined using three lattice
|
||||
constants *a*, *b*, and *c*, and three angles :math:`\alpha`,
|
||||
:math:`\beta`, and :math:`\gamma`. Note that in this nomenclature,
|
||||
the a, b, and c lattice constants are the scalar lengths of the edge
|
||||
General triclinic crystal structures are often defined using three
|
||||
lattice constants *a*, *b*, and *c*, and three angles :math:`\alpha`,
|
||||
:math:`\beta`, and :math:`\gamma`. Note that in this nomenclature, the
|
||||
a, b, and c lattice constants are the scalar lengths of the edge
|
||||
vectors **a**, **b**, and **c** defined above. The relationship
|
||||
between these 6 quantities (a, b, c, :math:`\alpha`, :math:`\beta`,
|
||||
:math:`\gamma`) and the LAMMPS box sizes (lx,ly,lz) =
|
||||
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) is as follows:
|
||||
:math:`\gamma`) and the LAMMPS restricted triclinic box sizes
|
||||
(lx,ly,lz) = (xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) is
|
||||
as follows:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -186,15 +269,19 @@ The inverse relationship can be written as follows:
|
||||
|
||||
The values of *a*, *b*, *c*, :math:`\alpha` , :math:`\beta`, and
|
||||
:math:`\gamma` can be printed out or accessed by computes using the
|
||||
:doc:`thermo_style custom <thermo_style>` keywords
|
||||
*cella*, *cellb*, *cellc*, *cellalpha*, *cellbeta*, *cellgamma*,
|
||||
respectively.
|
||||
:doc:`thermo_style custom <thermo_style>` keywords *cella*, *cellb*,
|
||||
*cellc*, *cellalpha*, *cellbeta*, *cellgamma*, respectively.
|
||||
|
||||
----------
|
||||
|
||||
Output of restricted and general triclinic boxes in a dump file
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
As discussed on the :doc:`dump <dump>` command doc page, when the BOX
|
||||
BOUNDS for a snapshot is written to a dump file for a triclinic box,
|
||||
an orthogonal bounding box which encloses the triclinic simulation box
|
||||
is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic
|
||||
box, formatted as follows:
|
||||
BOUNDS for a snapshot is written to a dump file for a restricted
|
||||
triclinic box, an orthogonal bounding box which encloses the triclinic
|
||||
simulation box is output, along with the 3 tilt factors (xy, xz, yz) of
|
||||
the restricted triclinic box, formatted as follows:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -204,7 +291,7 @@ box, formatted as follows:
|
||||
zlo_bound zhi_bound yz
|
||||
|
||||
This bounding box is convenient for many visualization programs and is
|
||||
calculated from the 9 triclinic box parameters
|
||||
calculated from the 9 restricted triclinic box parameters
|
||||
(xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:
|
||||
|
||||
.. parsed-literal::
|
||||
@ -217,22 +304,66 @@ calculated from the 9 triclinic box parameters
|
||||
zhi_bound = zhi
|
||||
|
||||
These formulas can be inverted if you need to convert the bounding box
|
||||
back into the triclinic box parameters, e.g. xlo = xlo_bound -
|
||||
MIN(0.0,xy,xz,xy+xz).
|
||||
back into the restricted triclinic box parameters, e.g. xlo =
|
||||
xlo_bound - MIN(0.0,xy,xz,xy+xz).
|
||||
|
||||
One use of triclinic simulation boxes is to model solid-state crystals
|
||||
with triclinic symmetry. The :doc:`lattice <lattice>` command can be
|
||||
used with non-orthogonal basis vectors to define a lattice that will
|
||||
tile a triclinic simulation box via the
|
||||
:doc:`create_atoms <create_atoms>` command.
|
||||
----------
|
||||
|
||||
A second use is to run Parrinello-Rahman dynamics via the :doc:`fix npt <fix_nh>` command, which will adjust the xy, xz, yz tilt
|
||||
factors to compensate for off-diagonal components of the pressure
|
||||
tensor. The analog for an :doc:`energy minimization <minimize>` is
|
||||
the :doc:`fix box/relax <fix_box_relax>` command.
|
||||
Periodicity and tilt factors for triclinic simulation boxes
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
A third use is to shear a bulk solid to study the response of the
|
||||
material. The :doc:`fix deform <fix_deform>` command can be used for
|
||||
this purpose. It allows dynamic control of the xy, xz, yz tilt
|
||||
factors as a simulation runs. This is discussed in the next section
|
||||
on non-equilibrium MD (NEMD) simulations.
|
||||
There is no requirement that a triclinic box be periodic in any
|
||||
dimension, though it typically should be in y or z if you wish to
|
||||
enforce a shift in coordinates due to periodic boundary conditions
|
||||
across the y or z boundaries. See the doc page for the :doc:`boundary
|
||||
<boundary>` command for an explanation of shifted coordinates for
|
||||
restricted triclinic boxes which are periodic.
|
||||
|
||||
Some commands that work with triclinic boxes, e.g. the :doc:`fix
|
||||
deform <fix_deform>` and :doc:`fix npt <fix_nh>` commands, require
|
||||
periodicity or non-shrink-wrap boundary conditions in specific
|
||||
dimensions. See the command doc pages for details.
|
||||
|
||||
A restricted triclinic box can be defined with all 3 tilt factors =
|
||||
0.0, so that it is initially orthogonal. This is necessary if the box
|
||||
will become non-orthogonal, e.g. due to use of the :doc:`fix npt
|
||||
<fix_nh>` or :doc:`fix deform <fix_deform>` commands. Alternatively,
|
||||
you can use the :doc:`change_box <change_box>` command to convert a
|
||||
simulation box from orthogonal to restricted triclinic and vice versa.
|
||||
|
||||
.. note::
|
||||
|
||||
Highly tilted restricted triclinic simulation boxes can be
|
||||
computationally inefficient. This is due to the large volume of
|
||||
communication needed to acquire ghost atoms around a processor's
|
||||
irregular-shaped subdomain. For extreme values of tilt, LAMMPS may
|
||||
also lose atoms and generate an error.
|
||||
|
||||
LAMMPS will issue a warning if you define a restricted triclinic box
|
||||
with a tilt factor which skews the box more than half the distance of
|
||||
the parallel box length, which is the first dimension in the tilt
|
||||
factor (e.g. x for xz).
|
||||
|
||||
For example, if xlo = 2 and xhi = 12, then the x box length is 10 and
|
||||
the xy tilt factor should be between -5 and 5 to avoid the warning.
|
||||
Similarly, both xz and yz should be between -(xhi-xlo)/2 and
|
||||
+(yhi-ylo)/2. Note that these are not limitations, since if the
|
||||
maximum tilt factor is 5 (as in this example), then simulations boxes
|
||||
and atom configurations with tilt = ..., -15, -5, 5, 15, 25, ... are
|
||||
all geometrically equivalent.
|
||||
|
||||
If the box tilt exceeds this limit during a dynamics run (e.g. due to
|
||||
the :doc:`fix deform <fix_deform>` command), then by default the box
|
||||
is "flipped" to an equivalent shape with a tilt factor within the
|
||||
warning bounds, and the run continues. See the :doc:`fix deform
|
||||
<fix_deform>` page for further details. Box flips that would normally
|
||||
occur using the :doc:`fix deform <fix_deform>` or :doc:`fix npt
|
||||
<fix_nh>` commands can be suppressed using the *flip no* option with
|
||||
either of the commands.
|
||||
|
||||
One exception to box flipping is if the first dimension in the tilt
|
||||
factor (e.g. x for xy) is non-periodic. In that case, the limits on
|
||||
the tilt factor are not enforced, since flipping the box in that
|
||||
dimension would not change the atom positions due to non-periodicity.
|
||||
In this mode, if the system tilts to large angles, the simulation will
|
||||
simply become inefficient, due to the highly skewed simulation box.
|
||||
|
||||
@ -14,16 +14,17 @@ wherever they appear in LAMMPS input or output files. The total number
|
||||
Ntypes for each interaction is "locked in" when the simulation box
|
||||
is created.
|
||||
|
||||
A recent addition to LAMMPS is the option to use strings - referred
|
||||
to as type labels - as an alternative. Using type labels instead of
|
||||
A recent addition to LAMMPS is the option to use strings - referred to
|
||||
as type labels - as an alternative. Using type labels instead of
|
||||
numeric types can be advantageous in various scenarios. For example,
|
||||
type labels can make inputs more readable and generic (i.e. usable through
|
||||
the :doc:`include command <include>` for different systems with different
|
||||
numerical values assigned to types. This generality also applies to
|
||||
other inputs like data files read by :doc:`read_data <read_data>` or
|
||||
molecule template files read by the :doc:`molecule <molecule>`
|
||||
command. See below for a list of other commands that can use
|
||||
type labels in different ways.
|
||||
type labels can make inputs more readable and generic (i.e. usable
|
||||
through the :doc:`include command <include>` for different systems with
|
||||
different numerical values assigned to types. This generality also
|
||||
applies to other inputs like data files read by :doc:`read_data
|
||||
<read_data>` or molecule template files read by the :doc:`molecule
|
||||
<molecule>` command. A discussion of the current type label support can
|
||||
be found in :ref:`(Gissinger) <Typelabel24>`. See below for a list of
|
||||
other commands that can use type labels in different ways.
|
||||
|
||||
LAMMPS will *internally* continue to use numeric types, which means
|
||||
that many previous restrictions still apply. For example, the total
|
||||
@ -124,3 +125,9 @@ between the files. The creation of simulation-ready reaction templates
|
||||
for :doc:`fix bond/react <fix_bond_react>` is much simpler when using
|
||||
type labels, and results in templates that can be used without
|
||||
modification in multiple simulations or different systems.
|
||||
|
||||
-----------
|
||||
|
||||
.. _Typelabel24:
|
||||
|
||||
**(Gissinger)** J. R. Gissinger, I. Nikiforov, Y. Afshar, B. Waters, M. Choi, D. S. Karls, A. Stukowski, W. Im, H. Heinz, A. Kohlmeyer, and E. B. Tadmor, J Phys Chem B, 128, 3282-3297 (2024).
|
||||
|
||||
@ -29,7 +29,7 @@ General features
|
||||
* spatial decomposition of simulation domain for MPI parallelism
|
||||
* particle decomposition inside spatial decomposition for OpenMP and GPU parallelism
|
||||
* GPLv2 licensed open-source distribution
|
||||
* highly portable C++-11
|
||||
* highly portable C++-11 (optional packages may require C++17)
|
||||
* modular code with most functionality in optional packages
|
||||
* only depends on MPI library for basic parallel functionality, MPI stub for serial compilation
|
||||
* other libraries are optional and only required for specific packages
|
||||
@ -81,7 +81,7 @@ commands)
|
||||
* pairwise potentials: Lennard-Jones, Buckingham, Morse, Born-Mayer-Huggins, Yukawa, soft, Class II (COMPASS), hydrogen bond, harmonic, gaussian, tabulated, scripted
|
||||
* charged pairwise potentials: Coulombic, point-dipole
|
||||
* many-body potentials: EAM, Finnis/Sinclair, MEAM, MEAM+SW, EIM, EDIP, ADP, Stillinger-Weber, Tersoff, REBO, AIREBO, ReaxFF, COMB, Streitz-Mintmire, 3-body polymorphic, BOP, Vashishta
|
||||
* machine learning potentials: ACE, AGNI, GAP, Behler-Parrinello (N2P2), POD, RANN
|
||||
* machine learning potentials: ACE, AGNI, GAP, Behler-Parrinello (N2P2), POD, RANN, SNAP
|
||||
* interfaces to ML potentials distributed by external groups: ANI, ChIMES, DeepPot, HIPNN, MTP
|
||||
* long-range interactions for charge, point-dipoles, and LJ dispersion: Ewald, Wolf, PPPM (similar to particle-mesh Ewald), MSM, ScaFaCoS
|
||||
* polarization models: :doc:`QEq <fix_qeq>`, :doc:`core/shell model <Howto_coreshell>`, :doc:`Drude dipole model <Howto_drude>`
|
||||
|
||||
@ -54,8 +54,21 @@ like this:
|
||||
x[3] = x coord of atom with ID 2
|
||||
...
|
||||
x[n3-1] = z coord of atom with ID natoms
|
||||
lmp.scatter_atoms("x",1,3,x)
|
||||
lmp.scatter_atoms("x", 1, 3, x)
|
||||
|
||||
The coordinates can also be provided as arguments to the initializer of x:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from ctypes import c_double
|
||||
natoms = 2
|
||||
n3 = 3*natoms
|
||||
# init in constructor
|
||||
x = (n3*c_double)(0.0, 0.0, 0.0, 1.0, 1.0, 1.0)
|
||||
lmp.scatter_atoms("x", 1, 3, x)
|
||||
# or using a list
|
||||
coords = [1.0, 2.0, 3.0, -3.0, -2.0, -1.0]
|
||||
x = (c_double*len(coords))(*coords)
|
||||
|
||||
Alternatively, you can just change values in the vector returned by
|
||||
the gather methods, since they are also ctypes vectors.
|
||||
|
||||
|
||||
80
doc/src/angle_cosine_squared_restricted.rst
Normal file
80
doc/src/angle_cosine_squared_restricted.rst
Normal file
@ -0,0 +1,80 @@
|
||||
.. index:: angle_style cosine/squared/restricted
|
||||
.. index:: angle_style cosine/squared/restricted/omp
|
||||
|
||||
angle_style cosine/squared/restricted command
|
||||
=============================================
|
||||
|
||||
Accelerator Variants: *cosine/squared/restricted/omp*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
angle_style cosine/squared/restricted
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
angle_style cosine/squared/restricted
|
||||
angle_coeff 2*4 75.0 100.0
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The *cosine/squared/restricted* angle style uses the potential
|
||||
|
||||
.. math::
|
||||
|
||||
E = K [\cos(\theta) - \cos(\theta_0)]^2 / \sin^2(\theta)
|
||||
|
||||
, which is commonly used in the MARTINI force field,
|
||||
where :math:`\theta_0` is the equilibrium value of the angle, and :math:`K`
|
||||
is a prefactor. Note that the usual 1/2 factor is included in :math:`K`.
|
||||
|
||||
See :ref:`(Bulacu) <restricted-Bulacu>` for a description of the restricted angle for the MARTINI force field.
|
||||
|
||||
The following coefficients must be defined for each angle type via the
|
||||
:doc:`angle_coeff <angle_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* :math:`K` (energy)
|
||||
* :math:`\theta_0` (degrees)
|
||||
|
||||
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
||||
internally.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||
for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`angle_coeff <angle_coeff>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
|
||||
----------
|
||||
|
||||
.. _restricted-Bulacu:
|
||||
|
||||
**(Bulacu)** Bulacu, Goga, Zhao, Rossi, Monticelli, Periole, Tieleman, Marrink, J Chem Theory Comput, 9, 3282-3292
|
||||
(2013).
|
||||
@ -10,7 +10,7 @@ Syntax
|
||||
|
||||
angle_style style
|
||||
|
||||
* style = *none* or *zero* or *hybrid* or *amoeba* or *charmm* or *class2* or *class2/p6* or *cosine* or *cosine/buck6d* or *cosine/delta* or *cosine/periodic* or *cosine/shift* or *cosine/shift/exp* or *cosine/squared* or *cross* or *dipole* or *fourier* or *fourier/simple* or *gaussian* or *harmonic* or *lepton* or *mm3* or *quartic* or *spica* or *table*
|
||||
* style = *none* or *zero* or *hybrid* or *amoeba* or *charmm* or *class2* or *class2/p6* or *cosine* or *cosine/buck6d* or *cosine/delta* or *cosine/periodic* or *cosine/shift* or *cosine/shift/exp* or *cosine/squared* or *cosine/squared/restricted* or *cross* or *dipole* or *fourier* or *fourier/simple* or *gaussian* or *harmonic* or *lepton* or *mm3* or *quartic* or *spica* or *table*
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -84,6 +84,7 @@ of (g,i,k,o,t) to indicate which accelerated styles exist.
|
||||
* :doc:`cosine/shift <angle_cosine_shift>` - angle cosine with a shift
|
||||
* :doc:`cosine/shift/exp <angle_cosine_shift_exp>` - cosine with shift and exponential term in spring constant
|
||||
* :doc:`cosine/squared <angle_cosine_squared>` - angle with cosine squared term
|
||||
* :doc:`cosine/squared/restricted <angle_cosine_squared_restricted>` - angle with restricted cosine squared term
|
||||
* :doc:`cross <angle_cross>` - cross term coupling angle and bond lengths
|
||||
* :doc:`dipole <angle_dipole>` - angle that controls orientation of a point dipole
|
||||
* :doc:`fourier <angle_fourier>` - angle with multiple cosine terms
|
||||
|
||||
@ -283,21 +283,22 @@ Note that there may be additional arguments required along with the
|
||||
arguments are described on the :doc:`Howto body <Howto_body>` doc page.
|
||||
|
||||
For the *dielectric* style, each particle can be either a physical
|
||||
particle (e.g. an ion), or an interface particle representing a boundary
|
||||
element between two regions of different dielectric constant. For
|
||||
interface particles, in addition to the properties associated with
|
||||
atom_style full, each particle also should be assigned a normal unit
|
||||
vector (defined by normx, normy, normz), an area (area/patch), the
|
||||
particle (e.g. an ion), or an interface particle representing a
|
||||
boundary element between two regions of different dielectric
|
||||
constant. For interface particles, in addition to the properties
|
||||
associated with atom_style full, each particle also should be assigned
|
||||
a unit dipole vector (mu) representing the direction of the induced
|
||||
dipole moment at each interface particle, an area (area/patch), the
|
||||
difference and mean of the dielectric constants of two sides of the
|
||||
interface along the direction of the normal vector (ed and em), the
|
||||
local dielectric constant at the boundary element (epsilon), and a mean
|
||||
local curvature (curv). Physical particles must be assigned these
|
||||
values, as well, but only their local dielectric constants will be used;
|
||||
see documentation for associated :doc:`pair styles <pair_dielectric>`
|
||||
and :doc:`fixes <fix_polarize>`. The distinction between the physical
|
||||
and interface particles is only meaningful when :doc:`fix polarize
|
||||
<fix_polarize>` commands are applied to the interface particles. This
|
||||
style is part of the DIELECTRIC package.
|
||||
local dielectric constant at the boundary element (epsilon), and a
|
||||
mean local curvature (curv). Physical particles must be assigned
|
||||
these values, as well, but only their local dielectric constants will
|
||||
be used; see documentation for associated :doc:`pair styles
|
||||
<pair_dielectric>` and :doc:`fixes <fix_polarize>`. The distinction
|
||||
between the physical and interface particles is only meaningful when
|
||||
:doc:`fix polarize <fix_polarize>` commands are applied to the
|
||||
interface particles. This style is part of the DIELECTRIC package.
|
||||
|
||||
For the *dipole* style, a point dipole vector mu is defined for each
|
||||
point particle. Note that if you wish the particles to be finite-size
|
||||
|
||||
@ -42,8 +42,10 @@ commands.
|
||||
The style *p* means the box is periodic, so that particles interact
|
||||
across the boundary, and they can exit one end of the box and re-enter
|
||||
the other end. A periodic dimension can change in size due to
|
||||
constant pressure boundary conditions or box deformation (see the :doc:`fix npt <fix_nh>` and :doc:`fix deform <fix_deform>` commands). The *p*
|
||||
style must be applied to both faces of a dimension.
|
||||
constant pressure boundary conditions or box deformation (see the
|
||||
:doc:`fix npt <fix_nh>` and :doc:`fix deform <fix_deform>` commands).
|
||||
The *p* style must be applied to both faces of a dimension. For 2d
|
||||
simulations the z dimension must be periodic (which is the default).
|
||||
|
||||
The styles *f*, *s*, and *m* mean the box is non-periodic, so that
|
||||
particles do not interact across the boundary and do not move from one
|
||||
@ -76,28 +78,44 @@ atoms becomes less than 50.0. This can be useful if you start a
|
||||
simulation with an empty box or if you wish to leave room on one side
|
||||
of the box, e.g. for atoms to evaporate from a surface.
|
||||
|
||||
For triclinic (non-orthogonal) simulation boxes, if the second dimension
|
||||
of a tilt factor (e.g. y for xy) is periodic, then the periodicity is
|
||||
enforced with the tilt factor offset. If the first dimension is
|
||||
shrink-wrapped, then the shrink wrapping is applied to the tilted box
|
||||
face, to encompass the atoms. E.g. for a positive xy tilt, the xlo
|
||||
and xhi faces of the box are planes tilting in the +y direction as y
|
||||
increases. These tilted planes are shrink-wrapped around the atoms to
|
||||
determine the x extent of the box.
|
||||
|
||||
LAMMPS also allows use of triclinic (non-orthogonal) simulation boxes.
|
||||
See the :doc:`Howto triclinic <Howto_triclinic>` page for a
|
||||
geometric description of triclinic boxes, as defined by LAMMPS, and
|
||||
how to transform these parameters to and from other commonly used
|
||||
triclinic representations.
|
||||
description of both general and restricted triclinic boxes and how to
|
||||
define them. General triclinic boxes (arbitrary edge vectors **A**,
|
||||
**B**, and **C**) are converted internally to restricted triclinic
|
||||
boxes with tilt factors (xy,xz,yz) which skew an otherwise orthogonal
|
||||
box.
|
||||
|
||||
The boundary <boundary> command settings explained above for the 6
|
||||
faces of an orthogonal box also apply in similar manner to the 6 faces
|
||||
of a restricted triclinic box (and thus to the corresponding 6 faces
|
||||
of a general triclinic box), with the following context.
|
||||
|
||||
if the second dimension of a tilt factor (e.g. y for xy) is periodic,
|
||||
then the periodicity is enforced with the tilt factor offset. This
|
||||
means that for y periodicity a particle which exits the lower y
|
||||
boundary is displaced in the x-direction by xy before it re-enters the
|
||||
upper y boundary. And vice versa if a particle exits the upper y
|
||||
boundary. Likewise the ghost atoms surrounding a particle near the
|
||||
lower y boundary include images of particles near the upper y-boundary
|
||||
which are displaced in the x-direction by xy. Similar rules apply for
|
||||
z-periodicity and the xz and/or yz tilt factors.
|
||||
|
||||
If the first dimension of a tilt factor is shrink-wrapped, then the
|
||||
shrink wrapping is applied to the tilted box face, to encompass the
|
||||
atoms. E.g. for a positive xy tilt, the xlo and xhi faces of the box
|
||||
are planes tilting in the +y direction as y increases. The position
|
||||
of these tilted planes are adjusted dynamically to shrink-wrap around
|
||||
the atoms to determine the xlo and xhi extents of the box.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This command cannot be used after the simulation box is defined by a
|
||||
:doc:`read_data <read_data>` or :doc:`create_box <create_box>` command or
|
||||
:doc:`read_restart <read_restart>` command. See the
|
||||
:doc:`change_box <change_box>` command for how to change the simulation
|
||||
box boundaries after it has been defined.
|
||||
:doc:`read_data <read_data>` or :doc:`create_box <create_box>` command
|
||||
or :doc:`read_restart <read_restart>` command. See the
|
||||
:doc:`change_box <change_box>` command for how to change the
|
||||
simulation box boundaries after it has been defined.
|
||||
|
||||
For 2d simulations, the z dimension must be periodic.
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@ Syntax
|
||||
|
||||
* ID, group-ID are documented in :doc:`compute <compute>` command
|
||||
* count/type = style name of this compute command
|
||||
* mode = {atom} or {bond} or {angle} or {dihedral} or {improper}
|
||||
* mode = *atom* or *bond* or *angle* or *dihedral* or *improper*
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -69,29 +69,42 @@ for each type:
|
||||
|
||||
----------
|
||||
|
||||
If the {mode} setting is {atom} then the count of atoms for each atom
|
||||
If the *mode* setting is *atom* then the count of atoms for each atom
|
||||
type is tallied. Only atoms in the specified group are counted.
|
||||
|
||||
If the {mode} setting is {bond} then the count of bonds for each bond
|
||||
The atom count for each type can be normalized by the total number of
|
||||
atoms like so:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute typevec all count/type atom # number of atoms of each type
|
||||
variable normtypes vector c_typevec/atoms # divide by total number of atoms
|
||||
variable ntypes equal extract_setting(ntypes) # number of atom types
|
||||
thermo_style custom step v_normtypes[*${ntypes}] # vector variable needs upper limit
|
||||
|
||||
Similarly, bond counts can be normalized by the total number of bonds.
|
||||
The same goes for angles, dihedrals, and impropers (see below).
|
||||
|
||||
If the *mode* setting is *bond* then the count of bonds for each bond
|
||||
type is tallied. Only bonds with both atoms in the specified group
|
||||
are counted.
|
||||
|
||||
For {mode} = {bond}, broken bonds with a bond type of zero are also
|
||||
For *mode* = *bond*, broken bonds with a bond type of zero are also
|
||||
counted. The :doc:`bond_style quartic <bond_quartic>` and :doc:`BPM
|
||||
bond styles <Howto_bpm>` break bonds by doing this. See the :doc:`
|
||||
Howto broken bonds <Howto_broken_bonds>` doc page for more details.
|
||||
bond styles <Howto_bpm>` break bonds by doing this. See the
|
||||
:doc:`Howto broken bonds <Howto_broken_bonds>` doc page for more details.
|
||||
Note that the group setting is ignored for broken bonds; all broken
|
||||
bonds in the system are counted.
|
||||
|
||||
If the {mode} setting is {angle} then the count of angles for each
|
||||
If the *mode* setting is *angle* then the count of angles for each
|
||||
angle type is tallied. Only angles with all 3 atoms in the specified
|
||||
group are counted.
|
||||
|
||||
If the {mode} setting is {dihedral} then the count of dihedrals for
|
||||
If the *mode* setting is *dihedral* then the count of dihedrals for
|
||||
each dihedral type is tallied. Only dihedrals with all 4 atoms in the
|
||||
specified group are counted.
|
||||
|
||||
If the {mode} setting is {improper} then the count of impropers for
|
||||
If the *mode* setting is *improper* then the count of impropers for
|
||||
each improper type is tallied. Only impropers with all 4 atoms in the
|
||||
specified group are counted.
|
||||
|
||||
@ -101,18 +114,19 @@ Output info
|
||||
"""""""""""
|
||||
|
||||
This compute calculates a global vector of counts. If the mode is
|
||||
{atom} or {bond} or {angle} or {dihedral} or {improper}, then the
|
||||
*atom* or *bond* or *angle* or *dihedral* or *improper*, then the
|
||||
vector length is the number of atom types or bond types or angle types
|
||||
or dihedral types or improper types, respectively.
|
||||
|
||||
If the mode is {bond} this compute also calculates a global scalar
|
||||
If the mode is *bond* this compute also calculates a global scalar
|
||||
which is the number of broken bonds with type = 0, as explained above.
|
||||
|
||||
These values can be used by any command that uses global scalar or
|
||||
vector values from a compute as input. See the :doc:`Howto output
|
||||
<Howto_output>` page for an overview of LAMMPS output options.
|
||||
|
||||
The scalar and vector values calculated by this compute are "extensive".
|
||||
The scalar and vector values calculated by this compute are both
|
||||
"intensive".
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -20,7 +20,7 @@ Syntax
|
||||
*model* values = style
|
||||
style = *linear* or *quadratic* or *mliappy*
|
||||
*descriptor* values = style filename
|
||||
style = *sna*
|
||||
style = *sna* or *ace*
|
||||
filename = name of file containing descriptor definitions
|
||||
*gradgradflag* value = 0/1
|
||||
toggle gradgrad method for force gradient
|
||||
@ -31,6 +31,7 @@ Examples
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute mliap model linear descriptor sna Ta06A.mliap.descriptor
|
||||
compute mliap model linear descriptor ace H_N_O_ccs.yace gradgradflag 1
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
@ -40,18 +41,15 @@ of machine-learning interatomic potentials with respect to model parameters.
|
||||
It is used primarily for calculating the gradient of energy, force, and
|
||||
stress components with respect to model parameters, which is useful when
|
||||
training :doc:`mliap pair_style <pair_mliap>` models to match target data.
|
||||
It provides separate
|
||||
definitions of the interatomic potential functional form (*model*)
|
||||
and the geometric quantities that characterize the atomic positions
|
||||
(*descriptor*). By defining *model* and *descriptor* separately,
|
||||
It provides separate definitions of the interatomic potential functional
|
||||
form (*model*) and the geometric quantities that characterize the atomic
|
||||
positions (*descriptor*). By defining *model* and *descriptor* separately,
|
||||
it is possible to use many different models with a given descriptor,
|
||||
or many different descriptors with a given model. Currently, the
|
||||
compute supports just two models, *linear* and *quadratic*,
|
||||
and one descriptor, *sna*, the SNAP descriptor used by
|
||||
:doc:`pair_style snap <pair_snap>`, including the linear, quadratic,
|
||||
and chem variants. Work is currently underway to extend
|
||||
the interface to handle neural network energy models,
|
||||
and it is also straightforward to add new descriptor styles.
|
||||
or many different descriptors with a given model. Currently, the compute
|
||||
supports *linear* and *quadratic* SNAP descriptor computes used in
|
||||
:doc:`pair_style snap <pair_snap>`, *linear* SO3 descriptor computes, and
|
||||
*linear* ACE descriptor computes used in :doc:`pair_style pace <pair_pace>`,
|
||||
and it is straightforward to add new descriptor styles.
|
||||
|
||||
The compute *mliap* command must be followed by two keywords
|
||||
*model* and *descriptor* in either order.
|
||||
@ -60,19 +58,31 @@ The *model* keyword is followed by the model style (*linear*,
|
||||
*quadratic* or *mliappy*). The *mliappy* model is only available if
|
||||
LAMMPS is built with the *mliappy* Python module. There are
|
||||
:ref:`specific installation instructions <mliap>` for that module.
|
||||
For the *mliap* compute, specifying a *linear* model will compute the
|
||||
specified descriptors and gradients with respect to linear model parameters
|
||||
whereas *quadratic* will do the same, but for the quadratic products of
|
||||
descriptors.
|
||||
|
||||
The *descriptor* keyword is followed by a descriptor style, and
|
||||
additional arguments. The compute currently supports two descriptor
|
||||
styles *sna* and *so3*, but it is is straightforward to add additional
|
||||
descriptor styles. The SNAP descriptor style *sna* is the same as that
|
||||
used by :doc:`pair_style snap <pair_snap>`, including the linear,
|
||||
quadratic, and chem variants. A single additional argument specifies
|
||||
the descriptor filename containing the parameters and setting used by
|
||||
the SNAP descriptor. The descriptor filename usually ends in the
|
||||
additional arguments. The compute currently supports three descriptor
|
||||
styles: *sna*, *so3*, and *ace*, but it is is straightforward to add
|
||||
additional descriptor styles. The SNAP descriptor style *sna* is the
|
||||
same as that used by :doc:`pair_style snap <pair_snap>`, including the
|
||||
linear, quadratic, and chem variants. A single additional argument
|
||||
specifies the descriptor filename containing the parameters and setting used
|
||||
by the SNAP descriptor. The descriptor filename usually ends in the
|
||||
*.mliap.descriptor* extension. The format of this file is identical to
|
||||
the descriptor file in the :doc:`pair_style mliap <pair_mliap>`, and is
|
||||
described in detail there.
|
||||
|
||||
The ACE descriptor style *ace* is the same as :doc:`pair_style pace <pair_pace>`.
|
||||
A single additional argument specifies the *ace* descriptor filename
|
||||
that contains parameters and settings for the ACE descriptors. This file
|
||||
format differs from the SNAP or SO3 descriptor files, and has a *.yace* or
|
||||
*.ace* extension. However, as with other mliap descriptor styles, this file
|
||||
is identical to the ace descriptor file in :doc:`pair_style mliap <pair_mliap>`,
|
||||
where it is described in further detail.
|
||||
|
||||
.. note::
|
||||
|
||||
The number of LAMMPS atom types (and the value of *nelems* in the model)
|
||||
@ -172,8 +182,10 @@ This compute is part of the ML-IAP package. It is only enabled if
|
||||
LAMMPS was built with that package. In addition, building LAMMPS with
|
||||
the ML-IAP package requires building LAMMPS with the ML-SNAP package.
|
||||
The *mliappy* model also requires building LAMMPS with the PYTHON
|
||||
package. See the :doc:`Build package <Build_package>` page for more
|
||||
info.
|
||||
package. The *ace* descriptor also requires building LAMMPS with the
|
||||
ML-PACE package. See the :doc:`Build package <Build_package>` page for
|
||||
more info. Note that `kk` (KOKKOS) accelerated variants of SNAP and
|
||||
ACE descriptors are not compatible with `mliap descriptor`.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -126,7 +126,7 @@ These styles are part of the EXTRA-COMPUTE package. They are only
|
||||
enabled if LAMMPS is built with that package. See the :doc:`Build
|
||||
package <Build_package>` doc page on for more info.
|
||||
|
||||
The method is only implemented for 3d orthogonal simulation boxes whose
|
||||
The method is implemented for orthogonal simulation boxes whose
|
||||
size does not change in time, and axis-aligned planes.
|
||||
|
||||
The method only works with two-body pair interactions, because it
|
||||
|
||||
@ -86,25 +86,46 @@ Description
|
||||
"""""""""""
|
||||
|
||||
This command creates atoms (or molecules) within the simulation box,
|
||||
either on a lattice, or a single atom (or molecule), or on a surface
|
||||
defined by a triangulated mesh, or a random collection of atoms (or
|
||||
molecules). It is an alternative to reading in atom coordinates
|
||||
either on a lattice, or at random points, or on a surface defined by a
|
||||
triangulated mesh. Or it creates a single atom (or molecule) at a
|
||||
specified point. It is an alternative to reading in atom coordinates
|
||||
explicitly via a :doc:`read_data <read_data>` or :doc:`read_restart
|
||||
<read_restart>` command. A simulation box must already exist, which is
|
||||
<read_restart>` command.
|
||||
|
||||
To use this command a simulation box must already exist, which is
|
||||
typically created via the :doc:`create_box <create_box>` command.
|
||||
Before using this command, a lattice must also be defined using the
|
||||
:doc:`lattice <lattice>` command, unless you specify the *single* style
|
||||
with units = box or the *random* style. For the remainder of this doc
|
||||
page, a created atom or molecule is referred to as a "particle".
|
||||
Before using this command, a lattice must typically also be defined
|
||||
using the :doc:`lattice <lattice>` command, unless you specify the
|
||||
*single* or *mesh* style with units = box or the *random* style. To
|
||||
create atoms on a lattice for general triclinic boxes, see the
|
||||
discussion below.
|
||||
|
||||
For the remainder of this doc page, a created atom or molecule is
|
||||
referred to as a "particle".
|
||||
|
||||
If created particles are individual atoms, they are assigned the
|
||||
specified atom *type*, though this can be altered via the *basis*
|
||||
keyword as discussed below. If molecules are being created, the type
|
||||
of each atom in the created molecule is specified in the file read by
|
||||
the :doc:`molecule <molecule>` command, and those values are added to
|
||||
the specified atom *type* (e.g., if *type* = 2 and the file specifies
|
||||
atom types 1, 2, and 3, then each created molecule will have atom types
|
||||
3, 4, and 5).
|
||||
of each atom in the created molecule is specified in a specified file
|
||||
read by the :doc:`molecule <molecule>` command, and those values are
|
||||
added to the specified atom *type* (e.g., if *type* = 2 and the file
|
||||
specifies atom types 1, 2, and 3, then each created molecule will have
|
||||
atom types 3, 4, and 5).
|
||||
|
||||
.. note::
|
||||
|
||||
You cannot use this command to create atoms that are outside the
|
||||
simulation box; they will just be ignored by LAMMPS. This is true
|
||||
even if you are using shrink-wrapped box boundaries, as specified
|
||||
by the :doc:`boundary <boundary>` command. However, you can first
|
||||
use the :doc:`change_box <change_box>` command to temporarily
|
||||
expand the box, then add atoms via create_atoms, then finally use
|
||||
change_box command again if needed to re-shrink-wrap the new atoms.
|
||||
See the :doc:`change_box <change_box>` doc page for an example of
|
||||
how to do this, using the create_atoms *single* style to insert a
|
||||
new atom outside the current simulation box.
|
||||
|
||||
----------
|
||||
|
||||
For the *box* style, the create_atoms command fills the entire
|
||||
simulation box with particles on the lattice. If your simulation box
|
||||
@ -126,10 +147,117 @@ periodic boundaries. If this is desired, you should either use the
|
||||
*box* style, or tweak the region size to get precisely the particles
|
||||
you want.
|
||||
|
||||
----------
|
||||
|
||||
If the simulation box is formulated as a general triclinic box defined
|
||||
by arbitrary edge vectors **A**, **B**, **C**, then the *box* and
|
||||
*region* styles will create atoms on a lattice commensurate with those
|
||||
edge vectors. See the :doc:`Howto_triclinic <Howto_triclinic>` doc
|
||||
page for a detailed explanation of orthogonal, restricted triclinic,
|
||||
and general triclinic simulation boxes. As with the :doc:`create_box
|
||||
<create_box>` command, the :doc:`lattice <lattice>` command used by
|
||||
this command must be of style *custom* and use its *triclinic/general*
|
||||
option. The *a1, *a2*, *a3* settings of the :doc:`lattice <lattice>`
|
||||
command define the edge vectors of a unit cell of the general
|
||||
triclinic lattice. The :doc:`create_box <create_box>` command creates
|
||||
a simulation box which replicates that unit cell along each of the
|
||||
**A**, **B**, **C** edge vectors.
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS allows specification of general triclinic simulation boxes
|
||||
as a convenience for users who may be converting data from
|
||||
solid-state crystallographic representations or from DFT codes for
|
||||
input to LAMMPS. However, as explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, internally,
|
||||
LAMMPS only uses restricted triclinic simulation boxes. This means
|
||||
the box created by the :doc:`create_box <create_box>` command as
|
||||
well as the atoms created by this command with their per-atom
|
||||
information (e.g. coordinates, velocities) are converted (rotated)
|
||||
from general to restricted triclinic form when the two commands are
|
||||
invoked. The <Howto_triclinic>` doc page also discusses other
|
||||
LAMMPS commands which can input/output general triclinic
|
||||
representations of the simulation box and per-atom data.
|
||||
|
||||
The *box* style will fill the entire general triclinic box with
|
||||
particles on the lattice, as explained above.
|
||||
|
||||
.. note::
|
||||
|
||||
The *region* style also operates as explained above, but the check
|
||||
for particles inside the region is performed *after* the particle
|
||||
coordinates have been converted to the restricted triclinic box.
|
||||
This means the region must also be defined with respect to the
|
||||
restricted triclinic box, not the general triclinic box.
|
||||
|
||||
If the simulation box is general triclinic, the *single*, *random*,
|
||||
and *mesh* styles described next operate on the box *after* it has
|
||||
been converted to restricted triclinic. So all the settings for those
|
||||
styles should be made in that context.
|
||||
|
||||
----------
|
||||
|
||||
For the *single* style, a single particle is added to the system at
|
||||
the specified coordinates. This can be useful for debugging purposes
|
||||
or to create a tiny system with a handful of particles at specified
|
||||
positions.
|
||||
positions. For a 2d simulation the specified z coordinate must be
|
||||
0.0.
|
||||
|
||||
.. versionchanged:: 2Jun2022
|
||||
|
||||
The *porosity* style has been renamed to *random* with added functionality.
|
||||
|
||||
For the *random* style, *N* particles are added to the system at
|
||||
randomly generated coordinates, which can be useful for generating an
|
||||
amorphous system. For 2d simulations, the z coordinates of all added
|
||||
atoms will be 0.0.
|
||||
|
||||
The particles are created one by one using the specified random number
|
||||
*seed*, resulting in the same set of particle coordinates, independent
|
||||
of how many processors are being used in the simulation. Unless the
|
||||
*overlap* keyword is specified, particles created by the *random*
|
||||
style will typically be highly overlapped. Various additional
|
||||
criteria can be used to accept or reject a random particle insertion;
|
||||
see the keyword discussion below. Multiple attempts per particle are
|
||||
made (see the *maxtry* keyword) until the insertion is either
|
||||
successful or fails. If this command fails to add all requested *N*
|
||||
particles, a warning will be output.
|
||||
|
||||
If the *region-ID* argument is specified as NULL, then the randomly
|
||||
created particles will be anywhere in the simulation box. If a
|
||||
*region-ID* is specified, a geometric volume is filled that is both
|
||||
inside the simulation box and is also consistent with the region
|
||||
volume. See the :doc:`region <region>` command for details. Note
|
||||
that a region can be specified so that its "volume" is either inside
|
||||
or outside its geometric boundary.
|
||||
|
||||
Note that the create_atoms command adds particles to those that
|
||||
already exist. This means it can be used to add particles to a system
|
||||
previously read in from a data or restart file. Or the create_atoms
|
||||
command can be used multiple times, to add multiple sets of particles
|
||||
to the simulation. For example, grain boundaries can be created, by
|
||||
interleaving the create_atoms command with :doc:`lattice <lattice>`
|
||||
commands specifying different orientations.
|
||||
|
||||
When this command is used, care should be taken to ensure the
|
||||
resulting system does not contain particles that are highly
|
||||
overlapped. Such overlaps will cause many interatomic potentials to
|
||||
compute huge energies and forces, leading to bad dynamics. There are
|
||||
several strategies to avoid this problem:
|
||||
|
||||
* Use the :doc:`delete_atoms overlap <delete_atoms>` command after
|
||||
create_atoms. For example, this strategy can be used to overlay and
|
||||
surround a large protein molecule with a volume of water molecules,
|
||||
then delete water molecules that overlap with the protein atoms.
|
||||
|
||||
* For the *random* style, use the optional *overlap* keyword to avoid
|
||||
overlaps when each new particle is created.
|
||||
|
||||
* Before running dynamics on an overlapped system, perform an
|
||||
:doc:`energy minimization <minimize>`. Or run initial dynamics with
|
||||
:doc:`pair_style soft <pair_soft>` or with :doc:`fix nve/limit
|
||||
<fix_nve_limit>` to un-overlap the particles, before running normal
|
||||
dynamics.
|
||||
|
||||
.. figure:: img/marble_race.jpg
|
||||
:figwidth: 33%
|
||||
@ -189,73 +317,6 @@ to the area of that triangle.
|
||||
beneficial to exclude computing interactions between the created
|
||||
particles using :doc:`neigh_modify exclude <neigh_modify>`.
|
||||
|
||||
.. versionchanged:: 2Jun2022
|
||||
|
||||
The *porosity* style has been renamed to *random* with added functionality.
|
||||
|
||||
For the *random* style, *N* particles are added to the system at
|
||||
randomly generated coordinates, which can be useful for generating an
|
||||
amorphous system. The particles are created one by one using the
|
||||
specified random number *seed*, resulting in the same set of particle
|
||||
coordinates, independent of how many processors are being used in the
|
||||
simulation. Unless the *overlap* keyword is specified, particles
|
||||
created by the *random* style will typically be highly overlapped.
|
||||
Various additional criteria can be used to accept or reject a random
|
||||
particle insertion; see the keyword discussion below. Multiple
|
||||
attempts per particle are made (see the *maxtry* keyword) until the
|
||||
insertion is either successful or fails. If this command fails to add
|
||||
all requested *N* particles, a warning will be output.
|
||||
|
||||
If the *region-ID* argument is specified as NULL, then the randomly
|
||||
created particles will be anywhere in the simulation box. If a
|
||||
*region-ID* is specified, a geometric volume is filled that is both
|
||||
inside the simulation box and is also consistent with the region
|
||||
volume. See the :doc:`region <region>` command for details. Note
|
||||
that a region can be specified so that its "volume" is either inside
|
||||
or outside its geometric boundary.
|
||||
|
||||
Note that the create_atoms command adds particles to those that
|
||||
already exist. This means it can be used to add particles to a system
|
||||
previously read in from a data or restart file. Or the create_atoms
|
||||
command can be used multiple times, to add multiple sets of particles
|
||||
to the simulation. For example, grain boundaries can be created, by
|
||||
interleaving the create_atoms command with :doc:`lattice <lattice>`
|
||||
commands specifying different orientations.
|
||||
|
||||
When this command is used, care should be taken to ensure the
|
||||
resulting system does not contain particles that are highly
|
||||
overlapped. Such overlaps will cause many interatomic potentials to
|
||||
compute huge energies and forces, leading to bad dynamics. There are
|
||||
several strategies to avoid this problem:
|
||||
|
||||
* Use the :doc:`delete_atoms overlap <delete_atoms>` command after
|
||||
create_atoms. For example, this strategy can be used to overlay and
|
||||
surround a large protein molecule with a volume of water molecules,
|
||||
then delete water molecules that overlap with the protein atoms.
|
||||
|
||||
* For the *random* style, use the optional *overlap* keyword to avoid
|
||||
overlaps when each new particle is created.
|
||||
|
||||
* Before running dynamics on an overlapped system, perform an
|
||||
:doc:`energy minimization <minimize>`. Or run initial dynamics with
|
||||
:doc:`pair_style soft <pair_soft>` or with :doc:`fix nve/limit
|
||||
<fix_nve_limit>` to un-overlap the particles, before running normal
|
||||
dynamics.
|
||||
|
||||
.. note::
|
||||
|
||||
You cannot use any of the styles explained above to create atoms
|
||||
that are outside the simulation box; they will just be ignored by
|
||||
LAMMPS. This is true even if you are using shrink-wrapped box
|
||||
boundaries, as specified by the :doc:`boundary <boundary>` command.
|
||||
However, you can first use the :doc:`change_box <change_box>`
|
||||
command to temporarily expand the box, then add atoms via
|
||||
create_atoms, then finally use change_box command again if needed
|
||||
to re-shrink-wrap the new atoms. See the :doc:`change_box
|
||||
<change_box>` doc page for an example of how to do this, using the
|
||||
create_atoms *single* style to insert a new atom outside the
|
||||
current simulation box.
|
||||
|
||||
----------
|
||||
|
||||
Individual atoms are inserted by this command, unless the *mol*
|
||||
@ -407,12 +468,13 @@ to.
|
||||
|
||||
The *overlap* keyword only applies to the *random* style. It prevents
|
||||
newly created particles from being created closer than the specified
|
||||
*Doverlap* distance from any other particle. When the particles being
|
||||
created are molecules, the radius of the molecule (from its geometric
|
||||
center) is added to *Doverlap*. If particles have finite size (see
|
||||
:doc:`atom_style sphere <atom_style>` for example) *Doverlap* should
|
||||
be specified large enough to include the particle size in the
|
||||
non-overlapping criterion.
|
||||
*Doverlap* distance from any other particle. If particles have finite
|
||||
size (see :doc:`atom_style sphere <atom_style>` for example) *Doverlap*
|
||||
should be specified large enough to include the particle size in the
|
||||
non-overlapping criterion. If molecules are being randomly inserted, then
|
||||
an insertion is only accepted if each particle in the molecule meets the
|
||||
overlap criterion with respect to other particles (not including particles
|
||||
in the molecule itself).
|
||||
|
||||
.. note::
|
||||
|
||||
@ -469,12 +531,19 @@ on a single CPU core.
|
||||
-----
|
||||
|
||||
The *units* keyword determines the meaning of the distance units used
|
||||
to specify the coordinates of the one particle created by the *single*
|
||||
style, or the overlap distance *Doverlap* by the *overlap* keyword. A
|
||||
*box* value selects standard distance units as defined by the
|
||||
:doc:`units <units>` command (e.g., :math:`\AA` for
|
||||
units = *real* or *metal*\ . A *lattice* value means the distance units are in
|
||||
lattice spacings.
|
||||
by parameters for various styles. A *box* value selects standard
|
||||
distance units as defined by the :doc:`units <units>` command (e.g.,
|
||||
:math:`\AA` for units = *real* or *metal*\ . A *lattice* value means
|
||||
the distance units are in lattice spacings. These are affected settings:
|
||||
|
||||
* for *single* style: coordinates of the particle created
|
||||
* for *random* style: overlap distance *Doverlap* by the *overlap* keyword
|
||||
* for *mesh* style: *bisect* threshold value for *meshmode* = *bisect*
|
||||
* for *mesh* style: *radthresh* value for *meshmode* = *bisect*
|
||||
* for *mesh* style: *density* value for *meshmode* = *qrand*
|
||||
|
||||
Since *density* represents an area (distance ^2), the lattice spacing
|
||||
factor is also squared.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -9,9 +9,11 @@ Syntax
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
create_box N region-ID keyword value ...
|
||||
create_box N NULL alo ahi blo bhi clo chi keyword value ...
|
||||
|
||||
* N = # of atom types to use in this simulation
|
||||
* region-ID = ID of region to use as simulation domain
|
||||
* region-ID = ID of region to use as simulation domain or NULL for general triclinic box
|
||||
* alo,ahi,blo,bhi,clo,chi = multipliers on a1,a2,a3 vectors defined by :doc"`lattice <lattice>` command (only when region-ID = NULL)
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *bond/types* or *angle/types* or *dihedral/types* or *improper/types* or *extra/bond/per/atom* or *extra/angle/per/atom* or *extra/dihedral/per/atom* or *extra/improper/per/atom* or *extra/special/per/atom*
|
||||
|
||||
@ -32,121 +34,204 @@ Examples
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
# orthogonal or restricted triclinic box using regionID = mybox
|
||||
create_box 2 mybox
|
||||
create_box 2 mybox bond/types 2 extra/bond/per/atom 1
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
# 2d general triclinic box using primitive cell for 2d hex lattice
|
||||
lattice custom 1.0 a1 1.0 0.0 0.0 a2 0.5 0.86602540378 0.0 &
|
||||
a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 triclinic/general
|
||||
create_box 1 NULL 0 5 0 5 -0.5 0.5
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
# 3d general triclinic box using primitive cell for 3d fcc lattice
|
||||
lattice custom 1.0 a2 0.0 0.5 0.5 a1 0.5 0.0 0.5 a3 0.5 0.5 0.0 basis 0.0 0.0 0.0 triclinic/general
|
||||
create box 1 NULL -5 5 -10 10 0 20
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This command creates a simulation box based on the specified region.
|
||||
Thus a :doc:`region <region>` command must first be used to define a
|
||||
geometric domain. It also partitions the simulation box into a
|
||||
regular 3d grid of rectangular bricks, one per processor, based on the
|
||||
number of processors being used and the settings of the
|
||||
:doc:`processors <processors>` command. The partitioning can later be
|
||||
changed by the :doc:`balance <balance>` or :doc:`fix balance <fix_balance>` commands.
|
||||
This command creates a simulation box. It also partitions the box into
|
||||
a regular 3d grid of smaller sub-boxes, one per processor (MPI task).
|
||||
The geometry of the partitioning is based on the size and shape of the
|
||||
simulation box, the number of processors being used and the settings
|
||||
of the :doc:`processors <processors>` command. The partitioning can
|
||||
later be changed by the :doc:`balance <balance>` or :doc:`fix balance
|
||||
<fix_balance>` commands.
|
||||
|
||||
The argument N is the number of atom types that will be used in the
|
||||
Simulation boxes in LAMMPS can be either orthogonal or triclinic in
|
||||
shape. Orthogonal boxes are a brick in 3d (rectangle in 2d) with 6
|
||||
faces that are each perpendicular to one of the standard xyz
|
||||
coordinate axes. Triclinic boxes are a parallelepiped in 3d
|
||||
(parallelogram in 2d) with opposite pairs of faces parallel to each
|
||||
other. LAMMPS supports two forms of triclinic boxes, restricted and
|
||||
general, which differ in how the box is oriented with respect to the
|
||||
xyz coordinate axes. See the :doc:`Howto triclinic <Howto_triclinic>`
|
||||
for a detailed description of all 3 kinds of simulation boxes.
|
||||
|
||||
The argument *N* is the number of atom types that will be used in the
|
||||
simulation.
|
||||
|
||||
Orthogonal and restricted triclinic boxes are created by specifying a
|
||||
region ID previously defined by the :doc:`region <region>` command.
|
||||
General triclinic boxes are discussed below.
|
||||
|
||||
If the region is not of style *prism*, then LAMMPS encloses the region
|
||||
(block, sphere, etc.) with an axis-aligned orthogonal bounding box
|
||||
which becomes the simulation domain.
|
||||
which becomes the simulation domain. For a 2d simulation, the zlo and
|
||||
zhi values of the simulation box must straddle zero.
|
||||
|
||||
If the region is of style *prism*, LAMMPS creates a non-orthogonal
|
||||
simulation domain shaped as a parallelepiped with triclinic symmetry.
|
||||
As defined by the :doc:`region prism <region>` command, the
|
||||
parallelepiped has its "origin" at (xlo,ylo,zlo) and is defined by three
|
||||
edge vectors starting from the origin given by
|
||||
:math:`\vec a = (x_\text{hi}-x_\text{lo},0,0)`;
|
||||
:math:`\vec b = (xy,y_\text{hi}-y_\text{lo},0)`; and
|
||||
:math:`\vec c = (xz,yz,z_\text{hi}-z_\text{lo})`.
|
||||
The parameters *xy*\ , *xz*\ , and *yz* can be 0.0 or
|
||||
positive or negative values and are called "tilt factors" because they
|
||||
are the amount of displacement applied to faces of an originally
|
||||
orthogonal box to transform it into the parallelepiped.
|
||||
parallelepiped has an "origin" at (xlo,ylo,zlo) and three edge vectors
|
||||
starting from the origin given by :math:`\vec a =
|
||||
(x_\text{hi}-x_\text{lo},0,0)`; :math:`\vec b =
|
||||
(xy,y_\text{hi}-y_\text{lo},0)`; and :math:`\vec c =
|
||||
(xz,yz,z_\text{hi}-z_\text{lo})`. In LAMMPS lingo, this is a
|
||||
restricted triclinic box because the three edge vectors cannot be
|
||||
defined in arbitrary (general) directions. The parameters *xy*\ ,
|
||||
*xz*\ , and *yz* can be 0.0 or positive or negative values and are
|
||||
called "tilt factors" because they are the amount of displacement
|
||||
applied to faces of an originally orthogonal box to transform it into
|
||||
the parallelepiped. For a 2d simulation, the zlo and zhi values of
|
||||
the simulation box must straddle zero.
|
||||
|
||||
By default, a *prism* region used with the create_box command must have
|
||||
tilt factors :math:`(xy,xz,yz)` that do not skew the box more than half
|
||||
the distance of the parallel box length. For example, if
|
||||
:math:`x_\text{lo} = 2` and :math:`x_\text{hi} = 12`, then the :math:`x`
|
||||
box length is 10 and the :math:`xy` tilt factor must be between
|
||||
:math:`-5` and :math:`5`. Similarly, both :math:`xz` and :math:`yz`
|
||||
must be between :math:`-(x_\text{hi}-x_\text{lo})/2` and
|
||||
Typically a *prism* region used with the create_box command should
|
||||
have tilt factors :math:`(xy,xz,yz)` that do not skew the box more
|
||||
than half the distance of the parallel box length. For example, if
|
||||
:math:`x_\text{lo} = 2` and :math:`x_\text{hi} = 12`, then the
|
||||
:math:`x` box length is 10 and the :math:`xy` tilt factor must be
|
||||
between :math:`-5` and :math:`5`. Similarly, both :math:`xz` and
|
||||
:math:`yz` must be between :math:`-(x_\text{hi}-x_\text{lo})/2` and
|
||||
:math:`+(y_\text{hi}-y_\text{lo})/2`. Note that this is not a
|
||||
limitation, since if the maximum tilt factor is 5 (as in this example),
|
||||
then configurations with tilt :math:`= \dots, -15`, :math:`-5`,
|
||||
:math:`5`, :math:`15`, :math:`25, \dots` are all geometrically
|
||||
equivalent. Simulations with large tilt factors will run inefficiently,
|
||||
since they require more ghost atoms and thus more communication. With
|
||||
very large tilt factors, LAMMPS will eventually produce incorrect
|
||||
trajectories and stop with errors due to lost atoms or similar.
|
||||
limitation, since if the maximum tilt factor is 5 (as in this
|
||||
example), then configurations with tilt :math:`= \dots, -15`,
|
||||
:math:`-5`, :math:`5`, :math:`15`, :math:`25, \dots` are all
|
||||
geometrically equivalent.
|
||||
|
||||
See the :doc:`Howto triclinic <Howto_triclinic>` page for a
|
||||
geometric description of triclinic boxes, as defined by LAMMPS, and
|
||||
how to transform these parameters to and from other commonly used
|
||||
triclinic representations.
|
||||
LAMMPS will issue a warning if the tilt factors of the created box do
|
||||
not meet this criterion. This is because simulations with large tilt
|
||||
factors may run inefficiently, since they require more ghost atoms and
|
||||
thus more communication. With very large tilt factors, LAMMPS may
|
||||
eventually produce incorrect trajectories and stop with errors due to
|
||||
lost atoms or similar issues.
|
||||
|
||||
When a prism region is used, the simulation domain should normally be periodic
|
||||
in the dimension that the tilt is applied to, which is given by the second
|
||||
dimension of the tilt factor (e.g., :math:`y` for :math:`xy` tilt). This is so
|
||||
that pairs of atoms interacting across that boundary will have one of them
|
||||
shifted by the tilt factor. Periodicity is set by the
|
||||
:doc:`boundary <boundary>` command. For example, if the :math:`xy` tilt factor
|
||||
is non-zero, then the :math:`y` dimension should be periodic. Similarly, the
|
||||
:math:`z` dimension should be periodic if :math:`xz` or :math:`yz` is non-zero.
|
||||
LAMMPS does not require this periodicity, but you may lose atoms if this is not
|
||||
the case.
|
||||
See the :doc:`Howto triclinic <Howto_triclinic>` page for geometric
|
||||
descriptions of triclinic boxes and tilt factors, as well as how to
|
||||
transform the restricted triclinic parameters to and from other
|
||||
commonly used triclinic representations.
|
||||
|
||||
When a prism region is used, the simulation domain should normally be
|
||||
periodic in the dimension that the tilt is applied to, which is given
|
||||
by the second dimension of the tilt factor (e.g., :math:`y` for
|
||||
:math:`xy` tilt). This is so that pairs of atoms interacting across
|
||||
that boundary will have one of them shifted by the tilt factor.
|
||||
Periodicity is set by the :doc:`boundary <boundary>` command. For
|
||||
example, if the :math:`xy` tilt factor is non-zero, then the :math:`y`
|
||||
dimension should be periodic. Similarly, the :math:`z` dimension
|
||||
should be periodic if :math:`xz` or :math:`yz` is non-zero. LAMMPS
|
||||
does not require this periodicity, but you may lose atoms if this is
|
||||
not the case.
|
||||
|
||||
Note that if your simulation will tilt the box (e.g., via the
|
||||
:doc:`fix deform <fix_deform>` command), the simulation box must be set up to
|
||||
be triclinic, even if the tilt factors are initially 0.0. You can
|
||||
also change an orthogonal box to a triclinic box or vice versa by
|
||||
:doc:`fix deform <fix_deform>` command), the simulation box must be
|
||||
created as triclinic, even if the tilt factors are initially 0.0. You
|
||||
can also change an orthogonal box to a triclinic box or vice versa by
|
||||
using the :doc:`change box <change_box>` command with its *ortho* and
|
||||
*triclinic* options.
|
||||
|
||||
.. note::
|
||||
|
||||
If the system is non-periodic (in a dimension), then you should
|
||||
not make the lo/hi box dimensions (as defined in your
|
||||
:doc:`region <region>` command) radically smaller/larger than the extent
|
||||
of the atoms you eventually plan to create (e.g., via the
|
||||
:doc:`create_atoms <create_atoms>` command). For example, if your atoms
|
||||
extend from 0 to 50, you should not specify the box bounds as :math:`-10000`
|
||||
and :math:`10000`. This is because as described above, LAMMPS uses the
|
||||
specified box size to lay out the 3d grid of processors. A huge
|
||||
(mostly empty) box will be sub-optimal for performance when using
|
||||
"fixed" boundary conditions (see the :doc:`boundary <boundary>`
|
||||
command). When using "shrink-wrap" boundary conditions (see the
|
||||
:doc:`boundary <boundary>` command), a huge (mostly empty) box may cause
|
||||
a parallel simulation to lose atoms the first time that LAMMPS
|
||||
shrink-wraps the box around the atoms.
|
||||
If the system is non-periodic (in a dimension), then you should not
|
||||
make the lo/hi box dimensions (as defined in your :doc:`region
|
||||
<region>` command) radically smaller/larger than the extent of the
|
||||
atoms you eventually plan to create (e.g., via the
|
||||
:doc:`create_atoms <create_atoms>` command). For example, if your
|
||||
atoms extend from 0 to 50, you should not specify the box bounds as
|
||||
:math:`-10000` and :math:`10000`. This is because as described
|
||||
above, LAMMPS uses the specified box size to lay out the 3d grid of
|
||||
processors. A huge (mostly empty) box will be sub-optimal for
|
||||
performance when using "fixed" boundary conditions (see the
|
||||
:doc:`boundary <boundary>` command). When using "shrink-wrap"
|
||||
boundary conditions (see the :doc:`boundary <boundary>` command), a
|
||||
huge (mostly empty) box may cause a parallel simulation to lose
|
||||
atoms the first time that LAMMPS shrink-wraps the box around the
|
||||
atoms.
|
||||
|
||||
----------
|
||||
|
||||
As noted above, general triclinic boxes in LAMMPS allow the box to
|
||||
have arbitrary edge vectors **A**, **B**, **C**. The only
|
||||
restrictions are that the three vectors be distinct, non-zero, and not
|
||||
co-planar. They must also define a right-handed system such that
|
||||
(**A** x **B**) points in the direction of **C**. Note that a
|
||||
left-handed system can be converted to a right-handed system by simply
|
||||
swapping the order of any pair of the **A**, **B**, **C** vectors.
|
||||
|
||||
To create a general triclinic boxes, the region is specified as NULL
|
||||
and the next 6 parameters (alo,ahi,blo,bhi,clo,chi) define the three
|
||||
edge vectors **A**, **B**, **C** using additional information
|
||||
previously defined by the :doc:`lattice <lattice>` command.
|
||||
|
||||
The lattice must be of style *custom* and use its *triclinic/general*
|
||||
option. This insures the lattice satisfies the restrictions listed
|
||||
above. The *a1, *a2*, *a3* settings of the :doc:`lattice <lattice>`
|
||||
command define the edge vectors of a unit cell of the general
|
||||
triclinic lattice. This command uses them to define the three edge
|
||||
vectors and origin of the general triclinic box as:
|
||||
|
||||
* **A** = (ahi-alo) * *a1*
|
||||
* **B** = (bhi-blo) * *a2*
|
||||
* **C** = (chi-clo) * *a3*
|
||||
* origin = (alo*a1 + blo*a2 + clo*a3)
|
||||
|
||||
For 2d general triclinic boxes, clo = -0.5 and chi = 0.5 is required.
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS allows specification of general triclinic simulation boxes
|
||||
as a convenience for users who may be converting data from
|
||||
solid-state crystallographic representations or from DFT codes for
|
||||
input to LAMMPS. However, as explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, internally,
|
||||
LAMMPS only uses restricted triclinic simulation boxes. This means
|
||||
the box defined by this command and per-atom information
|
||||
(e.g. coordinates, velocities) defined by the :doc:`create_atoms
|
||||
<create_atoms>` command are converted (rotated) from general to
|
||||
restricted triclinic form when the two commands are invoked. The
|
||||
<Howto_triclinic>` doc page also discusses other LAMMPS commands
|
||||
which can input/output general triclinic representations of the
|
||||
simulation box and per-atom data.
|
||||
|
||||
----------
|
||||
|
||||
The optional keywords can be used to create a system that allows for
|
||||
bond (angle, dihedral, improper) interactions, or for molecules with
|
||||
special 1--2, 1--3, or 1--4 neighbors to be added later. These optional
|
||||
keywords serve the same purpose as the analogous keywords that can be
|
||||
used in a data file which are recognized by the
|
||||
special 1--2, 1--3, or 1--4 neighbors to be added later. These
|
||||
optional keywords serve the same purpose as the analogous keywords
|
||||
that can be used in a data file which are recognized by the
|
||||
:doc:`read_data <read_data>` command when it sets up a system.
|
||||
|
||||
Note that if these keywords are not used, then the create_box command
|
||||
creates an atomic (non-molecular) simulation that does not allow bonds
|
||||
between pairs of atoms to be defined, or a
|
||||
:doc:`bond potential <bond_style>` to be specified, or for molecules with
|
||||
special neighbors to be added to the system by commands such as
|
||||
:doc:`create_atoms mol <create_atoms>`, :doc:`fix deposit <fix_deposit>`
|
||||
or :doc:`fix pour <fix_pour>`.
|
||||
between pairs of atoms to be defined, or a :doc:`bond potential
|
||||
<bond_style>` to be specified, or for molecules with special neighbors
|
||||
to be added to the system by commands such as :doc:`create_atoms mol
|
||||
<create_atoms>`, :doc:`fix deposit <fix_deposit>` or :doc:`fix pour
|
||||
<fix_pour>`.
|
||||
|
||||
As an example, see the examples/deposit/in.deposit.molecule script,
|
||||
which deposits molecules onto a substrate. Initially there are no
|
||||
molecules in the system, but they are added later by the
|
||||
:doc:`fix deposit <fix_deposit>` command. The create_box command in the
|
||||
script uses the bond/types and extra/bond/per/atom keywords to allow
|
||||
this. If the added molecule contained more than one special bond
|
||||
(allowed by default), an extra/special/per/atom keyword would also
|
||||
need to be specified.
|
||||
molecules in the system, but they are added later by the :doc:`fix
|
||||
deposit <fix_deposit>` command. The create_box command in the script
|
||||
uses the bond/types and extra/bond/per/atom keywords to allow this.
|
||||
If the added molecule contained more than one special bond (allowed by
|
||||
default), an extra/special/per/atom keyword would also need to be
|
||||
specified.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
71
doc/src/dihedral_cosine_squared_restricted.rst
Normal file
71
doc/src/dihedral_cosine_squared_restricted.rst
Normal file
@ -0,0 +1,71 @@
|
||||
.. index:: dihedral_style cosine/squared/restricted
|
||||
|
||||
dihedral_style cosine/squared/restricted command
|
||||
================================================
|
||||
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
dihedral_style cosine/squared/restricted
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
dihedral_style cosine/squared/restricted
|
||||
dihedral_coeff 1 10.0 120
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The *cosine/squared/restricted* dihedral style uses the potential
|
||||
|
||||
.. math::
|
||||
|
||||
E = K [\cos(\phi) - \cos(\phi_0)]^2 / \sin^2(\phi)
|
||||
|
||||
, which is commonly used in the MARTINI force field.
|
||||
|
||||
See :ref:`(Bulacu) <restricted-Bul>` for a description of the restricted dihedral for the MARTINI force field.
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* :math:`K` (energy)
|
||||
* :math:`\phi_0` (degrees)
|
||||
|
||||
:math:`\phi_0` is specified in degrees, but LAMMPS converts it to radians internally.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This dihedral style can only be used if LAMMPS was built with the
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||
for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`dihedral_coeff <dihedral_coeff>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
|
||||
----------
|
||||
|
||||
.. _restricted-Bul:
|
||||
|
||||
**(Bulacu)** Bulacu, Goga, Zhao, Rossi, Monticelli, Periole, Tieleman, Marrink, J Chem Theory Comput, 9, 3282-3292
|
||||
(2013).
|
||||
@ -10,7 +10,7 @@ Syntax
|
||||
|
||||
dihedral_style style
|
||||
|
||||
* style = *none* or *zero* or *hybrid* or *charmm* or *charmmfsw* or *class2* or *cosine/shift/exp* or *fourier* or *harmonic* or *helix* or *lepton* or *multi/harmonic* or *nharmonic* or *opls* or *spherical* or *table* or *table/cut*
|
||||
* style = *none* or *zero* or *hybrid* or *charmm* or *charmmfsw* or *class2* or *cosine/shift/exp* or *cosine/squared/restricted* or *fourier* or *harmonic* or *helix* or *lepton* or *multi/harmonic* or *nharmonic* or *opls* or *spherical* or *table* or *table/cut*
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -105,6 +105,7 @@ exist.
|
||||
* :doc:`charmmfsw <dihedral_charmm>` - CHARMM dihedral with force switching
|
||||
* :doc:`class2 <dihedral_class2>` - COMPASS (class 2) dihedral
|
||||
* :doc:`cosine/shift/exp <dihedral_cosine_shift_exp>` - dihedral with exponential in spring constant
|
||||
* :doc:`cosine/squared/restricted <dihedral_cosine_squared_restricted>` - squared cosine dihedral with restricted term
|
||||
* :doc:`fourier <dihedral_fourier>` - dihedral with multiple cosine terms
|
||||
* :doc:`harmonic <dihedral_harmonic>` - harmonic dihedral
|
||||
* :doc:`helix <dihedral_helix>` - helix dihedral
|
||||
|
||||
108
doc/src/dump.rst
108
doc/src/dump.rst
@ -275,16 +275,20 @@ format <dump_modify>` command and its options.
|
||||
Format of native LAMMPS format dump files:
|
||||
|
||||
The *atom*, *custom*, *grid*, and *local* styles create files in a
|
||||
simple LAMMPS-specific text format that is self-explanatory when
|
||||
viewing a dump file. Many post-processing tools either included with
|
||||
LAMMPS or third-party tools can read this format, as does the
|
||||
simple LAMMPS-specific text format that is mostly self-explanatory
|
||||
when viewing a dump file. Many post-processing tools either included
|
||||
with LAMMPS or third-party tools can read this format, as does the
|
||||
:doc:`rerun <rerun>` command. See tools described on the :doc:`Tools
|
||||
<Tools>` doc page for examples, including `Pizza.py
|
||||
<https://lammps.github.io/pizza>`_.
|
||||
|
||||
For all these styles, the dimensions of the simulation box are
|
||||
included in each snapshot. For an orthogonal simulation box this
|
||||
information is formatted as:
|
||||
included in each snapshot. The simulation box in LAMMPS can be
|
||||
defined in one of 3 ways: orthogonal, restricted triclinic, and
|
||||
general triclinic. See the :doc:`Howto triclinic <Howto_triclinic>`
|
||||
doc page for a detailed description of all 3 options.
|
||||
|
||||
For an orthogonal simulation box the box information is formatted as:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -301,10 +305,10 @@ the six characters is one of *p* (periodic), *f* (fixed), *s* (shrink wrap),
|
||||
or *m* (shrink wrapped with a minimum value). See the
|
||||
:doc:`boundary <boundary>` command for details.
|
||||
|
||||
For triclinic simulation boxes (non-orthogonal), an orthogonal
|
||||
bounding box which encloses the triclinic simulation box is output,
|
||||
along with the three tilt factors (*xy*, *xz*, *yz*) of the triclinic box,
|
||||
formatted as follows:
|
||||
For a restricted triclinic simulation box, an orthogonal bounding box
|
||||
which encloses the restricted triclinic simulation box is output,
|
||||
along with the three tilt factors (*xy*, *xz*, *yz*) of the triclinic
|
||||
box, formatted as follows:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -326,6 +330,10 @@ bounding box extents (xlo_bound, xhi_bound, etc.) are calculated from the
|
||||
triclinic parameters, and how to transform those parameters to and
|
||||
from other commonly used triclinic representations.
|
||||
|
||||
For a general triclinic simulation box, see the "General triclinic"
|
||||
section below for a description of the ITEM: BOX BOUNDS format as well
|
||||
as how per-atom coordinates and per-atom vector quantities are output.
|
||||
|
||||
The *atom* and *custom* styles output a "ITEM: NUMBER OF ATOMS" line
|
||||
with the count of atoms in the snapshot. Likewise they output an
|
||||
"ITEM: ATOMS" line which includes column descriptors for the per-atom
|
||||
@ -397,7 +405,6 @@ command.
|
||||
|
||||
Dump files in other popular formats:
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
This section only discusses file formats relevant to this doc page.
|
||||
@ -653,6 +660,87 @@ how to control the compression level in both variants.
|
||||
|
||||
----------
|
||||
|
||||
General triclinic simulation box output for the *atom* and *custom* styles:
|
||||
|
||||
As mentioned above, the simulation box can be defined as a general
|
||||
triclinic box, which means that 3 arbitrary box edge vectors **A**,
|
||||
**B**, **C** can be specified. See the :doc:`Howto triclinic
|
||||
<Howto_triclinic>` doc page for a detailed description of general
|
||||
triclinic boxes.
|
||||
|
||||
This option is provided as a convenience for users who may be
|
||||
converting data from solid-state crystallographic representations or
|
||||
from DFT codes for input to LAMMPS. However, as explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, internally, LAMMPS
|
||||
only uses restricted triclinic simulation boxes. This means the box
|
||||
and per-atom information (e.g. coordinates, velocities) LAMMPS stores
|
||||
are converted (rotated) from general to restricted triclinic form when
|
||||
the system is created.
|
||||
|
||||
For dump output, if the :doc:`dump_modify triclinic/general
|
||||
<dump_modify>` command is used, the box description and per-atom
|
||||
coordinates and other per-atom vectors will be converted (rotated)
|
||||
from restricted to general form when each dump file snapshots is
|
||||
output. This option can only be used if the simulation box was
|
||||
initially created as general triclinic. If the option is not used,
|
||||
and the simulation box is general triclinic, then the dump file
|
||||
snapshots will reflect the internal restricted triclinic geometry.
|
||||
|
||||
The dump_modify triclinic/general option affects 3 aspects of the dump
|
||||
file output.
|
||||
|
||||
First, the format for the BOX BOUNDS is as follows
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
ITEM: BOX BOUNDS abc origin
|
||||
ax ay az originx
|
||||
bx by bz originy
|
||||
cx cy cz originz
|
||||
|
||||
where the **A** edge vector of the box is (ax,ay,az) and similarly
|
||||
for **B** and **C**. The origin of all 3 edge vectors is (originx,
|
||||
originy, originz).
|
||||
|
||||
Second, the coordinates of each atom are converted (rotated) so that
|
||||
the atom is inside (or near) the general triclinic box defined by the
|
||||
**A**, **B**, **C** edge vectors. For style *atom*, this only alters
|
||||
output for unscaled atom coords, via the :doc:`dump_modify scaled no
|
||||
<dump_modify>` setting. For style *custom*, this alters output for
|
||||
either unscaled or unwrapped output of atom coords, via the *x,y,z* or
|
||||
*xu,yu,zu* attributes. For output of scaled atom coords by both
|
||||
styles, there is no difference between restricted and general
|
||||
triclinic values.
|
||||
|
||||
Third, the output for any attribute of the *custom* style which
|
||||
represents a per-atom vector quantity will be converted (rotated) to
|
||||
be oriented consistent with the general triclinic box and its
|
||||
orientation relative to the standard xyz coordinate axes.
|
||||
|
||||
This applies to the following *custom* style attributes:
|
||||
|
||||
* vx,vy,vz = atom velocities
|
||||
* fx,fy,fz = forces on atoms
|
||||
* mux,muy,muz = orientation of dipole moment of atom
|
||||
* omegax,omegay,omegaz = angular velocity of spherical particle
|
||||
* angmomx,angmomy,angmomz = angular momentum of aspherical particle
|
||||
* tqx,tqy,tqz = torque on finite-size particles
|
||||
|
||||
For example, if the velocity of an atom in a restricted triclinic box
|
||||
is along the x-axis, then it will be output for a general triclinic
|
||||
box as a vector along the **A** edge vector of the box.
|
||||
|
||||
.. note::
|
||||
|
||||
For style *custom*, the :doc:`dump_modify thresh <dump_modify>`
|
||||
command may access per-atom attributes either directly or
|
||||
indirectly through a compute or variable. If the attribute is an
|
||||
atom coordinate or one of the vectors mentioned above, its value
|
||||
will *NOT* be a general triclinic (rotated) value. Rather it will
|
||||
be a restricted triclinic value.
|
||||
|
||||
----------
|
||||
|
||||
Arguments for different styles:
|
||||
|
||||
The sections below describe per-atom, local, and per grid cell
|
||||
|
||||
@ -17,7 +17,7 @@ Syntax
|
||||
* one or more keyword/value pairs may be appended
|
||||
|
||||
* these keywords apply to various dump styles
|
||||
* keyword = *append* or *at* or *balance* or *buffer* or *colname* or *delay* or *element* or *every* or *every/time* or *fileper* or *first* or *flush* or *format* or *header* or *image* or *label* or *maxfiles* or *nfile* or *pad* or *pbc* or *precision* or *region* or *refresh* or *scale* or *sfactor* or *skip* or *sort* or *tfactor* or *thermo* or *thresh* or *time* or *units* or *unwrap*
|
||||
* keyword = *append* or *at* or *balance* or *buffer* or *colname* or *delay* or *element* or *every* or *every/time* or *fileper* or *first* or *flush* or *format* or *header* or *image* or *label* or *maxfiles* or *nfile* or *pad* or *pbc* or *precision* or *region* or *refresh* or *scale* or *sfactor* or *skip* or *sort* or *tfactor* or *thermo* or *thresh* or *time* or *triclinic/general* or *units* or *unwrap*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -74,12 +74,13 @@ Syntax
|
||||
-N = sort per-atom lines in descending order by the Nth column
|
||||
*tfactor* arg = time scaling factor (> 0.0)
|
||||
*thermo* arg = *yes* or *no*
|
||||
*time* arg = *yes* or *no*
|
||||
*thresh* args = attribute operator value
|
||||
attribute = same attributes (x,fy,etotal,sxx,etc) used by dump custom style
|
||||
operator = "<" or "<=" or ">" or ">=" or "==" or "!=" or "\|\^"
|
||||
value = numeric value to compare to, or LAST
|
||||
these 3 args can be replaced by the word "none" to turn off thresholding
|
||||
*time* arg = *yes* or *no*
|
||||
*triclinic/general* arg = *yes* or *no*
|
||||
*units* arg = *yes* or *no*
|
||||
*unwrap* arg = *yes* or *no*
|
||||
|
||||
@ -802,8 +803,9 @@ region since the last dump.
|
||||
dump_modify ... thresh v_charge |^ LAST
|
||||
|
||||
This will dump atoms whose charge has changed from an absolute value
|
||||
less than :math:`\frac12` to greater than :math:`\frac12` (or vice versa) since the last dump (e.g., due to reactions and subsequent charge equilibration in a
|
||||
reactive force field).
|
||||
less than :math:`\frac12` to greater than :math:`\frac12` (or vice
|
||||
versa) since the last dump (e.g., due to reactions and subsequent
|
||||
charge equilibration in a reactive force field).
|
||||
|
||||
The choice of operators listed above are the usual comparison
|
||||
operators. The XOR operation (exclusive or) is also included as "\|\^".
|
||||
@ -811,6 +813,18 @@ In this context, XOR means that if either the attribute or value is
|
||||
0.0 and the other is non-zero, then the result is "true" and the
|
||||
threshold criterion is met. Otherwise it is not met.
|
||||
|
||||
.. note::
|
||||
|
||||
For style *custom*, the *triclinic/general* keyword can alter dump
|
||||
output for general triclinic simulation boxes and their atoms. See
|
||||
the :doc:`dump <dump>` command for details of how this changes the
|
||||
format of dump file snapshots. The thresh keyword may access
|
||||
per-atom attributes either directly or indirectly through a compute
|
||||
or variable. If the attribute is an atom coordinate or a per-atom
|
||||
vector (such as velocity, force, or dipole moment), its value will
|
||||
*NOT* be a general triclinic (rotated) value. Rather it will be a
|
||||
restricted triclinic value.
|
||||
|
||||
----------
|
||||
|
||||
The *time* keyword only applies to the dump *atom*, *custom*, *local*,
|
||||
@ -835,6 +849,29 @@ The default setting is *no*\ .
|
||||
|
||||
----------
|
||||
|
||||
The *triclinic/general* keyword only applies to the dump *atom* and
|
||||
*custom* styles. It can only be used with a value of *yes* if the
|
||||
simulation box was created as a general triclinic box. See the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page for a detailed
|
||||
explanation of orthogonal, restricted triclinic, and general triclinic
|
||||
simulation boxes.
|
||||
|
||||
If this keyword is used with a value of *yes*, the box information at
|
||||
the beginning of each snapshot will include information about the 3
|
||||
arbitrary edge vectors **A**, **B**, **C** that define the general
|
||||
triclinic box as well as their origin. The format is described on the
|
||||
:doc:`dump <dump>` doc page.
|
||||
|
||||
The coordinates of each atom will likewise be output as values in (or
|
||||
near) the general triclinic box. Likewise, per-atom vector quantities
|
||||
such as velocity, omega, dipole moment, etc will have orientations
|
||||
consistent with the general triclinic box, meaning they will be
|
||||
rotated relative to the standard xyz coordinate axes. See the
|
||||
:doc:`dump <dump>` doc page for a full list of which dump attributes
|
||||
this affects.
|
||||
|
||||
----------
|
||||
|
||||
The *units* keyword only applies to the dump *atom*, *custom*, and
|
||||
*local* styles (and their COMPRESS package versions *atom/gz*,
|
||||
*custom/gz* and *local/gz*\ ). If set to *yes*, each individual dump
|
||||
@ -922,6 +959,8 @@ The option defaults are
|
||||
* sort = off for dump styles *atom*, *custom*, *cfg*, and *local*
|
||||
* sort = id for dump styles *dcd*, *xtc*, and *xyz*
|
||||
* thresh = none
|
||||
* time = no
|
||||
* triclinic/general no
|
||||
* units = no
|
||||
* unwrap = no
|
||||
|
||||
|
||||
@ -168,7 +168,7 @@ the following global cumulative quantities:
|
||||
* 1 = swap attempts
|
||||
* 2 = swap accepts
|
||||
|
||||
The vector values calculated by this fix are "extensive".
|
||||
The vector values calculated by this fix are "intensive".
|
||||
|
||||
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
|
||||
|
||||
@ -435,7 +435,7 @@ molecule.
|
||||
|
||||
----------
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
new keyword *append*
|
||||
|
||||
The *file* or *append* keywords allow a filename to be specified. If
|
||||
|
||||
@ -319,7 +319,7 @@ on. The default is step 0. Often input values can be 0.0 at time 0,
|
||||
so setting *start* to a larger value can avoid including a 0.0 in
|
||||
a running or windowed histogram.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
new keyword *append*
|
||||
|
||||
The *file* or *append* keywords allow a filename to be specified. If
|
||||
|
||||
@ -272,7 +272,7 @@ are effectively constant or are simply current values (e.g., they are
|
||||
being written to a file with other time-averaged values for purposes
|
||||
of creating well-formatted output).
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
new keyword *append*
|
||||
|
||||
The *file* or *append* keywords allow a filename to be specified. If
|
||||
|
||||
@ -70,7 +70,7 @@ re-balancing is performed periodically during the simulation. To
|
||||
perform "static" balancing, before or between runs, see the
|
||||
:doc:`balance <balance>` command.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The *report* balance style only computes the load imbalance but
|
||||
does not attempt any re-balancing. This way the load imbalance
|
||||
|
||||
@ -29,10 +29,12 @@ Syntax
|
||||
NOTE: All other styles are documented by the :doc:`fix deform <fix_deform>` command
|
||||
|
||||
*xy*, *xz*, *yz* args = style value
|
||||
style = *final* or *delta* or *vel* or *erate* or *trate* or *wiggle* or *variable* or *pressure*
|
||||
style = *final* or *delta* or *vel* or *erate* or *trate* or *wiggle* or *variable* or *pressure* or *erate/rescale*
|
||||
*pressure* values = target gain
|
||||
target = target pressure (pressure units)
|
||||
gain = proportional gain constant (1/(time * pressure) or 1/time units)
|
||||
*erate/rescale* value = R
|
||||
R = engineering shear strain rate (1/time units)
|
||||
NOTE: All other styles are documented by the :doc:`fix deform <fix_deform>` command
|
||||
|
||||
*box* = style value
|
||||
@ -69,7 +71,7 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
This fix is an extension of the :doc:`fix deform <fix_deform>`
|
||||
command, which allows all of its options to be used as well as new
|
||||
@ -159,6 +161,21 @@ details of a simulation and testing different values is
|
||||
recommended. One can also apply a maximum limit to the magnitude of
|
||||
the applied strain using the :ref:`max/rate <deform_max_rate>` option.
|
||||
|
||||
The *erate/rescale* style operates similarly to the *erate* style with
|
||||
a specified strain rate in units of 1/time. The difference is that
|
||||
the change in the tilt factor will depend on the current length of
|
||||
the box perpendicular to the shear direction, L, instead of the
|
||||
original length, L0. The tilt factor T as a function of time will
|
||||
change as
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
T(t) = T(t-1) + L\*erate\* \Delta t
|
||||
|
||||
where T(t-1) is the tilt factor on the previous timestep and :math:`\Delta t`
|
||||
is the timestep size. This option may be useful in scenarios where
|
||||
L changes in time.
|
||||
|
||||
----------
|
||||
|
||||
The *box* parameter provides an additional control over the *x*, *y*,
|
||||
@ -294,6 +311,10 @@ This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the EXTRA-FIX package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>`
|
||||
page for more info.
|
||||
|
||||
You cannot apply x, y, or z deformations to a dimension that is
|
||||
shrink-wrapped via the :doc:`boundary <boundary>` command.
|
||||
|
||||
|
||||
@ -253,7 +253,7 @@ be enabled if any electrode particle has the same type as any
|
||||
electrolyte particle (which would be unusual in a typical simulation)
|
||||
and the fix will issue an error in that case.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The keyword *qtotal* causes *fix electrode/conp* and *fix
|
||||
electrode/thermo* to add an overall potential to all electrodes so that
|
||||
@ -267,7 +267,7 @@ and since *symm on* constrains the total charge of all electrodes to be
|
||||
zero, either option is incompatible with the *qtotal* keyword (even if
|
||||
*qtotal* is set to zero).
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The keyword *eta* takes the name of a custom double vector defined via
|
||||
fix property/atom. The values will be used instead of the standard eta
|
||||
|
||||
@ -427,7 +427,7 @@ the following global cumulative quantities:
|
||||
* 7 = rotation attempts
|
||||
* 8 = rotation successes
|
||||
|
||||
The vector values calculated by this fix are "extensive".
|
||||
The vector values calculated by this fix are "intensive".
|
||||
|
||||
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
|
||||
|
||||
@ -512,8 +512,7 @@ Value 27 computes the average boost for biased bonds only on this step.
|
||||
Value 28 is the count of bonds with an absolute value of strain >= q
|
||||
on this step.
|
||||
|
||||
The scalar value is an "extensive" quantity since it grows with the
|
||||
system size; the vector values are all "intensive".
|
||||
The scalar value and vector values are all "intensive".
|
||||
|
||||
This fix also computes a local vector of length the number of bonds
|
||||
currently in the system. The value for each bond is its :math:`C_{ij}`
|
||||
|
||||
@ -35,23 +35,24 @@ Description
|
||||
"""""""""""
|
||||
|
||||
This fix enables LAMMPS to be run as a client for the i-PI Python
|
||||
wrapper :ref:`(IPI) <ipihome>` for performing a path integral molecular dynamics
|
||||
(PIMD) simulation. The philosophy behind i-PI is described in the
|
||||
following publication :ref:`(IPI-CPC) <IPICPC>`.
|
||||
wrapper :ref:`(IPI) <ipihome>`. i-PI is a universal force engine,
|
||||
designed to perform advanced molecular simulations, with a special
|
||||
focus on path integral molecular dynamics (PIMD) simulation.
|
||||
The philosophy behind i-PI is to separate the evaluation of the
|
||||
energy and forces, which is delegated to the client, and the evolution
|
||||
of the dynamics, that is the responsibility of i-PI. This approach also
|
||||
simplifies combining energies computed from different codes, which
|
||||
can for instance be useful to mix first-principles calculations,
|
||||
empirical force fields or machine-learning potentials.
|
||||
The following publication :ref:`(IPI-CPC-2014) <IPICPC>` discusses the
|
||||
overall implementation of i-PI, and focuses on path-integral techniques,
|
||||
while a later release :ref:`(IPI-CPC-2019) <IPICPC2>` introduces several
|
||||
additional features and simulation schemes.
|
||||
|
||||
A version of the i-PI package, containing only files needed for use
|
||||
with LAMMPS, is provided in the tools/i-pi directory. See the
|
||||
tools/i-pi/manual.pdf for an introduction to i-PI. The
|
||||
examples/PACKAGES/i-pi directory contains example scripts for using i-PI
|
||||
with LAMMPS.
|
||||
|
||||
In brief, the path integral molecular dynamics is performed by the
|
||||
Python wrapper, while the client (LAMMPS in this case) simply computes
|
||||
forces and energy for each configuration. The communication between
|
||||
the two components takes place using sockets, and is reduced to the
|
||||
bare minimum. All the parameters of the dynamics are specified in the
|
||||
input of i-PI, and all the parameters of the force field must be
|
||||
specified as LAMMPS inputs, preceding the *fix ipi* command.
|
||||
The communication between i-PI and LAMMPS takes place using sockets,
|
||||
and is reduced to the bare minimum. All the parameters of the dynamics
|
||||
are specified in the input of i-PI, and all the parameters of the force
|
||||
field must be specified as LAMMPS inputs, preceding the *fix ipi* command.
|
||||
|
||||
The server address must be specified by the *address* argument, and
|
||||
can be either the IP address, the fully-qualified name of the server,
|
||||
@ -75,6 +76,14 @@ If the cell varies too wildly, it may be advisable to re-initialize
|
||||
these interactions at each call. This behavior can be requested by
|
||||
setting the *reset* switch.
|
||||
|
||||
Obtaining i-PI
|
||||
""""""""""""""
|
||||
|
||||
A simple version of the i-PI package, containing only files needed for use
|
||||
with LAMMPS, is provided in the tools/i-pi directory. We recommend you
|
||||
obtain the latest stable version from the github repository of i-PI,
|
||||
or from the python package index.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
@ -111,9 +120,14 @@ Related commands
|
||||
|
||||
.. _IPICPC:
|
||||
|
||||
**(IPI-CPC)** Ceriotti, More and Manolopoulos, Comp Phys Comm, 185,
|
||||
**(IPI-CPC-2014)** Ceriotti, More and Manolopoulos, Comp Phys Comm 185,
|
||||
1019-1026 (2014).
|
||||
|
||||
.. _IPICPC2:
|
||||
|
||||
**(IPI-CPC-2019)** Kapil et al., Comp Phys Comm 236, 214–223 (2019).
|
||||
|
||||
|
||||
.. _ipihome:
|
||||
|
||||
**(IPI)**
|
||||
|
||||
@ -146,7 +146,7 @@ the following global cumulative quantities:
|
||||
* 1 = swap attempts
|
||||
* 2 = swap accepts
|
||||
|
||||
The vector values calculated by this fix are "extensive".
|
||||
The vector values calculated by this fix are "intensive".
|
||||
|
||||
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
|
||||
|
||||
@ -8,7 +8,7 @@ Syntax
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix ID group nonaffine/displacement style args reference/style nstep
|
||||
fix ID group nonaffine/displacement style args reference/style nstep keyword values
|
||||
|
||||
* ID, group are documented in :doc:`fix <fix>` command
|
||||
* nonaffine/displacement = style name of this fix command
|
||||
@ -32,6 +32,13 @@ Syntax
|
||||
*update* = update the reference frame every *nstep* timesteps
|
||||
*offset* = update the reference frame *nstep* timesteps before calculating the nonaffine displacement
|
||||
|
||||
* zero or more keyword/value pairs may be appended
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*z/min* values = zmin
|
||||
zmin = minimum coordination number to calculate D2min
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
@ -76,6 +83,12 @@ is the identity tensor. This calculation is only performed on timesteps that
|
||||
are a multiple of *nevery* (including timestep zero). Data accessed before
|
||||
this occurs will simply be zeroed.
|
||||
|
||||
For particles with low coordination numbers, calculations of :math:`D^2_\mathrm{min}`
|
||||
may not be accurate. An optional minimum coordination number can be defined using
|
||||
the *z/min* keyword. If any particle has fewer than the specified number of particles
|
||||
in the cutoff distance or in contact, the above calculations will be skipped and the
|
||||
corresponding peratom array entries will be zero.
|
||||
|
||||
The *integrated* style simply integrates the velocity of particles
|
||||
every timestep to calculate a displacement. This style only works if
|
||||
used in conjunction with another fix that deforms the box and displaces
|
||||
|
||||
@ -20,7 +20,7 @@ Syntax
|
||||
* Nfreq = calculate average bond-order every this many timesteps
|
||||
* filename = name of output file
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *cutoff* or *element* or *position* or *delete*
|
||||
* keyword = *cutoff* or *element* or *position* or *delete* or *delete_rate_limit*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -110,10 +110,10 @@ all types from 1 to :math:`N`. A leading asterisk means all types from
|
||||
The optional keyword *element* can be used to specify the chemical
|
||||
symbol printed for each LAMMPS atom type. The number of symbols must
|
||||
match the number of LAMMPS atom types and each symbol must consist of
|
||||
1 or 2 alphanumeric characters. Normally, these symbols should be
|
||||
chosen to match the chemical identity of each LAMMPS atom type, as
|
||||
specified using the :doc:`reaxff pair_coeff <pair_reaxff>` command and
|
||||
the ReaxFF force field file.
|
||||
1 or 2 alphanumeric characters. By default, these symbols are the same
|
||||
as the chemical identity of each LAMMPS atom type, as specified by the
|
||||
:doc:`ReaxFF pair_coeff <pair_reaxff>` command and the ReaxFF force
|
||||
field file.
|
||||
|
||||
The optional keyword *position* writes center-of-mass positions of
|
||||
each identified molecules to file *filepos* every *posfreq* timesteps.
|
||||
@ -134,36 +134,34 @@ value. For example, AuO.pos.\* becomes AuO.pos.0, AuO.pos.1000, etc.
|
||||
|
||||
.. versionadded:: 3Aug2022
|
||||
|
||||
The optional keyword *delete* enables the periodic removal of
|
||||
molecules from the system. Criteria for deletion can be either a list
|
||||
of specific chemical formulae or a range of molecular weights.
|
||||
Molecules are deleted every *Nfreq* timesteps, and bond connectivity
|
||||
is determined using the *Nevery* and *Nrepeat* keywords. The
|
||||
*filedel* argument is the name of the output file that records the
|
||||
species that are removed from the system. The *specieslist* keyword
|
||||
permits specific chemical species to be deleted. The *Nspecies*
|
||||
argument specifies how many species are eligible for deletion and is
|
||||
followed by a list of chemical formulae, whose strings are compared to
|
||||
species identified by this fix. For example, "specieslist 2 CO CO2"
|
||||
deletes molecules that are identified as "CO" and "CO2" in the species
|
||||
output file. When using the *specieslist* keyword, the *filedel* file
|
||||
has the following format: the first line lists the chemical formulae
|
||||
eligible for deletion, and each additional line contains the timestep
|
||||
on which a molecule deletion occurs and the number of each species
|
||||
deleted on that timestep. The *masslimit* keyword permits deletion of
|
||||
molecules with molecular weights between *massmin* and *massmax*.
|
||||
When using the *masslimit* keyword, each line of the *filedel* file
|
||||
contains the timestep on which deletions occurs, followed by how many
|
||||
of each species are deleted (with quantities preceding chemical
|
||||
formulae). The *specieslist* and *masslimit* keywords cannot both be
|
||||
used in the same *reaxff/species* fix. The *delete_rate_limit*
|
||||
keyword can enforce an upper limit on the overall rate of molecule
|
||||
deletion. The number of deletion occurrences is limited to Nlimit
|
||||
within an interval of Nsteps timesteps. Nlimit can be specified with
|
||||
an equal-style :doc:`variable <variable>`. When using the
|
||||
*delete_rate_limit* keyword, no deletions are permitted to occur
|
||||
within the first Nsteps timesteps of the first run (after reading a
|
||||
either a data or restart file).
|
||||
The optional keyword *delete* enables the periodic removal of molecules
|
||||
from the system :ref:`(Gissinger) <Delete>`. Criteria for deletion can
|
||||
be either a list of specific chemical formulae or a range of molecular
|
||||
weights. Molecules are deleted every *Nfreq* timesteps, and bond
|
||||
connectivity is determined using the *Nevery* and *Nrepeat* keywords. The
|
||||
*filedel* argument is the name of the output file that records the species
|
||||
that are removed from the system. The *specieslist* keyword permits
|
||||
specific chemical species to be deleted. The *Nspecies* argument specifies
|
||||
how many species are eligible for deletion and is followed by a list of
|
||||
chemical formulae, whose strings are compared to species identified by this
|
||||
fix. For example, "specieslist 2 CO CO2" deletes molecules that are
|
||||
identified as "CO" and "CO2" in the species output file. When using the
|
||||
*specieslist* keyword, the *filedel* file has the following format: the
|
||||
first line lists the chemical formulae eligible for deletion, and each
|
||||
additional line contains the timestep on which a molecule deletion occurs
|
||||
and the number of each species deleted on that timestep. The *masslimit*
|
||||
keyword permits deletion of molecules with molecular weights between
|
||||
*massmin* and *massmax*. When using the *masslimit* keyword, each line of
|
||||
the *filedel* file contains the timestep on which deletions occurs,
|
||||
followed by how many of each species are deleted (with quantities preceding
|
||||
chemical formulae). The *specieslist* and *masslimit* keywords cannot both
|
||||
be used in the same *reaxff/species* fix. The *delete_rate_limit* keyword
|
||||
can enforce an upper limit on the overall rate of molecule deletion. The
|
||||
number of deletion occurrences is limited to Nlimit within an interval of
|
||||
Nsteps timesteps. Nlimit can be specified with an equal-style
|
||||
:doc:`variable <variable>`. When using the *delete_rate_limit* keyword, no
|
||||
deletions are permitted to occur within the first Nsteps timesteps of the
|
||||
first run (after reading a either a data or restart file).
|
||||
|
||||
----------
|
||||
|
||||
@ -233,5 +231,9 @@ Default
|
||||
"""""""
|
||||
|
||||
The default values for bond-order cutoffs are 0.3 for all I-J pairs.
|
||||
The default element symbols are C, H, O, N.
|
||||
The default element symbols are taken from the ReaxFF pair_coeff command.
|
||||
Position files are not written by default.
|
||||
|
||||
.. _Delete:
|
||||
|
||||
**(Gissinger)** Jacob R. Gissinger, Scott R. Zavada, Joseph G. Smith, Josh Kemppainen, Ivan Gallegos, Gregory M. Odegard, Emilie J. Siochi, and Kristopher E. Wise, Carbon, 202, 336-347 (2023).
|
||||
|
||||
@ -171,14 +171,15 @@ Examples of large rigid bodies are a colloidal particle, or portions
|
||||
of a biomolecule such as a protein.
|
||||
|
||||
Example of small rigid bodies are patchy nanoparticles, such as those
|
||||
modeled in :ref:`this paper <Zhang1>` by Sharon Glotzer's group, clumps of
|
||||
granular particles, lipid molecules consisting of one or more point
|
||||
dipoles connected to other spheroids or ellipsoids, irregular
|
||||
particles built from line segments (2d) or triangles (3d), and
|
||||
coarse-grain models of nano or colloidal particles consisting of a
|
||||
small number of constituent particles. Note that the :doc:`fix shake <fix_shake>` command can also be used to rigidify small
|
||||
molecules of 2, 3, or 4 atoms, e.g. water molecules. That fix treats
|
||||
the constituent atoms as point masses.
|
||||
modeled in :ref:`this paper <Zhang1>` by Sharon Glotzer's group,
|
||||
clumps of granular particles, lipid molecules consisting of one or
|
||||
more point dipoles connected to other spheroids or ellipsoids,
|
||||
irregular particles built from line segments (2d) or triangles (3d),
|
||||
and coarse-grain models of nano or colloidal particles consisting of a
|
||||
small number of constituent particles. Note that the :doc:`fix shake
|
||||
<fix_shake>` command can also be used to rigidify small molecules of
|
||||
2, 3, or 4 atoms, e.g. water molecules. That fix treats the
|
||||
constituent atoms as point masses.
|
||||
|
||||
These fixes also update the positions and velocities of the atoms in
|
||||
each rigid body via time integration, in the NVE, NVT, NPT, or NPH
|
||||
@ -212,13 +213,14 @@ processors when ghost atom info is accumulated.
|
||||
|
||||
.. note::
|
||||
|
||||
To use the *rigid/small* styles the ghost atom cutoff must be
|
||||
large enough to span the distance between the atom that owns the body
|
||||
and every other atom in the body. This distance value is printed out
|
||||
when the rigid bodies are defined. If the
|
||||
:doc:`pair_style <pair_style>` cutoff plus neighbor skin does not span
|
||||
this distance, then you should use the :doc:`comm_modify cutoff <comm_modify>` command with a setting epsilon larger than
|
||||
the distance.
|
||||
To use the *rigid/small* styles the ghost atom cutoff must be large
|
||||
enough to span the distance between the atom that owns the body and
|
||||
every other atom in the body. This distance value is printed out
|
||||
when the rigid bodies are defined. If the :doc:`pair_style
|
||||
<pair_style>` cutoff plus neighbor skin does not span this
|
||||
distance, then you should use the :doc:`comm_modify cutoff
|
||||
<comm_modify>` command with a setting epsilon larger than the
|
||||
distance.
|
||||
|
||||
Which of the two variants is faster for a particular problem is hard
|
||||
to predict. The best way to decide is to perform a short test run.
|
||||
@ -229,49 +231,54 @@ differences may accumulate to produce divergent trajectories.
|
||||
.. note::
|
||||
|
||||
You should not update the atoms in rigid bodies via other
|
||||
time-integration fixes (e.g. :doc:`fix nve <fix_nve>`, :doc:`fix nvt <fix_nh>`, :doc:`fix npt <fix_nh>`, :doc:`fix move <fix_move>`),
|
||||
or you will have conflicting updates to positions and velocities
|
||||
resulting in unphysical behavior in most cases. When performing a hybrid
|
||||
simulation with some atoms in rigid bodies, and some not, a separate
|
||||
time integration fix like :doc:`fix nve <fix_nve>` or :doc:`fix nvt <fix_nh>` should be used for the non-rigid particles.
|
||||
time-integration fixes (e.g. :doc:`fix nve <fix_nve>`, :doc:`fix
|
||||
nvt <fix_nh>`, :doc:`fix npt <fix_nh>`, :doc:`fix move
|
||||
<fix_move>`), or you will have conflicting updates to positions and
|
||||
velocities resulting in unphysical behavior in most cases. When
|
||||
performing a hybrid simulation with some atoms in rigid bodies, and
|
||||
some not, a separate time integration fix like :doc:`fix nve
|
||||
<fix_nve>` or :doc:`fix nvt <fix_nh>` should be used for the
|
||||
non-rigid particles.
|
||||
|
||||
.. note::
|
||||
|
||||
These fixes are overkill if you simply want to hold a collection
|
||||
of atoms stationary or have them move with a constant velocity. A
|
||||
simpler way to hold atoms stationary is to not include those atoms in
|
||||
your time integration fix. E.g. use "fix 1 mobile nve" instead of
|
||||
"fix 1 all nve", where "mobile" is the group of atoms that you want to
|
||||
move. You can move atoms with a constant velocity by assigning them
|
||||
an initial velocity (via the :doc:`velocity <velocity>` command),
|
||||
setting the force on them to 0.0 (via the :doc:`fix setforce <fix_setforce>` command), and integrating them as usual
|
||||
(e.g. via the :doc:`fix nve <fix_nve>` command).
|
||||
These fixes are overkill if you simply want to hold a collection of
|
||||
atoms stationary or have them move with a constant velocity. A
|
||||
simpler way to hold atoms stationary is to not include those atoms
|
||||
in your time integration fix. E.g. use "fix 1 mobile nve" instead
|
||||
of "fix 1 all nve", where "mobile" is the group of atoms that you
|
||||
want to move. You can move atoms with a constant velocity by
|
||||
assigning them an initial velocity (via the :doc:`velocity
|
||||
<velocity>` command), setting the force on them to 0.0 (via the
|
||||
:doc:`fix setforce <fix_setforce>` command), and integrating them
|
||||
as usual (e.g. via the :doc:`fix nve <fix_nve>` command).
|
||||
|
||||
.. warning::
|
||||
|
||||
The aggregate properties of each rigid body are
|
||||
calculated at the start of a simulation run and are maintained in
|
||||
internal data structures. The properties include the position and
|
||||
velocity of the center-of-mass of the body, its moments of inertia, and
|
||||
its angular momentum. This is done using the properties of the
|
||||
constituent atoms of the body at that point in time (or see the *infile*
|
||||
keyword option). Thereafter, changing these properties of individual
|
||||
atoms in the body will have no effect on a rigid body's dynamics, unless
|
||||
they effect any computation of per-atom forces or torques. If the
|
||||
keyword *reinit* is set to *yes* (the default), the rigid body data
|
||||
structures will be recreated at the beginning of each *run* command;
|
||||
if the keyword *reinit* is set to *no*, the rigid body data structures
|
||||
will be built only at the very first *run* command and maintained for
|
||||
as long as the rigid fix is defined. For example, you might think you
|
||||
could displace the atoms in a body or add a large velocity to each atom
|
||||
in a body to make it move in a desired direction before a second run is
|
||||
performed, using the :doc:`set <set>` or
|
||||
:doc:`displace_atoms <displace_atoms>` or :doc:`velocity <velocity>`
|
||||
commands. But these commands will not affect the internal attributes
|
||||
of the body unless *reinit* is set to *yes*\ . With *reinit* set to *no*
|
||||
(or using the *infile* option, which implies *reinit* *no*\ ) the position
|
||||
and velocity of individual atoms in the body will be reset when time
|
||||
integration starts again.
|
||||
The aggregate properties of each rigid body are calculated at the
|
||||
start of a simulation run and are maintained in internal data
|
||||
structures. The properties include the position and velocity of the
|
||||
center-of-mass of the body, its moments of inertia, and its angular
|
||||
momentum. This is done using the properties of the constituent
|
||||
atoms of the body at that point in time (or see the *infile*
|
||||
keyword option). Thereafter, changing these properties of
|
||||
individual atoms in the body will have no effect on a rigid body's
|
||||
dynamics, unless they effect any computation of per-atom forces or
|
||||
torques. If the keyword *reinit* is set to *yes* (the default), the
|
||||
rigid body data structures will be recreated at the beginning of
|
||||
each *run* command; if the keyword *reinit* is set to *no*, the
|
||||
rigid body data structures will be built only at the very first
|
||||
*run* command and maintained for as long as the rigid fix is
|
||||
defined. For example, you might think you could displace the atoms
|
||||
in a body or add a large velocity to each atom in a body to make it
|
||||
move in a desired direction before a second run is performed, using
|
||||
the :doc:`set <set>` or :doc:`displace_atoms <displace_atoms>` or
|
||||
:doc:`velocity <velocity>` commands. But these commands will not
|
||||
affect the internal attributes of the body unless *reinit* is set
|
||||
to *yes*\ . With *reinit* set to *no* (or using the *infile*
|
||||
option, which implies *reinit* *no*\ ) the position and velocity of
|
||||
individual atoms in the body will be reset when time integration
|
||||
starts again.
|
||||
|
||||
----------
|
||||
|
||||
@ -316,17 +323,17 @@ to be part of rigid bodies.
|
||||
|
||||
.. note::
|
||||
|
||||
To compute the initial center-of-mass position and other
|
||||
properties of each rigid body, the image flags for each atom in the
|
||||
body are used to "unwrap" the atom coordinates. Thus you must ensure
|
||||
that these image flags are consistent so that the unwrapping creates a
|
||||
To compute the initial center-of-mass position and other properties
|
||||
of each rigid body, the image flags for each atom in the body are
|
||||
used to "unwrap" the atom coordinates. Thus you must ensure that
|
||||
these image flags are consistent so that the unwrapping creates a
|
||||
valid rigid body (one where the atoms are close together),
|
||||
particularly if the atoms in a single rigid body straddle a periodic
|
||||
boundary. This means the input data file or restart file must define
|
||||
the image flags for each atom consistently or that you have used the
|
||||
:doc:`set <set>` command to specify them correctly. If a dimension is
|
||||
non-periodic then the image flag of each atom must be 0 in that
|
||||
dimension, else an error is generated.
|
||||
particularly if the atoms in a single rigid body straddle a
|
||||
periodic boundary. This means the input data file or restart file
|
||||
must define the image flags for each atom consistently or that you
|
||||
have used the :doc:`set <set>` command to specify them correctly.
|
||||
If a dimension is non-periodic then the image flag of each atom
|
||||
must be 0 in that dimension, else an error is generated.
|
||||
|
||||
The *force* and *torque* keywords discussed next are only allowed for
|
||||
the *rigid* styles.
|
||||
@ -362,12 +369,13 @@ settings from the final keyword are used.
|
||||
|
||||
.. note::
|
||||
|
||||
For computational efficiency, you may wish to turn off pairwise
|
||||
and bond interactions within each rigid body, as they no longer
|
||||
contribute to the motion. The :doc:`neigh_modify exclude <neigh_modify>` and :doc:`delete_bonds <delete_bonds>`
|
||||
commands are used to do this. If the rigid bodies have strongly
|
||||
overlapping atoms, you may need to turn off these interactions to
|
||||
avoid numerical problems due to large equal/opposite intra-body forces
|
||||
For computational efficiency, you may wish to turn off pairwise and
|
||||
bond interactions within each rigid body, as they no longer
|
||||
contribute to the motion. The :doc:`neigh_modify exclude
|
||||
<neigh_modify>` and :doc:`delete_bonds <delete_bonds>` commands are
|
||||
used to do this. If the rigid bodies have strongly overlapping
|
||||
atoms, you may need to turn off these interactions to avoid
|
||||
numerical problems due to large equal/opposite intra-body forces
|
||||
swamping the contribution of small inter-body forces.
|
||||
|
||||
For computational efficiency, you should typically define one fix
|
||||
@ -379,7 +387,8 @@ is more expensive.
|
||||
|
||||
The constituent particles within a rigid body can be point particles
|
||||
(the default in LAMMPS) or finite-size particles, such as spheres or
|
||||
ellipsoids or line segments or triangles. See the :doc:`atom_style sphere and ellipsoid and line and tri <atom_style>` commands for more
|
||||
ellipsoids or line segments or triangles. See the :doc:`atom_style
|
||||
sphere and ellipsoid and line and tri <atom_style>` commands for more
|
||||
details on these kinds of particles. Finite-size particles contribute
|
||||
differently to the moment of inertia of a rigid body than do point
|
||||
particles. Finite-size particles can also experience torque (e.g. due
|
||||
@ -389,7 +398,8 @@ orientation. These contributions are accounted for by these fixes.
|
||||
Forces between particles within a body do not contribute to the
|
||||
external force or torque on the body. Thus for computational
|
||||
efficiency, you may wish to turn off pairwise and bond interactions
|
||||
between particles within each rigid body. The :doc:`neigh_modify exclude <neigh_modify>` and :doc:`delete_bonds <delete_bonds>`
|
||||
between particles within each rigid body. The :doc:`neigh_modify
|
||||
exclude <neigh_modify>` and :doc:`delete_bonds <delete_bonds>`
|
||||
commands are used to do this. For finite-size particles this also
|
||||
means the particles can be highly overlapped when creating the rigid
|
||||
body.
|
||||
@ -401,16 +411,17 @@ perform constant NVE time integration. They are referred to below as
|
||||
the 4 NVE rigid styles. The only difference is that the *rigid* and
|
||||
*rigid/small* styles use an integration technique based on Richardson
|
||||
iterations. The *rigid/nve* and *rigid/small/nve* styles uses the
|
||||
methods described in the paper by :ref:`Miller <Miller3>`, which are thought
|
||||
to provide better energy conservation than an iterative approach.
|
||||
methods described in the paper by :ref:`Miller <Miller3>`, which are
|
||||
thought to provide better energy conservation than an iterative
|
||||
approach.
|
||||
|
||||
The *rigid/nvt* and *rigid/nvt/small* styles performs constant NVT
|
||||
integration using a Nose/Hoover thermostat with chains as described
|
||||
originally in :ref:`(Hoover) <Hoover>` and :ref:`(Martyna) <Martyna2>`, which
|
||||
thermostats both the translational and rotational degrees of freedom
|
||||
of the rigid bodies. They are referred to below as the 2 NVT rigid
|
||||
styles. The rigid-body algorithm used by *rigid/nvt* is described in
|
||||
the paper by :ref:`Kamberaj <Kamberaj>`.
|
||||
originally in :ref:`(Hoover) <Hoover>` and :ref:`(Martyna)
|
||||
<Martyna2>`, which thermostats both the translational and rotational
|
||||
degrees of freedom of the rigid bodies. They are referred to below as
|
||||
the 2 NVT rigid styles. The rigid-body algorithm used by *rigid/nvt*
|
||||
is described in the paper by :ref:`Kamberaj <Kamberaj>`.
|
||||
|
||||
The *rigid/npt*, *rigid/nph*, *rigid/npt/small*, and *rigid/nph/small*
|
||||
styles perform constant NPT or NPH integration using a Nose/Hoover
|
||||
@ -436,12 +447,12 @@ The target pressures for each of the 6 components of the stress tensor
|
||||
can be specified independently via the *x*, *y*, *z* keywords, which
|
||||
correspond to the 3 simulation box dimensions. For each component,
|
||||
the external pressure or tensor component at each timestep is a ramped
|
||||
value during the run from *Pstart* to *Pstop*\ . If a target pressure is
|
||||
specified for a component, then the corresponding box dimension will
|
||||
change during a simulation. For example, if the *y* keyword is used,
|
||||
the y-box length will change. A box dimension will not change if that
|
||||
component is not specified, although you have the option to change
|
||||
that dimension via the :doc:`fix deform <fix_deform>` command.
|
||||
value during the run from *Pstart* to *Pstop*\ . If a target pressure
|
||||
is specified for a component, then the corresponding box dimension
|
||||
will change during a simulation. For example, if the *y* keyword is
|
||||
used, the y-box length will change. A box dimension will not change
|
||||
if that component is not specified, although you have the option to
|
||||
change that dimension via the :doc:`fix deform <fix_deform>` command.
|
||||
|
||||
For all barostat keywords, the *Pdamp* parameter operates like the
|
||||
*Tdamp* parameter, determining the time scale on which pressure is
|
||||
@ -525,11 +536,11 @@ discussed below.
|
||||
|
||||
The *langevin* keyword applies a Langevin thermostat to the constant
|
||||
NVE time integration performed by any of the 4 NVE rigid styles:
|
||||
*rigid*, *rigid/nve*, *rigid/small*, *rigid/small/nve*\ . It cannot be
|
||||
used with the 2 NVT rigid styles: *rigid/nvt*, *rigid/small/nvt*\ . The
|
||||
desired temperature at each timestep is a ramped value during the run
|
||||
from *Tstart* to *Tstop*\ . The *Tdamp* parameter is specified in time
|
||||
units and determines how rapidly the temperature is relaxed. For
|
||||
*rigid*, *rigid/nve*, *rigid/small*, *rigid/small/nve*\ . It cannot
|
||||
be used with the 2 NVT rigid styles: *rigid/nvt*, *rigid/small/nvt*\ .
|
||||
The desired temperature at each timestep is a ramped value during the
|
||||
run from *Tstart* to *Tstop*\ . The *Tdamp* parameter is specified in
|
||||
time units and determines how rapidly the temperature is relaxed. For
|
||||
example, a value of 100.0 means to relax the temperature in a timespan
|
||||
of (roughly) 100 time units (:math:`\tau` or fs or ps - see the
|
||||
:doc:`units <units>` command). The random # *seed* must be a positive
|
||||
@ -564,29 +575,30 @@ used. *Tchain* is the number of thermostats in the Nose Hoover chain.
|
||||
This value, along with *Tdamp* can be varied to dampen undesirable
|
||||
oscillations in temperature that can occur in a simulation. As a rule
|
||||
of thumb, increasing the chain length should lead to smaller
|
||||
oscillations. The keyword *pchain* specifies the number of
|
||||
thermostats in the chain thermostatting the barostat degrees of
|
||||
freedom.
|
||||
oscillations. The keyword *pchain* specifies the number of thermostats
|
||||
in the chain thermostatting the barostat degrees of freedom.
|
||||
|
||||
.. note::
|
||||
|
||||
There are alternate ways to thermostat a system of rigid bodies.
|
||||
You can use :doc:`fix langevin <fix_langevin>` to treat the individual
|
||||
particles in the rigid bodies as effectively immersed in an implicit
|
||||
solvent, e.g. a Brownian dynamics model. For hybrid systems with both
|
||||
rigid bodies and solvent particles, you can thermostat only the
|
||||
solvent particles that surround one or more rigid bodies by
|
||||
appropriate choice of groups in the compute and fix commands for
|
||||
temperature and thermostatting. The solvent interactions with the
|
||||
rigid bodies should then effectively thermostat the rigid body
|
||||
temperature as well without use of the Langevin or Nose/Hoover options
|
||||
associated with the fix rigid commands.
|
||||
You can use :doc:`fix langevin <fix_langevin>` to treat the
|
||||
individual particles in the rigid bodies as effectively immersed in
|
||||
an implicit solvent, e.g. a Brownian dynamics model. For hybrid
|
||||
systems with both rigid bodies and solvent particles, you can
|
||||
thermostat only the solvent particles that surround one or more
|
||||
rigid bodies by appropriate choice of groups in the compute and fix
|
||||
commands for temperature and thermostatting. The solvent
|
||||
interactions with the rigid bodies should then effectively
|
||||
thermostat the rigid body temperature as well without use of the
|
||||
Langevin or Nose/Hoover options associated with the fix rigid
|
||||
commands.
|
||||
|
||||
----------
|
||||
|
||||
The *mol* keyword can only be used with the *rigid/small* styles. It
|
||||
must be used when other commands, such as :doc:`fix deposit <fix_deposit>` or :doc:`fix pour <fix_pour>`, add rigid
|
||||
bodies on-the-fly during a simulation. You specify a *template-ID*
|
||||
must be used when other commands, such as :doc:`fix deposit
|
||||
<fix_deposit>` or :doc:`fix pour <fix_pour>`, add rigid bodies
|
||||
on-the-fly during a simulation. You specify a *template-ID*
|
||||
previously defined using the :doc:`molecule <molecule>` command, which
|
||||
reads a file that defines the molecule. You must use the same
|
||||
*template-ID* that the other fix which is adding rigid bodies uses.
|
||||
@ -670,16 +682,16 @@ cross periodic boundaries during the simulation.
|
||||
|
||||
.. note::
|
||||
|
||||
If you use the *infile* or *mol* keywords and write restart
|
||||
files during a simulation, then each time a restart file is written,
|
||||
the fix also write an auxiliary restart file with the name
|
||||
rfile.rigid, where "rfile" is the name of the restart file,
|
||||
If you use the *infile* or *mol* keywords and write restart files
|
||||
during a simulation, then each time a restart file is written, the
|
||||
fix also write an auxiliary restart file with the name rfile.rigid,
|
||||
where "rfile" is the name of the restart file,
|
||||
e.g. tmp.restart.10000 and tmp.restart.10000.rigid. This auxiliary
|
||||
file is in the same format described above. Thus it can be used in a
|
||||
new input script that restarts the run and re-specifies a rigid fix
|
||||
using an *infile* keyword and the appropriate filename. Note that the
|
||||
auxiliary file will contain one line for every rigid body, even if the
|
||||
original file only listed a subset of the rigid bodies.
|
||||
file is in the same format described above. Thus it can be used in
|
||||
a new input script that restarts the run and re-specifies a rigid
|
||||
fix using an *infile* keyword and the appropriate filename. Note
|
||||
that the auxiliary file will contain one line for every rigid body,
|
||||
even if the original file only listed a subset of the rigid bodies.
|
||||
|
||||
If the system has rigid bodies with finite-size overlapping particles
|
||||
and the model uses the :doc:`fix gravity <fix_gravity>` command to
|
||||
@ -728,10 +740,11 @@ also accounted for by this fix.
|
||||
|
||||
----------
|
||||
|
||||
If your simulation is a hybrid model with a mixture of rigid bodies and
|
||||
non-rigid particles (e.g. solvent) there are several ways these rigid
|
||||
fixes can be used in tandem with :doc:`fix nve <fix_nve>`, :doc:`fix nvt
|
||||
<fix_nh>`, :doc:`fix npt <fix_nh>`, and :doc:`fix nph <fix_nh>`.
|
||||
If your simulation is a hybrid model with a mixture of rigid bodies
|
||||
and non-rigid particles (e.g. solvent) there are several ways these
|
||||
rigid fixes can be used in tandem with :doc:`fix nve <fix_nve>`,
|
||||
:doc:`fix nvt <fix_nh>`, :doc:`fix npt <fix_nh>`, and :doc:`fix nph
|
||||
<fix_nh>`.
|
||||
|
||||
If you wish to perform NVE dynamics (no thermostatting or
|
||||
barostatting), use one of 4 NVE rigid styles to integrate the rigid
|
||||
@ -741,14 +754,14 @@ particles.
|
||||
If you wish to perform NVT dynamics (thermostatting, but no
|
||||
barostatting), you can use one of the 2 NVT rigid styles for the rigid
|
||||
bodies, and any thermostatting fix for the non-rigid particles
|
||||
(:doc:`fix nvt <fix_nh>`, :doc:`fix langevin <fix_langevin>`, :doc:`fix
|
||||
temp/berendsen <fix_temp_berendsen>`). You can also use one of the 4
|
||||
NVE rigid styles for the rigid bodies and thermostat them using
|
||||
:doc:`fix langevin <fix_langevin>` on the group that contains all the
|
||||
particles in the rigid bodies. The net force added by :doc:`fix
|
||||
langevin <fix_langevin>` to each rigid body effectively thermostats its
|
||||
translational center-of-mass motion. Not sure how well it does at
|
||||
thermostatting its rotational motion.
|
||||
(:doc:`fix nvt <fix_nh>`, :doc:`fix langevin <fix_langevin>`,
|
||||
:doc:`fix temp/berendsen <fix_temp_berendsen>`). You can also use one
|
||||
of the 4 NVE rigid styles for the rigid bodies and thermostat them
|
||||
using :doc:`fix langevin <fix_langevin>` on the group that contains
|
||||
all the particles in the rigid bodies. The net force added by
|
||||
:doc:`fix langevin <fix_langevin>` to each rigid body effectively
|
||||
thermostats its translational center-of-mass motion. Not sure how
|
||||
well it does at thermostatting its rotational motion.
|
||||
|
||||
If you wish to perform NPT or NPH dynamics (barostatting), you cannot
|
||||
use both :doc:`fix npt <fix_nh>` and the NPT or NPH rigid styles. This
|
||||
@ -774,12 +787,12 @@ to the global pressure and the box is scaled the same by any of the
|
||||
barostatting fixes.
|
||||
|
||||
You could even use the second and third options for a non-hybrid
|
||||
simulation consisting of only rigid bodies, assuming you give :doc:`fix
|
||||
npt <fix_nh>` an empty group, though it's an odd thing to do. The
|
||||
barostatting fixes (:doc:`fix npt <fix_nh>` and :doc:`fix press/berensen
|
||||
<fix_press_berendsen>`) will monitor the pressure and change the box
|
||||
dimensions, but not time integrate any particles. The integration of
|
||||
the rigid bodies will be performed by fix rigid/nvt.
|
||||
simulation consisting of only rigid bodies, assuming you give
|
||||
:doc:`fix npt <fix_nh>` an empty group, though it's an odd thing to
|
||||
do. The barostatting fixes (:doc:`fix npt <fix_nh>` and :doc:`fix
|
||||
press/berensen <fix_press_berendsen>`) will monitor the pressure and
|
||||
change the box dimensions, but not time integrate any particles. The
|
||||
integration of the rigid bodies will be performed by fix rigid/nvt.
|
||||
|
||||
----------
|
||||
|
||||
@ -824,10 +837,10 @@ various :doc:`output commands <Howto_output>`. The scalar value
|
||||
calculated by these fixes is "intensive". The scalar is the current
|
||||
temperature of the collection of rigid bodies. This is averaged over
|
||||
all rigid bodies and their translational and rotational degrees of
|
||||
freedom. The translational energy of a rigid body is 1/2 m v\^2, where
|
||||
m = total mass of the body and v = the velocity of its center of mass.
|
||||
The rotational energy of a rigid body is 1/2 I w\^2, where I = the
|
||||
moment of inertia tensor of the body and w = its angular velocity.
|
||||
freedom. The translational energy of a rigid body is 1/2 m v\^2,
|
||||
where m = total mass of the body and v = the velocity of its center of
|
||||
mass. The rotational energy of a rigid body is 1/2 I w\^2, where I =
|
||||
the moment of inertia tensor of the body and w = its angular velocity.
|
||||
Degrees of freedom constrained by the *force* and *torque* keywords
|
||||
are removed from this calculation, but only for the *rigid* and
|
||||
*rigid/nve* fixes.
|
||||
|
||||
@ -148,6 +148,8 @@ components of the vector represent the following quantities:
|
||||
* ...
|
||||
* N+2: The current global concentration of species *X* (= number of atoms of type *N* / total number of atoms)
|
||||
|
||||
The vector values calculated by this fix are "intensive".
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
@ -40,7 +40,7 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
This fix implements flow boundary conditions (FBC) introduced in
|
||||
:ref:`(Pavlov1) <fbc-Pavlov1>` and :ref:`(Pavlov2) <fbc-Pavlov2>`.
|
||||
|
||||
@ -179,7 +179,7 @@ the following global cumulative quantities:
|
||||
* 2 = average difference in potential energy on each timestep
|
||||
* 3 = volume of the insertion region
|
||||
|
||||
The vector values calculated by this fix are "extensive".
|
||||
The vector values calculated by this fix are "intensive".
|
||||
|
||||
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
|
||||
|
||||
@ -64,8 +64,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This improper style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -54,8 +54,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This improper style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -60,8 +60,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -72,8 +72,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This improper style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -43,7 +43,8 @@ The label map can also be defined by the :doc:`read_data <read_data>`
|
||||
command when it reads these sections in a data file: Atom Type Labels,
|
||||
Bond Type Labels, etc. See the :doc:`Howto type labels
|
||||
<Howto_type_labels>` doc page for a general discussion of how type
|
||||
labels can be used.
|
||||
labels can be used. See :ref:`(Gissinger) <Typelabel>` for a discussion
|
||||
of the type label implementation in LAMMPS and its uses.
|
||||
|
||||
Valid type labels can contain any alphanumeric character, but must not
|
||||
start with a number, a '#', or a '*' character. They can contain other
|
||||
@ -98,3 +99,9 @@ Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
|
||||
-----------
|
||||
|
||||
.. _Typelabel:
|
||||
|
||||
**(Gissinger)** J. R. Gissinger, I. Nikiforov, Y. Afshar, B. Waters, M. Choi, D. S. Karls, A. Stukowski, W. Im, H. Heinz, A. Kohlmeyer, and E. B. Tadmor, J Phys Chem B, 128, 3282-3297 (2024).
|
||||
|
||||
@ -19,7 +19,7 @@ Syntax
|
||||
scale = lattice constant in distance units (for all other units)
|
||||
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *origin* or *orient* or *spacing* or *a1* or *a2* or *a3* or *basis*
|
||||
* keyword = *origin* or *orient* or *spacing* or *a1* or *a2* or *a3* or *basis* or *triclinic/general*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -34,6 +34,7 @@ Syntax
|
||||
x,y,z = primitive vector components that define unit cell
|
||||
*basis* values = x y z
|
||||
x,y,z = fractional coords of a basis atom (0 <= x,y,z < 1)
|
||||
*triclinic/general* values = no values
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -44,7 +45,7 @@ Examples
|
||||
lattice hex 0.85
|
||||
lattice sq 0.8 origin 0.0 0.5 0.0 orient x 1 1 0 orient y -1 1 0
|
||||
lattice custom 3.52 a1 1.0 0.0 0.0 a2 0.5 1.0 0.0 a3 0.0 0.0 0.5 &
|
||||
basis 0.0 0.0 0.0 basis 0.5 0.5 0.5
|
||||
basis 0.0 0.0 0.0 basis 0.5 0.5 0.5 triclinic/general
|
||||
lattice none 2.0
|
||||
|
||||
Description
|
||||
@ -129,10 +130,13 @@ and a3 are 3 orthogonal unit vectors (edges of a unit cube). But you
|
||||
can specify them to be of any length and non-orthogonal to each other,
|
||||
so that they describe a tilted parallelepiped. Via the *basis*
|
||||
keyword you add atoms, one at a time, to the unit cell. Its arguments
|
||||
are fractional coordinates (0.0 <= x,y,z < 1.0). The position vector
|
||||
x of a basis atom within the unit cell is thus a linear combination of
|
||||
the unit cell's 3 edge vectors, i.e. x = bx a1 + by a2 + bz a3,
|
||||
where bx,by,bz are the 3 values specified for the *basis* keyword.
|
||||
are fractional coordinates (0.0 <= x,y,z < 1.0). For 2d simulations,
|
||||
the fractional z coordinate for any basis atom must be 0.0.
|
||||
|
||||
The position vector x of a basis atom within the unit cell is a linear
|
||||
combination of the unit cell's 3 edge vectors, i.e. x = bx a1 + by
|
||||
a2 + bz a3, where bx,by,bz are the 3 values specified for the *basis*
|
||||
keyword.
|
||||
|
||||
----------
|
||||
|
||||
@ -168,18 +172,21 @@ The *origin* option specifies how the unit cell will be shifted or
|
||||
translated when mapping it into the simulation box. The x,y,z values
|
||||
are fractional values (0.0 <= x,y,z < 1.0) meaning shift the lattice
|
||||
by a fraction of the lattice spacing in each dimension. The meaning
|
||||
of "lattice spacing" is discussed below.
|
||||
of "lattice spacing" is discussed below. For 2d simulations, the
|
||||
*origin* z value must be 0.0.
|
||||
|
||||
The *orient* option specifies how the unit cell will be rotated when
|
||||
mapping it into the simulation box. The *dim* argument is one of the
|
||||
3 coordinate axes in the simulation box. The other 3 arguments are
|
||||
the crystallographic direction in the lattice that you want to orient
|
||||
along that axis, specified as integers. E.g. "orient x 2 1 0" means
|
||||
the x-axis in the simulation box will be the [210] lattice
|
||||
direction, and similarly for y and z. The 3 lattice directions you
|
||||
specify do not have to be unit vectors, but they must be mutually
|
||||
orthogonal and obey the right-hand rule, i.e. (X cross Y) points in
|
||||
the Z direction.
|
||||
the x-axis in the simulation box will be the [210] lattice direction,
|
||||
and similarly for y and z. The 3 lattice directions you specify do
|
||||
not have to be unit vectors, but they must be mutually orthogonal and
|
||||
obey the right-hand rule, i.e. (X cross Y) points in the Z direction.
|
||||
For 2d simulations, the *orient* x and y vectors must define 0 for
|
||||
their 3rd component. Similarly the *orient* z vector must define 0
|
||||
for its 1st and 2nd components.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -193,6 +200,59 @@ the Z direction.
|
||||
|
||||
----------
|
||||
|
||||
The *triclinic/general* option specifies that the defined lattice is
|
||||
for use with a general triclinic simulation box, as opposed to an
|
||||
orthogonal or restricted triclinic box. The :doc:`Howto triclinic
|
||||
<Howto_triclinic>` doc page explains all 3 kinds of simulation boxes
|
||||
LAMMPS supports.
|
||||
|
||||
If this option is specified, a *custom* lattice style must be used.
|
||||
The *a1*, *a2*, *a3* vectors should define the edge vectors of a
|
||||
single unit cell of the lattice with one or more basis atoms. They
|
||||
edge vectors can be arbitrary so long as they are non-zero, distinct,
|
||||
and not co-planar. In addition, they must define a right-handed
|
||||
system, such that (*a1* cross *a2*) points in the direction of *a3*.
|
||||
Note that a left-handed system can be converted to a right-handed
|
||||
system by simply swapping the order of any pair of the *a1*, *a2*,
|
||||
*a3* vectors. For 2d simulations, the *a3* vector must be specified
|
||||
as (0.0,0.0,1.0), which is its default value.
|
||||
|
||||
If this option is used, the *origin* and *orient* settings must have
|
||||
their default values. Namely (0.0,0.0,0.0) for the *origin* and
|
||||
(100), (010), (001) for the *orient* vectors.
|
||||
|
||||
The :doc:`create_box <create_box>` command can be used to create a
|
||||
general triclinic box that replicates the *a1*, *a2*, *a3* unit cell
|
||||
vectors in each direction to create the 3 arbitrary edge vectors of
|
||||
the overall simulation box. It requires a lattice with the
|
||||
*triclinic/general* option.
|
||||
|
||||
Likewise, the :doc:`create_atoms <create_atoms>` command can be used
|
||||
to add atoms (or molecules) to a general triclinic box which lie on
|
||||
the lattice points defined by *a1*, *a2*, *a3* and the unit cell basis
|
||||
atoms. To do this, it also requires a lattice with the
|
||||
*triclinic/general* option.
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS allows specification of general triclinic lattices and
|
||||
simulation boxes as a convenience for users who may be converting
|
||||
data from solid-state crystallographic representations or from DFT
|
||||
codes for input to LAMMPS. However, as explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, internally,
|
||||
LAMMPS only uses restricted triclinic simulation boxes. This means
|
||||
the box and per-atom information (e.g. coordinates, velocities)
|
||||
defined by the :doc:`create_box <create_box>` and
|
||||
:doc:`create_atoms <create_atoms>` commands are converted from
|
||||
general to restricted triclinic form when the two commands are
|
||||
invoked. It also means that any other commands which use lattice
|
||||
spacings from this command (e.g. the region command), will be
|
||||
operating on a restricted triclinic simulation box, even if the
|
||||
*triclinic/general* option was used to define the lattice. See the
|
||||
next section for details.
|
||||
|
||||
----------
|
||||
|
||||
Several LAMMPS commands have the option to use distance units that are
|
||||
inferred from "lattice spacings" in the x,y,z box directions.
|
||||
E.g. the :doc:`region <region>` command can create a block of size
|
||||
@ -216,6 +276,18 @@ coordinates of the 8 corner points of the modified unit cell (4 in
|
||||
2d). Similarly, the Y and Z lattice spacings are defined as the
|
||||
difference in the min/max of the y and z coordinates.
|
||||
|
||||
.. note::
|
||||
|
||||
If the *triclinic/general* option is specified, the unit cell
|
||||
defined by *a1*, *a2*, *a3* edge vectors is first converted to a
|
||||
restricted triclinic orientation, which is a rotation operation.
|
||||
The min/max extent of the 8 corner points is then determined, as
|
||||
described in the preceding paragraph, to set the lattice
|
||||
spacings. As explained for the *triclinic/general* option above,
|
||||
this is because any use of the lattice spacings by other commands
|
||||
will be for a restricted triclinic simulation box, not a general
|
||||
triclinic box.
|
||||
|
||||
Note that if the unit cell is orthogonal with axis-aligned edges (no
|
||||
rotation via the *orient* keyword), then the lattice spacings in each
|
||||
dimension are simply the scale factor (described above) multiplied by
|
||||
|
||||
@ -576,7 +576,7 @@ changed to *no* since the *sort* keyword does not support *host* mode. Not
|
||||
all fix styles with extra atom data support *device* mode and in that case
|
||||
a warning will be given and atom sorting will run in *no* mode instead.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The *atom/map* keyword determines whether the host or device builds the
|
||||
atom_map, see the :doc:`atom_modify map <atom_modify>` command. The
|
||||
|
||||
@ -379,10 +379,11 @@ These pair styles can only be used via the *pair* keyword of the
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
The *coul/cut/global*, *coul/long*, *coul/msm*, *coul/streitz*, and *tip4p/long* styles
|
||||
are part of the KSPACE package. They are only enabled if LAMMPS was built
|
||||
with that package. See the :doc:`Build package <Build_package>` doc page
|
||||
for more info.
|
||||
The *coul/long*, *coul/msm*, *coul/streitz*, and *tip4p/long* styles are
|
||||
part of the KSPACE package. The *coul/cut/global* and *coul/exclude* are
|
||||
part of the EXTRA-PAIR package. A pair style is only enabled if LAMMPS was
|
||||
built with its corresponding package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -140,6 +140,21 @@ The OpenKIM Project at
|
||||
provides EAM potentials that can be used directly in LAMMPS with the
|
||||
:doc:`kim command <kim_commands>` interface.
|
||||
|
||||
.. warning::
|
||||
|
||||
The EAM potential files tabulate the embedding energy as a function
|
||||
of the local electron density :math:`\rho`. When atoms get too
|
||||
close, this electron density may exceed the range for which the
|
||||
embedding energy was tabulated for. To avoid crashes, LAMMPS will
|
||||
assume a linearly increasing embedding energy for electron densities
|
||||
beyond the maximum tabulated value. LAMMPS will print a warning when
|
||||
this happens. It may be acceptable at the beginning of an
|
||||
equilibration (e.g. when using randomized coordinates) but would be a
|
||||
big concern for accuracy if it happens during production runs. The
|
||||
EAM potential file triggering the warning during production is thus
|
||||
not a good choice, and the EAM model in general not likely a good
|
||||
model for the kind of system under investigation.
|
||||
|
||||
----------
|
||||
|
||||
For style *eam*, potential values are read from a file that is in the
|
||||
|
||||
@ -187,6 +187,7 @@ for the damping model currently supported are:
|
||||
2. *mass_velocity*
|
||||
3. *viscoelastic*
|
||||
4. *tsuji*
|
||||
5. *coeff_restitution*
|
||||
|
||||
If the *damping* keyword is not specified, the *viscoelastic* model is
|
||||
used by default.
|
||||
@ -248,6 +249,29 @@ The dimensionless coefficient of restitution :math:`e` specified as part
|
||||
of the normal contact model parameters should be between 0 and 1, but
|
||||
no error check is performed on this.
|
||||
|
||||
The *coeff_restitution* model is useful when a specific normal coefficient of
|
||||
restitution :math:`e` is required. In these models, the normal coefficient of
|
||||
restitution :math:`e` is specified as an input. Following the approach of
|
||||
:ref:`(Brilliantov et al) <Brill1996>`, when using the *hooke* normal model,
|
||||
*coeff_restitution* calculates the damping coefficient as:
|
||||
|
||||
.. math::
|
||||
|
||||
\eta_n = \sqrt{\frac{4m_{eff}k_n}{1+\left( \frac{\pi}{\log(e)}\right)^2}} ,
|
||||
|
||||
For any other normal model, e.g. the *hertz* and *hertz/material* models, the damping
|
||||
coefficient is:
|
||||
|
||||
.. math::
|
||||
|
||||
\eta_n = -2\sqrt{\frac{5}{6}}\frac{\log(e)}{\sqrt{\pi^2+(\log(e))^2}}(R_{eff} \delta_{ij})^{\frac{1}{4}}\sqrt{\frac{3}{2}k_n m_{eff}} ,
|
||||
|
||||
where :math:`k_n = \frac{4}{3} E_{eff}` for the *hertz/material* model. Since
|
||||
*coeff_restitution* accounts for the effective mass, effective radius, and
|
||||
pairwise overlaps (except when used with the *hooke* normal model) when calculating
|
||||
the damping coefficient, it accurately reproduces the specified coefficient of
|
||||
restitution for both monodisperse and polydisperse particle pairs.
|
||||
|
||||
The total normal force is computed as the sum of the elastic and
|
||||
damping components:
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@ Syntax
|
||||
style = *linear* or *quadratic* or *nn* or *mliappy*
|
||||
filename = name of file containing model definitions
|
||||
*descriptor* values = style filename
|
||||
style = *sna* or *so3*
|
||||
style = *sna* or *so3* or *ace*
|
||||
filename = name of file containing descriptor definitions
|
||||
*unified* values = filename ghostneigh_flag
|
||||
filename = name of file containing serialized unified Python object
|
||||
@ -36,6 +36,7 @@ Examples
|
||||
pair_style mliap model linear InP.mliap.model descriptor sna InP.mliap.descriptor
|
||||
pair_style mliap model quadratic W.mliap.model descriptor sna W.mliap.descriptor
|
||||
pair_style mliap model nn Si.nn.mliap.model descriptor so3 Si.nn.mliap.descriptor
|
||||
pair_style mliap model mliappy ACE_NN_Pytorch.pt descriptor ace ccs_single_element.yace
|
||||
pair_style mliap unified mliap_unified_lj_Ar.pkl 0
|
||||
pair_coeff * * In P
|
||||
|
||||
@ -49,8 +50,8 @@ quantities that characterize the atomic positions (*descriptor*).
|
||||
|
||||
By defining *model* and *descriptor* separately, it is possible to use
|
||||
many different models with a given descriptor, or many different
|
||||
descriptors with a given model. The pair style currently supports only
|
||||
*sna* and *so3* descriptor styles, but it is straightforward to add new
|
||||
descriptors with a given model. The pair style currently supports *sna*,
|
||||
*so3* and *ace* descriptor styles, but it is straightforward to add new
|
||||
descriptor styles. By using the *unified* keyword, it is possible to
|
||||
define a Python model that combines functionalities of both *model* and
|
||||
*descriptor*.
|
||||
@ -72,6 +73,26 @@ the smooth SO(3) power spectrum with the explicit inclusion of a radial
|
||||
basis :ref:`(Bartok) <Bartok2013>` and :ref:`(Zagaceta) <Zagaceta2020>`.
|
||||
The available models are *linear* and *nn*.
|
||||
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The descriptor style *ace* is a class of highly general atomic
|
||||
descriptors, atomic cluster expansion descriptors (ACE) from
|
||||
:ref:`(Drautz) <Drautz19>`, that include a radial basis, an angular
|
||||
basis, and bases for other variables (such as chemical species) if
|
||||
relevant. In descriptor style *ace*, the *ace* descriptors may be
|
||||
defined up to an arbitrary body order. This descriptor style is the same
|
||||
as that used in :doc:`pair_style pace <pair_pace>` and :doc:`compute
|
||||
pace <compute_pace>`. The available models with *ace* in ML-IAP are
|
||||
*linear* and *mliappy*. The *ace* descriptors and models require
|
||||
building LAMMPS with the ML-PACE package (see below). The *mliappy*
|
||||
model style may be used with *ace* descriptors, but it requires that
|
||||
LAMMPS is also built with the PYTHON package. As with other model
|
||||
styles, the *mliappy* model style can be used to couple arbitrary python
|
||||
models that use the *ace* descriptors such as Pytorch NNs. Note that
|
||||
*ALL* mliap model styles with *ace* descriptors require that descriptors
|
||||
and hyperparameters are supplied in a `.yace` or `.ace` file, similar to
|
||||
:doc:`compute pace <compute_pace>`.
|
||||
|
||||
The pair_style *mliap* command must be followed by two keywords *model*
|
||||
and *descriptor* in either order, or the one keyword *unified*. A
|
||||
single *pair_coeff* command is also required. The first 2 arguments
|
||||
@ -136,7 +157,7 @@ The detail of *nn* module implementation can be found at :ref:`(Yanxon) <Yanxon2
|
||||
the mliap-specific python module that is built into LAMMPS.
|
||||
|
||||
The *descriptor* keyword is followed by a descriptor style, and additional arguments.
|
||||
Currently two descriptor styles are available: *sna* and *so3*.
|
||||
Currently three descriptor styles are available: *sna*, *so3*, and *ace*.
|
||||
|
||||
- *sna* indicates the bispectrum component descriptors used by the Spectral
|
||||
Neighbor Analysis Potential (SNAP) potentials of :doc:`pair_style snap
|
||||
@ -148,6 +169,16 @@ Currently two descriptor styles are available: *sna* and *so3*.
|
||||
- *so3* indicated the power spectrum component descriptors. A single additional
|
||||
argument specifies the descriptor filename containing the parameters and setting.
|
||||
|
||||
- *ace* indicates the atomic cluster expansion (ACE) descriptors. A single
|
||||
additional argument specifies the filename containing parameters, settings, and
|
||||
definitions of the ace descriptors (through tabulated basis function indices and
|
||||
corresponding generalized Clebsch-Gordan coefficients) in the ctilde file format,
|
||||
e.g. in the potential file format with `*.ace` or `*.yace` extensions from
|
||||
:doc:`pair_style pace <pair_pace>`. Note that unlike the potential file, the
|
||||
Clebsch-Gordan coefficients in the descriptor file supplied should *NOT* be
|
||||
multiplied by linear or square root embedding terms.
|
||||
|
||||
|
||||
The SNAP descriptor file closely follows the format of the
|
||||
:doc:`pair_style snap <pair_snap>` parameter file. The file can contain
|
||||
blank and comment lines (start with #) anywhere. Each non-blank
|
||||
@ -169,6 +200,24 @@ contains a few more arguments (e.g., *nmax* and *alpha*). The preparation
|
||||
of SO3 descriptor and model files can be done with the
|
||||
`Pyxtal_FF <https://github.com/qzhu2017/PyXtal_FF>`_ package.
|
||||
|
||||
The ACE descriptor file differs from the SNAP and SO3 files. It more
|
||||
closely resembles the potential file format for linear or square-root
|
||||
embedding ACE potentials used in the :doc:`pair_style pace <pair_pace>`.
|
||||
As noted above, the key difference is that the Clebsch-Gordan
|
||||
coefficients in the descriptor file with *mliap descriptor ace* are
|
||||
*NOT* multiplied by linear or square root embedding terms. In other
|
||||
words,the model is separated from the descriptor definitions and
|
||||
hyperparameters. In :doc:`pair_style pace <pair_pace>`, they are
|
||||
combined. The ACE descriptor files required by *mliap* are generated
|
||||
automatically in `FitSNAP <https://github.com/FitSNAP/FitSNAP>`_ during
|
||||
linear, pytorch, etc. ACE model fitting. Additional tools are provided
|
||||
there to prepare *ace* descriptor files and hyperparameters before model
|
||||
fitting. The *ace* descriptor files can also be extracted from ACE
|
||||
model fits in `python-ace. <https://github.com/ICAMS/python-ace>`_. It
|
||||
is important to note that order of the types listed in :doc:`pair_coeff
|
||||
<pair_coeff>` must match the order of the elements/types listed in the
|
||||
ACE descriptor file for all *mliap* styles when using *ace* descriptors.
|
||||
|
||||
See the :doc:`pair_coeff <pair_coeff>` page for alternate ways
|
||||
to specify the path for these *model* and *descriptor* files.
|
||||
|
||||
@ -245,7 +294,10 @@ This pair style is part of the ML-IAP package. It is only enabled if
|
||||
LAMMPS was built with that package. In addition, building LAMMPS with
|
||||
the ML-IAP package requires building LAMMPS with the ML-SNAP package.
|
||||
The *mliappy* model requires building LAMMPS with the PYTHON package.
|
||||
See the :doc:`Build package <Build_package>` page for more info.
|
||||
The *ace* descriptor requires building LAMMPS with the ML-PACE package.
|
||||
See the :doc:`Build package <Build_package>` page for more info. Note
|
||||
that `pair_mliap/kk` acceleration will *not* invoke the `kk`
|
||||
accelerated variants of SNAP or ACE descriptors.
|
||||
|
||||
|
||||
Related commands
|
||||
@ -271,5 +323,3 @@ none
|
||||
.. _Yanxon2020:
|
||||
|
||||
**(Yanxon2020)** Yanxon, Zagaceta, Tang, Matteson, Zhu, Mach. Learn.: Sci. Technol. 2, 027001 (2020).
|
||||
|
||||
|
||||
|
||||
137
doc/src/pair_pedone.rst
Normal file
137
doc/src/pair_pedone.rst
Normal file
@ -0,0 +1,137 @@
|
||||
.. index:: pair_style pedone
|
||||
.. index:: pair_style pedone/omp
|
||||
|
||||
pair_style pedone command
|
||||
=========================
|
||||
|
||||
Accelerator Variants: *pedone/omp*
|
||||
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
pair_style style args
|
||||
|
||||
* style = pedone*
|
||||
* args = list of arguments for a particular style
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*pedone* args = cutoff
|
||||
cutoff = global cutoff for Pedone interactions (distance units)
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-5
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
Used in input scripts:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
examples/PACKAGES/pedone/in.pedone.relax
|
||||
examples/PACKAGES/pedone/in.pedone.melt
|
||||
|
||||
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
Pair style *pedone* computes the **non-Coulomb** interactions of the Pedone
|
||||
(or PMMCS) potential :ref:`(Pedone) <Pedone>` which combines Coulomb
|
||||
interactions, Morse potential, and repulsive :math:`r^{-12}`
|
||||
Lennard-Jones terms (see below). The *pedone* pair style is meant
|
||||
to be used in addition to a :doc:`Coulomb pair style <pair_coul>` via
|
||||
pair style :doc:`hybrid/overlay <pair_hybrid>` (see example above).
|
||||
Using *coul/long* or *could/dsf* (for solids) is recommended.
|
||||
|
||||
The full Pedone potential function from :ref:`(Pedone) <Pedone>` for each
|
||||
pair of atoms is:
|
||||
|
||||
.. math::
|
||||
|
||||
E = \frac{C q_i q_j}{\epsilon r}
|
||||
+ D_0 \left[ e^{- 2 \alpha (r - r_0)} - 2 e^{- \alpha (r - r_0)} \right]
|
||||
+ \frac{B_0}{r^{12}} \qquad r < r_c
|
||||
|
||||
:math:`r_c` is the cutoff and :math:`C` is a conversion factor that is
|
||||
specific to the choice of :doc:`units <units>` so that the entire
|
||||
Coulomb term is in energy units with :math:`q_i` and :math:`q_j` as the
|
||||
assigned charges in multiples of the elementary charge.
|
||||
|
||||
The following coefficients must be defined for the selected pairs of
|
||||
atom types via the :doc:`pair_coeff <pair_coeff>` command as in the
|
||||
example above:
|
||||
|
||||
* :math:`D_0` (energy units)
|
||||
* :math:`\alpha` (1/distance units)
|
||||
* :math:`r_0` (distance units)
|
||||
* :math:`C_0` (energy units)
|
||||
* cutoff (distance units)
|
||||
|
||||
The last coefficient is optional. If not specified, the global *pedone*
|
||||
cutoff is used.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Mixing, shift, table, tail correction, restart, rRESPA info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This pair style does not support mixing.
|
||||
|
||||
This pair style support the :doc:`pair_modify <pair_modify>` shift
|
||||
option for the energy of the pair interaction.
|
||||
|
||||
This pair style does not support the :doc:`pair_modify <pair_modify>`
|
||||
tail option for adding long-range tail corrections to energy and
|
||||
pressure.
|
||||
|
||||
This pair style writes its information to :doc:`binary restart files <restart>`,
|
||||
so pair_style and pair_coeff commands does not need to be specified in an input
|
||||
script that reads a restart file.
|
||||
|
||||
This pair style can only be used via the *pair* keyword of the
|
||||
:doc:`run_style respa <run_style>` command. It does not support the
|
||||
*inner*, *middle*, or *outer* keywords.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
The *pedone* pair style is only enabled if LAMMPS was built with the
|
||||
EXTRA-PAIR package. See the :doc:`Build package <Build_package>` page
|
||||
for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`pair_style <pair_style>`,
|
||||
:doc:`pair style coul/long and coul/dsf <pair_coul>`,
|
||||
:doc:`pair style morse <pair_morse>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
|
||||
-------------
|
||||
|
||||
.. _Pedone:
|
||||
|
||||
**(Pedone)** A. Pedone, G. Malavasi, M. C. Menziani, A. N. Cormack, and U. Segre, J. Phys. Chem. B, 110, 11780 (2006)
|
||||
@ -28,7 +28,7 @@ Example input scripts available: examples/threebody/
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 17Apr2024
|
||||
|
||||
The *rebomos* pair style computes the interactions between molybdenum
|
||||
and sulfur atoms :ref:`(Stewart) <Stewart>` utilizing an adaptive
|
||||
|
||||
@ -275,30 +275,30 @@ accelerated styles exist.
|
||||
* :doc:`lj/smooth/linear <pair_lj_smooth_linear>` - linear smoothed LJ potential
|
||||
* :doc:`lj/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>` - smoothed LJ vdW potential with Gaussian electrostatics
|
||||
* :doc:`lj96/cut <pair_lj96>` - Lennard-Jones 9/6 potential
|
||||
* :doc:`local/density <pair_local_density>` - generalized basic local density potential
|
||||
* :doc:`lubricate <pair_lubricate>` - hydrodynamic lubrication forces
|
||||
* :doc:`lubricate/poly <pair_lubricate>` - hydrodynamic lubrication forces with polydispersity
|
||||
* :doc:`lubricateU <pair_lubricateU>` - hydrodynamic lubrication forces for Fast Lubrication Dynamics
|
||||
* :doc:`lubricateU/poly <pair_lubricateU>` - hydrodynamic lubrication forces for Fast Lubrication with polydispersity
|
||||
* :doc:`local/density <pair_local_density>` - Generalized basic local density potential
|
||||
* :doc:`lubricate <pair_lubricate>` - Hydrodynamic lubrication forces
|
||||
* :doc:`lubricate/poly <pair_lubricate>` - Hydrodynamic lubrication forces with polydispersity
|
||||
* :doc:`lubricateU <pair_lubricateU>` - Hydrodynamic lubrication forces for Fast Lubrication Dynamics
|
||||
* :doc:`lubricateU/poly <pair_lubricateU>` - Hydrodynamic lubrication forces for Fast Lubrication with polydispersity
|
||||
* :doc:`mdpd <pair_mesodpd>` - mDPD particle interactions
|
||||
* :doc:`mdpd/rhosum <pair_mesodpd>` - mDPD particle interactions for mass density
|
||||
* :doc:`meam <pair_meam>` - modified embedded atom method (MEAM)
|
||||
* :doc:`meam/ms <pair_meam>` - multi-state modified embedded atom method (MS-MEAM)
|
||||
* :doc:`meam/spline <pair_meam_spline>` - splined version of MEAM
|
||||
* :doc:`meam/sw/spline <pair_meam_sw_spline>` - splined version of MEAM with a Stillinger-Weber term
|
||||
* :doc:`mesocnt <pair_mesocnt>` - mesoscopic vdW potential for (carbon) nanotubes
|
||||
* :doc:`mesocnt/viscous <pair_mesocnt>` - mesoscopic vdW potential for (carbon) nanotubes with friction
|
||||
* :doc:`mgpt <pair_mgpt>` - simplified model generalized pseudopotential theory (MGPT) potential
|
||||
* :doc:`meam <pair_meam>` - Modified embedded atom method (MEAM)
|
||||
* :doc:`meam/ms <pair_meam>` - Multi-state modified embedded atom method (MS-MEAM)
|
||||
* :doc:`meam/spline <pair_meam_spline>` - Splined version of MEAM
|
||||
* :doc:`meam/sw/spline <pair_meam_sw_spline>` - Splined version of MEAM with a Stillinger-Weber term
|
||||
* :doc:`mesocnt <pair_mesocnt>` - Mesoscopic vdW potential for (carbon) nanotubes
|
||||
* :doc:`mesocnt/viscous <pair_mesocnt>` - Mesoscopic vdW potential for (carbon) nanotubes with friction
|
||||
* :doc:`mgpt <pair_mgpt>` - Simplified model generalized pseudopotential theory (MGPT) potential
|
||||
* :doc:`mie/cut <pair_mie>` - Mie potential
|
||||
* :doc:`mm3/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>` - smoothed MM3 vdW potential with Gaussian electrostatics
|
||||
* :doc:`mm3/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>` - Smoothed MM3 vdW potential with Gaussian electrostatics
|
||||
* :doc:`momb <pair_momb>` - Many-Body Metal-Organic (MOMB) force field
|
||||
* :doc:`morse <pair_morse>` - Morse potential
|
||||
* :doc:`morse/smooth/linear <pair_morse>` - linear smoothed Morse potential
|
||||
* :doc:`morse/smooth/linear <pair_morse>` - Linear smoothed Morse potential
|
||||
* :doc:`morse/soft <pair_morse>` - Morse potential with a soft core
|
||||
* :doc:`multi/lucy <pair_multi_lucy>` - DPD potential with density-dependent force
|
||||
* :doc:`multi/lucy/rx <pair_multi_lucy_rx>` - reactive DPD potential with density-dependent force
|
||||
* :doc:`nb3b/harmonic <pair_nb3b>` - non-bonded 3-body harmonic potential
|
||||
* :doc:`nb3b/screened <pair_nb3b>` - non-bonded 3-body screened harmonic potential
|
||||
* :doc:`nb3b/harmonic <pair_nb3b>` - Non-bonded 3-body harmonic potential
|
||||
* :doc:`nb3b/screened <pair_nb3b>` - Non-bonded 3-body screened harmonic potential
|
||||
* :doc:`nm/cut <pair_nm>` - N-M potential
|
||||
* :doc:`nm/cut/coul/cut <pair_nm>` - N-M potential with cutoff Coulomb
|
||||
* :doc:`nm/cut/coul/long <pair_nm>` - N-M potential with long-range Coulomb
|
||||
@ -322,21 +322,22 @@ accelerated styles exist.
|
||||
* :doc:`oxrna2/xstk <pair_oxrna2>` -
|
||||
* :doc:`pace <pair_pace>` - Atomic Cluster Expansion (ACE) machine-learning potential
|
||||
* :doc:`pace/extrapolation <pair_pace>` - Atomic Cluster Expansion (ACE) machine-learning potential with extrapolation grades
|
||||
* :doc:`pedone <pair_pedone>` - Pedone (PMMCS) potential (non-Coulomb part)
|
||||
* :doc:`pod <pair_pod>` - Proper orthogonal decomposition (POD) machine-learning potential
|
||||
* :doc:`peri/eps <pair_peri>` - peridynamic EPS potential
|
||||
* :doc:`peri/lps <pair_peri>` - peridynamic LPS potential
|
||||
* :doc:`peri/pmb <pair_peri>` - peridynamic PMB potential
|
||||
* :doc:`peri/ves <pair_peri>` - peridynamic VES potential
|
||||
* :doc:`polymorphic <pair_polymorphic>` - polymorphic 3-body potential
|
||||
* :doc:`peri/eps <pair_peri>` - Peridynamic EPS potential
|
||||
* :doc:`peri/lps <pair_peri>` - Peridynamic LPS potential
|
||||
* :doc:`peri/pmb <pair_peri>` - Peridynamic PMB potential
|
||||
* :doc:`peri/ves <pair_peri>` - Peridynamic VES potential
|
||||
* :doc:`polymorphic <pair_polymorphic>` - Polymorphic 3-body potential
|
||||
* :doc:`python <pair_python>` -
|
||||
* :doc:`quip <pair_quip>` -
|
||||
* :doc:`rann <pair_rann>` -
|
||||
* :doc:`reaxff <pair_reaxff>` - ReaxFF potential
|
||||
* :doc:`rebo <pair_airebo>` - second generation REBO potential of Brenner
|
||||
* :doc:`rebo <pair_airebo>` - Second generation REBO potential of Brenner
|
||||
* :doc:`rebomos <pair_rebomos>` - REBOMoS potential for MoS2
|
||||
* :doc:`resquared <pair_resquared>` - Everaers RE-Squared ellipsoidal potential
|
||||
* :doc:`saip/metal <pair_saip_metal>` - interlayer potential for hetero-junctions formed with hexagonal 2D materials and metal surfaces
|
||||
* :doc:`sdpd/taitwater/isothermal <pair_sdpd_taitwater_isothermal>` - smoothed dissipative particle dynamics for water at isothermal conditions
|
||||
* :doc:`saip/metal <pair_saip_metal>` - Interlayer potential for hetero-junctions formed with hexagonal 2D materials and metal surfaces
|
||||
* :doc:`sdpd/taitwater/isothermal <pair_sdpd_taitwater_isothermal>` - Smoothed dissipative particle dynamics for water at isothermal conditions
|
||||
* :doc:`smatb <pair_smatb>` - Second Moment Approximation to the Tight Binding
|
||||
* :doc:`smatb/single <pair_smatb>` - Second Moment Approximation to the Tight Binding for single-element systems
|
||||
* :doc:`smd/hertz <pair_smd_hertz>` -
|
||||
|
||||
@ -63,11 +63,16 @@ Description
|
||||
|
||||
Read in a data file containing information LAMMPS needs to run a
|
||||
simulation. The file can be ASCII text or a gzipped text file
|
||||
(detected by a .gz suffix). This is one of 3 ways to specify initial
|
||||
atom coordinates; see the :doc:`read_restart <read_restart>` and
|
||||
:doc:`create_atoms <create_atoms>` commands for alternative methods.
|
||||
Also see the explanation of the :doc:`-restart command-line switch
|
||||
<Run_options>` which can convert a restart file to a data file.
|
||||
(detected by a .gz suffix).
|
||||
|
||||
This is one of 3 ways to specify the simulation box: see the
|
||||
:doc:`create_box <create_box>` and :doc:`read_restart <read_restart>`
|
||||
and commands for alternative methods. It is also one of 3 ways to
|
||||
specify initial atom coordinates: see the :doc:`create_atoms
|
||||
<create_atoms>` and :doc:`read_restart <read_restart>` and commands
|
||||
for alternative methods. Also see the explanation of the
|
||||
:doc:`-restart command-line switch <Run_options>` which can convert a
|
||||
restart file to a data file.
|
||||
|
||||
This command can be used multiple times to add new atoms and their
|
||||
properties to an existing system by using the *add*, *offset*, and
|
||||
@ -122,37 +127,55 @@ keyword must be used.
|
||||
|
||||
.. note::
|
||||
|
||||
The simulation box size (xlo to xhi, ylo to yhi, zlo to zhi) in
|
||||
the new data file will be merged with the existing simulation box to
|
||||
create a large enough box in each dimension to contain both the
|
||||
existing and new atoms. Each box dimension never shrinks due to this
|
||||
merge operation, it only stays the same or grows. Care must be used if
|
||||
you are growing the existing simulation box in a periodic dimension.
|
||||
If there are existing atoms with bonds that straddle that periodic
|
||||
boundary, then the atoms may become far apart if the box size grows.
|
||||
This will separate the atoms in the bond, which can lead to "lost"
|
||||
bond atoms or bad dynamics.
|
||||
If the first read_data command defined an orthogonal or restricted
|
||||
triclinic or general triclinic simulation box (see the sub-section
|
||||
below on header keywords), then subsequent data files must define
|
||||
the same kind of simulation box. For orthogonal boxes, the new box
|
||||
can be a different size; see the next Note. For a restricted
|
||||
triclinic box, the 3 new tilt factors ("xy xz yz" keyword) must
|
||||
have the same values as in the original data file. For a general
|
||||
triclinic box, the new avec, bvec, cvec, and "abc origin" keywords
|
||||
must have the same values in the original data file. files. Also
|
||||
the *shift* keyword cannot be used in subsequent read_data commands
|
||||
for a general triclinic box.
|
||||
|
||||
.. note::
|
||||
|
||||
For orthogonal boxes, the simulation box size in the new data file
|
||||
will be merged with the existing simulation box to create a large
|
||||
enough box in each dimension to contain both the existing and new
|
||||
atoms. Each box dimension never shrinks due to this merge
|
||||
operation, it only stays the same or grows. Care must be used if
|
||||
you are growing the existing simulation box in a periodic
|
||||
dimension. If there are existing atoms with bonds that straddle
|
||||
that periodic boundary, then the atoms may become far apart if the
|
||||
box size grows. This will separate the atoms in the bond, which
|
||||
can lead to "lost" bond atoms or bad dynamics.
|
||||
|
||||
The three choices for the *add* argument affect how the atom IDs and
|
||||
molecule IDs of atoms in the data file are treated. If *append* is
|
||||
specified, atoms in the data file are added to the current system,
|
||||
with their atom IDs reset so that an atom-ID = M in the data file
|
||||
becomes atom-ID = N+M, where N is the largest atom ID in the current
|
||||
system. This rule is applied to all occurrences of atom IDs in the
|
||||
data file, e.g. in the Velocity or Bonds section. This is also done
|
||||
for molecule IDs, if the atom style does support molecule IDs or
|
||||
they are enabled via fix property/atom. If *IDoffset* is specified,
|
||||
then *IDoffset* is a numeric value is given, e.g. 1000, so that an
|
||||
atom-ID = M in the data file becomes atom-ID = 1000+M. For systems
|
||||
with enabled molecule IDs, another numerical argument *MOLoffset*
|
||||
is required representing the equivalent offset for molecule IDs.
|
||||
If *merge* is specified, the data file atoms
|
||||
are added to the current system without changing their IDs. They are
|
||||
assumed to merge (without duplication) with the currently defined
|
||||
atoms. It is up to you to ensure there are no multiply defined atom
|
||||
IDs, as LAMMPS only performs an incomplete check that this is the case
|
||||
by ensuring the resulting max atom-ID >= the number of atoms. For
|
||||
molecule IDs, there is no check done at all.
|
||||
molecule IDs of atoms in the data file are treated.
|
||||
|
||||
If *append* is specified, atoms in the data file are added to the
|
||||
current system, with their atom IDs reset so that an atom-ID = M in
|
||||
the data file becomes atom-ID = N+M, where N is the largest atom ID in
|
||||
the current system. This rule is applied to all occurrences of atom
|
||||
IDs in the data file, e.g. in the Velocity or Bonds section. This is
|
||||
also done for molecule IDs, if the atom style does support molecule
|
||||
IDs or they are enabled via fix property/atom.
|
||||
|
||||
If *IDoffset* is specified, then *IDoffset* is a numeric value is
|
||||
given, e.g. 1000, so that an atom-ID = M in the data file becomes
|
||||
atom-ID = 1000+M. For systems with enabled molecule IDs, another
|
||||
numerical argument *MOLoffset* is required representing the equivalent
|
||||
offset for molecule IDs.
|
||||
|
||||
If *merge* is specified, the data file atoms are added to the current
|
||||
system without changing their IDs. They are assumed to merge (without
|
||||
duplication) with the currently defined atoms. It is up to you to
|
||||
ensure there are no multiply defined atom IDs, as LAMMPS only performs
|
||||
an incomplete check that this is the case by ensuring the resulting
|
||||
max atom-ID >= the number of atoms. For molecule IDs, there is no
|
||||
check done at all.
|
||||
|
||||
The *offset* and *shift* keywords can only be used if the *add*
|
||||
keyword is also specified.
|
||||
@ -288,13 +311,16 @@ Format of the header of a data file
|
||||
"""""""""""""""""""""""""""""""""""
|
||||
|
||||
These are the recognized header keywords. Header lines can come in
|
||||
any order. The value(s) are read from the beginning of the line.
|
||||
any order. Each keyword takes a single value unless noted in this
|
||||
list. The value(s) are read from the beginning of the line.
|
||||
Thus the keyword *atoms* should be in a line like "1000 atoms"; the
|
||||
keyword *ylo yhi* should be in a line like "-10.0 10.0 ylo yhi"; the
|
||||
keyword *xy xz yz* should be in a line like "0.0 5.0 6.0 xy xz yz".
|
||||
All these settings have a default value of 0, except the lo/hi box
|
||||
size defaults are -0.5 and 0.5. A line need only appear if the value
|
||||
is different than the default.
|
||||
|
||||
All these settings have a default value of 0, except for the
|
||||
simulation box size settings; their defaults are explained below. A
|
||||
keyword line need only appear if its value is different than the
|
||||
default.
|
||||
|
||||
* *atoms* = # of atoms in system
|
||||
* *bonds* = # of bonds in system
|
||||
@ -315,81 +341,178 @@ is different than the default.
|
||||
* *lines* = # of line segments in system
|
||||
* *triangles* = # of triangles in system
|
||||
* *bodies* = # of bodies in system
|
||||
* *xlo xhi* = simulation box boundaries in x dimension
|
||||
* *ylo yhi* = simulation box boundaries in y dimension
|
||||
* *zlo zhi* = simulation box boundaries in z dimension
|
||||
* *xy xz yz* = simulation box tilt factors for triclinic system
|
||||
* *xlo xhi* = simulation box boundaries in x dimension (2 values)
|
||||
* *ylo yhi* = simulation box boundaries in y dimension (2 values)
|
||||
* *zlo zhi* = simulation box boundaries in z dimension (2 values)
|
||||
* *xy xz yz* = simulation box tilt factors for triclinic system (3 values)
|
||||
* *avec* = first edge vector of a general triclinic simulation box (3 values)
|
||||
* *bvec* = second edge vector of a general triclinic simulation box (3 values)
|
||||
* *cvec* = third edge vector of a general triclinic simulation box (3 values)
|
||||
* *abc origin* = origin of a general triclinic simulation box (3 values)
|
||||
|
||||
The initial simulation box size is determined by the lo/hi settings.
|
||||
In any dimension, the system may be periodic or non-periodic; see the
|
||||
:doc:`boundary <boundary>` command. When the simulation box is created
|
||||
it is also partitioned into a regular 3d grid of rectangular bricks,
|
||||
one per processor, based on the number of processors being used and
|
||||
the settings of the :doc:`processors <processors>` command. The
|
||||
partitioning can later be changed by the :doc:`balance <balance>` or
|
||||
:doc:`fix balance <fix_balance>` commands.
|
||||
----------
|
||||
|
||||
If the *xy xz yz* line does not appear, LAMMPS will set up an
|
||||
axis-aligned (orthogonal) simulation box. If the line does appear,
|
||||
LAMMPS creates a non-orthogonal simulation domain shaped as a
|
||||
parallelepiped with triclinic symmetry. The parallelepiped has its
|
||||
"origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
|
||||
from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
|
||||
(xz,yz,zhi-zlo). *Xy,xz,yz* can be 0.0 or positive or negative values
|
||||
and are called "tilt factors" because they are the amount of
|
||||
displacement applied to faces of an originally orthogonal box to
|
||||
transform it into the parallelepiped.
|
||||
Header specification of the simulation box size and shape
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The tilt factors (xy,xz,yz) should not skew the box more than half the
|
||||
distance of the corresponding parallel box length. For example, if
|
||||
:math:`x_\text{lo} = 2` and :math:`x_\text{hi} = 12`, then the :math:`x`
|
||||
box length is 10 and the :math:`xy` tilt factor must be between
|
||||
:math:`-5` and :math:`5`. Similarly, both :math:`xz` and :math:`yz`
|
||||
must be between :math:`-(x_\text{hi}-x_\text{lo})/2` and
|
||||
:math:`+(y_\text{hi}-y_\text{lo})/2`. Note that this is not a
|
||||
limitation, since if the maximum tilt factor is 5 (as in this example),
|
||||
then configurations with tilt :math:`= \dots, -15`, :math:`-5`,
|
||||
:math:`5`, :math:`15`, :math:`25, \dots` are all geometrically
|
||||
equivalent. Simulations with large tilt factors will run inefficiently,
|
||||
since they require more ghost atoms and thus more communication. With
|
||||
very large tilt factors, LAMMPS will eventually produce incorrect
|
||||
trajectories and stop with errors due to lost atoms or similar.
|
||||
The last 8 keywords in the list of header keywords are for simulation
|
||||
boxes of 3 kinds which LAMMPS supports:
|
||||
|
||||
See the :doc:`Howto triclinic <Howto_triclinic>` page for a
|
||||
geometric description of triclinic boxes, as defined by LAMMPS, and
|
||||
how to transform these parameters to and from other commonly used
|
||||
triclinic representations.
|
||||
* orthogonal box = faces are perpendicular to the xyz coordinate axes
|
||||
* restricted triclinic box = a parallelepiped defined by 3 edge vectors oriented in a constrained manner
|
||||
* general triclinic box = a parallelepiped defined by 3 arbitrary edge vectors
|
||||
|
||||
When a triclinic system is used, the simulation domain should normally
|
||||
be periodic in the dimension that the tilt is applied to, which is
|
||||
given by the second dimension of the tilt factor (e.g. y for xy tilt).
|
||||
This is so that pairs of atoms interacting across that boundary will
|
||||
have one of them shifted by the tilt factor. Periodicity is set by
|
||||
the :doc:`boundary <boundary>` command. For example, if the xy tilt
|
||||
factor is non-zero, then the y dimension should be periodic.
|
||||
Similarly, the z dimension should be periodic if xz or yz is non-zero.
|
||||
LAMMPS does not require this periodicity, but you may lose atoms if
|
||||
this is not the case.
|
||||
For restricted and general triclinic boxes, see the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page for a fuller
|
||||
description than is given here.
|
||||
|
||||
Also note that if your simulation will tilt the box, e.g. via the
|
||||
:doc:`fix deform <fix_deform>` command, the simulation box must be setup
|
||||
to be triclinic, even if the tilt factors are initially 0.0. You can
|
||||
also change an orthogonal box to a triclinic box or vice versa by using
|
||||
the :doc:`change box <change_box>` command with its *ortho* and
|
||||
*triclinic* options.
|
||||
The units of the values for all 8 keywords in in distance units; see
|
||||
the :doc:`units <units>` command for details.
|
||||
|
||||
For 2d simulations, the *zlo zhi* values should be set to bound the z
|
||||
coords for atoms that appear in the file; the default of -0.5 0.5 is
|
||||
valid if all z coords are 0.0. For 2d triclinic simulations, the xz
|
||||
and yz tilt factors must be 0.0.
|
||||
For all 3 kinds of simulation boxes, the system may be periodic or
|
||||
non-periodic in any dimension; see the :doc:`boundary <boundary>`
|
||||
command for details.
|
||||
|
||||
When the simulation box is created by the read_data command, it is
|
||||
also partitioned into a regular 3d grid of subdomains, one per
|
||||
processor, based on the number of processors being used and the
|
||||
settings of the :doc:`processors <processors>` command. For each kind
|
||||
of simulation box the subdomains have the same shape as the simulation
|
||||
box, i.e. smaller orthogonal bricks for orthogonal boxes, smaller
|
||||
parallelepipeds for triclinic boxes. The partitioning can later be
|
||||
changed by the :doc:`balance <balance>` or :doc:`fix balance
|
||||
<fix_balance>` commands.
|
||||
|
||||
For an orthogonal box, only the *xlo xhi*, *ylo yhi*, *zlo zhi*
|
||||
keywords are used. They define the extent of the simulation box in
|
||||
each dimension so that the resulting edge vectors of an orthogonal box
|
||||
are:
|
||||
|
||||
* **A** = (xhi-xlo,0,0)
|
||||
* **B** = (0,yhi-ylo,0)
|
||||
* **C** = (0,0,zhi-zlo)
|
||||
|
||||
The origin (lower left corner) of the orthogonal box is at
|
||||
(xlo,ylo,zlo). The default values for these 3 keywords are -0.5 and
|
||||
0.5 for each lo/hi pair. For a 2d simulation, the zlo and zhi values
|
||||
must straddle zero. The default zlo/zhi values do this, so that
|
||||
keyword is not needed in 2d.
|
||||
|
||||
For a restricted triclinic box, the *xy xz yz* keyword is used in
|
||||
addition to the *xlo xhi*, *ylo yhi*, *zlo zhi* keywords. The three
|
||||
*xy,xz,yz* values can be 0.0 or positive or negative, and are called
|
||||
"tilt factors" because they are the amount of displacement applied to
|
||||
edges of faces of an orthogonal box to transform it into a restricted
|
||||
triclinic parallelepiped.
|
||||
|
||||
The :doc:`Howto_triclinic <Howto_triclinic>` doc page discusses the
|
||||
tilt factors in detail and explains that the resulting edge vectors of
|
||||
a restricted triclinic box are:
|
||||
|
||||
* **A** = (xhi-xlo,0,0)
|
||||
* **B** = (xy,yhi-ylo,0)
|
||||
* **C** = (xz,yz,zhi-zlo)
|
||||
|
||||
This restricted form of edge vectors requires that **A** be in the
|
||||
direction of the x-axis, **B** be in the xy plane with its y-component
|
||||
in the +y direction, and **C** have its z-component in the +z
|
||||
direction. The origin (lower left corner) of the restricted triclinic
|
||||
box is at (xlo,ylo,zlo).
|
||||
|
||||
For a 2d simulation, the zlo and zhi values must straddle zero. The
|
||||
default zlo/zhi values do this, so that keyword is not needed in 2d.
|
||||
The xz and yz values must also be zero in 2d. The shape of the 2d
|
||||
restricted triclinic simulation box is effectively a parallelogram.
|
||||
|
||||
.. note::
|
||||
|
||||
When a restricted triclinic box is used, the simulation domain
|
||||
should normally be periodic in any dimensions that tilt is applied
|
||||
to, which is given by the second dimension of the tilt factor
|
||||
(e.g. y for xy tilt). This is so that pairs of atoms interacting
|
||||
across that boundary will have one of them shifted by the tilt
|
||||
factor. Periodicity is set by the :doc:`boundary <boundary>`
|
||||
command which also describes the shifting by the tilt factor. For
|
||||
example, if the xy tilt factor is non-zero, then the y dimension
|
||||
should be periodic. Similarly, the z dimension should be periodic
|
||||
if xz or yz is non-zero. LAMMPS does not require this periodicity,
|
||||
but you may lose atoms if this is not the case.
|
||||
|
||||
.. note::
|
||||
|
||||
Normally, the specified tilt factors (xy,xz,yz) should not skew the
|
||||
simulation box by more than half the distance of the corresponding
|
||||
parallel box length for computational efficiency. For example, if
|
||||
:math:`x_\text{lo} = 2` and :math:`x_\text{hi} = 12`, then the
|
||||
:math:`x` box length is 10 and the :math:`xy` tilt factor should be
|
||||
between :math:`-5` and :math:`5`. LAMMPS will issue a warning if
|
||||
this is not the case. See the last sub-section of the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page for more details.
|
||||
|
||||
.. note::
|
||||
|
||||
If a simulation box is initially orthogonal, but will tilt during a
|
||||
simulation, e.g. via the :doc:`fix deform <fix_deform>` command,
|
||||
then the box should be defined as restricted triclinic with all 3
|
||||
tilt factors = 0.0. Alternatively, the :doc:`change box
|
||||
<change_box>` command can be used to convert an orthogonal box to a
|
||||
restricted triclinic box.
|
||||
|
||||
For a general triclinic box, the *avec*, *bvec*, *cvec*, and *abc
|
||||
origin* keywords are used. The *xlo xhi*, *ylo yhi*, *zlo zhi*, and
|
||||
*xy xz yz* keywords are NOT used. The first 3 keywords define the 3
|
||||
edge vectors **A**, **B**, **C** of the general triclinic box. They
|
||||
can be arbitrary vectors so long as they are distinct, non-zero, and
|
||||
not co-planar. They must also define a right-handed system such that
|
||||
(**A** x **B**) points in the direction of **C**. Note that a
|
||||
left-handed system can be converted to a right-handed system by simply
|
||||
swapping the order of any pair of the **A**, **B**, **C** vectors.
|
||||
The origin of the box (origin of the 3 edge vectors) is set by the
|
||||
*abc origin* keyword.
|
||||
|
||||
The default values for these 4 keywords are as follows:
|
||||
|
||||
* avec = (1,0,0)
|
||||
* bvec = (0,1,0)
|
||||
* cvec = (0,0,1)
|
||||
* abc origin = (0,0,0) for 3d, (0,0,-0.5) for 2d
|
||||
|
||||
For 2d simulations, *cvec* = (0,0,1) is required, and the 3rd value of
|
||||
*abc origin* must be -0.5. These are the default values, so the
|
||||
*cvec* keyword is not needed in 2d.
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS allows specification of general triclinic simulation boxes
|
||||
as a convenience for users who may be converting data from
|
||||
solid-state crystallographic representations or from DFT codes for
|
||||
input to LAMMPS. However, as explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, internally,
|
||||
LAMMPS only uses restricted triclinic simulation boxes. This means
|
||||
the box and per-atom information (e.g. coordinates, velocities) in
|
||||
the data file are converted (rotated) from general to restricted
|
||||
triclinic form when the file is read. Other sections of the data
|
||||
file must also list their per-atom data appropriately if vector
|
||||
quantities are specified. This requirement is explained below for
|
||||
the relevant sections. The :doc:`Howto_triclinic
|
||||
<Howto_triclinic>` doc page also discusses other LAMMPS commands
|
||||
which can input/output general triclinic representations of the
|
||||
simulation box and per-atom data.
|
||||
|
||||
The following explanations apply to all 3 kinds of simulation boxes:
|
||||
orthogonal, restricted triclinic, and general triclinic.
|
||||
|
||||
If the system is periodic (in a dimension), then atom coordinates can
|
||||
be outside the bounds (in that dimension); they will be remapped (in a
|
||||
periodic sense) back inside the box. Note that if the *add* option is
|
||||
being used to add atoms to a simulation box that already exists, this
|
||||
periodic remapping will be performed using simulation box bounds that
|
||||
are the union of the existing box and the box boundaries in the new
|
||||
data file.
|
||||
periodic sense) back inside the box. For triclinic boxes, periodicity
|
||||
in x,y,z refers to the faces of the parallelepiped defined by the
|
||||
**A**,**B**,**C** edge vectors of the simulation box. See the
|
||||
:doc:`boundary <boundary>` command doc page for a fuller discussion.
|
||||
|
||||
Note that if the *add* option is being used to add atoms to a
|
||||
simulation box that already exists, this periodic remapping will be
|
||||
performed using simulation box bounds that are the union of the
|
||||
existing box and the box boundaries in the new data file.
|
||||
|
||||
If the system is non-periodic (in a dimension), then an image flag for
|
||||
that direction has no meaning, since there cannot be periodic images
|
||||
@ -406,7 +529,6 @@ individually back into the principal unit cell in that direction. This
|
||||
operation is equivalent to the behavior of the :doc:`change_box command
|
||||
<change_box>` when used to change periodicity.
|
||||
|
||||
|
||||
If those atoms with non-zero image flags are involved in bonded
|
||||
interactions, this reset can lead to undesired changes, when the image
|
||||
flag values differ between the atoms, i.e. the bonded interaction
|
||||
@ -421,73 +543,81 @@ needed, so that the image flag would be zero.
|
||||
|
||||
.. note::
|
||||
|
||||
If the system is non-periodic (in a dimension), then all atoms in the
|
||||
data file must have coordinates (in that dimension) that are "greater
|
||||
than or equal to" the lo value and "less than or equal to" the hi
|
||||
value. If the non-periodic dimension is of style "fixed" (see the
|
||||
:doc:`boundary <boundary>` command), then the atom coords must be
|
||||
strictly "less than" the hi value, due to the way LAMMPS assign atoms
|
||||
to processors. Note that you should not make the lo/hi values
|
||||
radically smaller/larger than the extent of the atoms. For example,
|
||||
if your atoms extend from 0 to 50, you should not specify the box
|
||||
bounds as -10000 and 10000 unless you also use the :doc:`processors
|
||||
command <processors>`. This is because LAMMPS uses the specified box
|
||||
size to layout the 3d grid of processors. A huge (mostly empty) box
|
||||
will be sub-optimal for performance when using "fixed" boundary
|
||||
conditions (see the :doc:`boundary <boundary>` command). When using
|
||||
"shrink-wrap" boundary conditions (see the :doc:`boundary <boundary>`
|
||||
command), a huge (mostly empty) box may cause a parallel simulation
|
||||
to lose atoms when LAMMPS shrink-wraps the box around the atoms. The
|
||||
read_data command will generate an error in this case.
|
||||
If the system is non-periodic (in a dimension), then all atoms in
|
||||
the data file must have coordinates (in that dimension) that are
|
||||
"greater than or equal to" the lo value and "less than or equal to"
|
||||
the hi value. If the non-periodic dimension is of style "fixed"
|
||||
(see the :doc:`boundary <boundary>` command), then the atom coords
|
||||
must be strictly "less than" the hi value, due to the way LAMMPS
|
||||
assign atoms to processors. Note that you should not make the
|
||||
lo/hi values radically smaller/larger than the extent of the atoms.
|
||||
For example, if atoms extend from 0 to 50, you should not specify
|
||||
the box bounds as -10000 and 10000 unless you also use the
|
||||
:doc:`processors command <processors>`. This is because LAMMPS
|
||||
uses the specified box size to layout the 3d grid of processors. A
|
||||
huge (mostly empty) box will be sub-optimal for performance when
|
||||
using "fixed" boundary conditions (see the :doc:`boundary
|
||||
<boundary>` command). When using "shrink-wrap" boundary conditions
|
||||
(see the :doc:`boundary <boundary>` command), a huge (mostly empty)
|
||||
box may cause a parallel simulation to lose atoms when LAMMPS
|
||||
shrink-wraps the box around the atoms. The read_data command will
|
||||
generate an error in this case.
|
||||
|
||||
----------
|
||||
|
||||
Meaning of other header keywords
|
||||
""""""""""""""""""""""""""""""""
|
||||
|
||||
The "extra bond per atom" setting (angle, dihedral, improper) is only
|
||||
needed if new bonds (angles, dihedrals, impropers) will be added to
|
||||
the system when a simulation runs, e.g. by using the :doc:`fix bond/create <fix_bond_create>` command. Using this header flag
|
||||
is deprecated; please use the *extra/bond/per/atom* keyword (and
|
||||
the system when a simulation runs, e.g. by using the :doc:`fix
|
||||
bond/create <fix_bond_create>` command. Using this header flag is
|
||||
deprecated; please use the *extra/bond/per/atom* keyword (and
|
||||
correspondingly for angles, dihedrals and impropers) in the read_data
|
||||
command instead. Either will pre-allocate space in LAMMPS data
|
||||
structures for storing the new bonds (angles, dihedrals, impropers).
|
||||
|
||||
The "extra special per atom" setting is typically only needed if new
|
||||
bonds/angles/etc will be added to the system, e.g. by using the :doc:`fix bond/create <fix_bond_create>` command. Or if entire new molecules
|
||||
will be added to the system, e.g. by using the
|
||||
:doc:`fix deposit <fix_deposit>` or :doc:`fix pour <fix_pour>` commands,
|
||||
which will have more special 1-2,1-3,1-4 neighbors than any other
|
||||
molecules defined in the data file. Using this header flag is
|
||||
deprecated; please use the *extra/special/per/atom* keyword instead.
|
||||
Using this setting will pre-allocate space in the LAMMPS data
|
||||
structures for storing these neighbors. See the
|
||||
:doc:`special_bonds <special_bonds>` and :doc:`molecule <molecule>` doc
|
||||
pages for more discussion of 1-2,1-3,1-4 neighbors.
|
||||
bonds/angles/etc will be added to the system, e.g. by using the
|
||||
:doc:`fix bond/create <fix_bond_create>` command. Or if entire new
|
||||
molecules will be added to the system, e.g. by using the :doc:`fix
|
||||
deposit <fix_deposit>` or :doc:`fix pour <fix_pour>` commands, which
|
||||
will have more special 1-2,1-3,1-4 neighbors than any other molecules
|
||||
defined in the data file. Using this header flag is deprecated;
|
||||
please use the *extra/special/per/atom* keyword instead. Using this
|
||||
setting will pre-allocate space in the LAMMPS data structures for
|
||||
storing these neighbors. See the :doc:`special_bonds <special_bonds>`
|
||||
and :doc:`molecule <molecule>` doc pages for more discussion of
|
||||
1-2,1-3,1-4 neighbors.
|
||||
|
||||
.. note::
|
||||
|
||||
All of the "extra" settings are only applied in the first data
|
||||
file read and when no simulation box has yet been created; as soon as
|
||||
All of the "extra" settings are only applied in the first data file
|
||||
read and when no simulation box has yet been created; as soon as
|
||||
the simulation box is created (and read_data implies that), these
|
||||
settings are *locked* and cannot be changed anymore. Please see the
|
||||
description of the *add* keyword above for reading multiple data files.
|
||||
If they appear in later data files, they are ignored.
|
||||
description of the *add* keyword above for reading multiple data
|
||||
files. If they appear in later data files, they are ignored.
|
||||
|
||||
The "ellipsoids" and "lines" and "triangles" and "bodies" settings are
|
||||
only used with :doc:`atom_style ellipsoid or line or tri or body <atom_style>` and specify how many of the atoms are
|
||||
finite-size ellipsoids or lines or triangles or bodies; the remainder
|
||||
are point particles. See the discussion of ellipsoidflag and the
|
||||
*Ellipsoids* section below. See the discussion of lineflag and the
|
||||
*Lines* section below. See the discussion of triangleflag and the
|
||||
*Triangles* section below. See the discussion of bodyflag and the
|
||||
*Bodies* section below.
|
||||
only used with :doc:`atom_style ellipsoid or line or tri or body
|
||||
<atom_style>` and specify how many of the atoms are finite-size
|
||||
ellipsoids or lines or triangles or bodies; the remainder are point
|
||||
particles. See the discussion of ellipsoidflag and the *Ellipsoids*
|
||||
section below. See the discussion of lineflag and the *Lines* section
|
||||
below. See the discussion of triangleflag and the *Triangles* section
|
||||
below. See the discussion of bodyflag and the *Bodies* section below.
|
||||
|
||||
.. note::
|
||||
|
||||
For :doc:`atom_style template <atom_style>`, the molecular
|
||||
topology (bonds,angles,etc) is contained in the molecule templates
|
||||
read-in by the :doc:`molecule <molecule>` command. This means you
|
||||
cannot set the *bonds*, *angles*, etc header keywords in the data
|
||||
file, nor can you define *Bonds*, *Angles*, etc sections as discussed
|
||||
For :doc:`atom_style template <atom_style>`, the molecular topology
|
||||
(bonds,angles,etc) is contained in the molecule templates read-in
|
||||
by the :doc:`molecule <molecule>` command. This means you cannot
|
||||
set the *bonds*, *angles*, etc header keywords in the data file,
|
||||
nor can you define *Bonds*, *Angles*, etc sections as discussed
|
||||
below. You can set the *bond types*, *angle types*, etc header
|
||||
keywords, though it is not necessary. If specified, they must match
|
||||
the maximum values defined in any of the template molecules.
|
||||
keywords, though it is not necessary. If specified, they must
|
||||
match the maximum values defined in any of the template molecules.
|
||||
|
||||
----------
|
||||
|
||||
@ -680,6 +810,19 @@ appended to it, which indicate which image of a periodic simulation
|
||||
box the atom is in. These may be important to include for some kinds
|
||||
of analysis.
|
||||
|
||||
.. note::
|
||||
|
||||
For orthogonal and restricted and general triclinic simulation
|
||||
boxes, the atom coordinates (x,y,z) listed in this section should
|
||||
be inside the corresponding simulation box. For restricted
|
||||
triclinic boxes that means the parallelepiped defined by the *xlo
|
||||
xhi*, *ylo yhi*, *zlo zhi*, and *xy xz yz*, keywords. For general
|
||||
triclinic boxes that means the parallelepiped defined by the 3 edge
|
||||
vectors and origin specified by the *avec*, *bvec*, *cvec*, and
|
||||
*abc origin* header keywords. See the discussion in the header
|
||||
section above about how atom coordinates outside the simulation box
|
||||
are (or are not) remapped to be inside the box.
|
||||
|
||||
.. list-table::
|
||||
|
||||
* - angle
|
||||
@ -690,10 +833,12 @@ of analysis.
|
||||
- atom-ID atom-type bodyflag mass x y z
|
||||
* - bond
|
||||
- atom-ID molecule-ID atom-type x y z
|
||||
* - bpm/sphere
|
||||
- atom-ID molecule-ID atom-type diameter density x y z
|
||||
* - charge
|
||||
- atom-ID atom-type q x y z
|
||||
* - dielectric
|
||||
- atom-ID atom-type q x y z normx normy normz area ed em epsilon curvature
|
||||
- atom-ID atom-type q x y z mux muy muz area ed em epsilon curvature
|
||||
* - dipole
|
||||
- atom-ID atom-type q x y z mux muy muz
|
||||
* - dpd
|
||||
@ -720,8 +865,6 @@ of analysis.
|
||||
- atom-ID atom-type rho esph cv x y z
|
||||
* - sphere
|
||||
- atom-ID atom-type diameter density x y z
|
||||
* - bpm/sphere
|
||||
- atom-ID molecule-ID atom-type diameter density x y z
|
||||
* - spin
|
||||
- atom-ID atom-type x y z spx spy spz sp
|
||||
* - tdpd
|
||||
@ -757,24 +900,42 @@ The per-atom values have these meanings and units, listed alphabetically:
|
||||
* lineflag = 1 for line segment particles, 0 for point or spherical particles
|
||||
* mass = mass of particle (mass units)
|
||||
* molecule-ID = integer ID of molecule the atom belongs to
|
||||
* mux,muy,muz = components of dipole moment of atom (dipole units)
|
||||
* mux,muy,muz = components of dipole moment of atom (dipole units) (see general triclinic note below)
|
||||
* q = charge on atom (charge units)
|
||||
* rho = density (need units) for SPH particles
|
||||
* sp = magnitude of magnetic spin of atom (Bohr magnetons)
|
||||
* spx,spy,spz = components of magnetic spin of atom (unit vector)
|
||||
* spx,spy,spz = components of magnetic spin of atom (unit vector) (see general triclinic note below)
|
||||
* template-atom = which atom within a template molecule the atom is
|
||||
* template-index = which molecule within the molecule template the atom is part of
|
||||
* theta = internal temperature of a DPD particle
|
||||
* triangleflag = 1 for triangular particles, 0 for point or spherical particles
|
||||
* volume = volume of Peridynamic particle (distance\^3 units)
|
||||
* x,y,z = coordinates of atom (distance units)
|
||||
* x0,y0,z0 = original (strain-free) coordinates of atom (distance units)
|
||||
* x0,y0,z0 = original (strain-free) coordinates of atom (distance
|
||||
units) (see general triclinic note below)
|
||||
|
||||
The units for these quantities depend on the unit style; see the
|
||||
:doc:`units <units>` command for details.
|
||||
|
||||
For 2d simulations specify z as 0.0, or a value within the *zlo zhi*
|
||||
setting in the data file header.
|
||||
For 2d simulations, the atom coordinate z must be specified as 0.0.
|
||||
If the data file is created by another program, then z values for a 2d
|
||||
simulation can be within epsilon of 0.0, and LAMMPS will force them to
|
||||
zero.
|
||||
|
||||
.. note::
|
||||
|
||||
If the data file defines a general triclinic box, then the
|
||||
following per-atom values in the list above are per-atom vectors
|
||||
which imply an orientation: (mux,muy,muz) and (spx,spy,spz). This
|
||||
means they should be specified consistent with the general
|
||||
triclinic box and its orientation relative to the standard x,y,z
|
||||
coordinate axes. For example a dipole moment vector which will be
|
||||
in the +x direction once LAMMPS converts from a general to
|
||||
restricted triclinic box, should be specified in the data file in
|
||||
the direction of the **A** edge vector. Likewise the (x0,y0,z0)
|
||||
per-atom strain-free coordinates should be inside the general
|
||||
triclinic simulation box as explained in the note above. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` doc page for more details.
|
||||
|
||||
The atom-ID is used to identify the atom throughout the simulation and
|
||||
in dump files. Normally, it is a unique value from 1 to Natoms for
|
||||
@ -922,9 +1083,8 @@ that use unwrapped coordinates internally are as follows:
|
||||
|
||||
Atom velocities and other atom quantities not defined above are set to
|
||||
0.0 when the *Atoms* section is read. Velocities can be set later by
|
||||
a *Velocities* section in the data file or by a
|
||||
:doc:`velocity <velocity>` or :doc:`set <set>` command in the input
|
||||
script.
|
||||
a *Velocities* section in the data file or by a :doc:`velocity
|
||||
<velocity>` or :doc:`set <set>` command in the input script.
|
||||
|
||||
----------
|
||||
|
||||
@ -963,8 +1123,9 @@ the "bodies" keyword.
|
||||
|
||||
Each body can have a variable number of integer and/or floating-point
|
||||
values. The number and meaning of the values is defined by the body
|
||||
style, as described in the :doc:`Howto body <Howto_body>` doc page. The
|
||||
body style is given as an argument to the :doc:`atom_style body <atom_style>` command.
|
||||
style, as described in the :doc:`Howto body <Howto_body>` doc page.
|
||||
The body style is given as an argument to the :doc:`atom_style body
|
||||
<atom_style>` command.
|
||||
|
||||
The Ninteger and Ndouble values determine how many integer and
|
||||
floating-point values are specified for this particle. Ninteger and
|
||||
@ -1179,10 +1340,10 @@ and a general discussion of how type labels can be used.
|
||||
|
||||
12 1 2 1 1 0 0 0
|
||||
|
||||
The *Ellipsoids* section must appear if :doc:`atom_style ellipsoid <atom_style>` is used and any atoms are listed in the
|
||||
*Atoms* section with an ellipsoidflag = 1. The number of ellipsoids
|
||||
should be specified in the header section via the "ellipsoids"
|
||||
keyword.
|
||||
The *Ellipsoids* section must appear if :doc:`atom_style ellipsoid
|
||||
<atom_style>` is used and any atoms are listed in the *Atoms* section
|
||||
with an ellipsoidflag = 1. The number of ellipsoids should be
|
||||
specified in the header section via the "ellipsoids" keyword.
|
||||
|
||||
The 3 shape values specify the 3 diameters or aspect ratios of a
|
||||
finite-size ellipsoidal particle, when it is oriented along the 3
|
||||
@ -1200,6 +1361,12 @@ the quaternion that represents its new orientation is given by
|
||||
LAMMPS normalizes each atom's quaternion in case (a,b,c) is not
|
||||
specified as a unit vector.
|
||||
|
||||
If the data file defines a general triclinic box, then the quaternion
|
||||
for each ellipsoid should be specified for its orientation relative to
|
||||
the standard x,y,z coordinate axes. When the system is converted to a
|
||||
restricted triclinic box, the ellipsoid quaternions will be altered to
|
||||
reflect the new orientation of the ellipsoid.
|
||||
|
||||
The *Ellipsoids* section must appear after the *Atoms* section.
|
||||
|
||||
----------
|
||||
@ -1316,13 +1483,24 @@ is used and any atoms are listed in the *Atoms* section with a
|
||||
lineflag = 1. The number of lines should be specified in the header
|
||||
section via the "lines" keyword.
|
||||
|
||||
The 2 end points are the end points of the line segment. The ordering
|
||||
of the 2 points should be such that using a right-hand rule to cross
|
||||
the line segment with a unit vector in the +z direction, gives an
|
||||
"outward" normal vector perpendicular to the line segment.
|
||||
The 2 end points are the end points of the line segment. They should
|
||||
be values close to the center point of the line segment specified in
|
||||
the Atoms section of the data file, even if individual end points are
|
||||
outside the simulation box.
|
||||
|
||||
The ordering of the 2 points should be such that using a right-hand
|
||||
rule to cross the line segment with a unit vector in the +z direction,
|
||||
gives an "outward" normal vector perpendicular to the line segment.
|
||||
I.e. normal = (c2-c1) x (0,0,1). This orientation may be important
|
||||
for defining some interactions.
|
||||
|
||||
If the data file defines a general triclinic box, then the x1,y1 and
|
||||
x2,y2 values for each line segment should be specified for its
|
||||
orientation relative to the standard x,y,z coordinate axes. When the
|
||||
system is converted to a restricted triclinic box, the x1,y1,x2,y2
|
||||
values will be altered to reflect the new orientation of the line
|
||||
segment.
|
||||
|
||||
The *Lines* section must appear after the *Atoms* section.
|
||||
|
||||
----------
|
||||
@ -1444,15 +1622,27 @@ via the :doc:`pair_coeff <pair_coeff>` command in the input script.
|
||||
|
||||
12 0.0 0.0 0.0 2.0 0.0 1.0 0.0 2.0 1.0
|
||||
|
||||
The *Triangles* section must appear if :doc:`atom_style tri <atom_style>` is used and any atoms are listed in the *Atoms*
|
||||
section with a triangleflag = 1. The number of lines should be
|
||||
specified in the header section via the "triangles" keyword.
|
||||
The *Triangles* section must appear if :doc:`atom_style tri
|
||||
<atom_style>` is used and any atoms are listed in the *Atoms* section
|
||||
with a triangleflag = 1. The number of lines should be specified in
|
||||
the header section via the "triangles" keyword.
|
||||
|
||||
The 3 corner points are the corner points of the triangle. The
|
||||
ordering of the 3 points should be such that using a right-hand rule
|
||||
to go from point1 to point2 to point3 gives an "outward" normal vector
|
||||
to the face of the triangle. I.e. normal = (c2-c1) x (c3-c1). This
|
||||
orientation may be important for defining some interactions.
|
||||
The 3 corner points are the corner points of the triangle. They
|
||||
should be values close to the center point of the triangle specified
|
||||
in the Atoms section of the data file, even if individual corner
|
||||
points are outside the simulation box.
|
||||
|
||||
The ordering of the 3 points should be such that using a right-hand
|
||||
rule to go from point1 to point2 to point3 gives an "outward" normal
|
||||
vector to the face of the triangle. I.e. normal = (c2-c1) x (c3-c1).
|
||||
This orientation may be important for defining some interactions.
|
||||
|
||||
If the data file defines a general triclinic box, then the x1,y1,z1
|
||||
and x2,y2,z2 and x3,y3,z3 values for each triangle should be specified
|
||||
for its orientation relative to the standard x,y,z coordinate axes.
|
||||
When the system is converted to a restricted triclinic box, the
|
||||
x1,y1,z1,x2,y2,z2,x3,y3,z3 values will be altered to reflect the new
|
||||
orientation of the triangle.
|
||||
|
||||
The *Triangles* section must appear after the *Atoms* section.
|
||||
|
||||
@ -1493,6 +1683,12 @@ Vx, vy, vz, and ervel are in :doc:`units <units>` of velocity. Lx, ly,
|
||||
lz are in units of angular momentum (distance-velocity-mass). Wx, Wy,
|
||||
Wz are in units of angular velocity (radians/time).
|
||||
|
||||
If the data file defines a general triclinic box, then each of the 3
|
||||
vectors (translational velocity, angular momentum, angular velocity)
|
||||
should be specified for the rotated coordinate axes of the general
|
||||
triclinic box. See the :doc:`Howto triclinic <Howto_triclinic>` doc
|
||||
page for more details.
|
||||
|
||||
For atom_style hybrid, following the 4 initial values (ID,vx,vy,vz),
|
||||
specific values for each sub-style must be listed. The order of the
|
||||
sub-styles is the same as they were listed in the
|
||||
@ -1513,8 +1709,8 @@ fields:
|
||||
|
||||
atom-ID vx vy vz ervel wx wy wz
|
||||
|
||||
Translational velocities can also be set by the
|
||||
:doc:`velocity <velocity>` command in the input script.
|
||||
Translational velocities can also be (re)set by the :doc:`velocity
|
||||
<velocity>` command in the input script.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -8,56 +8,118 @@ Syntax
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
replicate nx ny nz *keyword*
|
||||
replicate nx ny nz keyword ...
|
||||
|
||||
nx,ny,nz = replication factors in each dimension
|
||||
|
||||
* optional *keyword* = *bbox*
|
||||
* zero or more keywords may be appended
|
||||
* keyword = *bbox* or *bond/periodic*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*bbox* = only check atoms in replicas that overlap with a processor's subdomain
|
||||
*bbox* = use a bounding-box algorithm which is faster for large proc counts
|
||||
*bond/periodic* = use an algorithm that correctly replicates periodic bond loops
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
For examples of replicating simple linear polymer chains (periodic or
|
||||
non-periodic) or periodic carbon nanotubes, see examples/replicate.
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
replicate 2 3 2
|
||||
replicate 2 3 2 bbox
|
||||
replicate 2 3 2 bond/periodic
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Replicate the current simulation one or more times in each dimension.
|
||||
For example, replication factors of 2,2,2 will create a simulation
|
||||
with 8x as many atoms by doubling the simulation domain in each
|
||||
dimension. A replication factor of 1 in a dimension leaves the
|
||||
simulation domain unchanged. When the new simulation box is created
|
||||
it is also partitioned into a regular 3d grid of rectangular bricks,
|
||||
one per processor, based on the number of processors being used and
|
||||
the settings of the :doc:`processors <processors>` command. The
|
||||
partitioning can later be changed by the :doc:`balance <balance>` or
|
||||
:doc:`fix balance <fix_balance>` commands.
|
||||
Replicate the current system one or more times in each dimension. For
|
||||
example, replication factors of 2,2,2 will create a simulation with 8x
|
||||
as many atoms by doubling the size of the simulation box in each
|
||||
dimension. A replication factor of 1 leaves the simulation domain
|
||||
unchanged in that dimension.
|
||||
|
||||
All properties of the atoms are replicated, including their
|
||||
velocities, which may or may not be desirable. New atom IDs are
|
||||
assigned to new atoms, as are molecule IDs. Bonds and other topology
|
||||
interactions are created between pairs of new atoms as well as between
|
||||
old and new atoms. This is done by using the image flag for each atom
|
||||
to "unwrap" it out of the periodic box before replicating it.
|
||||
When the new simulation box is created it is partitioned into a
|
||||
regular 3d grid of rectangular bricks, one per processor, based on the
|
||||
number of processors being used and the settings of the
|
||||
:doc:`processors <processors>` command. The partitioning can be
|
||||
changed by subsequent :doc:`balance <balance>` or :doc:`fix balance
|
||||
<fix_balance>` commands.
|
||||
|
||||
This means that any molecular bond you specify in the original data
|
||||
file that crosses a periodic boundary should be between two atoms with
|
||||
image flags that differ by 1. This will allow the bond to be
|
||||
unwrapped appropriately.
|
||||
All properties of each atom are replicated (except per-atom fix data,
|
||||
see the Restrictions section below). This includes their velocities,
|
||||
which may or may not be desirable. New atom IDs are assigned to new
|
||||
atoms, as are new molecule IDs. Bonds and other topology interactions
|
||||
are created between pairs of new atoms as well as between old and new
|
||||
atoms.
|
||||
|
||||
The optional keyword *bbox* uses a bounding box to only check atoms in
|
||||
replicas that overlap with a processor's subdomain when assigning
|
||||
atoms to processors. It typically results in a substantial speedup
|
||||
when using the replicate command on a large number of processors. It
|
||||
does require temporary use of more memory, specifically that each
|
||||
processor can store all atoms in the entire system before it is
|
||||
replicated.
|
||||
.. note::
|
||||
|
||||
The bond discussion which follows only refers to models with
|
||||
permanent covalent bonds typically defined in LAMMPS via a data
|
||||
file. It is not relevant to systems modeled with many-body
|
||||
potentials which can define bonds on-the-fly, based on the current
|
||||
positions of nearby atoms, e.g. models using the :doc:`AIREBO
|
||||
<pair_airebo>` or :doc:`ReaxFF <pair_reaxff>` potentials.
|
||||
|
||||
If the *bond/periodic* keyword is not specified, bond replication is
|
||||
done by using the image flag for each atom to "unwrap" it out of the
|
||||
periodic box before replicating it. After replication is performed,
|
||||
atoms outside the new periodic box are wrapped back into it. This
|
||||
assigns correct images flags to all atoms in the system. For this to
|
||||
work, all original atoms in the original simulation box must have
|
||||
consistent image flags. This means that if two atoms have a bond
|
||||
between them which crosses a periodic boundary, their respective image
|
||||
flags will differ by 1 in that dimension.
|
||||
|
||||
Image flag consistency is not possible if a system has a periodic bond
|
||||
loop, meaning there is a chain of bonds which crosses an entire
|
||||
dimension and re-connects to itself across a periodic boundary. In
|
||||
this case you MUST use the *bond/periodic* keyword to correctly
|
||||
replicate the system. This option zeroes the image flags for all
|
||||
atoms and uses a different algorithm to find new (nearby) bond
|
||||
neighbors in the replicated system. In the final replicated system
|
||||
all image flags are zero (in each dimension).
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS does not check for image flag consistency before performing
|
||||
the replication (it does issue a warning about this before a
|
||||
simulation is run). If the original image flags are inconsistent,
|
||||
the replicated system will also have inconsistent image flags, but
|
||||
will otherwise be correctly replicated. This is NOT the case if
|
||||
there is a periodic bond loop. See the next note.
|
||||
|
||||
.. note::
|
||||
|
||||
LAMMPS does not check for periodic bond loops. If you use the
|
||||
*bond/periodic* keyword for a system without periodic bond loops,
|
||||
the system will be correctly replicated, but image flag information
|
||||
will be lost (which may or may not be important to your model). If
|
||||
you do not use the *bond/periodic* keyword for a system with
|
||||
periodic bond loops, the replicated system will have invalid bonds
|
||||
(typically very long), resulting in bad dynamics.
|
||||
|
||||
If possible, the *bbox* keyword should be used when running on a large
|
||||
number of processors, as it can result in a substantial speed-up for
|
||||
the replication operation. It uses a bounding box to only check atoms
|
||||
in replicas that overlap with each processor's new subdomain when
|
||||
assigning atoms to processors. It also preserves image flag
|
||||
information. The only drawback to the *bbox* option is that it
|
||||
requires a temporary use of more memory. Each processor must be able
|
||||
to store all atoms (and their per-atom data) in the original system,
|
||||
before it is replicated.
|
||||
|
||||
.. note::
|
||||
|
||||
The algorithm used by the *bond/periodic* keyword builds on the
|
||||
algorithm used by the *bbox* keyword and thus has the same memory
|
||||
requirements. If you specify only the *bond/peridoic* keyword it
|
||||
will internally set the *bbox* keyword as well.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
@ -65,49 +127,30 @@ Restrictions
|
||||
A 2d simulation cannot be replicated in the z dimension.
|
||||
|
||||
If a simulation is non-periodic in a dimension, care should be used
|
||||
when replicating it in that dimension, as it may put atoms nearly on
|
||||
top of each other.
|
||||
|
||||
.. note::
|
||||
|
||||
You cannot use the replicate command on a system which has a
|
||||
molecule that spans the box and is bonded to itself across a periodic
|
||||
boundary, so that the molecule is effectively a loop. A simple
|
||||
example would be a linear polymer chain that spans the simulation box
|
||||
and bonds back to itself across the periodic boundary. More realistic
|
||||
examples would be a CNT (meant to be an infinitely long CNT) or a
|
||||
graphene sheet or a bulk periodic crystal where there are explicit
|
||||
bonds specified between near neighbors. (Note that this only applies
|
||||
to systems that have permanent bonds as specified in the data file. A
|
||||
CNT that is just atoms modeled with the :doc:`AIREBO potential <pair_airebo>` has no such permanent bonds, so it can be
|
||||
replicated.) The reason replication does not work with those systems
|
||||
is that the image flag settings described above cannot be made
|
||||
consistent. I.e. it is not possible to define images flags so that
|
||||
when every pair of bonded atoms is unwrapped (using the image flags),
|
||||
they will be close to each other. The only way the replicate command
|
||||
could work in this scenario is for it to break a bond, insert more
|
||||
atoms, and re-connect the loop for the larger simulation box. But it
|
||||
is not clever enough to do this. So you will have to construct a
|
||||
larger version of your molecule as a pre-processing step and input a
|
||||
new data file to LAMMPS.
|
||||
when replicating it in that dimension, as it may generate atoms nearly
|
||||
on top of each other.
|
||||
|
||||
If the current simulation was read in from a restart file (before a
|
||||
run is performed), there must not be any fix information stored in
|
||||
the file for individual atoms. Similarly, no fixes can be defined at
|
||||
the time the replicate command is used that require vectors of atom
|
||||
run is performed), there must not be any fix information stored in the
|
||||
file for individual atoms. Similarly, no fixes can be defined at the
|
||||
time the replicate command is used that require vectors of atom
|
||||
information to be stored. This is because the replicate command does
|
||||
not know how to replicate that information for new atoms it creates.
|
||||
To work around this restriction, restart files may be converted into
|
||||
data files and fixes may be undefined via the :doc:`unfix <unfix>`
|
||||
command before and redefined after the replicate command.
|
||||
|
||||
To work around this restriction two options are possible. (1) Fixes
|
||||
which use the stored data in the restart file can be defined before
|
||||
replication and then deleted via the :doc:`unfix <unfix>` command and
|
||||
re-defined after it. Or (2) the restart file can be converted to a
|
||||
data file (which deletes the stored fix information) and fixes defined
|
||||
after the replicate command. In both these scenarios, the per-atom
|
||||
fix information in the restart file is lost.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
none
|
||||
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
No settings for using the *bbox* or *bond/periodic* algorithms.
|
||||
|
||||
@ -11,7 +11,7 @@ Syntax
|
||||
thermo_modify keyword value ...
|
||||
|
||||
* one or more keyword/value pairs may be listed
|
||||
* keyword = *lost* or *lost/bond* or *warn* or *norm* or *flush* or *line* or *colname* or *format* or *temp* or *press*
|
||||
* keyword = *lost* or *lost/bond* or *warn* or *norm* or *flush* or *line* or *colname* or *format* or *temp* or *press* or *triclinic/general*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -32,6 +32,8 @@ Syntax
|
||||
*or* a thermo keyword or reference to compute, fix, property or variable.
|
||||
*temp* value = compute ID that calculates a temperature
|
||||
*press* value = compute ID that calculates a pressure
|
||||
*triclinic/general* arg = *yes* or *no*
|
||||
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -240,6 +242,19 @@ command, thermo output uses a default compute for pressure with ID =
|
||||
keyword, then the new pressure compute specified by the *press*
|
||||
keyword will be unaffected by the *temp* setting.
|
||||
|
||||
The *triclinic/general* keyword can only be used with a value of *yes*
|
||||
if the simulation box was created as a general triclinic box. See the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page for a detailed
|
||||
explanation of orthogonal, restricted triclinic, and general triclinic
|
||||
simulation boxes.
|
||||
|
||||
If this keyword is *yes*, the output of the simulation box edge
|
||||
vectors and the pressure tensor components for the system are
|
||||
affected. These are specified by the *avec,bvec,cvec* and
|
||||
*pxx,pyy,pzz,pxy,pxz,pyz* keywords of the :doc:`thermo_style
|
||||
<thermo_style>` command. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
@ -253,8 +268,9 @@ Default
|
||||
"""""""
|
||||
|
||||
The option defaults are lost = error, warn = 100, norm = yes for unit
|
||||
style of *lj*, norm = no for unit style of *real* and *metal*,
|
||||
flush = no, and temp/press = compute IDs defined by thermo_style.
|
||||
style of *lj*, norm = no for unit style of *real* and *metal*, flush =
|
||||
no, temp/press = compute IDs defined by thermo_style, and
|
||||
triclinic/general = no.
|
||||
|
||||
The defaults for the line and format options depend on the thermo style.
|
||||
For styles "one" and "custom", the line and format defaults are "one",
|
||||
|
||||
@ -25,12 +25,18 @@ Syntax
|
||||
evdwl, ecoul, epair, ebond, eangle, edihed, eimp,
|
||||
emol, elong, etail,
|
||||
enthalpy, ecouple, econserve,
|
||||
vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
|
||||
xy, xz, yz, xlat, ylat, zlat,
|
||||
bonds, angles, dihedrals, impropers,
|
||||
pxx, pyy, pzz, pxy, pxz, pyz,
|
||||
fmax, fnorm, nbuild, ndanger,
|
||||
vol, density,
|
||||
xlo, xhi, ylo, yhi, zlo, zhi,
|
||||
xy, xz, yz,
|
||||
avecx, avecy, avecz,
|
||||
bvecx, bvecy, bvecz,
|
||||
cvecx, cvecy, cvecz,
|
||||
lx, ly, lz,
|
||||
xlat, ylat, zlat,
|
||||
cella, cellb, cellc, cellalpha, cellbeta, cellgamma,
|
||||
pxx, pyy, pzz, pxy, pxz, pyz,
|
||||
bonds, angles, dihedrals, impropers,
|
||||
fmax, fnorm, nbuild, ndanger,
|
||||
c_ID, c_ID[I], c_ID[I][J],
|
||||
f_ID, f_ID[I], f_ID[I][J],
|
||||
v_name, v_name[I]
|
||||
@ -66,18 +72,21 @@ Syntax
|
||||
econserve = pe + ke + ecouple = etotal + ecouple
|
||||
vol = volume
|
||||
density = mass density of system
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
xlo,xhi,ylo,yhi,zlo,zhi = box boundaries
|
||||
xy,xz,yz = box tilt for triclinic (non-orthogonal) simulation boxes
|
||||
xy,xz,yz = box tilt for restricted triclinic (non-orthogonal) simulation boxes
|
||||
avecx,avecy,avecz = components of edge vector A of the simulation box
|
||||
bvecx,bvecy,bvecz = components of edge vector B of the simulation box
|
||||
cvecx,cvecy,cvecz = components of edge vector C of the simulation box
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
xlat,ylat,zlat = lattice spacings as calculated by :doc:`lattice <lattice>` command
|
||||
bonds,angles,dihedrals,impropers = # of these interactions defined
|
||||
cella,cellb,cellc = periodic cell lattice constants a,b,c
|
||||
cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
|
||||
pxx,pyy,pzz,pxy,pxz,pyz = 6 components of pressure tensor
|
||||
bonds,angles,dihedrals,impropers = # of these interactions defined
|
||||
fmax = max component of force on any atom in any dimension
|
||||
fnorm = length of force vector for all atoms
|
||||
nbuild = # of neighbor list builds
|
||||
ndanger = # of dangerous neighbor list builds
|
||||
cella,cellb,cellc = periodic cell lattice constants a,b,c
|
||||
cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
|
||||
c_ID = global scalar value calculated by a compute with ID
|
||||
c_ID[I] = Ith component of global vector calculated by a compute with ID, I can include wildcard (see below)
|
||||
c_ID[I][J] = I,J component of global array calculated by a compute with ID
|
||||
@ -102,8 +111,11 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Set the style and content for printing thermodynamic data to the screen
|
||||
and log files.
|
||||
Set the style and content for printing thermodynamic data to the
|
||||
screen and log files. The units for each column of output
|
||||
corresponding to the list of keywords is determined by the :doc:`units
|
||||
<units>` command for the simulation. E.g. energies will be in energy
|
||||
units, temperature in temperature units, pressure in pressure units.
|
||||
|
||||
Style *one* prints a single line of thermodynamic info that is the
|
||||
equivalent of "thermo_style custom step temp epair emol etotal press".
|
||||
@ -245,7 +257,7 @@ and *pxx*, *pyy*, etc.
|
||||
----------
|
||||
|
||||
Here is more information on other keywords whose meaning may not be
|
||||
clear:
|
||||
clear.
|
||||
|
||||
The *step*, *elapsed*, and *elaplong* keywords refer to timestep
|
||||
count. *Step* is the current timestep, or iteration count when a
|
||||
@ -319,6 +331,63 @@ thermostatting or barostatting to their coupling reservoirs -- that is,
|
||||
the NVT, NPH, or NPT ensembles, the *econserve* quantity should remain
|
||||
constant over time even though *etotal* may change.
|
||||
|
||||
In LAMMPS, the simulation box can be defined as orthogonal or
|
||||
triclinic (non-orthogonal). See the :doc:`Howto_triclinic
|
||||
<Howto_triclinic>` doc page for a detailed explanation of orthogonal,
|
||||
restricted triclinic, and general triclinic simulation boxes and how
|
||||
LAMMPS rotates a general triclinic box to be restricted triclinic
|
||||
internally.
|
||||
|
||||
The *lx*, *ly*, *lz* keywords are the extent of the simulation box in
|
||||
each dimension. The *xlo*, *xhi*, *ylo*, *yhi*, *zlo*, *zhi* keywords
|
||||
are the lower and upper bounds of the simulation box in each dimension.
|
||||
I.e. *lx* = *xhi* - *xlo*). These 9 values are the same for all 3 kinds
|
||||
of boxes. I.e. for a restricted triclinic box, they are the values as
|
||||
if the box were not tilted. For a general triclinic box, they are the
|
||||
values after it is internally rotated to be a restricted triclinic box.
|
||||
|
||||
The *xy*, *xz*, *yz* are the current tilt factors for a triclinic box.
|
||||
They are the same for restricted and general triclinic boxes.
|
||||
|
||||
The *avecx*, *avecy*, *avecz*, *bvecx*, *bvecy*, *bvecz*, *cvecx*,
|
||||
*cvecy*, *cvecz* are the components of the 3 edge vectors of the
|
||||
current general simulation box. If it is an orthogonal box the
|
||||
vectors are along the x, y, z coordinate axes. If it is a restricted
|
||||
triclinic box, the **A** vector is along the x axis, the **B** vector
|
||||
is in the xy plane with a +y coordinate, and the **C** vector has a +z
|
||||
coordinate, as explained on the :doc:`Howto_triclinic
|
||||
<Howto_triclinic>` doc page. If the :doc:`thermo_modify
|
||||
triclinic/general <thermo_modify>` option is set then they are the
|
||||
**A**, **B**, **C** vector which define the general triclinic box.
|
||||
|
||||
The *cella*, *cellb*, *cellc*, *cellalpha*, *cellbeta*, *cellgamma*
|
||||
keywords correspond to the usual crystallographic quantities that
|
||||
define the periodic simulation box of a crystalline system. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` page for a precise definition
|
||||
of these quantities in terms of the LAMMPS representation of a
|
||||
restricted triclinic simulation box via *lx*, *ly*, *lz*, *yz*, *xz*,
|
||||
*xy*\ .
|
||||
|
||||
The *pxx,pyy,pzz,pxy,pxz,pyz* keywords are the 6 components of the
|
||||
symmetric pressure tensor for the system. See the :doc:`compute
|
||||
pressure <compute_pressure>` command doc page for details of how it is
|
||||
calculated.
|
||||
|
||||
If the :doc:`thermo_modify triclinic/general <thermo_modify>` option
|
||||
is set then the 6 components will be output as values consistent with
|
||||
the orientation of the general triclinic box relative to the standard
|
||||
xyz coordinate axes. If this keyword is not used, the values will be
|
||||
consistent with the orientation of the restricted triclinic box (which
|
||||
aligns with the xyz coordinate axes). As explained on the
|
||||
:doc:`Howto_triclinic <Howto_triclinic>` doc page, even if the
|
||||
simulation box is created as a general triclinic box, internally
|
||||
LAMMPS uses a restricted triclinic box.
|
||||
|
||||
Note that because the pressure tensor components are computed using
|
||||
force vectors and atom coordinates, both of which are rotated in the
|
||||
general versus restricted triclinic representation, the values will
|
||||
typically be different for the two cases.
|
||||
|
||||
The *fmax* and *fnorm* keywords are useful for monitoring the progress
|
||||
of an :doc:`energy minimization <minimize>`. The *fmax* keyword
|
||||
calculates the maximum force in any dimension on any atom in the
|
||||
@ -338,14 +407,6 @@ to reduce the delay factor to ensure no force interactions are missed
|
||||
by atoms moving beyond the neighbor skin distance before a rebuild
|
||||
takes place.
|
||||
|
||||
The keywords *cella*, *cellb*, *cellc*, *cellalpha*,
|
||||
*cellbeta*, *cellgamma*, correspond to the usual crystallographic
|
||||
quantities that define the periodic unit cell of a crystal. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` page for a geometric
|
||||
description of triclinic periodic cells, including a precise
|
||||
definition of these quantities in terms of the internal LAMMPS cell
|
||||
dimensions *lx*, *ly*, *lz*, *yz*, *xz*, *xy*\ .
|
||||
|
||||
----------
|
||||
|
||||
For output values from a compute or fix or variable, the bracketed
|
||||
|
||||
@ -67,7 +67,7 @@ Syntax
|
||||
bound(group,dir,region), gyration(group,region), ke(group,reigon),
|
||||
angmom(group,dim,region), torque(group,dim,region),
|
||||
inertia(group,dimdim,region), omega(group,dim,region)
|
||||
special functions = sum(x), min(x), max(x), ave(x), trap(x), slope(x), gmask(x), rmask(x), grmask(x,y), next(x), is_file(name), is_os(name), extract_setting(name), label2type(kind,label), is_typelabel(kind,label)
|
||||
special functions = sum(x), min(x), max(x), ave(x), trap(x), slope(x), sort(x), rsort(x), gmask(x), rmask(x), grmask(x,y), next(x), is_file(name), is_os(name), extract_setting(name), label2type(kind,label), is_typelabel(kind,label)
|
||||
feature functions = is_available(category,feature), is_active(category,feature), is_defined(category,id)
|
||||
atom value = id[i], mass[i], type[i], mol[i], x[i], y[i], z[i], vx[i], vy[i], vz[i], fx[i], fy[i], fz[i], q[i]
|
||||
atom vector = id, mass, type, mol, radius, q, x, y, z, vx, vy, vz, fx, fy, fz
|
||||
@ -279,9 +279,9 @@ This means the variable can then be evaluated as many times as desired
|
||||
and will return those values. There are two ways to cause the next
|
||||
set of per-atom values from the file to be read: use the
|
||||
:doc:`next <next>` command or the next() function in an atom-style
|
||||
variable, as discussed below. Unlike most variable styles
|
||||
atomfile-style variables are **deleted** during a :doc:`clear <clear>`
|
||||
command.
|
||||
variable, as discussed below. Unlike most variable styles, which
|
||||
remain defined, atomfile-style variables are **deleted** during a
|
||||
:doc:`clear <clear>` command.
|
||||
|
||||
The rules for formatting the file are as follows. Each time a set of
|
||||
per-atom values is read, a non-blank line is searched for in the file.
|
||||
@ -289,23 +289,37 @@ The file is read line by line but only up to 254 characters are used.
|
||||
The rest are ignored. A comment character "#" can be used anywhere
|
||||
on a line and all text following and the "#" character are ignored;
|
||||
text starting with the comment character is stripped. Blank lines
|
||||
are skipped. The first "word" of a non-blank line, delimited by
|
||||
white-space, is read as the count N of per-atom lines to immediately
|
||||
follow. N can be the total number of atoms in the system, or only a
|
||||
subset. The next N lines have the following format
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
ID value
|
||||
|
||||
where ID is an atom ID and value is the per-atom numeric value that
|
||||
will be assigned to that atom. IDs can be listed in any order.
|
||||
are skipped. The first non-blank line is expected to contain a single
|
||||
integer number as the count *N* of per-atom lines to follow. *N* can
|
||||
be the total number of atoms in the system or less, indicating that data
|
||||
for a subset is read. The next N lines must consist of two numbers,
|
||||
the atom-ID of the atom for which a value is set followed by a floating
|
||||
point number with the value. The atom-IDs may be listed in any order.
|
||||
|
||||
.. note::
|
||||
|
||||
Every time a set of per-atom lines is read, the value for all
|
||||
atoms is first set to 0.0. Thus values for atoms whose ID does not
|
||||
appear in the set, will remain 0.0.
|
||||
Every time a set of per-atom lines is read, the value of the atomfile
|
||||
variable for **all** atoms is first initialized to 0.0. Thus values
|
||||
for atoms whose ID do not appear in the set in the file will remain
|
||||
at 0.0.
|
||||
|
||||
Below is a small example for the atomfile variable file format:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
# first set
|
||||
4
|
||||
# atom-ID value
|
||||
3 1
|
||||
4 -4
|
||||
1 0.5
|
||||
2 -0.5
|
||||
|
||||
# second set
|
||||
2
|
||||
|
||||
2 1.0
|
||||
4 -1.0
|
||||
|
||||
----------
|
||||
|
||||
@ -533,7 +547,7 @@ variables.
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Region functions | count(ID,IDR), mass(ID,IDR), charge(ID,IDR), xcm(ID,dim,IDR), vcm(ID,dim,IDR), fcm(ID,dim,IDR), bound(ID,dir,IDR), gyration(ID,IDR), ke(ID,IDR), angmom(ID,dim,IDR), torque(ID,dim,IDR), inertia(ID,dimdim,IDR), omega(ID,dim,IDR) |
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Special functions | sum(x), min(x), max(x), ave(x), trap(x), slope(x), gmask(x), rmask(x), grmask(x,y), next(x), is_file(name), is_os(name), extract_setting(name), label2type(kind,label), is_typelabel(kind,label) |
|
||||
| Special functions | sum(x), min(x), max(x), ave(x), trap(x), slope(x), sort(x), rsort(x), gmask(x), rmask(x), grmask(x,y), next(x), is_file(name), is_os(name), extract_setting(name), label2type(kind,label), is_typelabel(kind,label) |
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Feature functions | is_available(category,feature), is_active(category,feature), is_defined(category,id) |
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
@ -899,23 +913,27 @@ Special Functions
|
||||
Special functions take specific kinds of arguments, meaning their
|
||||
arguments cannot be formulas themselves.
|
||||
|
||||
The sum(x), min(x), max(x), ave(x), trap(x), and slope(x) functions
|
||||
each take 1 argument which is of the form "c_ID" or "c_ID[N]" or
|
||||
"f_ID" or "f_ID[N]" or "v_name". The first two are computes and the
|
||||
second two are fixes; the ID in the reference should be replaced by
|
||||
the ID of a compute or fix defined elsewhere in the input script. The
|
||||
compute or fix must produce either a global vector or array. If it
|
||||
produces a global vector, then the notation without "[N]" should be
|
||||
used. If it produces a global array, then the notation with "[N]"
|
||||
should be used, when N is an integer, to specify which column of the
|
||||
global array is being referenced. The last form of argument "v_name"
|
||||
is for a vector-style variable where "name" is replaced by the name of
|
||||
the variable.
|
||||
The sum(x), min(x), max(x), ave(x), trap(x), slope(x), sort(x), and
|
||||
rsort(x) functions each take 1 argument which is of the form "c_ID" or
|
||||
"c_ID[N]" or "f_ID" or "f_ID[N]" or "v_name". The first two are
|
||||
computes and the second two are fixes; the ID in the reference should be
|
||||
replaced by the ID of a compute or fix defined elsewhere in the input
|
||||
script. The compute or fix must produce either a global vector or
|
||||
array. If it produces a global vector, then the notation without "[N]"
|
||||
should be used. If it produces a global array, then the notation with
|
||||
"[N]" should be used, where N is an integer, to specify which column of
|
||||
the global array is being referenced. The last form of argument
|
||||
"v_name" is for a vector-style variable where "name" is replaced by the
|
||||
name of the variable.
|
||||
|
||||
These functions operate on a global vector of inputs and reduce it to
|
||||
a single scalar value. This is analogous to the operation of the
|
||||
:doc:`compute reduce <compute_reduce>` command, which performs similar
|
||||
operations on per-atom and local vectors.
|
||||
The sum(x), min(x), max(x), ave(x), trap(x), and slope(x) functions
|
||||
operate on a global vector of inputs and reduce it to a single scalar
|
||||
value. This is analogous to the operation of the :doc:`compute reduce
|
||||
<compute_reduce>` command, which performs similar operations on per-atom
|
||||
and local vectors.
|
||||
|
||||
The sort(x) and rsort(x) functions operate on a global vector of inputs
|
||||
and return a global vector of the same length.
|
||||
|
||||
The sum() function calculates the sum of all the vector elements. The
|
||||
min() and max() functions find the minimum and maximum element
|
||||
@ -939,6 +957,12 @@ of points, equally spaced by 1 in their x coordinate: (1,V1), (2,V2),
|
||||
length N. The returned value is the slope of the line. If the line
|
||||
has a single point or is vertical, it returns 1.0e20.
|
||||
|
||||
.. versionadded:: TBD
|
||||
|
||||
The sort(x) and rsort(x) functions sort the data of the input vector by
|
||||
their numeric value: sort(x) sorts in ascending order, rsort(x) sorts
|
||||
in descending order.
|
||||
|
||||
The gmask(x) function takes 1 argument which is a group ID. It
|
||||
can only be used in atom-style variables. It returns a 1 for
|
||||
atoms that are in the group, and a 0 for atoms that are not.
|
||||
|
||||
@ -12,13 +12,14 @@ Syntax
|
||||
|
||||
* file = name of data file to write out
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *pair* or *nocoeff* or *nofix* or *nolabelmap*
|
||||
* keyword = *nocoeff* or *nofix* or *nolabelmap* or *triclinic/general* or *types* or *pair*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*nocoeff* = do not write out force field info
|
||||
*nofix* = do not write out extra sections read by fixes
|
||||
*nolabelmap* = do not write out type labels
|
||||
*triclinic/general* = write data file in general triclinic format
|
||||
*types* value = *numeric* or *labels*
|
||||
*pair* value = *ii* or *ij*
|
||||
*ii* = write one line of pair coefficient info per atom type
|
||||
@ -31,6 +32,7 @@ Examples
|
||||
|
||||
write_data data.polymer
|
||||
write_data data.*
|
||||
write_data data.solid triclinic/general
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
@ -85,10 +87,11 @@ using the :doc:`-r command-line switch <Run_options>`.
|
||||
:doc:`fixes <fix>` are stored. :doc:`Binary restart files <read_restart>`
|
||||
store more information.
|
||||
|
||||
Bond interactions (angle, etc) that have been turned off by the :doc:`fix shake <fix_shake>` or :doc:`delete_bonds <delete_bonds>` command will
|
||||
be written to a data file as if they are turned on. This means they
|
||||
will need to be turned off again in a new run after the data file is
|
||||
read.
|
||||
Bond interactions (angle, etc) that have been turned off by the
|
||||
:doc:`fix shake <fix_shake>` or :doc:`delete_bonds <delete_bonds>`
|
||||
command will be written to a data file as if they are turned on. This
|
||||
means they will need to be turned off again in a new run after the
|
||||
data file is read.
|
||||
|
||||
Bonds that are broken (e.g. by a bond-breaking potential) are not
|
||||
written to the data file. Thus these bonds will not exist when the
|
||||
@ -122,6 +125,23 @@ not written to the data file. By default, they are written if they
|
||||
exist. A type label must be defined for every numeric type (within a
|
||||
given type-kind) to be written to the data file.
|
||||
|
||||
Use of the *triclinic/general* keyword will output a data file which
|
||||
specifies a general triclinic simulation box as well as per-atom
|
||||
quantities consistent with the general triclinic box. The latter means
|
||||
that per-atom vectors, such as velocities and dipole moments will be
|
||||
oriented consistent with the 3d rotation implied by the general
|
||||
triclinic box (relative to the associated restricted triclinic box).
|
||||
|
||||
This option can only be requested if the simulation box was initially
|
||||
defined to be general triclinic. If if was and the
|
||||
*triclinic/general* keyword is not used, then the data file will
|
||||
specify a restricted triclinic box, since that is the internal format
|
||||
LAMMPS uses for both general and restricted triclinic simulations.
|
||||
See the :doc:`Howto triclinic <Howto_triclinic>` doc page for more
|
||||
explanation of how general triclinic simulation boxes are supported by
|
||||
LAMMPS. And see the :doc:`read_data <read_data>` doc page for details
|
||||
of how the format is altered for general triclinic data files.
|
||||
|
||||
The *types* keyword determines how atom types, bond types, angle
|
||||
types, etc are written into these data file sections: Atoms, Bonds,
|
||||
Angles, etc. The default is the *numeric* setting, even if type label
|
||||
@ -169,4 +189,4 @@ Related commands
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The option defaults are pair = ii and types_style = numeric.
|
||||
The option defaults are pair = ii and types = numeric.
|
||||
|
||||
@ -55,21 +55,22 @@ alter the number of files written.
|
||||
Restart files can be read by a :doc:`read_restart <read_restart>`
|
||||
command to restart a simulation from a particular state. Because the
|
||||
file is binary (to enable exact restarts), it may not be readable on
|
||||
another machine. In this case, you can use the :doc:`-r command-line switch <Run_options>` to convert a restart file to a data file.
|
||||
another machine. In this case, you can use the :doc:`-r command-line
|
||||
switch <Run_options>` to convert a restart file to a data file.
|
||||
|
||||
.. note::
|
||||
|
||||
Although the purpose of restart files is to enable restarting a
|
||||
simulation from where it left off, not all information about a
|
||||
simulation is stored in the file. For example, the list of fixes that
|
||||
were specified during the initial run is not stored, which means the
|
||||
new input script must specify any fixes you want to use. Even when
|
||||
restart information is stored in the file, as it is for some fixes,
|
||||
commands may need to be re-specified in the new input script, in order
|
||||
to re-use that information. Details are usually given in the
|
||||
documentation of the respective command. Also, see the
|
||||
:doc:`read_restart <read_restart>` command for general information about
|
||||
what is stored in a restart file.
|
||||
simulation is stored in the file. For example, the list of fixes
|
||||
that were specified during the initial run is not stored, which
|
||||
means the new input script must specify any fixes you want to use.
|
||||
Even when restart information is stored in the file, as it is for
|
||||
some fixes, commands may need to be re-specified in the new input
|
||||
script, in order to re-use that information. Details are usually
|
||||
given in the documentation of the respective command. Also, see the
|
||||
:doc:`read_restart <read_restart>` command for general information
|
||||
about what is stored in a restart file.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
Sphinx >= 5.3.0, <8.0
|
||||
Sphinx >= 5.3.0, <7.3
|
||||
sphinxcontrib-spelling
|
||||
sphinxcontrib-jquery
|
||||
git+https://github.com/akohlmey/sphinx-fortran@parallel-read
|
||||
|
||||
@ -50,6 +50,7 @@ agilio
|
||||
Agilio
|
||||
agni
|
||||
Agnolin
|
||||
ahi
|
||||
Ahrens
|
||||
Ai
|
||||
Aidan
|
||||
@ -86,6 +87,7 @@ allocator
|
||||
allocators
|
||||
allosws
|
||||
AlO
|
||||
alo
|
||||
Alonso
|
||||
Alperen
|
||||
alphak
|
||||
@ -187,6 +189,10 @@ automagically
|
||||
Auvergne
|
||||
Avalos
|
||||
avalue
|
||||
avec
|
||||
avecx
|
||||
avecy
|
||||
avecz
|
||||
aveforce
|
||||
Avendano
|
||||
Averett
|
||||
@ -194,11 +200,14 @@ avi
|
||||
AVX
|
||||
awpmd
|
||||
AWPMD
|
||||
ax
|
||||
Axel
|
||||
Axilrod
|
||||
Ay
|
||||
ay
|
||||
Ayton
|
||||
Az
|
||||
az
|
||||
Azevedo
|
||||
azimuthal
|
||||
Azuri
|
||||
@ -271,6 +280,7 @@ Bext
|
||||
Bfrac
|
||||
bgq
|
||||
Bh
|
||||
bhi
|
||||
Bialke
|
||||
biaxial
|
||||
bicrystal
|
||||
@ -307,6 +317,7 @@ Bkappa
|
||||
blabel
|
||||
Blaise
|
||||
blanchedalmond
|
||||
blo
|
||||
blocksize
|
||||
blueviolet
|
||||
bn
|
||||
@ -380,12 +391,17 @@ btype
|
||||
buckPlusAttr
|
||||
buf
|
||||
builtin
|
||||
Bulacu
|
||||
Bulatov
|
||||
Bureekaew
|
||||
burlywood
|
||||
Bussi
|
||||
Buturigakkwaishi
|
||||
Buyl
|
||||
bvec
|
||||
bvecx
|
||||
bvecy
|
||||
bvecz
|
||||
Bybee
|
||||
bz
|
||||
Cadarache
|
||||
@ -476,6 +492,7 @@ ChiralIDs
|
||||
chirality
|
||||
Cho
|
||||
Chodera
|
||||
Choi
|
||||
ChooseOffset
|
||||
chris
|
||||
Christoph
|
||||
@ -617,6 +634,7 @@ cstdlib
|
||||
cstring
|
||||
cstyle
|
||||
csvr
|
||||
ctilde
|
||||
ctrl
|
||||
ctrn
|
||||
ctypes
|
||||
@ -648,14 +666,21 @@ cv
|
||||
Cv
|
||||
Cval
|
||||
cvar
|
||||
cvec
|
||||
cvecx
|
||||
cvecy
|
||||
cvecz
|
||||
cvff
|
||||
cwiggle
|
||||
cx
|
||||
cy
|
||||
cygwin
|
||||
Cygwin
|
||||
cylindrically
|
||||
Cyrot
|
||||
cyrstals
|
||||
cython
|
||||
cz
|
||||
Daivis
|
||||
Dammak
|
||||
dampflag
|
||||
@ -1302,6 +1327,7 @@ gmres
|
||||
gname
|
||||
gneb
|
||||
GNEB
|
||||
Goga
|
||||
Goldfarb
|
||||
Gompper
|
||||
Gonzalez-Melchor
|
||||
@ -1479,6 +1505,7 @@ hydroxyl
|
||||
Hynninen
|
||||
Hyoungki
|
||||
hyperdynamics
|
||||
hyperparameters
|
||||
hyperplane
|
||||
hyperradius
|
||||
hyperspherical
|
||||
@ -2040,6 +2067,7 @@ Makefiles
|
||||
makelist
|
||||
makepkg
|
||||
Makse
|
||||
Malavasi
|
||||
malloc
|
||||
Malolepsza
|
||||
Manby
|
||||
@ -2149,6 +2177,7 @@ membered
|
||||
memcheck
|
||||
Mendelev
|
||||
Menon
|
||||
Menziani
|
||||
mer
|
||||
Meremianin
|
||||
Mersenne
|
||||
@ -2259,6 +2288,7 @@ Montalenti
|
||||
Monterey
|
||||
Montero
|
||||
Monti
|
||||
Monticelli
|
||||
Mora
|
||||
Morefoo
|
||||
Morfill
|
||||
@ -2686,6 +2716,9 @@ organometallic
|
||||
orientational
|
||||
orientationsFile
|
||||
orientorder
|
||||
originx
|
||||
originy
|
||||
originz
|
||||
Orlikowski
|
||||
ornl
|
||||
Ornstein
|
||||
@ -2729,6 +2762,7 @@ papayawhip
|
||||
paquay
|
||||
Paquay
|
||||
parallelepiped
|
||||
parallelepipeds
|
||||
Parallelizable
|
||||
parallelization
|
||||
parallelized
|
||||
@ -2772,6 +2806,8 @@ Peachey
|
||||
peachpuff
|
||||
Pearlman
|
||||
Pedersen
|
||||
pedone
|
||||
Pedone
|
||||
peID
|
||||
PEigenDense
|
||||
Peng
|
||||
@ -2785,6 +2821,7 @@ peridynamic
|
||||
Peridynamic
|
||||
peridynamics
|
||||
Peridynamics
|
||||
Periole
|
||||
perl
|
||||
permittivity
|
||||
perp
|
||||
@ -3200,6 +3237,7 @@ Ronevich
|
||||
Rosati
|
||||
Rosato
|
||||
Rosenberger
|
||||
Rossi
|
||||
Rossky
|
||||
rosybrown
|
||||
rotationally
|
||||
@ -3214,6 +3252,7 @@ rRESPA
|
||||
Rsi
|
||||
Rso
|
||||
Rspace
|
||||
rsort
|
||||
rsq
|
||||
rst
|
||||
rstyle
|
||||
@ -3643,6 +3682,7 @@ thrid
|
||||
ThunderX
|
||||
thylakoid
|
||||
THz
|
||||
Tieleman
|
||||
Tigran
|
||||
Tij
|
||||
Tildesley
|
||||
@ -4123,6 +4163,7 @@ zenodo
|
||||
Zepeda
|
||||
zflag
|
||||
Zhang
|
||||
Zhao
|
||||
Zhen
|
||||
zhi
|
||||
Zhigilei
|
||||
|
||||
@ -68,7 +68,7 @@ variable Lx1 equal round(${Lx}/${aWall})*${aWall}
|
||||
#create simulation box
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable ly2 equal ${Ly1}/2
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} -0.1 0.1 units box
|
||||
create_box 2 simbox
|
||||
|
||||
#####################################################################
|
||||
|
||||
941
examples/PACKAGES/flow_gauss/log.6Dec23.GD.g++.1
Normal file
941
examples/PACKAGES/flow_gauss/log.6Dec23.GD.g++.1
Normal file
@ -0,0 +1,941 @@
|
||||
LAMMPS (21 Nov 2023 - Development - patch_21Nov2023-132-g9edf553332)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
#LAMMPS input script
|
||||
#in.GD
|
||||
#see README for details
|
||||
|
||||
###############################################################################
|
||||
#initialize variables
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
#frequency for outputting info (timesteps)
|
||||
variable dump_rate equal 50
|
||||
variable thermo_rate equal 10
|
||||
|
||||
#equilibration time (timesteps)
|
||||
variable equil equal 1000
|
||||
|
||||
#stabilization time (timesteps to reach steady-state)
|
||||
variable stabil equal 1000
|
||||
|
||||
#data collection time (timesteps)
|
||||
variable run equal 2000
|
||||
|
||||
#length of pipe
|
||||
variable L equal 30
|
||||
|
||||
#width of pipe
|
||||
variable d equal 20
|
||||
|
||||
#flux (mass/sigma*tau)
|
||||
variable J equal 0.1
|
||||
|
||||
#simulation box dimensions
|
||||
variable Lx equal 100
|
||||
variable Ly equal 40
|
||||
|
||||
#bulk fluid density
|
||||
variable dens equal 0.8
|
||||
|
||||
#lattice spacing for wall atoms
|
||||
variable aWall equal 1.0 #1.7472
|
||||
|
||||
#timestep
|
||||
variable ts equal 0.001
|
||||
|
||||
#temperature
|
||||
variable T equal 2.0
|
||||
|
||||
#thermostat damping constant
|
||||
variable tdamp equal ${ts}*100
|
||||
variable tdamp equal 0.001*100
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style atomic
|
||||
|
||||
|
||||
###############################################################################
|
||||
#create box
|
||||
|
||||
#create lattice with the spacing aWall
|
||||
variable rhoWall equal ${aWall}^(-2)
|
||||
variable rhoWall equal 1^(-2)
|
||||
lattice sq ${rhoWall}
|
||||
lattice sq 1
|
||||
Lattice spacing in x,y,z = 1 1 1
|
||||
|
||||
#modify input dimensions to be multiples of aWall
|
||||
variable L1 equal round($L/${aWall})*${aWall}
|
||||
variable L1 equal round(30/${aWall})*${aWall}
|
||||
variable L1 equal round(30/1)*${aWall}
|
||||
variable L1 equal round(30/1)*1
|
||||
variable d1 equal round($d/${aWall})*${aWall}
|
||||
variable d1 equal round(20/${aWall})*${aWall}
|
||||
variable d1 equal round(20/1)*${aWall}
|
||||
variable d1 equal round(20/1)*1
|
||||
variable Ly1 equal round(${Ly}/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/1)*${aWall}
|
||||
variable Ly1 equal round(40/1)*1
|
||||
variable Lx1 equal round(${Lx}/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/1)*${aWall}
|
||||
variable Lx1 equal round(100/1)*1
|
||||
|
||||
#create simulation box
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
variable ly2 equal ${Ly1}/2
|
||||
variable ly2 equal 40/2
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 ${lx2} -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -20 ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -20 20 -0.1 0.1 units box
|
||||
create_box 2 simbox
|
||||
Created orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
#####################################################################
|
||||
#set up potential
|
||||
|
||||
mass 1 1.0 #fluid atoms
|
||||
mass 2 1.0 #wall atoms
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_coeff 1 2 1.0 1.0 1.12246
|
||||
pair_coeff 2 2 0.0 0.0
|
||||
|
||||
neigh_modify exclude type 2 2
|
||||
|
||||
timestep ${ts}
|
||||
timestep 0.001
|
||||
|
||||
#####################################################################
|
||||
#create atoms
|
||||
|
||||
#create wall atoms everywhere
|
||||
create_atoms 2 box
|
||||
Created 4000 atoms
|
||||
using lattice units in orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
create_atoms CPU = 0.002 seconds
|
||||
|
||||
#define region which is "walled off"
|
||||
variable dhalf equal ${d1}/2
|
||||
variable dhalf equal 20/2
|
||||
variable Lhalf equal ${L1}/2
|
||||
variable Lhalf equal 30/2
|
||||
region walltop block -${Lhalf} ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 10 EDGE -0.1 0.1 units box
|
||||
region wallbot block -${Lhalf} ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -10 -0.1 0.1 units box
|
||||
region outsidewall union 2 walltop wallbot side out
|
||||
|
||||
#remove wall atoms outside wall region
|
||||
group outside region outsidewall
|
||||
3349 atoms in group outside
|
||||
delete_atoms group outside
|
||||
Deleted 3349 atoms, new total = 651
|
||||
|
||||
#remove wall atoms that aren't on edge of wall region
|
||||
variable x1 equal ${Lhalf}-${aWall}
|
||||
variable x1 equal 15-${aWall}
|
||||
variable x1 equal 15-1
|
||||
variable y1 equal ${dhalf}+${aWall}
|
||||
variable y1 equal 10+${aWall}
|
||||
variable y1 equal 10+1
|
||||
region insideTop block -${x1} ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 11 EDGE -0.1 0.1 units box
|
||||
region insideBot block -${x1} ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -11 -0.1 0.1 units box
|
||||
region insideWall union 2 insideTop insideBot
|
||||
group insideWall region insideWall
|
||||
551 atoms in group insideWall
|
||||
delete_atoms group insideWall
|
||||
Deleted 551 atoms, new total = 100
|
||||
|
||||
#define new lattice, to give correct fluid density
|
||||
#y lattice const must be a multiple of aWall
|
||||
variable atrue equal ${dens}^(-1/2)
|
||||
variable atrue equal 0.8^(-1/2)
|
||||
variable ay equal round(${atrue}/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*1
|
||||
|
||||
#choose x lattice const to give correct density
|
||||
variable ax equal (${ay}*${dens})^(-1)
|
||||
variable ax equal (1*${dens})^(-1)
|
||||
variable ax equal (1*0.8)^(-1)
|
||||
|
||||
#change Lx to be multiple of ax
|
||||
variable Lx1 equal round(${Lx}/${ax})*${ax}
|
||||
variable Lx1 equal round(100/${ax})*${ax}
|
||||
variable Lx1 equal round(100/1.25)*${ax}
|
||||
variable Lx1 equal round(100/1.25)*1.25
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
change_box all x final -${lx2} ${lx2} units box
|
||||
change_box all x final -50 ${lx2} units box
|
||||
change_box all x final -50 50 units box
|
||||
Changing box ...
|
||||
orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
|
||||
#define new lattice
|
||||
lattice custom ${dens} a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 1 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
Lattice spacing in x,y,z = 1.25 1 1
|
||||
|
||||
#fill in rest of box with bulk particles
|
||||
variable delta equal 0.001
|
||||
variable Ldelt equal ${Lhalf}+${delta}
|
||||
variable Ldelt equal 15+${delta}
|
||||
variable Ldelt equal 15+0.001
|
||||
variable dDelt equal ${dhalf}-${delta}
|
||||
variable dDelt equal 10-${delta}
|
||||
variable dDelt equal 10-0.001
|
||||
region left block EDGE -${Ldelt} EDGE EDGE -0.1 0.1 units box
|
||||
region left block EDGE -15.001 EDGE EDGE -0.1 0.1 units box
|
||||
region right block ${Ldelt} EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region right block 15.001 EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region pipe block -${Ldelt} ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 9.999 -0.1 0.1 units box
|
||||
|
||||
region bulk union 3 left pipe right
|
||||
create_atoms 1 region bulk
|
||||
Created 2675 atoms
|
||||
using lattice units in orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
create_atoms CPU = 0.002 seconds
|
||||
|
||||
group bulk type 1
|
||||
2675 atoms in group bulk
|
||||
group wall type 2
|
||||
100 atoms in group wall
|
||||
|
||||
#remove atoms that are too close to wall
|
||||
delete_atoms overlap 0.9 bulk wall
|
||||
System init for delete_atoms ...
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command delete_atoms, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Deleted 0 atoms, new total = 2775
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude group wall wall
|
||||
|
||||
velocity bulk create $T 78915 dist gaussian rot yes mom yes loop geom
|
||||
velocity bulk create 2 78915 dist gaussian rot yes mom yes loop geom
|
||||
|
||||
#####################################################################
|
||||
#set up PUT
|
||||
#see Evans and Morriss, Phys. Rev. Lett. 56(20) 1986, p. 2172
|
||||
|
||||
#average number of particles per box, Evans and Morriss used 2.0
|
||||
variable NperBox equal 8.0
|
||||
|
||||
#calculate box sizes
|
||||
variable boxSide equal sqrt(${NperBox}/${dens})
|
||||
variable boxSide equal sqrt(8/${dens})
|
||||
variable boxSide equal sqrt(8/0.8)
|
||||
variable nX equal round(lx/${boxSide})
|
||||
variable nX equal round(lx/3.16227766016838)
|
||||
variable nY equal round(ly/${boxSide})
|
||||
variable nY equal round(ly/3.16227766016838)
|
||||
variable dX equal lx/${nX}
|
||||
variable dX equal lx/32
|
||||
variable dY equal ly/${nY}
|
||||
variable dY equal ly/13
|
||||
|
||||
#temperature of fluid (excluding wall)
|
||||
compute myT bulk temp
|
||||
|
||||
#profile-unbiased temperature of fluid
|
||||
compute myTp bulk temp/profile 1 1 0 xy ${nX} ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 13
|
||||
|
||||
#thermo setup
|
||||
thermo ${thermo_rate}
|
||||
thermo 10
|
||||
thermo_style custom step c_myT c_myTp etotal press
|
||||
|
||||
#dump initial configuration
|
||||
# dump 55 all custom 1 all.init.lammpstrj id type x y z vx vy vz
|
||||
# dump 56 wall custom 1 wall.init.lammpstrj id type x y z
|
||||
# dump_modify 55 sort id
|
||||
# dump_modify 56 sort id
|
||||
run 0
|
||||
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.104 | 3.104 | 3.104 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.054601 0.77892922 7.3417096
|
||||
Loop time of 6.85e-07 on 1 procs for 0 steps with 2775 atoms
|
||||
|
||||
146.0% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 6.85e-07 | | |100.00
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 510 ave 510 max 510 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 26406 ave 26406 max 26406 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 26406
|
||||
Ave neighs/atom = 9.5156757
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
# undump 55
|
||||
# undump 56
|
||||
|
||||
#####################################################################
|
||||
#equilibrate without GD
|
||||
|
||||
fix nvt bulk nvt temp $T $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 0.1
|
||||
fix_modify nvt temp myTp
|
||||
WARNING: Temperature for fix modify is not for group all (src/fix_nh.cpp:1391)
|
||||
fix 2 bulk enforce2d
|
||||
|
||||
run ${equil}
|
||||
run 1000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.166 | 3.166 | 3.166 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.054601 0.77892922 7.3417096
|
||||
10 1.9173668 1.9381538 0.77877698 7.6702283
|
||||
20 1.7033651 1.6967466 0.7798044 8.5615039
|
||||
30 1.5026644 1.4718046 0.78461914 9.4308883
|
||||
40 1.4881235 1.4586031 0.79494919 9.6135307
|
||||
50 1.6193439 1.6144665 0.81119835 9.2594114
|
||||
60 1.7405127 1.7576881 0.82966956 8.9525458
|
||||
70 1.7758506 1.7999706 0.84538866 8.9719793
|
||||
80 1.7574736 1.7806782 0.85780732 9.1938511
|
||||
90 1.7492232 1.7720284 0.86895259 9.3714617
|
||||
100 1.7800292 1.807315 0.88044504 9.3874107
|
||||
110 1.8442295 1.878681 0.89278276 9.2585436
|
||||
120 1.9193695 1.9667163 0.90556381 9.0683654
|
||||
130 1.9885753 2.0478097 0.91782871 8.8815507
|
||||
140 2.04662 2.1105827 0.92850319 8.718882
|
||||
150 2.0957046 2.1672706 0.93677238 8.5718869
|
||||
160 2.144595 2.2210801 0.94188484 8.4089161
|
||||
170 2.1802133 2.2626399 0.9429713 8.2775682
|
||||
180 2.1868284 2.2696504 0.93931537 8.2321283
|
||||
190 2.1838369 2.2706873 0.93069783 8.1970105
|
||||
200 2.1943436 2.2865542 0.91717737 8.0854148
|
||||
210 2.2029439 2.2912731 0.89906796 7.9589187
|
||||
220 2.1891494 2.2768232 0.87764254 7.9016509
|
||||
230 2.1677848 2.2493747 0.85497463 7.8690125
|
||||
240 2.156695 2.2377486 0.83255207 7.8020978
|
||||
250 2.142758 2.2237662 0.81090722 7.7510242
|
||||
260 2.1177881 2.1967699 0.79016944 7.7477503
|
||||
270 2.0862408 2.1669583 0.77040874 7.7740216
|
||||
280 2.0676515 2.1446262 0.75157955 7.7544068
|
||||
290 2.0645498 2.1425534 0.73343008 7.6746729
|
||||
300 2.0563664 2.1358776 0.71562279 7.6114783
|
||||
310 2.0390115 2.1198472 0.69809211 7.581719
|
||||
320 2.0209035 2.1063385 0.68093855 7.5540946
|
||||
330 2.012488 2.1037583 0.66418283 7.4896097
|
||||
340 2.0166095 2.1094212 0.64762479 7.3779677
|
||||
350 2.0172861 2.1072653 0.63109595 7.2807114
|
||||
360 2.0065768 2.0803788 0.6147802 7.2283814
|
||||
370 1.9970858 2.0639903 0.59905362 7.1747592
|
||||
380 1.9925189 2.056563 0.58395055 7.103506
|
||||
390 1.9935388 2.0546596 0.56945318 7.010305
|
||||
400 2.0020199 2.0632095 0.55532013 6.8883647
|
||||
410 2.009157 2.0732883 0.54128082 6.771521
|
||||
420 2.0081687 2.0785184 0.52711525 6.6868076
|
||||
430 1.9990498 2.0705469 0.51283203 6.6343482
|
||||
440 1.9891528 2.0586814 0.4986104 6.5888679
|
||||
450 1.9829175 2.0465778 0.4846738 6.5332233
|
||||
460 1.9745599 2.031067 0.4711878 6.4903915
|
||||
470 1.9581101 2.006674 0.45837961 6.4836654
|
||||
480 1.9367964 1.9732882 0.44656667 6.501731
|
||||
490 1.9258333 1.9561395 0.43605676 6.4879447
|
||||
500 1.9287 1.9571319 0.42678362 6.4296036
|
||||
510 1.9274696 1.9569118 0.41856553 6.3949919
|
||||
520 1.9100149 1.9392424 0.41134511 6.4307452
|
||||
530 1.8827127 1.9059412 0.40536565 6.5126603
|
||||
540 1.8660696 1.8912024 0.40096324 6.5610607
|
||||
550 1.8701883 1.9043254 0.3982457 6.536251
|
||||
560 1.8842923 1.9289528 0.39698123 6.4785367
|
||||
570 1.8906147 1.9462124 0.39684504 6.4547374
|
||||
580 1.8895472 1.9472747 0.39763233 6.4630103
|
||||
590 1.895375 1.9551336 0.39926725 6.449517
|
||||
600 1.9115711 1.9737109 0.40163655 6.3995241
|
||||
610 1.92823 1.9851787 0.404506 6.3499339
|
||||
620 1.9360678 1.9889572 0.40767569 6.3367514
|
||||
630 1.9346853 1.9836719 0.41105958 6.3637995
|
||||
640 1.9266095 1.9757908 0.41472954 6.4212842
|
||||
650 1.9213863 1.9719496 0.41879537 6.4707692
|
||||
660 1.922962 1.9702923 0.42332926 6.4949933
|
||||
670 1.9238956 1.9707534 0.42836303 6.5212631
|
||||
680 1.9212675 1.9740379 0.43388709 6.5608915
|
||||
690 1.9210314 1.976311 0.43982007 6.5904702
|
||||
700 1.928081 1.9868449 0.44610463 6.5915021
|
||||
710 1.9428895 2.0044235 0.45257857 6.5616141
|
||||
720 1.9554783 2.0176139 0.45898384 6.5367529
|
||||
730 1.969838 2.0327907 0.46505662 6.5017635
|
||||
740 1.9840204 2.0467126 0.47058703 6.4649226
|
||||
750 1.9946633 2.0526929 0.47535832 6.4399342
|
||||
760 2.0018048 2.0535606 0.47924291 6.4280737
|
||||
770 1.9991703 2.0483426 0.48222842 6.4537535
|
||||
780 1.9850797 2.0312444 0.48443072 6.5234271
|
||||
790 1.9691589 2.0154006 0.4861158 6.5995894
|
||||
800 1.9612641 2.0031407 0.48754831 6.6430968
|
||||
810 1.9637155 2.0074142 0.48891261 6.6444644
|
||||
820 1.9691691 2.0110229 0.49018604 6.6304512
|
||||
830 1.9763962 2.0190998 0.49130448 6.6060594
|
||||
840 1.9908278 2.0352615 0.49213189 6.5510683
|
||||
850 2.0105715 2.0558403 0.49238435 6.4743276
|
||||
860 2.0227982 2.0645732 0.49173076 6.4260863
|
||||
870 2.015555 2.064081 0.48998228 6.4528588
|
||||
880 1.9889672 2.0320831 0.48722022 6.5532269
|
||||
890 1.9632172 2.0025881 0.48392295 6.6494723
|
||||
900 1.9527429 1.9887196 0.48054642 6.6846937
|
||||
910 1.9567815 1.9953408 0.47726539 6.6606541
|
||||
920 1.9666996 2.0084955 0.47397593 6.6100666
|
||||
930 1.9702885 2.014774 0.47048741 6.5805871
|
||||
940 1.9661802 2.0116846 0.46671831 6.579539
|
||||
950 1.9576953 1.9960728 0.46273983 6.5967841
|
||||
960 1.9428073 1.9802284 0.45879028 6.6395002
|
||||
970 1.9256011 1.9584581 0.45515059 6.6916425
|
||||
980 1.913512 1.9478848 0.45214528 6.7233279
|
||||
990 1.9174938 1.9449699 0.44994026 6.6943867
|
||||
1000 1.9365527 1.9663901 0.44852349 6.6101761
|
||||
Loop time of 0.324261 on 1 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 266452.077 tau/day, 3083.936 timesteps/s, 8.558 Matom-step/s
|
||||
99.2% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.19361 | 0.19361 | 0.19361 | 0.0 | 59.71
|
||||
Neigh | 0.025544 | 0.025544 | 0.025544 | 0.0 | 7.88
|
||||
Comm | 0.0023292 | 0.0023292 | 0.0023292 | 0.0 | 0.72
|
||||
Output | 0.0046269 | 0.0046269 | 0.0046269 | 0.0 | 1.43
|
||||
Modify | 0.092779 | 0.092779 | 0.092779 | 0.0 | 28.61
|
||||
Other | | 0.005374 | | | 1.66
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 527 ave 527 max 527 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24332 ave 24332 max 24332 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24332
|
||||
Ave neighs/atom = 8.7682883
|
||||
Neighbor list builds = 38
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#initialize the COM velocity and run to achieve steady-state
|
||||
|
||||
#calculate velocity to add: V=J/rho_total
|
||||
variable Vadd equal $J*lx*ly/count(bulk)
|
||||
variable Vadd equal 0.1*lx*ly/count(bulk)
|
||||
|
||||
#first remove any COM velocity, then add back the streaming velocity
|
||||
velocity bulk zero linear
|
||||
velocity bulk set ${Vadd} 0.0 0.0 units box sum yes mom no
|
||||
velocity bulk set 0.149532710280374 0.0 0.0 units box sum yes mom no
|
||||
|
||||
fix GD bulk flow/gauss 1 0 0 #energy yes
|
||||
#fix_modify GD energy yes
|
||||
|
||||
run ${stabil}
|
||||
run 1000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Gaussian dynamics package: doi:10.1021/acs.jpcb.6b09387
|
||||
|
||||
@Article{strong_water_2017,
|
||||
title = {The Dynamics of Water in Porous Two-Dimensional Crystals},
|
||||
volume = {121},
|
||||
number = {1},
|
||||
url = {https://doi.org/10.1021/acs.jpcb.6b09387},
|
||||
doi = {10.1021/acs.jpcb.6b09387},
|
||||
urldate = {2016-12-07},
|
||||
journal = {J.~Phys.\ Chem.~B},
|
||||
author = {Strong, Steven E. and Eaves, Joel D.},
|
||||
year = {2017},
|
||||
pages = {189--207}
|
||||
}
|
||||
|
||||
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
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.166 | 3.166 | 3.166 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
1000 1.9477212 1.9663901 0.45928547 6.6176422
|
||||
1010 1.9617328 1.9828061 0.45840963 6.555968
|
||||
1020 1.9570976 1.9825696 0.45782895 6.5690613
|
||||
1030 1.9356292 1.9690101 0.45753984 6.6493822
|
||||
1040 1.9174914 1.9448868 0.4577768 6.7171474
|
||||
1050 1.9202482 1.9432766 0.4588733 6.7039634
|
||||
1060 1.9419998 1.9718217 0.46086407 6.617366
|
||||
1070 1.9666048 1.996346 0.46339522 6.5207175
|
||||
1080 1.9775489 2.0078489 0.46608862 6.4794239
|
||||
1090 1.9725172 2.0005028 0.46876174 6.5044299
|
||||
1100 1.9659582 1.9931537 0.47147394 6.5409107
|
||||
1110 1.9670607 1.9965504 0.47432892 6.5527414
|
||||
1120 1.9716302 1.9984924 0.47732198 6.5530022
|
||||
1130 1.9752703 2.0057031 0.48043914 6.5579379
|
||||
1140 1.976368 2.0061152 0.48358744 6.5719123
|
||||
1150 1.9748014 2.0056689 0.48673155 6.5957896
|
||||
1160 1.9729115 2.0036854 0.48986563 6.6200102
|
||||
1170 1.9702742 2.0016461 0.49302426 6.6455948
|
||||
1180 1.9680418 1.9978705 0.49625385 6.6697165
|
||||
1190 1.9640159 1.9937501 0.49962311 6.7004634
|
||||
1200 1.9616719 1.9932085 0.50320747 6.7253219
|
||||
1210 1.9658831 1.9985624 0.50702861 6.7242078
|
||||
1220 1.9790884 2.0132679 0.51100573 6.688483
|
||||
1230 1.9946749 2.0324782 0.51491484 6.6422423
|
||||
1240 2.0039182 2.0484588 0.5184382 6.6190292
|
||||
1250 2.0033685 2.0545791 0.52130299 6.6322608
|
||||
1260 1.9991533 2.0533011 0.52339221 6.6590872
|
||||
1270 1.9969511 2.0571182 0.5246505 6.6789676
|
||||
1280 1.9911353 2.0488281 0.52501304 6.7125634
|
||||
1290 1.9712819 2.0209437 0.52460315 6.7967237
|
||||
1300 1.9486195 1.9967749 0.5238106 6.886265
|
||||
1310 1.951612 2.0051749 0.52294383 6.8723332
|
||||
1320 1.9800953 2.0397207 0.52186525 6.7537937
|
||||
1330 2.0084961 2.0723584 0.52001894 6.6279995
|
||||
1340 2.021654 2.085105 0.51675149 6.554461
|
||||
1350 2.0193685 2.0672662 0.5117514 6.5349176
|
||||
1360 2.0084017 2.0471065 0.50518646 6.5453141
|
||||
1370 1.994978 2.030683 0.49737164 6.5627932
|
||||
1380 1.9781978 2.0044236 0.48871071 6.5903683
|
||||
1390 1.9572368 1.9833426 0.47978207 6.6326472
|
||||
1400 1.9400481 1.956474 0.47117436 6.6600696
|
||||
1410 1.9380218 1.9552501 0.46336325 6.6314231
|
||||
1420 1.9494747 1.9681145 0.45642218 6.5527615
|
||||
1430 1.9610978 1.9824506 0.4501938 6.4763851
|
||||
1440 1.9639503 1.9890985 0.44452289 6.4375535
|
||||
1450 1.9560428 1.9821594 0.43936988 6.4453654
|
||||
1460 1.9399344 1.9627639 0.43486138 6.488055
|
||||
1470 1.9247229 1.9440629 0.43123378 6.5292381
|
||||
1480 1.9213375 1.9369273 0.42866841 6.5271097
|
||||
1490 1.9265729 1.9383637 0.42719968 6.4940959
|
||||
1500 1.930987 1.9416689 0.4267225 6.4673585
|
||||
1510 1.9303444 1.9418498 0.42714462 6.4648027
|
||||
1520 1.9258423 1.940384 0.42844066 6.4834098
|
||||
1530 1.9131202 1.9296653 0.4306338 6.5390881
|
||||
1540 1.8990016 1.9101025 0.43386405 6.6052091
|
||||
1550 1.9012878 1.9120047 0.43834036 6.6147792
|
||||
1560 1.9153287 1.9388751 0.44404054 6.5851781
|
||||
1570 1.9266928 1.9596147 0.45057056 6.5705776
|
||||
1580 1.9358289 1.9745564 0.45744022 6.5674622
|
||||
1590 1.9415248 1.9818707 0.46425451 6.5778534
|
||||
1600 1.9466876 1.98498 0.47075833 6.5878483
|
||||
1610 1.9557175 1.9930268 0.47674103 6.5777205
|
||||
1620 1.9712902 2.0112337 0.48200984 6.5367922
|
||||
1630 1.9900646 2.0303946 0.48631888 6.4790095
|
||||
1640 1.9960901 2.039173 0.48947508 6.4661574
|
||||
1650 1.9879046 2.0329046 0.49151173 6.504063
|
||||
1660 1.9832967 2.0325843 0.49266284 6.5255647
|
||||
1670 1.9875656 2.034783 0.49313513 6.5093662
|
||||
1680 1.9967654 2.0492931 0.49299896 6.4699787
|
||||
1690 2.0025957 2.0532539 0.49216931 6.4389613
|
||||
1700 2.0022202 2.0424508 0.49070612 6.4276702
|
||||
1710 2.0083188 2.0437945 0.48879489 6.3909243
|
||||
1720 2.0178792 2.0439212 0.48646135 6.3411063
|
||||
1730 2.0210944 2.0444299 0.48367905 6.3141106
|
||||
1740 2.0170566 2.0337564 0.48044951 6.3158785
|
||||
1750 2.0099049 2.0231598 0.47693196 6.3313851
|
||||
1760 1.9990395 2.0132651 0.47329842 6.3631889
|
||||
1770 1.9823237 1.9969291 0.46970233 6.4208124
|
||||
1780 1.9640169 1.9798655 0.4663519 6.4879798
|
||||
1790 1.9457657 1.9626633 0.46348315 6.557165
|
||||
1800 1.9253222 1.9443136 0.46134123 6.6365286
|
||||
1810 1.9123385 1.9339816 0.46011796 6.6879846
|
||||
1820 1.9098744 1.9287702 0.45993599 6.7001355
|
||||
1830 1.9096278 1.9220243 0.460898 6.7020982
|
||||
1840 1.9223081 1.9378963 0.46303724 6.6558132
|
||||
1850 1.9481113 1.9718786 0.46616351 6.5618175
|
||||
1860 1.9704143 1.9931969 0.46987208 6.484088
|
||||
1870 1.9864974 2.017655 0.47377416 6.4360445
|
||||
1880 1.993165 2.0276398 0.47750238 6.4296162
|
||||
1890 1.9852177 2.0249022 0.48088382 6.4843765
|
||||
1900 1.9692398 2.0101062 0.4839255 6.5735477
|
||||
1910 1.9516968 1.9893586 0.48689095 6.6692995
|
||||
1920 1.9380452 1.9750949 0.49014596 6.7488323
|
||||
1930 1.9323223 1.9719977 0.49399992 6.7947629
|
||||
1940 1.9402144 1.9786701 0.49859677 6.7846787
|
||||
1950 1.9589972 1.9956447 0.50392573 6.7291499
|
||||
1960 1.979631 2.0201087 0.50984934 6.6648708
|
||||
1970 2.0002749 2.0392081 0.51605302 6.6026647
|
||||
1980 2.0143746 2.0524405 0.52221277 6.5687042
|
||||
1990 2.0166553 2.0466885 0.5281276 6.5835144
|
||||
2000 2.0130617 2.0424179 0.53381506 6.6234083
|
||||
Loop time of 0.33442 on 1 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 258357.633 tau/day, 2990.250 timesteps/s, 8.298 Matom-step/s
|
||||
99.5% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.19616 | 0.19616 | 0.19616 | 0.0 | 58.66
|
||||
Neigh | 0.023799 | 0.023799 | 0.023799 | 0.0 | 7.12
|
||||
Comm | 0.0022819 | 0.0022819 | 0.0022819 | 0.0 | 0.68
|
||||
Output | 0.0046967 | 0.0046967 | 0.0046967 | 0.0 | 1.40
|
||||
Modify | 0.10212 | 0.10212 | 0.10212 | 0.0 | 30.54
|
||||
Other | | 0.005366 | | | 1.60
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 530 ave 530 max 530 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24370 ave 24370 max 24370 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24370
|
||||
Ave neighs/atom = 8.781982
|
||||
Neighbor list builds = 35
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#collect data
|
||||
|
||||
#print the applied force and total flux to ensure conservation of Jx
|
||||
variable Fapp equal f_GD[1]
|
||||
compute vxBulk bulk reduce sum vx
|
||||
compute vyBulk bulk reduce sum vy
|
||||
variable invVol equal 1.0/(lx*ly)
|
||||
variable jx equal c_vxBulk*${invVol}
|
||||
variable jx equal c_vxBulk*0.00025
|
||||
variable jy equal c_vyBulk*${invVol}
|
||||
variable jy equal c_vyBulk*0.00025
|
||||
variable curr_step equal step
|
||||
variable p_Fapp format Fapp %.3f
|
||||
variable p_jx format jx %.5g
|
||||
variable p_jy format jy %.5g
|
||||
fix print_vCOM all print ${dump_rate} "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
fix print_vCOM all print 50 "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
|
||||
#compute IK1 pressure profile
|
||||
#see Todd, Evans, and Davis, Phys. Rev. E 52(2) 1995, p. 1627
|
||||
#use profile-unbiased temperature to remove the streaming velocity
|
||||
#from the kinetic part of the pressure
|
||||
compute spa bulk stress/atom myTp
|
||||
|
||||
#for the pressure profile, use the same grid as the PUT
|
||||
compute chunkX bulk chunk/atom bin/1d x lower ${dX} units box
|
||||
compute chunkX bulk chunk/atom bin/1d x lower 3.125 units box
|
||||
|
||||
#output pressure profile and other profiles
|
||||
#the pressure profile is (-1/2V)*(c_spa[1] + c_spa[2]), where
|
||||
#V is the volume of a slice
|
||||
fix profiles bulk ave/chunk 1 1 ${dump_rate} chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
fix profiles bulk ave/chunk 1 1 50 chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
|
||||
#compute velocity profile across the pipe with a finer grid
|
||||
variable dYnew equal ${dY}/10
|
||||
variable dYnew equal 3.07692307692308/10
|
||||
compute chunkY bulk chunk/atom bin/1d y center ${dYnew} units box region pipe
|
||||
compute chunkY bulk chunk/atom bin/1d y center 0.307692307692308 units box region pipe
|
||||
fix velYprof bulk ave/chunk 1 1 ${dump_rate} chunkY vx file Vy_profile ave running overwrite
|
||||
fix velYprof bulk ave/chunk 1 1 50 chunkY vx file Vy_profile ave running overwrite
|
||||
|
||||
#full trajectory
|
||||
# dump 7 bulk custom ${dump_rate} bulk.lammpstrj id type x y z
|
||||
# dump_modify 7 sort id
|
||||
|
||||
run ${run}
|
||||
run 2000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.175 | 5.175 | 5.175 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
2000 2.0130617 2.0424179 0.53381506 6.6234083
|
||||
2010 2.011712 2.0399428 0.53937165 6.6546944
|
||||
2020 2.0177252 2.0516588 0.54483848 6.6575988
|
||||
2030 2.0192267 2.054258 0.55012466 6.6761208
|
||||
2040 2.0155308 2.0513866 0.55518707 6.7132509
|
||||
2050 2.016831 2.0539288 0.56007247 6.7306192
|
||||
2060 2.0213378 2.0690043 0.56479732 6.7330132
|
||||
2070 2.0292987 2.0799825 0.56913353 6.7186216
|
||||
2080 2.0342188 2.0900923 0.57283821 6.7098434
|
||||
2090 2.0376411 2.096351 0.57566175 6.6998818
|
||||
2100 2.053128 2.1238481 0.57727694 6.637431
|
||||
2110 2.0783941 2.1609599 0.5768993 6.5304031
|
||||
2120 2.0887269 2.1760645 0.57341638 6.4706853
|
||||
2130 2.06944 2.1522354 0.5659988 6.5099284
|
||||
2140 2.0380605 2.115767 0.55466476 6.5802578
|
||||
2150 2.0195872 2.0868424 0.54025148 6.5885111
|
||||
2160 2.0061251 2.069266 0.52417244 6.5682875
|
||||
2170 1.992682 2.0526743 0.50812177 6.5470052
|
||||
2180 1.9816004 2.0352692 0.49354583 6.5244099
|
||||
2190 1.9688265 2.0226679 0.4811848 6.5185172
|
||||
2200 1.9574266 2.000155 0.47107703 6.5176047
|
||||
2210 1.9502736 1.9925522 0.46298224 6.5078398
|
||||
2220 1.9475332 1.9936032 0.45641728 6.4850252
|
||||
2230 1.9545128 2.0045053 0.45087489 6.4291405
|
||||
2240 1.9627871 2.0112148 0.44588526 6.3715676
|
||||
2250 1.9617694 2.0073769 0.44121477 6.3541518
|
||||
2260 1.9579423 2.0079137 0.43675541 6.3542735
|
||||
2270 1.9475845 1.998983 0.43243494 6.3854071
|
||||
2280 1.9253275 1.9715083 0.42839782 6.464845
|
||||
2290 1.8996763 1.9456257 0.42496367 6.5591177
|
||||
2300 1.8823546 1.9240543 0.42247729 6.6211062
|
||||
2310 1.8844318 1.9216768 0.42116372 6.6085376
|
||||
2320 1.8965287 1.933936 0.42103218 6.5584198
|
||||
2330 1.902103 1.9433708 0.421956 6.5350698
|
||||
2340 1.9061826 1.950462 0.42378825 6.5228738
|
||||
2350 1.9180306 1.961141 0.42644522 6.489172
|
||||
2360 1.9296124 1.9748542 0.42981448 6.4628168
|
||||
2370 1.9328566 1.9718181 0.43373762 6.4721746
|
||||
2380 1.9360042 1.9769998 0.43819906 6.4840942
|
||||
2390 1.9387073 1.9778749 0.44317927 6.49778
|
||||
2400 1.9445619 1.9882647 0.4486142 6.4971899
|
||||
2410 1.9553344 1.9997412 0.45435544 6.4749774
|
||||
2420 1.9710783 2.0211926 0.46019236 6.4320181
|
||||
2430 1.9903873 2.046553 0.46575694 6.3751343
|
||||
2440 2.0041158 2.0721071 0.47060398 6.3415121
|
||||
2450 2.0020392 2.0728953 0.47431806 6.3708096
|
||||
2460 1.9839851 2.0568906 0.47681718 6.465129
|
||||
2470 1.9566365 2.0258852 0.47838596 6.5966256
|
||||
2480 1.929674 2.0032606 0.47952215 6.7260074
|
||||
2490 1.9153613 1.990031 0.48061628 6.8035919
|
||||
2500 1.9188373 1.9920514 0.4819225 6.8075788
|
||||
2510 1.9371656 2.0138698 0.48343533 6.7492701
|
||||
2520 1.9566481 2.0340995 0.48485699 6.6821181
|
||||
2530 1.9636141 2.0389496 0.48583392 6.6581326
|
||||
2540 1.9585172 2.0207113 0.48622314 6.6762792
|
||||
2550 1.9516934 2.0024186 0.48621721 6.6980104
|
||||
2560 1.9509543 1.9960852 0.48612286 6.6946311
|
||||
2570 1.9601672 2.0072552 0.48602872 6.6528934
|
||||
2580 1.973804 2.0230879 0.48576601 6.5942862
|
||||
2590 1.9788378 2.034436 0.48505027 6.5689819
|
||||
2600 1.9716493 2.0208578 0.48368043 6.5897554
|
||||
2610 1.9618006 2.007098 0.48174365 6.6188626
|
||||
2620 1.9631458 2.0075461 0.4793429 6.6026194
|
||||
2630 1.9706918 2.0174955 0.47638698 6.5591053
|
||||
2640 1.9759585 2.0213828 0.47264742 6.5198595
|
||||
2650 1.9761708 2.0225139 0.46794373 6.4977306
|
||||
2660 1.9611574 2.0083871 0.46221598 6.5299021
|
||||
2670 1.9342882 1.9720247 0.45576624 6.6034695
|
||||
2680 1.9142009 1.9520382 0.44913109 6.6474082
|
||||
2690 1.9052096 1.9428107 0.4426988 6.645123
|
||||
2700 1.902446 1.9459937 0.43672046 6.6152926
|
||||
2710 1.9099036 1.9594727 0.43120889 6.5473804
|
||||
2720 1.9180788 1.9767479 0.42599739 6.4792536
|
||||
2730 1.9142892 1.9798275 0.42092791 6.4604982
|
||||
2740 1.9019844 1.9674244 0.41601841 6.4795855
|
||||
2750 1.8895632 1.958412 0.41144638 6.5037424
|
||||
2760 1.8824401 1.9494985 0.40739848 6.5113925
|
||||
2770 1.8852759 1.9525073 0.40398809 6.484535
|
||||
2780 1.8998168 1.9664907 0.40114076 6.4159782
|
||||
2790 1.9153937 1.9810349 0.39863439 6.346934
|
||||
2800 1.9162707 1.9824285 0.39627973 6.3364828
|
||||
2810 1.9087999 1.9666258 0.39408314 6.360755
|
||||
2820 1.9073152 1.956153 0.39226387 6.3655719
|
||||
2830 1.9091743 1.9493705 0.39098546 6.3595054
|
||||
2840 1.9042021 1.9424118 0.39036698 6.381752
|
||||
2850 1.8901401 1.9353495 0.39057524 6.4417859
|
||||
2860 1.872943 1.915215 0.39190057 6.5158585
|
||||
2870 1.8732626 1.9181551 0.39474702 6.5269257
|
||||
2880 1.8931021 1.9396049 0.39938934 6.467715
|
||||
2890 1.9217069 1.9733171 0.40581935 6.3811936
|
||||
2900 1.9452213 1.9949806 0.41374968 6.3217226
|
||||
2910 1.9591065 2.0105363 0.42280483 6.3087055
|
||||
2920 1.9649158 2.0234068 0.43256139 6.3353204
|
||||
2930 1.9647653 2.0265233 0.4425691 6.3902862
|
||||
2940 1.9623876 2.0281154 0.45237409 6.4560778
|
||||
2950 1.9591057 2.0276078 0.46164197 6.5239614
|
||||
2960 1.9556907 2.0254377 0.47016674 6.5883236
|
||||
2970 1.9524475 2.0203546 0.47782337 6.6457078
|
||||
2980 1.9556442 2.0212175 0.48459527 6.6731473
|
||||
2990 1.9663638 2.0285202 0.49047217 6.667322
|
||||
3000 1.976263 2.0326354 0.49540098 6.6601492
|
||||
3010 1.9734917 2.0251301 0.49938916 6.6970878
|
||||
3020 1.955368 1.9974693 0.50265656 6.7865104
|
||||
3030 1.9476644 1.9780945 0.50564273 6.8327176
|
||||
3040 1.9584769 1.9887952 0.50867872 6.8046262
|
||||
3050 1.9705616 2.0030557 0.51168699 6.7669575
|
||||
3060 1.9766986 2.0112576 0.51444822 6.74919
|
||||
3070 1.9766671 2.0076853 0.51685838 6.7523339
|
||||
3080 1.9763383 2.0045916 0.51896849 6.7532253
|
||||
3090 1.9855877 2.0260371 0.52081442 6.7160131
|
||||
3100 2.0011042 2.042205 0.52215192 6.653598
|
||||
3110 2.0039819 2.0511266 0.52275172 6.6355885
|
||||
3120 1.9958773 2.0457899 0.52253307 6.6565817
|
||||
3130 1.9933925 2.04521 0.52158082 6.6543706
|
||||
3140 1.9936643 2.0477262 0.51996279 6.639564
|
||||
3150 1.9921223 2.0455965 0.51768794 6.6291901
|
||||
3160 1.9914788 2.0365842 0.51483187 6.6154874
|
||||
3170 1.9922866 2.0422451 0.51144092 6.5976334
|
||||
3180 1.9872806 2.0376593 0.50747923 6.6043774
|
||||
3190 1.9708577 2.0198422 0.50308657 6.6551127
|
||||
3200 1.9534272 1.9982319 0.49857904 6.7093718
|
||||
3210 1.9423425 1.9876311 0.49429833 6.7370529
|
||||
3220 1.941974 1.984738 0.49043179 6.7218879
|
||||
3230 1.9456357 1.9916666 0.48697785 6.6917144
|
||||
3240 1.9392412 1.9874858 0.48388805 6.7004046
|
||||
3250 1.9312152 1.9814714 0.4812083 6.7175714
|
||||
3260 1.9364393 1.9840125 0.47897357 6.6870787
|
||||
3270 1.9490184 1.9871802 0.47715672 6.6308261
|
||||
3280 1.9578901 1.9917218 0.47568803 6.589659
|
||||
3290 1.9598612 1.9918098 0.47449561 6.5756965
|
||||
3300 1.9538424 1.9845316 0.47357576 6.5931068
|
||||
3310 1.944957 1.9676243 0.47302774 6.6211221
|
||||
3320 1.9479975 1.9720828 0.47296613 6.6058089
|
||||
3330 1.9569283 1.98719 0.47330356 6.5698601
|
||||
3340 1.9558114 1.9861834 0.47383928 6.5729191
|
||||
3350 1.9461606 1.9777192 0.47452365 6.6090135
|
||||
3360 1.942095 1.9776297 0.47540879 6.6255417
|
||||
3370 1.9482423 1.981145 0.47643851 6.6032207
|
||||
3380 1.9564098 1.992645 0.47752314 6.5736007
|
||||
3390 1.9607986 2.0006048 0.47852085 6.5587348
|
||||
3400 1.9595637 2.0047228 0.47933656 6.5656692
|
||||
3410 1.9628181 2.013785 0.47991082 6.5570579
|
||||
3420 1.9698466 2.0200788 0.48018617 6.536373
|
||||
3430 1.969877 2.0210764 0.48013786 6.543084
|
||||
3440 1.96327 2.0103631 0.47979187 6.5761448
|
||||
3450 1.9566516 1.9996494 0.47933398 6.6098616
|
||||
3460 1.9511915 1.9976175 0.47891646 6.6401481
|
||||
3470 1.9410601 1.9950284 0.47859124 6.6862584
|
||||
3480 1.9307395 1.98193 0.47840998 6.7307929
|
||||
3490 1.9206678 1.9678856 0.47853003 6.7702613
|
||||
3500 1.9139405 1.955324 0.47914241 6.7934071
|
||||
3510 1.9206383 1.957176 0.48041531 6.763312
|
||||
3520 1.9449301 1.9816996 0.4823109 6.6651453
|
||||
3530 1.9752924 2.0115126 0.48452681 6.5438659
|
||||
3540 1.9951599 2.037759 0.48660439 6.463461
|
||||
3550 2.00071 2.0413872 0.48813252 6.4405933
|
||||
3560 1.9939017 2.0277566 0.48901382 6.4684771
|
||||
3570 1.9766844 2.0031366 0.48946452 6.5392906
|
||||
3580 1.9600495 1.9790718 0.48988281 6.6106541
|
||||
3590 1.9522334 1.9727673 0.49062615 6.6517495
|
||||
3600 1.9522007 1.9829458 0.49183552 6.6635632
|
||||
3610 1.9614098 1.9992781 0.49340617 6.6407777
|
||||
3620 1.9739926 2.0159629 0.49511752 6.6062456
|
||||
3630 1.9726539 2.0152219 0.49675445 6.6254361
|
||||
3640 1.9613098 2.0017247 0.49829011 6.6828523
|
||||
3650 1.9577727 2.0000723 0.49991877 6.7111788
|
||||
3660 1.9626403 2.0037309 0.50175296 6.7072182
|
||||
3670 1.9603974 1.9937256 0.50383808 6.7277464
|
||||
3680 1.9532611 1.9846903 0.50638428 6.766139
|
||||
3690 1.9541656 1.9798331 0.50962883 6.7752527
|
||||
3700 1.9656726 1.9951191 0.51377056 6.7462001
|
||||
3710 1.9834474 2.0193011 0.5187681 6.6957856
|
||||
3720 2.0017372 2.0396413 0.52433682 6.6470375
|
||||
3730 2.0109702 2.0469463 0.53011728 6.6363717
|
||||
3740 2.0096859 2.0458572 0.53588234 6.6682277
|
||||
3750 2.0066189 2.0519843 0.54153099 6.7085484
|
||||
3760 2.0096126 2.0561094 0.54689937 6.7250788
|
||||
3770 2.0117777 2.0668795 0.55183559 6.7400961
|
||||
3780 2.0154601 2.0763941 0.55607392 6.7423369
|
||||
3790 2.0313954 2.0972106 0.55930714 6.6920109
|
||||
3800 2.0496133 2.1176374 0.56110467 6.6271089
|
||||
3810 2.0553084 2.1205041 0.56098738 6.6034667
|
||||
3820 2.0478771 2.1131255 0.5587031 6.6239895
|
||||
3830 2.0342107 2.0991257 0.55418078 6.6632309
|
||||
3840 2.0142205 2.0767164 0.5475632 6.7196407
|
||||
3850 1.9879527 2.0516847 0.53919956 6.7932756
|
||||
3860 1.9593315 2.0232738 0.52966135 6.8686984
|
||||
3870 1.9362884 1.9952027 0.51970091 6.9156688
|
||||
3880 1.9292997 1.988308 0.50996281 6.8957697
|
||||
3890 1.9372437 1.9978667 0.50073928 6.8160964
|
||||
3900 1.949918 2.0107188 0.49208883 6.7186535
|
||||
3910 1.9547594 2.0160936 0.48397839 6.6537347
|
||||
3920 1.9543568 2.0191268 0.47640162 6.6136066
|
||||
3930 1.9582199 2.020036 0.46933873 6.5629723
|
||||
3940 1.9644632 2.0304626 0.4627222 6.5077173
|
||||
3950 1.9645883 2.030183 0.45644411 6.4795254
|
||||
3960 1.9546999 2.0197243 0.45050582 6.4943661
|
||||
3970 1.9424307 2.0063453 0.44500624 6.5237706
|
||||
3980 1.9281472 1.9910524 0.44010499 6.5640156
|
||||
3990 1.9168821 1.976369 0.43594016 6.592621
|
||||
4000 1.9150056 1.9752502 0.43256473 6.5855641
|
||||
Loop time of 0.696491 on 1 procs for 2000 steps with 2775 atoms
|
||||
|
||||
Performance: 248100.709 tau/day, 2871.536 timesteps/s, 7.969 Matom-step/s
|
||||
99.0% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.39664 | 0.39664 | 0.39664 | 0.0 | 56.95
|
||||
Neigh | 0.051502 | 0.051502 | 0.051502 | 0.0 | 7.39
|
||||
Comm | 0.0047546 | 0.0047546 | 0.0047546 | 0.0 | 0.68
|
||||
Output | 0.0095092 | 0.0095092 | 0.0095092 | 0.0 | 1.37
|
||||
Modify | 0.22322 | 0.22322 | 0.22322 | 0.0 | 32.05
|
||||
Other | | 0.01087 | | | 1.56
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 512 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24313 ave 24313 max 24313 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24313
|
||||
Ave neighs/atom = 8.7614414
|
||||
Neighbor list builds = 75
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
941
examples/PACKAGES/flow_gauss/log.6Dec23.GD.g++.4
Normal file
941
examples/PACKAGES/flow_gauss/log.6Dec23.GD.g++.4
Normal file
@ -0,0 +1,941 @@
|
||||
LAMMPS (21 Nov 2023 - Development - patch_21Nov2023-132-g9edf553332)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
#LAMMPS input script
|
||||
#in.GD
|
||||
#see README for details
|
||||
|
||||
###############################################################################
|
||||
#initialize variables
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
#frequency for outputting info (timesteps)
|
||||
variable dump_rate equal 50
|
||||
variable thermo_rate equal 10
|
||||
|
||||
#equilibration time (timesteps)
|
||||
variable equil equal 1000
|
||||
|
||||
#stabilization time (timesteps to reach steady-state)
|
||||
variable stabil equal 1000
|
||||
|
||||
#data collection time (timesteps)
|
||||
variable run equal 2000
|
||||
|
||||
#length of pipe
|
||||
variable L equal 30
|
||||
|
||||
#width of pipe
|
||||
variable d equal 20
|
||||
|
||||
#flux (mass/sigma*tau)
|
||||
variable J equal 0.1
|
||||
|
||||
#simulation box dimensions
|
||||
variable Lx equal 100
|
||||
variable Ly equal 40
|
||||
|
||||
#bulk fluid density
|
||||
variable dens equal 0.8
|
||||
|
||||
#lattice spacing for wall atoms
|
||||
variable aWall equal 1.0 #1.7472
|
||||
|
||||
#timestep
|
||||
variable ts equal 0.001
|
||||
|
||||
#temperature
|
||||
variable T equal 2.0
|
||||
|
||||
#thermostat damping constant
|
||||
variable tdamp equal ${ts}*100
|
||||
variable tdamp equal 0.001*100
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style atomic
|
||||
|
||||
|
||||
###############################################################################
|
||||
#create box
|
||||
|
||||
#create lattice with the spacing aWall
|
||||
variable rhoWall equal ${aWall}^(-2)
|
||||
variable rhoWall equal 1^(-2)
|
||||
lattice sq ${rhoWall}
|
||||
lattice sq 1
|
||||
Lattice spacing in x,y,z = 1 1 1
|
||||
|
||||
#modify input dimensions to be multiples of aWall
|
||||
variable L1 equal round($L/${aWall})*${aWall}
|
||||
variable L1 equal round(30/${aWall})*${aWall}
|
||||
variable L1 equal round(30/1)*${aWall}
|
||||
variable L1 equal round(30/1)*1
|
||||
variable d1 equal round($d/${aWall})*${aWall}
|
||||
variable d1 equal round(20/${aWall})*${aWall}
|
||||
variable d1 equal round(20/1)*${aWall}
|
||||
variable d1 equal round(20/1)*1
|
||||
variable Ly1 equal round(${Ly}/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/1)*${aWall}
|
||||
variable Ly1 equal round(40/1)*1
|
||||
variable Lx1 equal round(${Lx}/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/1)*${aWall}
|
||||
variable Lx1 equal round(100/1)*1
|
||||
|
||||
#create simulation box
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
variable ly2 equal ${Ly1}/2
|
||||
variable ly2 equal 40/2
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 ${lx2} -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -${ly2} ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -20 ${ly2} -0.1 0.1 units box
|
||||
region simbox block -50 50 -20 20 -0.1 0.1 units box
|
||||
create_box 2 simbox
|
||||
Created orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
4 by 1 by 1 MPI processor grid
|
||||
|
||||
#####################################################################
|
||||
#set up potential
|
||||
|
||||
mass 1 1.0 #fluid atoms
|
||||
mass 2 1.0 #wall atoms
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_coeff 1 2 1.0 1.0 1.12246
|
||||
pair_coeff 2 2 0.0 0.0
|
||||
|
||||
neigh_modify exclude type 2 2
|
||||
|
||||
timestep ${ts}
|
||||
timestep 0.001
|
||||
|
||||
#####################################################################
|
||||
#create atoms
|
||||
|
||||
#create wall atoms everywhere
|
||||
create_atoms 2 box
|
||||
Created 4000 atoms
|
||||
using lattice units in orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
#define region which is "walled off"
|
||||
variable dhalf equal ${d1}/2
|
||||
variable dhalf equal 20/2
|
||||
variable Lhalf equal ${L1}/2
|
||||
variable Lhalf equal 30/2
|
||||
region walltop block -${Lhalf} ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 10 EDGE -0.1 0.1 units box
|
||||
region wallbot block -${Lhalf} ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -10 -0.1 0.1 units box
|
||||
region outsidewall union 2 walltop wallbot side out
|
||||
|
||||
#remove wall atoms outside wall region
|
||||
group outside region outsidewall
|
||||
3349 atoms in group outside
|
||||
delete_atoms group outside
|
||||
Deleted 3349 atoms, new total = 651
|
||||
|
||||
#remove wall atoms that aren't on edge of wall region
|
||||
variable x1 equal ${Lhalf}-${aWall}
|
||||
variable x1 equal 15-${aWall}
|
||||
variable x1 equal 15-1
|
||||
variable y1 equal ${dhalf}+${aWall}
|
||||
variable y1 equal 10+${aWall}
|
||||
variable y1 equal 10+1
|
||||
region insideTop block -${x1} ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 11 EDGE -0.1 0.1 units box
|
||||
region insideBot block -${x1} ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -11 -0.1 0.1 units box
|
||||
region insideWall union 2 insideTop insideBot
|
||||
group insideWall region insideWall
|
||||
551 atoms in group insideWall
|
||||
delete_atoms group insideWall
|
||||
Deleted 551 atoms, new total = 100
|
||||
|
||||
#define new lattice, to give correct fluid density
|
||||
#y lattice const must be a multiple of aWall
|
||||
variable atrue equal ${dens}^(-1/2)
|
||||
variable atrue equal 0.8^(-1/2)
|
||||
variable ay equal round(${atrue}/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*1
|
||||
|
||||
#choose x lattice const to give correct density
|
||||
variable ax equal (${ay}*${dens})^(-1)
|
||||
variable ax equal (1*${dens})^(-1)
|
||||
variable ax equal (1*0.8)^(-1)
|
||||
|
||||
#change Lx to be multiple of ax
|
||||
variable Lx1 equal round(${Lx}/${ax})*${ax}
|
||||
variable Lx1 equal round(100/${ax})*${ax}
|
||||
variable Lx1 equal round(100/1.25)*${ax}
|
||||
variable Lx1 equal round(100/1.25)*1.25
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
change_box all x final -${lx2} ${lx2} units box
|
||||
change_box all x final -50 ${lx2} units box
|
||||
change_box all x final -50 50 units box
|
||||
Changing box ...
|
||||
orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
|
||||
#define new lattice
|
||||
lattice custom ${dens} a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 1 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
Lattice spacing in x,y,z = 1.25 1 1
|
||||
|
||||
#fill in rest of box with bulk particles
|
||||
variable delta equal 0.001
|
||||
variable Ldelt equal ${Lhalf}+${delta}
|
||||
variable Ldelt equal 15+${delta}
|
||||
variable Ldelt equal 15+0.001
|
||||
variable dDelt equal ${dhalf}-${delta}
|
||||
variable dDelt equal 10-${delta}
|
||||
variable dDelt equal 10-0.001
|
||||
region left block EDGE -${Ldelt} EDGE EDGE -0.1 0.1 units box
|
||||
region left block EDGE -15.001 EDGE EDGE -0.1 0.1 units box
|
||||
region right block ${Ldelt} EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region right block 15.001 EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region pipe block -${Ldelt} ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 9.999 -0.1 0.1 units box
|
||||
|
||||
region bulk union 3 left pipe right
|
||||
create_atoms 1 region bulk
|
||||
Created 2675 atoms
|
||||
using lattice units in orthogonal box = (-50 -20 -0.1) to (50 20 0.1)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
group bulk type 1
|
||||
2675 atoms in group bulk
|
||||
group wall type 2
|
||||
100 atoms in group wall
|
||||
|
||||
#remove atoms that are too close to wall
|
||||
delete_atoms overlap 0.9 bulk wall
|
||||
System init for delete_atoms ...
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command delete_atoms, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Deleted 0 atoms, new total = 2775
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude group wall wall
|
||||
|
||||
velocity bulk create $T 78915 dist gaussian rot yes mom yes loop geom
|
||||
velocity bulk create 2 78915 dist gaussian rot yes mom yes loop geom
|
||||
|
||||
#####################################################################
|
||||
#set up PUT
|
||||
#see Evans and Morriss, Phys. Rev. Lett. 56(20) 1986, p. 2172
|
||||
|
||||
#average number of particles per box, Evans and Morriss used 2.0
|
||||
variable NperBox equal 8.0
|
||||
|
||||
#calculate box sizes
|
||||
variable boxSide equal sqrt(${NperBox}/${dens})
|
||||
variable boxSide equal sqrt(8/${dens})
|
||||
variable boxSide equal sqrt(8/0.8)
|
||||
variable nX equal round(lx/${boxSide})
|
||||
variable nX equal round(lx/3.16227766016838)
|
||||
variable nY equal round(ly/${boxSide})
|
||||
variable nY equal round(ly/3.16227766016838)
|
||||
variable dX equal lx/${nX}
|
||||
variable dX equal lx/32
|
||||
variable dY equal ly/${nY}
|
||||
variable dY equal ly/13
|
||||
|
||||
#temperature of fluid (excluding wall)
|
||||
compute myT bulk temp
|
||||
|
||||
#profile-unbiased temperature of fluid
|
||||
compute myTp bulk temp/profile 1 1 0 xy ${nX} ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 13
|
||||
|
||||
#thermo setup
|
||||
thermo ${thermo_rate}
|
||||
thermo 10
|
||||
thermo_style custom step c_myT c_myTp etotal press
|
||||
|
||||
#dump initial configuration
|
||||
# dump 55 all custom 1 all.init.lammpstrj id type x y z vx vy vz
|
||||
# dump 56 wall custom 1 wall.init.lammpstrj id type x y z
|
||||
# dump_modify 55 sort id
|
||||
# dump_modify 56 sort id
|
||||
run 0
|
||||
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.068 | 3.069 | 3.071 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.054601 0.77892922 7.3417096
|
||||
Loop time of 1.90125e-06 on 4 procs for 0 steps with 2775 atoms
|
||||
|
||||
26.3% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 1.901e-06 | | |100.00
|
||||
|
||||
Nlocal: 693.75 ave 800 max 578 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 266.25 ave 325 max 198 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 6601.5 ave 8000 max 5147 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 26406
|
||||
Ave neighs/atom = 9.5156757
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
# undump 55
|
||||
# undump 56
|
||||
|
||||
#####################################################################
|
||||
#equilibrate without GD
|
||||
|
||||
fix nvt bulk nvt temp $T $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 0.1
|
||||
fix_modify nvt temp myTp
|
||||
WARNING: Temperature for fix modify is not for group all (src/fix_nh.cpp:1391)
|
||||
fix 2 bulk enforce2d
|
||||
|
||||
run ${equil}
|
||||
run 1000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.131 | 3.132 | 3.133 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.054601 0.77892922 7.3417096
|
||||
10 1.9173668 1.9381538 0.77877698 7.6702283
|
||||
20 1.7033651 1.6967466 0.7798044 8.5615039
|
||||
30 1.5026644 1.4718046 0.78461914 9.4308883
|
||||
40 1.4881235 1.4586031 0.79494919 9.6135307
|
||||
50 1.6193439 1.6144665 0.81119835 9.2594114
|
||||
60 1.7405127 1.7576881 0.82966956 8.9525458
|
||||
70 1.7758506 1.7999706 0.84538866 8.9719793
|
||||
80 1.7574736 1.7806782 0.85780732 9.1938511
|
||||
90 1.7492232 1.7720284 0.86895259 9.3714617
|
||||
100 1.7800292 1.807315 0.88044504 9.3874107
|
||||
110 1.8442295 1.878681 0.89278276 9.2585436
|
||||
120 1.9193695 1.9667163 0.90556381 9.0683654
|
||||
130 1.9885753 2.0478097 0.91782871 8.8815507
|
||||
140 2.04662 2.1105827 0.92850319 8.718882
|
||||
150 2.0957046 2.1672706 0.93677238 8.5718869
|
||||
160 2.144595 2.2210801 0.94188484 8.4089161
|
||||
170 2.1802133 2.2626399 0.9429713 8.2775682
|
||||
180 2.1868284 2.2696504 0.93931537 8.2321283
|
||||
190 2.1838369 2.2706873 0.93069783 8.1970105
|
||||
200 2.1943436 2.2865542 0.91717737 8.0854148
|
||||
210 2.2029439 2.2912731 0.89906796 7.9589187
|
||||
220 2.1891494 2.2768232 0.87764254 7.9016509
|
||||
230 2.1677848 2.2493747 0.85497463 7.8690125
|
||||
240 2.156695 2.2377486 0.83255207 7.8020978
|
||||
250 2.142758 2.2237662 0.81090722 7.7510242
|
||||
260 2.1177881 2.1967699 0.79016944 7.7477503
|
||||
270 2.0862408 2.1669583 0.77040874 7.7740216
|
||||
280 2.0676515 2.1446262 0.75157955 7.7544068
|
||||
290 2.0645498 2.1425534 0.73343008 7.6746729
|
||||
300 2.0563664 2.1358776 0.71562279 7.6114783
|
||||
310 2.0390115 2.1198472 0.69809211 7.581719
|
||||
320 2.0209035 2.1063385 0.68093855 7.5540946
|
||||
330 2.012488 2.1037583 0.66418283 7.4896097
|
||||
340 2.0166095 2.1094212 0.64762479 7.3779677
|
||||
350 2.0172861 2.1072653 0.63109595 7.2807114
|
||||
360 2.0065768 2.0803788 0.6147802 7.2283814
|
||||
370 1.9970858 2.0639903 0.59905362 7.1747592
|
||||
380 1.9925189 2.056563 0.58395055 7.103506
|
||||
390 1.9935388 2.0546596 0.56945318 7.010305
|
||||
400 2.0020199 2.0632095 0.55532013 6.8883647
|
||||
410 2.009157 2.0732883 0.54128082 6.771521
|
||||
420 2.0081687 2.0785184 0.52711525 6.6868076
|
||||
430 1.9990498 2.0705469 0.51283203 6.6343482
|
||||
440 1.9891528 2.0586814 0.4986104 6.5888679
|
||||
450 1.9829175 2.0465778 0.4846738 6.5332233
|
||||
460 1.9745599 2.031067 0.4711878 6.4903915
|
||||
470 1.9581101 2.006674 0.45837961 6.4836654
|
||||
480 1.9367964 1.9732882 0.44656667 6.501731
|
||||
490 1.9258333 1.9561395 0.43605676 6.4879447
|
||||
500 1.9287 1.9571319 0.42678362 6.4296036
|
||||
510 1.9274696 1.9569118 0.41856553 6.3949919
|
||||
520 1.9100149 1.9392424 0.41134511 6.4307452
|
||||
530 1.8827127 1.9059412 0.40536565 6.5126603
|
||||
540 1.8660696 1.8912024 0.40096324 6.5610607
|
||||
550 1.8701883 1.9043254 0.3982457 6.536251
|
||||
560 1.8842923 1.9289528 0.39698123 6.4785367
|
||||
570 1.8906147 1.9462124 0.39684504 6.4547374
|
||||
580 1.8895472 1.9472747 0.39763233 6.4630103
|
||||
590 1.895375 1.9551336 0.39926725 6.449517
|
||||
600 1.9115711 1.9737109 0.40163655 6.3995241
|
||||
610 1.92823 1.9851787 0.404506 6.3499339
|
||||
620 1.9360678 1.9889572 0.40767569 6.3367514
|
||||
630 1.9346853 1.9836719 0.41105958 6.3637995
|
||||
640 1.9266095 1.9757908 0.41472954 6.4212842
|
||||
650 1.9213863 1.9719496 0.41879537 6.4707692
|
||||
660 1.922962 1.9702923 0.42332926 6.4949933
|
||||
670 1.9238956 1.9707534 0.42836303 6.5212631
|
||||
680 1.9212675 1.9740379 0.43388709 6.5608915
|
||||
690 1.9210314 1.976311 0.43982007 6.5904702
|
||||
700 1.928081 1.9868449 0.44610463 6.5915021
|
||||
710 1.9428895 2.0044235 0.45257857 6.5616141
|
||||
720 1.9554783 2.0176139 0.45898384 6.5367529
|
||||
730 1.969838 2.0327907 0.46505662 6.5017635
|
||||
740 1.9840204 2.0467126 0.47058703 6.4649226
|
||||
750 1.9946633 2.0526929 0.47535832 6.4399342
|
||||
760 2.0018048 2.0535606 0.47924291 6.4280737
|
||||
770 1.9991703 2.0483426 0.48222842 6.4537535
|
||||
780 1.9850797 2.0312444 0.48443072 6.5234271
|
||||
790 1.9691589 2.0154006 0.4861158 6.5995894
|
||||
800 1.9612641 2.0031407 0.48754831 6.6430968
|
||||
810 1.9637155 2.0074142 0.48891261 6.6444644
|
||||
820 1.9691691 2.0110229 0.49018604 6.6304512
|
||||
830 1.9763962 2.0190998 0.49130448 6.6060594
|
||||
840 1.9908278 2.0352615 0.49213189 6.5510683
|
||||
850 2.0105715 2.0558403 0.49238435 6.4743276
|
||||
860 2.0227982 2.0645732 0.49173076 6.4260863
|
||||
870 2.015555 2.064081 0.48998228 6.4528588
|
||||
880 1.9889672 2.0320831 0.48722022 6.5532269
|
||||
890 1.9632172 2.0025881 0.48392295 6.6494723
|
||||
900 1.9527429 1.9887196 0.48054642 6.6846937
|
||||
910 1.9567815 1.9953408 0.47726539 6.6606541
|
||||
920 1.9666996 2.0084955 0.47397593 6.6100666
|
||||
930 1.9702885 2.014774 0.47048741 6.5805871
|
||||
940 1.9661802 2.0116846 0.46671831 6.579539
|
||||
950 1.9576953 1.9960728 0.46273983 6.5967841
|
||||
960 1.9428073 1.9802284 0.45879028 6.6395002
|
||||
970 1.9256011 1.9584581 0.45515059 6.6916425
|
||||
980 1.913512 1.9478848 0.45214528 6.7233279
|
||||
990 1.9174938 1.9449699 0.44994026 6.6943867
|
||||
1000 1.9365527 1.9663901 0.44852349 6.6101761
|
||||
Loop time of 0.136245 on 4 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 634150.810 tau/day, 7339.708 timesteps/s, 20.368 Matom-step/s
|
||||
98.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.05652 | 0.058835 | 0.061144 | 0.7 | 43.18
|
||||
Neigh | 0.0077706 | 0.0082387 | 0.0086435 | 0.4 | 6.05
|
||||
Comm | 0.0079304 | 0.010631 | 0.013709 | 2.5 | 7.80
|
||||
Output | 0.003516 | 0.0036313 | 0.0038326 | 0.2 | 2.67
|
||||
Modify | 0.045283 | 0.048616 | 0.052008 | 1.3 | 35.68
|
||||
Other | | 0.006293 | | | 4.62
|
||||
|
||||
Nlocal: 693.75 ave 800 max 584 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 255.25 ave 323 max 192 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 6083 ave 7383 max 4741 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24332
|
||||
Ave neighs/atom = 8.7682883
|
||||
Neighbor list builds = 38
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#initialize the COM velocity and run to achieve steady-state
|
||||
|
||||
#calculate velocity to add: V=J/rho_total
|
||||
variable Vadd equal $J*lx*ly/count(bulk)
|
||||
variable Vadd equal 0.1*lx*ly/count(bulk)
|
||||
|
||||
#first remove any COM velocity, then add back the streaming velocity
|
||||
velocity bulk zero linear
|
||||
velocity bulk set ${Vadd} 0.0 0.0 units box sum yes mom no
|
||||
velocity bulk set 0.149532710280374 0.0 0.0 units box sum yes mom no
|
||||
|
||||
fix GD bulk flow/gauss 1 0 0 #energy yes
|
||||
#fix_modify GD energy yes
|
||||
|
||||
run ${stabil}
|
||||
run 1000
|
||||
|
||||
CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE
|
||||
|
||||
Your simulation uses code contributions which should be cited:
|
||||
|
||||
- Gaussian dynamics package: doi:10.1021/acs.jpcb.6b09387
|
||||
|
||||
@Article{strong_water_2017,
|
||||
title = {The Dynamics of Water in Porous Two-Dimensional Crystals},
|
||||
volume = {121},
|
||||
number = {1},
|
||||
url = {https://doi.org/10.1021/acs.jpcb.6b09387},
|
||||
doi = {10.1021/acs.jpcb.6b09387},
|
||||
urldate = {2016-12-07},
|
||||
journal = {J.~Phys.\ Chem.~B},
|
||||
author = {Strong, Steven E. and Eaves, Joel D.},
|
||||
year = {2017},
|
||||
pages = {189--207}
|
||||
}
|
||||
|
||||
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
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.131 | 3.132 | 3.133 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
1000 1.9477212 1.9663901 0.45928547 6.6176422
|
||||
1010 1.9617328 1.9828061 0.45840963 6.555968
|
||||
1020 1.9570976 1.9825696 0.45782895 6.5690613
|
||||
1030 1.9356292 1.9690101 0.45753984 6.6493822
|
||||
1040 1.9174914 1.9448868 0.4577768 6.7171474
|
||||
1050 1.9202482 1.9432766 0.4588733 6.7039634
|
||||
1060 1.9419998 1.9718217 0.46086407 6.617366
|
||||
1070 1.9666048 1.996346 0.46339522 6.5207175
|
||||
1080 1.9775489 2.0078489 0.46608862 6.4794239
|
||||
1090 1.9725172 2.0005028 0.46876174 6.5044299
|
||||
1100 1.9659582 1.9931537 0.47147394 6.5409107
|
||||
1110 1.9670607 1.9965504 0.47432892 6.5527414
|
||||
1120 1.9716302 1.9984924 0.47732198 6.5530022
|
||||
1130 1.9752703 2.0057031 0.48043914 6.5579379
|
||||
1140 1.976368 2.0061152 0.48358744 6.5719123
|
||||
1150 1.9748014 2.0056689 0.48673155 6.5957896
|
||||
1160 1.9729115 2.0036854 0.48986563 6.6200102
|
||||
1170 1.9702742 2.0016461 0.49302426 6.6455948
|
||||
1180 1.9680418 1.9978705 0.49625385 6.6697165
|
||||
1190 1.9640159 1.9937501 0.49962311 6.7004634
|
||||
1200 1.9616719 1.9932085 0.50320747 6.7253219
|
||||
1210 1.9658831 1.9985624 0.50702861 6.7242078
|
||||
1220 1.9790884 2.0132679 0.51100573 6.688483
|
||||
1230 1.9946749 2.0324782 0.51491484 6.6422423
|
||||
1240 2.0039182 2.0484588 0.5184382 6.6190292
|
||||
1250 2.0033685 2.0545791 0.52130299 6.6322608
|
||||
1260 1.9991533 2.0533011 0.52339221 6.6590872
|
||||
1270 1.9969511 2.0571182 0.5246505 6.6789676
|
||||
1280 1.9911353 2.0488281 0.52501304 6.7125634
|
||||
1290 1.9712819 2.0209437 0.52460315 6.7967237
|
||||
1300 1.9486195 1.9967749 0.5238106 6.886265
|
||||
1310 1.951612 2.0051749 0.52294383 6.8723332
|
||||
1320 1.9800953 2.0397207 0.52186525 6.7537937
|
||||
1330 2.0084961 2.0723584 0.52001894 6.6279995
|
||||
1340 2.021654 2.085105 0.51675149 6.554461
|
||||
1350 2.0193685 2.0672662 0.5117514 6.5349176
|
||||
1360 2.0084017 2.0471065 0.50518646 6.5453141
|
||||
1370 1.994978 2.030683 0.49737164 6.5627932
|
||||
1380 1.9781978 2.0044236 0.48871071 6.5903683
|
||||
1390 1.9572368 1.9833426 0.47978207 6.6326472
|
||||
1400 1.9400481 1.956474 0.47117436 6.6600696
|
||||
1410 1.9380218 1.9552501 0.46336325 6.6314231
|
||||
1420 1.9494747 1.9681145 0.45642218 6.5527615
|
||||
1430 1.9610978 1.9824506 0.4501938 6.4763851
|
||||
1440 1.9639503 1.9890985 0.44452289 6.4375535
|
||||
1450 1.9560428 1.9821594 0.43936988 6.4453654
|
||||
1460 1.9399344 1.9627639 0.43486138 6.488055
|
||||
1470 1.9247229 1.9440629 0.43123378 6.5292381
|
||||
1480 1.9213375 1.9369273 0.42866841 6.5271097
|
||||
1490 1.9265729 1.9383637 0.42719968 6.4940959
|
||||
1500 1.930987 1.9416689 0.4267225 6.4673585
|
||||
1510 1.9303444 1.9418498 0.42714462 6.4648027
|
||||
1520 1.9258423 1.940384 0.42844066 6.4834098
|
||||
1530 1.9131202 1.9296653 0.4306338 6.5390881
|
||||
1540 1.8990016 1.9101025 0.43386405 6.6052091
|
||||
1550 1.9012878 1.9120047 0.43834036 6.6147792
|
||||
1560 1.9153287 1.9388751 0.44404054 6.5851781
|
||||
1570 1.9266928 1.9596147 0.45057056 6.5705776
|
||||
1580 1.9358289 1.9745564 0.45744022 6.5674622
|
||||
1590 1.9415248 1.9818707 0.46425451 6.5778534
|
||||
1600 1.9466876 1.98498 0.47075833 6.5878483
|
||||
1610 1.9557175 1.9930268 0.47674103 6.5777205
|
||||
1620 1.9712902 2.0112337 0.48200984 6.5367922
|
||||
1630 1.9900646 2.0303946 0.48631888 6.4790095
|
||||
1640 1.9960901 2.039173 0.48947508 6.4661574
|
||||
1650 1.9879046 2.0329046 0.49151173 6.504063
|
||||
1660 1.9832967 2.0325843 0.49266284 6.5255647
|
||||
1670 1.9875656 2.034783 0.49313513 6.5093662
|
||||
1680 1.9967654 2.0492931 0.49299896 6.4699787
|
||||
1690 2.0025957 2.0532539 0.49216931 6.4389613
|
||||
1700 2.0022202 2.0424508 0.49070612 6.4276702
|
||||
1710 2.0083188 2.0437945 0.48879489 6.3909243
|
||||
1720 2.0178792 2.0439212 0.48646135 6.3411063
|
||||
1730 2.0210944 2.0444299 0.48367905 6.3141106
|
||||
1740 2.0170566 2.0337564 0.48044951 6.3158785
|
||||
1750 2.0099049 2.0231598 0.47693196 6.3313851
|
||||
1760 1.9990395 2.0132651 0.47329842 6.3631889
|
||||
1770 1.9823237 1.9969291 0.46970233 6.4208124
|
||||
1780 1.9640169 1.9798655 0.4663519 6.4879798
|
||||
1790 1.9457657 1.9626633 0.46348315 6.557165
|
||||
1800 1.9253222 1.9443136 0.46134123 6.6365286
|
||||
1810 1.9123385 1.9339816 0.46011796 6.6879846
|
||||
1820 1.9098744 1.9287702 0.45993599 6.7001355
|
||||
1830 1.9096278 1.9220243 0.460898 6.7020982
|
||||
1840 1.9223081 1.9378963 0.46303724 6.6558132
|
||||
1850 1.9481113 1.9718786 0.46616351 6.5618175
|
||||
1860 1.9704143 1.9931969 0.46987208 6.484088
|
||||
1870 1.9864974 2.017655 0.47377416 6.4360445
|
||||
1880 1.993165 2.0276398 0.47750238 6.4296162
|
||||
1890 1.9852177 2.0249022 0.48088382 6.4843765
|
||||
1900 1.9692398 2.0101062 0.4839255 6.5735477
|
||||
1910 1.9516968 1.9893586 0.48689095 6.6692995
|
||||
1920 1.9380452 1.9750949 0.49014596 6.7488323
|
||||
1930 1.9323223 1.9719977 0.49399992 6.7947629
|
||||
1940 1.9402144 1.9786701 0.49859677 6.7846787
|
||||
1950 1.9589972 1.9956447 0.50392573 6.7291499
|
||||
1960 1.979631 2.0201087 0.50984934 6.6648708
|
||||
1970 2.0002749 2.0392081 0.51605302 6.6026647
|
||||
1980 2.0143746 2.0524405 0.52221277 6.5687042
|
||||
1990 2.0166553 2.0466885 0.5281276 6.5835144
|
||||
2000 2.0130617 2.0424179 0.53381506 6.6234083
|
||||
Loop time of 0.141455 on 4 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 610793.635 tau/day, 7069.371 timesteps/s, 19.618 Matom-step/s
|
||||
99.7% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.05683 | 0.060353 | 0.062989 | 1.0 | 42.67
|
||||
Neigh | 0.0072596 | 0.0077408 | 0.0081397 | 0.4 | 5.47
|
||||
Comm | 0.0075975 | 0.010647 | 0.014725 | 3.0 | 7.53
|
||||
Output | 0.0035631 | 0.0036749 | 0.0038919 | 0.2 | 2.60
|
||||
Modify | 0.050043 | 0.052936 | 0.05613 | 1.2 | 37.42
|
||||
Other | | 0.006104 | | | 4.32
|
||||
|
||||
Nlocal: 693.75 ave 799 max 589 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 259 ave 320 max 196 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 6092.5 ave 7344 max 4845 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24370
|
||||
Ave neighs/atom = 8.781982
|
||||
Neighbor list builds = 35
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#collect data
|
||||
|
||||
#print the applied force and total flux to ensure conservation of Jx
|
||||
variable Fapp equal f_GD[1]
|
||||
compute vxBulk bulk reduce sum vx
|
||||
compute vyBulk bulk reduce sum vy
|
||||
variable invVol equal 1.0/(lx*ly)
|
||||
variable jx equal c_vxBulk*${invVol}
|
||||
variable jx equal c_vxBulk*0.00025
|
||||
variable jy equal c_vyBulk*${invVol}
|
||||
variable jy equal c_vyBulk*0.00025
|
||||
variable curr_step equal step
|
||||
variable p_Fapp format Fapp %.3f
|
||||
variable p_jx format jx %.5g
|
||||
variable p_jy format jy %.5g
|
||||
fix print_vCOM all print ${dump_rate} "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
fix print_vCOM all print 50 "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
|
||||
#compute IK1 pressure profile
|
||||
#see Todd, Evans, and Davis, Phys. Rev. E 52(2) 1995, p. 1627
|
||||
#use profile-unbiased temperature to remove the streaming velocity
|
||||
#from the kinetic part of the pressure
|
||||
compute spa bulk stress/atom myTp
|
||||
|
||||
#for the pressure profile, use the same grid as the PUT
|
||||
compute chunkX bulk chunk/atom bin/1d x lower ${dX} units box
|
||||
compute chunkX bulk chunk/atom bin/1d x lower 3.125 units box
|
||||
|
||||
#output pressure profile and other profiles
|
||||
#the pressure profile is (-1/2V)*(c_spa[1] + c_spa[2]), where
|
||||
#V is the volume of a slice
|
||||
fix profiles bulk ave/chunk 1 1 ${dump_rate} chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
fix profiles bulk ave/chunk 1 1 50 chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
|
||||
#compute velocity profile across the pipe with a finer grid
|
||||
variable dYnew equal ${dY}/10
|
||||
variable dYnew equal 3.07692307692308/10
|
||||
compute chunkY bulk chunk/atom bin/1d y center ${dYnew} units box region pipe
|
||||
compute chunkY bulk chunk/atom bin/1d y center 0.307692307692308 units box region pipe
|
||||
fix velYprof bulk ave/chunk 1 1 ${dump_rate} chunkY vx file Vy_profile ave running overwrite
|
||||
fix velYprof bulk ave/chunk 1 1 50 chunkY vx file Vy_profile ave running overwrite
|
||||
|
||||
#full trajectory
|
||||
# dump 7 bulk custom ${dump_rate} bulk.lammpstrj id type x y z
|
||||
# dump_modify 7 sort id
|
||||
|
||||
run ${run}
|
||||
run 2000
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.139 | 5.14 | 5.141 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
2000 2.0130617 2.0424179 0.53381506 6.6234083
|
||||
2010 2.011712 2.0399428 0.53937165 6.6546944
|
||||
2020 2.0177252 2.0516588 0.54483848 6.6575988
|
||||
2030 2.0192267 2.054258 0.55012466 6.6761208
|
||||
2040 2.0155308 2.0513866 0.55518707 6.7132509
|
||||
2050 2.016831 2.0539288 0.56007247 6.7306192
|
||||
2060 2.0213378 2.0690043 0.56479732 6.7330132
|
||||
2070 2.0292987 2.0799825 0.56913353 6.7186216
|
||||
2080 2.0342188 2.0900923 0.57283821 6.7098434
|
||||
2090 2.0376411 2.096351 0.57566175 6.6998818
|
||||
2100 2.053128 2.1238481 0.57727694 6.637431
|
||||
2110 2.0783941 2.1609599 0.5768993 6.5304031
|
||||
2120 2.0887269 2.1760645 0.57341638 6.4706853
|
||||
2130 2.06944 2.1522354 0.5659988 6.5099284
|
||||
2140 2.0380605 2.115767 0.55466476 6.5802578
|
||||
2150 2.0195872 2.0868424 0.54025148 6.5885111
|
||||
2160 2.0061251 2.069266 0.52417244 6.5682875
|
||||
2170 1.992682 2.0526743 0.50812177 6.5470052
|
||||
2180 1.9816004 2.0352692 0.49354583 6.5244099
|
||||
2190 1.9688265 2.0226679 0.4811848 6.5185172
|
||||
2200 1.9574266 2.000155 0.47107703 6.5176047
|
||||
2210 1.9502736 1.9925522 0.46298224 6.5078398
|
||||
2220 1.9475332 1.9936032 0.45641728 6.4850252
|
||||
2230 1.9545128 2.0045053 0.45087489 6.4291405
|
||||
2240 1.9627871 2.0112148 0.44588526 6.3715676
|
||||
2250 1.9617694 2.0073769 0.44121477 6.3541518
|
||||
2260 1.9579423 2.0079137 0.43675541 6.3542735
|
||||
2270 1.9475845 1.998983 0.43243494 6.3854071
|
||||
2280 1.9253275 1.9715083 0.42839782 6.464845
|
||||
2290 1.8996763 1.9456257 0.42496367 6.5591177
|
||||
2300 1.8823546 1.9240543 0.42247729 6.6211062
|
||||
2310 1.8844318 1.9216768 0.42116372 6.6085376
|
||||
2320 1.8965287 1.933936 0.42103218 6.5584198
|
||||
2330 1.902103 1.9433708 0.421956 6.5350698
|
||||
2340 1.9061826 1.950462 0.42378825 6.5228738
|
||||
2350 1.9180306 1.961141 0.42644522 6.489172
|
||||
2360 1.9296124 1.9748542 0.42981448 6.4628168
|
||||
2370 1.9328566 1.9718181 0.43373762 6.4721746
|
||||
2380 1.9360042 1.9769998 0.43819906 6.4840942
|
||||
2390 1.9387073 1.9778749 0.44317927 6.49778
|
||||
2400 1.9445619 1.9882647 0.4486142 6.4971899
|
||||
2410 1.9553344 1.9997412 0.45435544 6.4749774
|
||||
2420 1.9710783 2.0211926 0.46019236 6.4320181
|
||||
2430 1.9903873 2.046553 0.46575694 6.3751343
|
||||
2440 2.0041158 2.0721071 0.47060398 6.3415121
|
||||
2450 2.0020392 2.0728953 0.47431806 6.3708096
|
||||
2460 1.9839851 2.0568906 0.47681718 6.465129
|
||||
2470 1.9566365 2.0258852 0.47838596 6.5966256
|
||||
2480 1.929674 2.0032606 0.47952215 6.7260074
|
||||
2490 1.9153613 1.990031 0.48061628 6.8035919
|
||||
2500 1.9188373 1.9920514 0.4819225 6.8075788
|
||||
2510 1.9371656 2.0138698 0.48343533 6.7492701
|
||||
2520 1.9566481 2.0340995 0.48485699 6.6821181
|
||||
2530 1.9636141 2.0389496 0.48583392 6.6581326
|
||||
2540 1.9585172 2.0207113 0.48622314 6.6762792
|
||||
2550 1.9516934 2.0024186 0.48621721 6.6980104
|
||||
2560 1.9509543 1.9960852 0.48612286 6.6946311
|
||||
2570 1.9601672 2.0072552 0.48602872 6.6528934
|
||||
2580 1.973804 2.0230879 0.48576601 6.5942862
|
||||
2590 1.9788378 2.034436 0.48505027 6.5689819
|
||||
2600 1.9716493 2.0208578 0.48368043 6.5897554
|
||||
2610 1.9618006 2.007098 0.48174365 6.6188626
|
||||
2620 1.9631458 2.0075461 0.4793429 6.6026194
|
||||
2630 1.9706918 2.0174955 0.47638698 6.5591053
|
||||
2640 1.9759585 2.0213828 0.47264742 6.5198595
|
||||
2650 1.9761708 2.0225139 0.46794373 6.4977306
|
||||
2660 1.9611574 2.0083871 0.46221598 6.5299021
|
||||
2670 1.9342882 1.9720247 0.45576624 6.6034695
|
||||
2680 1.9142009 1.9520382 0.44913109 6.6474082
|
||||
2690 1.9052096 1.9428107 0.4426988 6.645123
|
||||
2700 1.902446 1.9459937 0.43672046 6.6152926
|
||||
2710 1.9099036 1.9594727 0.43120889 6.5473804
|
||||
2720 1.9180788 1.9767479 0.42599739 6.4792536
|
||||
2730 1.9142892 1.9798275 0.42092791 6.4604982
|
||||
2740 1.9019844 1.9674244 0.41601841 6.4795855
|
||||
2750 1.8895632 1.958412 0.41144638 6.5037424
|
||||
2760 1.8824401 1.9494985 0.40739848 6.5113925
|
||||
2770 1.8852759 1.9525073 0.40398809 6.484535
|
||||
2780 1.8998168 1.9664907 0.40114076 6.4159782
|
||||
2790 1.9153937 1.9810349 0.39863439 6.346934
|
||||
2800 1.9162707 1.9824285 0.39627973 6.3364828
|
||||
2810 1.9087999 1.9666258 0.39408314 6.360755
|
||||
2820 1.9073152 1.956153 0.39226387 6.3655719
|
||||
2830 1.9091743 1.9493705 0.39098546 6.3595054
|
||||
2840 1.9042021 1.9424118 0.39036698 6.381752
|
||||
2850 1.8901401 1.9353495 0.39057524 6.4417859
|
||||
2860 1.872943 1.915215 0.39190057 6.5158585
|
||||
2870 1.8732626 1.9181551 0.39474702 6.5269257
|
||||
2880 1.8931021 1.9396049 0.39938934 6.467715
|
||||
2890 1.9217069 1.9733171 0.40581935 6.3811936
|
||||
2900 1.9452213 1.9949806 0.41374968 6.3217226
|
||||
2910 1.9591065 2.0105363 0.42280483 6.3087055
|
||||
2920 1.9649158 2.0234068 0.43256139 6.3353204
|
||||
2930 1.9647653 2.0265233 0.4425691 6.3902862
|
||||
2940 1.9623876 2.0281154 0.45237409 6.4560778
|
||||
2950 1.9591057 2.0276078 0.46164197 6.5239614
|
||||
2960 1.9556907 2.0254377 0.47016674 6.5883236
|
||||
2970 1.9524475 2.0203546 0.47782337 6.6457078
|
||||
2980 1.9556442 2.0212175 0.48459527 6.6731473
|
||||
2990 1.9663638 2.0285202 0.49047217 6.667322
|
||||
3000 1.976263 2.0326354 0.49540098 6.6601492
|
||||
3010 1.9734917 2.0251301 0.49938916 6.6970878
|
||||
3020 1.955368 1.9974693 0.50265656 6.7865104
|
||||
3030 1.9476644 1.9780945 0.50564273 6.8327176
|
||||
3040 1.9584769 1.9887952 0.50867872 6.8046262
|
||||
3050 1.9705616 2.0030557 0.51168699 6.7669575
|
||||
3060 1.9766986 2.0112576 0.51444822 6.74919
|
||||
3070 1.9766671 2.0076853 0.51685838 6.7523339
|
||||
3080 1.9763383 2.0045916 0.51896849 6.7532253
|
||||
3090 1.9855877 2.0260371 0.52081441 6.7160131
|
||||
3100 2.0011042 2.042205 0.52215192 6.653598
|
||||
3110 2.0039819 2.0511266 0.52275172 6.6355885
|
||||
3120 1.9958773 2.0457899 0.52253307 6.6565817
|
||||
3130 1.9933925 2.04521 0.52158082 6.6543706
|
||||
3140 1.9936643 2.0477262 0.51996279 6.639564
|
||||
3150 1.9921223 2.0455965 0.51768794 6.6291901
|
||||
3160 1.9914788 2.0365842 0.51483187 6.6154874
|
||||
3170 1.9922866 2.0422451 0.51144091 6.5976334
|
||||
3180 1.9872806 2.0376593 0.50747923 6.6043774
|
||||
3190 1.9708577 2.0198422 0.50308657 6.6551127
|
||||
3200 1.9534272 1.9982319 0.49857904 6.7093718
|
||||
3210 1.9423425 1.9876311 0.49429833 6.7370529
|
||||
3220 1.941974 1.984738 0.49043179 6.7218879
|
||||
3230 1.9456357 1.9916666 0.48697785 6.6917144
|
||||
3240 1.9392412 1.9874858 0.48388805 6.7004046
|
||||
3250 1.9312152 1.9814714 0.4812083 6.7175714
|
||||
3260 1.9364393 1.9840125 0.47897357 6.6870787
|
||||
3270 1.9490184 1.9871802 0.47715672 6.6308261
|
||||
3280 1.9578901 1.9917218 0.47568803 6.5896589
|
||||
3290 1.9598612 1.9918098 0.47449561 6.5756965
|
||||
3300 1.9538424 1.9845316 0.47357576 6.5931068
|
||||
3310 1.944957 1.9676243 0.47302774 6.6211221
|
||||
3320 1.9479975 1.9720828 0.47296613 6.6058089
|
||||
3330 1.9569283 1.98719 0.47330356 6.5698601
|
||||
3340 1.9558114 1.9861834 0.47383928 6.5729191
|
||||
3350 1.9461606 1.9777192 0.47452365 6.6090135
|
||||
3360 1.942095 1.9776297 0.47540879 6.6255417
|
||||
3370 1.9482423 1.981145 0.47643851 6.6032207
|
||||
3380 1.9564098 1.992645 0.47752314 6.5736007
|
||||
3390 1.9607986 2.0006048 0.47852085 6.5587349
|
||||
3400 1.9595637 2.0047228 0.47933656 6.5656692
|
||||
3410 1.9628181 2.013785 0.47991082 6.5570579
|
||||
3420 1.9698466 2.0200788 0.48018617 6.536373
|
||||
3430 1.969877 2.0210764 0.48013786 6.543084
|
||||
3440 1.96327 2.0103631 0.47979187 6.5761448
|
||||
3450 1.9566516 1.9996494 0.47933398 6.6098616
|
||||
3460 1.9511915 1.9976175 0.47891646 6.6401481
|
||||
3470 1.9410601 1.9950284 0.47859124 6.6862584
|
||||
3480 1.9307395 1.98193 0.47840998 6.7307929
|
||||
3490 1.9206678 1.9678856 0.47853003 6.7702613
|
||||
3500 1.9139405 1.955324 0.47914241 6.7934071
|
||||
3510 1.9206383 1.9571761 0.48041531 6.763312
|
||||
3520 1.9449301 1.9816996 0.4823109 6.6651452
|
||||
3530 1.9752924 2.0115126 0.48452681 6.5438659
|
||||
3540 1.9951599 2.037759 0.48660438 6.463461
|
||||
3550 2.00071 2.0413872 0.48813252 6.4405933
|
||||
3560 1.9939017 2.0277566 0.48901382 6.4684771
|
||||
3570 1.9766844 2.0031366 0.48946452 6.5392906
|
||||
3580 1.9600494 1.9790718 0.48988281 6.6106542
|
||||
3590 1.9522334 1.9727673 0.49062615 6.6517495
|
||||
3600 1.9522007 1.9829458 0.49183552 6.6635632
|
||||
3610 1.9614098 1.9992781 0.49340617 6.6407777
|
||||
3620 1.9739926 2.0159629 0.49511752 6.6062456
|
||||
3630 1.9726539 2.0152219 0.49675445 6.6254361
|
||||
3640 1.9613098 2.0017247 0.49829012 6.6828523
|
||||
3650 1.9577727 2.0000723 0.49991877 6.7111789
|
||||
3660 1.9626403 2.0037309 0.50175296 6.7072182
|
||||
3670 1.9603974 1.9937256 0.50383808 6.7277464
|
||||
3680 1.9532611 1.9846903 0.50638429 6.766139
|
||||
3690 1.9541656 1.9798331 0.50962883 6.7752527
|
||||
3700 1.9656726 1.9951191 0.51377056 6.7462001
|
||||
3710 1.9834474 2.0193011 0.5187681 6.6957856
|
||||
3720 2.0017373 2.0396413 0.52433682 6.6470375
|
||||
3730 2.0109702 2.0469463 0.53011728 6.6363717
|
||||
3740 2.0096858 2.0458572 0.53588234 6.6682278
|
||||
3750 2.0066189 2.0519842 0.54153099 6.7085484
|
||||
3760 2.0096126 2.0561094 0.54689937 6.7250789
|
||||
3770 2.0117777 2.0668795 0.55183559 6.7400962
|
||||
3780 2.0154601 2.0763941 0.55607392 6.7423369
|
||||
3790 2.0313954 2.0972106 0.55930714 6.6920109
|
||||
3800 2.0496133 2.1176374 0.56110467 6.6271089
|
||||
3810 2.0553084 2.1205041 0.56098738 6.6034668
|
||||
3820 2.0478771 2.1131255 0.5587031 6.6239896
|
||||
3830 2.0342107 2.0991257 0.55418078 6.6632309
|
||||
3840 2.0142205 2.0767165 0.54756321 6.7196407
|
||||
3850 1.9879527 2.0516847 0.53919957 6.7932756
|
||||
3860 1.9593315 2.0232738 0.52966136 6.8686983
|
||||
3870 1.9362884 1.9952027 0.51970092 6.9156687
|
||||
3880 1.9292997 1.9883081 0.50996282 6.8957696
|
||||
3890 1.9372438 1.9978667 0.50073929 6.8160963
|
||||
3900 1.949918 2.0107188 0.49208883 6.7186535
|
||||
3910 1.9547594 2.0160936 0.48397839 6.6537348
|
||||
3920 1.9543567 2.0191268 0.47640162 6.6136067
|
||||
3930 1.9582199 2.0200359 0.46933873 6.5629726
|
||||
3940 1.9644631 2.0304625 0.4627222 6.5077177
|
||||
3950 1.9645882 2.0301829 0.45644411 6.4795258
|
||||
3960 1.9546999 2.0197242 0.45050583 6.4943664
|
||||
3970 1.9424307 2.0063453 0.44500625 6.5237707
|
||||
3980 1.9281472 1.9910524 0.440105 6.5640156
|
||||
3990 1.9168821 1.9763691 0.43594018 6.592621
|
||||
4000 1.9150056 1.9752502 0.43256475 6.585564
|
||||
Loop time of 0.29535 on 4 procs for 2000 steps with 2775 atoms
|
||||
|
||||
Performance: 585068.702 tau/day, 6771.628 timesteps/s, 18.791 Matom-step/s
|
||||
98.4% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.11499 | 0.12105 | 0.12753 | 1.6 | 40.99
|
||||
Neigh | 0.015593 | 0.01655 | 0.017426 | 0.6 | 5.60
|
||||
Comm | 0.011343 | 0.020696 | 0.029105 | 5.0 | 7.01
|
||||
Output | 0.0076551 | 0.010557 | 0.01165 | 1.6 | 3.57
|
||||
Modify | 0.10677 | 0.11421 | 0.1196 | 1.4 | 38.67
|
||||
Other | | 0.01228 | | | 4.16
|
||||
|
||||
Nlocal: 693.75 ave 801 max 584 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 256.25 ave 313 max 200 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 6078.25 ave 7398 max 4746 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24313
|
||||
Ave neighs/atom = 8.7614414
|
||||
Neighbor list builds = 75
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -1,909 +0,0 @@
|
||||
LAMMPS (6 Jul 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
#LAMMPS input script
|
||||
#in.GD
|
||||
#see README for details
|
||||
|
||||
###############################################################################
|
||||
#initialize variables
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
#frequency for outputting info (timesteps)
|
||||
variable dump_rate equal 50
|
||||
variable thermo_rate equal 10
|
||||
|
||||
#equilibration time (timesteps)
|
||||
variable equil equal 1000
|
||||
|
||||
#stabilization time (timesteps to reach steady-state)
|
||||
variable stabil equal 1000
|
||||
|
||||
#data collection time (timesteps)
|
||||
variable run equal 2000
|
||||
|
||||
#length of pipe
|
||||
variable L equal 30
|
||||
|
||||
#width of pipe
|
||||
variable d equal 20
|
||||
|
||||
#flux (mass/sigma*tau)
|
||||
variable J equal 0.1
|
||||
|
||||
#simulation box dimensions
|
||||
variable Lx equal 100
|
||||
variable Ly equal 40
|
||||
|
||||
#bulk fluid density
|
||||
variable dens equal 0.8
|
||||
|
||||
#lattice spacing for wall atoms
|
||||
variable aWall equal 1.0 #1.7472
|
||||
|
||||
#timestep
|
||||
variable ts equal 0.001
|
||||
|
||||
#temperature
|
||||
variable T equal 2.0
|
||||
|
||||
#thermostat damping constant
|
||||
variable tdamp equal ${ts}*100
|
||||
variable tdamp equal 0.001*100
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style atomic
|
||||
|
||||
|
||||
###############################################################################
|
||||
#create box
|
||||
|
||||
#create lattice with the spacing aWall
|
||||
variable rhoWall equal ${aWall}^(-2)
|
||||
variable rhoWall equal 1^(-2)
|
||||
lattice sq ${rhoWall}
|
||||
lattice sq 1
|
||||
Lattice spacing in x,y,z = 1 1 1
|
||||
|
||||
#modify input dimensions to be multiples of aWall
|
||||
variable L1 equal round($L/${aWall})*${aWall}
|
||||
variable L1 equal round(30/${aWall})*${aWall}
|
||||
variable L1 equal round(30/1)*${aWall}
|
||||
variable L1 equal round(30/1)*1
|
||||
variable d1 equal round($d/${aWall})*${aWall}
|
||||
variable d1 equal round(20/${aWall})*${aWall}
|
||||
variable d1 equal round(20/1)*${aWall}
|
||||
variable d1 equal round(20/1)*1
|
||||
variable Ly1 equal round(${Ly}/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/1)*${aWall}
|
||||
variable Ly1 equal round(40/1)*1
|
||||
variable Lx1 equal round(${Lx}/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/1)*${aWall}
|
||||
variable Lx1 equal round(100/1)*1
|
||||
|
||||
#create simulation box
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
variable ly2 equal ${Ly1}/2
|
||||
variable ly2 equal 40/2
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 ${lx2} -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -20 ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -20 20 0 0.1 units box
|
||||
create_box 2 simbox
|
||||
Created orthogonal box = (-50 -20 0) to (50 20 0.1)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
#####################################################################
|
||||
#set up potential
|
||||
|
||||
mass 1 1.0 #fluid atoms
|
||||
mass 2 1.0 #wall atoms
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_coeff 1 2 1.0 1.0 1.12246
|
||||
pair_coeff 2 2 0.0 0.0
|
||||
|
||||
neigh_modify exclude type 2 2
|
||||
|
||||
timestep ${ts}
|
||||
timestep 0.001
|
||||
|
||||
#####################################################################
|
||||
#create atoms
|
||||
|
||||
#create wall atoms everywhere
|
||||
create_atoms 2 box
|
||||
Created 4000 atoms
|
||||
|
||||
#define region which is "walled off"
|
||||
variable dhalf equal ${d1}/2
|
||||
variable dhalf equal 20/2
|
||||
variable Lhalf equal ${L1}/2
|
||||
variable Lhalf equal 30/2
|
||||
region walltop block -${Lhalf} ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 10 EDGE -0.1 0.1 units box
|
||||
region wallbot block -${Lhalf} ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -10 -0.1 0.1 units box
|
||||
region outsidewall union 2 walltop wallbot side out
|
||||
|
||||
#remove wall atoms outside wall region
|
||||
group outside region outsidewall
|
||||
3349 atoms in group outside
|
||||
delete_atoms group outside
|
||||
Deleted 3349 atoms, new total = 651
|
||||
|
||||
#remove wall atoms that aren't on edge of wall region
|
||||
variable x1 equal ${Lhalf}-${aWall}
|
||||
variable x1 equal 15-${aWall}
|
||||
variable x1 equal 15-1
|
||||
variable y1 equal ${dhalf}+${aWall}
|
||||
variable y1 equal 10+${aWall}
|
||||
variable y1 equal 10+1
|
||||
region insideTop block -${x1} ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 11 EDGE -0.1 0.1 units box
|
||||
region insideBot block -${x1} ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -11 -0.1 0.1 units box
|
||||
region insideWall union 2 insideTop insideBot
|
||||
group insideWall region insideWall
|
||||
551 atoms in group insideWall
|
||||
delete_atoms group insideWall
|
||||
Deleted 551 atoms, new total = 100
|
||||
|
||||
#define new lattice, to give correct fluid density
|
||||
#y lattice const must be a multiple of aWall
|
||||
variable atrue equal ${dens}^(-1/2)
|
||||
variable atrue equal 0.8^(-1/2)
|
||||
variable ay equal round(${atrue}/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*1
|
||||
|
||||
#choose x lattice const to give correct density
|
||||
variable ax equal (${ay}*${dens})^(-1)
|
||||
variable ax equal (1*${dens})^(-1)
|
||||
variable ax equal (1*0.8)^(-1)
|
||||
|
||||
#change Lx to be multiple of ax
|
||||
variable Lx1 equal round(${Lx}/${ax})*${ax}
|
||||
variable Lx1 equal round(100/${ax})*${ax}
|
||||
variable Lx1 equal round(100/1.25)*${ax}
|
||||
variable Lx1 equal round(100/1.25)*1.25
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
change_box all x final -${lx2} ${lx2} units box
|
||||
change_box all x final -50 ${lx2} units box
|
||||
change_box all x final -50 50 units box
|
||||
orthogonal box = (-50 -20 0) to (50 20 0.1)
|
||||
|
||||
#define new lattice
|
||||
lattice custom ${dens} a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 1 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
Lattice spacing in x,y,z = 1.25 1 1
|
||||
|
||||
#fill in rest of box with bulk particles
|
||||
variable delta equal 0.001
|
||||
variable Ldelt equal ${Lhalf}+${delta}
|
||||
variable Ldelt equal 15+${delta}
|
||||
variable Ldelt equal 15+0.001
|
||||
variable dDelt equal ${dhalf}-${delta}
|
||||
variable dDelt equal 10-${delta}
|
||||
variable dDelt equal 10-0.001
|
||||
region left block EDGE -${Ldelt} EDGE EDGE -0.1 0.1 units box
|
||||
region left block EDGE -15.001 EDGE EDGE -0.1 0.1 units box
|
||||
region right block ${Ldelt} EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region right block 15.001 EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region pipe block -${Ldelt} ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 9.999 -0.1 0.1 units box
|
||||
|
||||
region bulk union 3 left pipe right
|
||||
create_atoms 1 region bulk
|
||||
Created 2675 atoms
|
||||
|
||||
group bulk type 1
|
||||
2675 atoms in group bulk
|
||||
group wall type 2
|
||||
100 atoms in group wall
|
||||
|
||||
#remove atoms that are too close to wall
|
||||
delete_atoms overlap 0.9 bulk wall
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command delete_atoms, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Deleted 0 atoms, new total = 2775
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude group wall wall
|
||||
|
||||
velocity bulk create $T 78915 dist gaussian rot yes mom yes loop geom
|
||||
velocity bulk create 2 78915 dist gaussian rot yes mom yes loop geom
|
||||
|
||||
#####################################################################
|
||||
#set up PUT
|
||||
#see Evans and Morriss, Phys. Rev. Lett. 56(20) 1986, p. 2172
|
||||
|
||||
#average number of particles per box, Evans and Morriss used 2.0
|
||||
variable NperBox equal 8.0
|
||||
|
||||
#calculate box sizes
|
||||
variable boxSide equal sqrt(${NperBox}/${dens})
|
||||
variable boxSide equal sqrt(8/${dens})
|
||||
variable boxSide equal sqrt(8/0.8)
|
||||
variable nX equal round(lx/${boxSide})
|
||||
variable nX equal round(lx/3.16227766016838)
|
||||
variable nY equal round(ly/${boxSide})
|
||||
variable nY equal round(ly/3.16227766016838)
|
||||
variable dX equal lx/${nX}
|
||||
variable dX equal lx/32
|
||||
variable dY equal ly/${nY}
|
||||
variable dY equal ly/13
|
||||
|
||||
#temperature of fluid (excluding wall)
|
||||
compute myT bulk temp
|
||||
|
||||
#profile-unbiased temperature of fluid
|
||||
compute myTp bulk temp/profile 1 1 0 xy ${nX} ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 13
|
||||
|
||||
#thermo setup
|
||||
thermo ${thermo_rate}
|
||||
thermo 10
|
||||
thermo_style custom step c_myT c_myTp etotal press
|
||||
|
||||
#dump initial configuration
|
||||
# dump 55 all custom 1 all.init.lammpstrj id type x y z vx vy vz
|
||||
# dump 56 wall custom 1 wall.init.lammpstrj id type x y z
|
||||
# dump_modify 55 sort id
|
||||
# dump_modify 56 sort id
|
||||
run 0
|
||||
WARNING: No fixes defined, atoms won't move (../verlet.cpp:55)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.103 | 3.103 | 3.103 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.0555109 0.77892922 7.3417096
|
||||
Loop time of 9.53674e-07 on 1 procs for 0 steps with 2775 atoms
|
||||
|
||||
314.6% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 9.537e-07 | | |100.00
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 510 ave 510 max 510 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 26406 ave 26406 max 26406 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 26406
|
||||
Ave neighs/atom = 9.51568
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
# undump 55
|
||||
# undump 56
|
||||
|
||||
#####################################################################
|
||||
#equilibrate without GD
|
||||
|
||||
fix nvt bulk nvt temp $T $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 0.1
|
||||
fix_modify nvt temp myTp
|
||||
WARNING: Temperature for fix modify is not for group all (../fix_nh.cpp:1395)
|
||||
fix 2 bulk enforce2d
|
||||
|
||||
run ${equil}
|
||||
run 1000
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.166 | 3.166 | 3.166 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.0555109 0.77892922 7.3417096
|
||||
10 1.9173594 1.9390034 0.77876976 7.6702228
|
||||
20 1.7033394 1.6974676 0.77977799 8.5614784
|
||||
30 1.5026161 1.4723993 0.78456655 9.4308258
|
||||
40 1.4880481 1.4591602 0.79486693 9.6134304
|
||||
50 1.6192437 1.6150635 0.81109069 9.2592835
|
||||
60 1.7404087 1.7583444 0.82955456 8.952392
|
||||
70 1.7757591 1.8006606 0.8452778 8.9717917
|
||||
80 1.7573847 1.7813629 0.85769389 9.1936368
|
||||
90 1.7491183 1.7726908 0.86882429 9.3712357
|
||||
100 1.7798944 1.8079583 0.88029084 9.3871755
|
||||
110 1.8440582 1.8793133 0.89259397 9.2582848
|
||||
120 1.9191606 1.9673434 0.90533438 9.0680574
|
||||
130 1.9883299 2.0484299 0.91755461 8.88117
|
||||
140 2.0463366 2.1111872 0.92818114 8.7184178
|
||||
150 2.0953769 2.167849 0.93639789 8.5713408
|
||||
160 2.1442147 2.2216228 0.94145082 8.4082835
|
||||
170 2.1797848 2.2631458 0.94246877 8.2767903
|
||||
180 2.1863476 2.2700986 0.93873326 8.2311689
|
||||
190 2.1832866 2.2710551 0.93003012 8.1959062
|
||||
200 2.1937154 2.2868403 0.91642537 8.0842007
|
||||
210 2.2022708 2.2915142 0.89824533 7.9575312
|
||||
220 2.1884715 2.2770564 0.87677613 7.9000591
|
||||
230 2.1671124 2.2496063 0.85409501 7.8673156
|
||||
240 2.1560417 2.2379998 0.83167878 7.8003228
|
||||
250 2.1421449 2.2240624 0.81004723 7.7491508
|
||||
260 2.1172164 2.1971044 0.78931978 7.7457415
|
||||
270 2.0856847 2.1672998 0.76956352 7.7719788
|
||||
280 2.0670685 2.1449303 0.75073364 7.7524614
|
||||
290 2.0639481 2.1428374 0.73258016 7.6727716
|
||||
300 2.055776 2.1361719 0.7147669 7.6095248
|
||||
310 2.038425 2.1209353 0.69722853 7.5797085
|
||||
320 2.0203023 2.1066031 0.68006634 7.5521081
|
||||
330 2.0118478 2.1039797 0.66330302 7.4877535
|
||||
340 2.0159442 2.1096258 0.64673694 7.3761703
|
||||
350 2.0166408 2.1075061 0.63020017 7.2788
|
||||
360 2.0059407 2.0806316 0.61387618 7.2263941
|
||||
370 1.9964281 2.0642074 0.59814148 7.1728041
|
||||
380 1.9918446 2.0567527 0.58303017 7.101597
|
||||
390 1.992835 2.0548138 0.56852431 7.0084774
|
||||
400 2.0012934 2.0615016 0.55438401 6.8865948
|
||||
410 2.0084291 2.073418 0.54034073 6.7697478
|
||||
420 2.007464 2.0786717 0.52617041 6.6849032
|
||||
430 1.9983712 2.0704366 0.51188183 6.6323103
|
||||
440 1.9884651 2.0588515 0.49765394 6.5868356
|
||||
450 1.982221 2.0467396 0.4837102 6.5311681
|
||||
460 1.9738673 2.031238 0.47021649 6.4882783
|
||||
470 1.9574246 2.0060447 0.45740021 6.4814923
|
||||
480 1.9361065 1.9734507 0.44557947 6.4995199
|
||||
490 1.9251024 1.9562469 0.43506067 6.4858343
|
||||
500 1.9279545 1.9572145 0.42577835 6.4274765
|
||||
510 1.9267504 1.9570246 0.41755013 6.3927027
|
||||
520 1.9093405 1.9393872 0.41031829 6.4281888
|
||||
530 1.8820555 1.9060756 0.40432569 6.5099401
|
||||
540 1.86537 1.8912682 0.3999087 6.55843
|
||||
550 1.8694252 1.9043192 0.39717519 6.5337875
|
||||
560 1.8835224 1.9294105 0.39589322 6.4760141
|
||||
570 1.8898719 1.9462433 0.39573596 6.4520041
|
||||
580 1.8887698 1.9472764 0.39649878 6.4602989
|
||||
590 1.8945125 1.9550624 0.39810844 6.4470226
|
||||
600 1.9106571 1.9735939 0.40045321 6.3971026
|
||||
610 1.9273243 1.98509 0.40330026 6.3474421
|
||||
620 1.9351802 1.9888986 0.4064498 6.3340566
|
||||
630 1.9337889 1.9846794 0.40981479 6.3610556
|
||||
640 1.9257018 1.9757153 0.4134641 6.4184721
|
||||
650 1.9204429 1.9718256 0.41750942 6.4679594
|
||||
660 1.9220449 1.9701963 0.42202455 6.4919724
|
||||
670 1.9230578 1.9707406 0.4270412 6.5178484
|
||||
680 1.9204554 1.9740485 0.43255127 6.5572507
|
||||
690 1.9201811 1.9762854 0.43847123 6.5869126
|
||||
700 1.9271511 1.9867455 0.44474356 6.5882669
|
||||
710 1.9418851 2.0042477 0.45120727 6.558573
|
||||
720 1.9544547 2.0186724 0.4576061 6.5338329
|
||||
730 1.9687971 2.0326169 0.46367507 6.4988775
|
||||
740 1.9830308 2.0466267 0.46920367 6.4618136
|
||||
750 1.9936981 2.0526606 0.47397868 6.4367349
|
||||
760 2.0008431 2.0535449 0.47786748 6.4249001
|
||||
770 1.9982133 2.0483219 0.48085757 6.4504786
|
||||
780 1.9841544 2.0311693 0.48306488 6.5200512
|
||||
790 1.9683122 2.0158738 0.48475632 6.5959263
|
||||
800 1.9604618 2.003224 0.48619405 6.6392559
|
||||
810 1.9629155 2.0075077 0.48756075 6.6406486
|
||||
820 1.9683056 2.0110554 0.48883443 6.6269424
|
||||
830 1.975409 2.0189161 0.48995399 6.6030215
|
||||
840 1.9897264 2.035016 0.4907852 6.5485575
|
||||
850 2.0094338 2.0555358 0.49104505 6.4719926
|
||||
860 2.0217589 2.0643603 0.49040437 6.4233305
|
||||
870 2.0147718 2.0641627 0.48866908 6.4491964
|
||||
880 1.9883859 2.0324092 0.48592007 6.5488061
|
||||
890 1.9625853 2.0028776 0.48263002 6.6452734
|
||||
900 1.9520401 1.9889124 0.47925524 6.6808078
|
||||
910 1.9559583 1.9952984 0.47597346 6.6573059
|
||||
920 1.9657244 2.0083503 0.47268726 6.6073704
|
||||
930 1.969288 2.0152339 0.4692054 6.5780416
|
||||
940 1.9652206 2.0116384 0.4654438 6.5769812
|
||||
950 1.9567495 1.9960693 0.46147541 6.5942022
|
||||
960 1.9418452 1.980858 0.45753557 6.6369454
|
||||
970 1.9247196 1.9585585 0.45390337 6.6888821
|
||||
980 1.9128262 1.9481721 0.45090045 6.7198221
|
||||
990 1.9167211 1.9451096 0.44869731 6.6912394
|
||||
1000 1.935529 1.9662384 0.44728238 6.6079829
|
||||
Loop time of 1.307 on 1 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 66105.601 tau/day, 765.111 timesteps/s
|
||||
98.7% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.7676 | 0.7676 | 0.7676 | 0.0 | 58.73
|
||||
Neigh | 0.088947 | 0.088947 | 0.088947 | 0.0 | 6.81
|
||||
Comm | 0.0094135 | 0.0094135 | 0.0094135 | 0.0 | 0.72
|
||||
Output | 0.019547 | 0.019547 | 0.019547 | 0.0 | 1.50
|
||||
Modify | 0.39755 | 0.39755 | 0.39755 | 0.0 | 30.42
|
||||
Other | | 0.02394 | | | 1.83
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 527 ave 527 max 527 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24332 ave 24332 max 24332 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24332
|
||||
Ave neighs/atom = 8.76829
|
||||
Neighbor list builds = 38
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#initialize the COM velocity and run to achieve steady-state
|
||||
|
||||
#calculate velocity to add: V=J/rho_total
|
||||
variable Vadd equal $J*lx*ly/count(bulk)
|
||||
variable Vadd equal 0.1*lx*ly/count(bulk)
|
||||
|
||||
#first remove any COM velocity, then add back the streaming velocity
|
||||
velocity bulk zero linear
|
||||
velocity bulk set ${Vadd} 0.0 0.0 units box sum yes mom no
|
||||
velocity bulk set 0.149532710280374 0.0 0.0 units box sum yes mom no
|
||||
|
||||
fix GD bulk flow/gauss 1 0 0 #energy yes
|
||||
#fix_modify GD energy yes
|
||||
|
||||
run ${stabil}
|
||||
run 1000
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.166 | 3.166 | 3.166 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
1000 1.9466974 1.9662384 0.45804438 6.615449
|
||||
1010 1.9605467 1.9815754 0.45717241 6.5545496
|
||||
1020 1.9560139 1.9823875 0.45660431 6.5672421
|
||||
1030 1.9348326 1.9691606 0.45633148 6.6463667
|
||||
1040 1.9167809 1.9449522 0.45657707 6.7139486
|
||||
1050 1.9193541 1.943342 0.45767968 6.7014054
|
||||
1060 1.9410751 1.9720491 0.45967742 6.6150379
|
||||
1070 1.9658493 1.9964883 0.46221539 6.5178418
|
||||
1080 1.9767205 2.0074304 0.46491236 6.4768594
|
||||
1090 1.9714544 2.0003054 0.46759126 6.5026957
|
||||
1100 1.9647035 1.9927455 0.4703109 6.5400181
|
||||
1110 1.9657667 1.9959656 0.47317481 6.5519094
|
||||
1120 1.9706062 1.9980802 0.476185 6.5512675
|
||||
1130 1.9747655 2.0062292 0.47932281 6.554091
|
||||
1140 1.9761245 2.0075076 0.48248327 6.5670381
|
||||
1150 1.9744197 2.0073027 0.48562483 6.5914441
|
||||
1160 1.9722698 2.0046687 0.48874207 6.6165575
|
||||
1170 1.9692145 2.0013845 0.49187442 6.6438115
|
||||
1180 1.9665609 1.9970724 0.49508053 6.6693821
|
||||
1190 1.9625031 1.9908427 0.49843816 6.7002606
|
||||
1200 1.960528 1.993084 0.50203044 6.7237076
|
||||
1210 1.9649156 1.9981485 0.50587066 6.7217755
|
||||
1220 1.9788059 2.0134511 0.50987442 6.6833452
|
||||
1230 1.9952283 2.0343101 0.51379781 6.6340278
|
||||
1240 2.0039391 2.0494196 0.51730872 6.6129751
|
||||
1250 2.0019006 2.0526773 0.52014603 6.6320217
|
||||
1260 1.9974025 2.0528914 0.52221385 6.6601786
|
||||
1270 1.9953949 2.0561121 0.5234754 6.6796142
|
||||
1280 1.9893864 2.0470375 0.5238632 6.7140134
|
||||
1290 1.9694951 2.019253 0.5235093 6.798442
|
||||
1300 1.9473901 1.9965919 0.52280384 6.8863369
|
||||
1310 1.9511151 2.006161 0.52203882 6.8700917
|
||||
1320 1.979341 2.0388959 0.52106938 6.7529595
|
||||
1330 2.0073235 2.0720045 0.51935291 6.6297731
|
||||
1340 2.0202482 2.0841419 0.51624273 6.55803
|
||||
1350 2.0177489 2.0669046 0.51142591 6.5401753
|
||||
1360 2.0069274 2.04717 0.50505824 6.5506533
|
||||
1370 1.994854 2.0311383 0.49743042 6.5633001
|
||||
1380 1.9793176 2.0077184 0.48890503 6.5859072
|
||||
1390 1.9580907 1.9839831 0.48004316 6.6288992
|
||||
1400 1.9415542 1.9594192 0.47143599 6.6534105
|
||||
1410 1.9405188 1.9591825 0.46353105 6.620549
|
||||
1420 1.9504784 1.9730647 0.45640199 6.5471784
|
||||
1430 1.9594158 1.9819854 0.44995052 6.4802874
|
||||
1440 1.9615108 1.9863792 0.44406411 6.44391
|
||||
1450 1.9544127 1.9806249 0.43873409 6.4484818
|
||||
1460 1.9384927 1.9614953 0.43408605 6.4905259
|
||||
1470 1.9214711 1.9425515 0.43035972 6.5390434
|
||||
1480 1.9170761 1.9300809 0.42775046 6.5409502
|
||||
1490 1.9242904 1.9385731 0.42631007 6.5005057
|
||||
1500 1.9307133 1.9446119 0.4258836 6.4660754
|
||||
1510 1.9303576 1.9435389 0.42633976 6.4616415
|
||||
1520 1.9248382 1.9408306 0.42765441 6.4832059
|
||||
1530 1.9120794 1.9278123 0.42986958 6.5380951
|
||||
1540 1.899122 1.9125029 0.4331459 6.5987181
|
||||
1550 1.9030956 1.9187821 0.43765067 6.6012019
|
||||
1560 1.9182961 1.9453782 0.44330842 6.5674222
|
||||
1570 1.9272863 1.9613129 0.44971962 6.5619794
|
||||
1580 1.931679 1.9698134 0.45643436 6.5780809
|
||||
1590 1.9336692 1.9728684 0.46314752 6.6035675
|
||||
1600 1.938895 1.9823104 0.46964519 6.6138411
|
||||
1610 1.9510838 1.9937914 0.47568807 6.5916989
|
||||
1620 1.9685387 2.0087314 0.48102339 6.5424432
|
||||
1630 1.9894416 2.0295715 0.48539861 6.4757743
|
||||
1640 1.9982699 2.0426949 0.48860411 6.4512418
|
||||
1650 1.9901677 2.0363837 0.49062424 6.4879985
|
||||
1660 1.9814216 2.0291326 0.49172203 6.5248034
|
||||
1670 1.9812111 2.0293629 0.49218297 6.5253876
|
||||
1680 1.9903906 2.0408376 0.49211747 6.4852787
|
||||
1690 2.0015983 2.0538843 0.4914581 6.4325081
|
||||
1700 2.009727 2.0503407 0.49011163 6.3878577
|
||||
1710 2.0167822 2.0531002 0.4881688 6.3477054
|
||||
1720 2.0189021 2.0445033 0.48564798 6.3273063
|
||||
1730 2.0129713 2.0354734 0.48270666 6.3385541
|
||||
1740 2.0048763 2.0199836 0.47950943 6.3587586
|
||||
1750 1.9994843 2.0085942 0.47624908 6.3694119
|
||||
1760 1.9940025 2.0072098 0.47305283 6.3816295
|
||||
1770 1.9817431 1.9974066 0.46994486 6.4224295
|
||||
1780 1.965171 1.9805421 0.4670779 6.4832371
|
||||
1790 1.9474078 1.9662605 0.46466823 6.5516524
|
||||
1800 1.9286009 1.9507751 0.46292015 6.6263366
|
||||
1810 1.9168087 1.9437961 0.46199899 6.6759834
|
||||
1820 1.9107555 1.9306323 0.46204129 6.7029857
|
||||
1830 1.9135569 1.930819 0.46316484 6.6949737
|
||||
1840 1.9345342 1.9553413 0.46532704 6.6178988
|
||||
1850 1.9630349 1.9929548 0.46822932 6.5137866
|
||||
1860 1.9820746 2.0188839 0.47135068 6.4489028
|
||||
1870 1.9834959 2.0217145 0.47427805 6.4552721
|
||||
1880 1.9731564 2.0120293 0.47692755 6.5100251
|
||||
1890 1.9653605 2.0070624 0.47943307 6.5594235
|
||||
1900 1.9630631 2.0095488 0.48192185 6.5912876
|
||||
1910 1.9556778 2.0035006 0.48443107 6.6437189
|
||||
1920 1.9408788 1.9828296 0.48710124 6.7228731
|
||||
1930 1.9292393 1.9732376 0.49025327 6.7880112
|
||||
1940 1.9263081 1.9708942 0.49416086 6.8162477
|
||||
1950 1.9358375 1.976323 0.49899895 6.7946964
|
||||
1960 1.9520543 1.9936542 0.50485961 6.7467481
|
||||
1970 1.9709064 2.0108957 0.51165586 6.6909455
|
||||
1980 1.9940026 2.0375428 0.51918913 6.6250463
|
||||
1990 2.0171261 2.0646948 0.52705638 6.5649879
|
||||
2000 2.0302713 2.0802515 0.53472229 6.5470853
|
||||
Loop time of 1.34877 on 1 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 64058.154 tau/day, 741.414 timesteps/s
|
||||
98.7% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.77091 | 0.77091 | 0.77091 | 0.0 | 57.16
|
||||
Neigh | 0.085835 | 0.085835 | 0.085835 | 0.0 | 6.36
|
||||
Comm | 0.0093472 | 0.0093472 | 0.0093472 | 0.0 | 0.69
|
||||
Output | 0.019047 | 0.019047 | 0.019047 | 0.0 | 1.41
|
||||
Modify | 0.43949 | 0.43949 | 0.43949 | 0.0 | 32.58
|
||||
Other | | 0.02415 | | | 1.79
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 530 ave 530 max 530 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24404 ave 24404 max 24404 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24404
|
||||
Ave neighs/atom = 8.79423
|
||||
Neighbor list builds = 36
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#collect data
|
||||
|
||||
#print the applied force and total flux to ensure conservation of Jx
|
||||
variable Fapp equal f_GD[1]
|
||||
compute vxBulk bulk reduce sum vx
|
||||
compute vyBulk bulk reduce sum vy
|
||||
variable invVol equal 1.0/(lx*ly)
|
||||
variable jx equal c_vxBulk*${invVol}
|
||||
variable jx equal c_vxBulk*0.00025
|
||||
variable jy equal c_vyBulk*${invVol}
|
||||
variable jy equal c_vyBulk*0.00025
|
||||
variable curr_step equal step
|
||||
variable p_Fapp format Fapp %.3f
|
||||
variable p_jx format jx %.5g
|
||||
variable p_jy format jy %.5g
|
||||
fix print_vCOM all print ${dump_rate} "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
fix print_vCOM all print 50 "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
|
||||
#compute IK1 pressure profile
|
||||
#see Todd, Evans, and Davis, Phys. Rev. E 52(2) 1995, p. 1627
|
||||
#use profile-unbiased temperature to remove the streaming velocity
|
||||
#from the kinetic part of the pressure
|
||||
compute spa bulk stress/atom myTp
|
||||
|
||||
#for the pressure profile, use the same grid as the PUT
|
||||
compute chunkX bulk chunk/atom bin/1d x lower ${dX} units box
|
||||
compute chunkX bulk chunk/atom bin/1d x lower 3.125 units box
|
||||
|
||||
#output pressure profile and other profiles
|
||||
#the pressure profile is (-1/2V)*(c_spa[1] + c_spa[2]), where
|
||||
#V is the volume of a slice
|
||||
fix profiles bulk ave/chunk 1 1 ${dump_rate} chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
fix profiles bulk ave/chunk 1 1 50 chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
|
||||
#compute velocity profile across the pipe with a finer grid
|
||||
variable dYnew equal ${dY}/10
|
||||
variable dYnew equal 3.07692307692308/10
|
||||
compute chunkY bulk chunk/atom bin/1d y center ${dYnew} units box region pipe
|
||||
compute chunkY bulk chunk/atom bin/1d y center 0.307692307692308 units box region pipe
|
||||
fix velYprof bulk ave/chunk 1 1 ${dump_rate} chunkY vx file Vy_profile ave running overwrite
|
||||
fix velYprof bulk ave/chunk 1 1 50 chunkY vx file Vy_profile ave running overwrite
|
||||
|
||||
#full trajectory
|
||||
# dump 7 bulk custom ${dump_rate} bulk.lammpstrj id type x y z
|
||||
# dump_modify 7 sort id
|
||||
|
||||
run ${run}
|
||||
run 2000
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.174 | 5.174 | 5.174 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
2000 2.0302713 2.0802515 0.53472229 6.5470853
|
||||
2010 2.0303419 2.0806129 0.54177821 6.5808527
|
||||
2020 2.0245167 2.0792991 0.54803523 6.6381758
|
||||
2030 2.0169072 2.065404 0.55345227 6.7008962
|
||||
2040 2.0052526 2.0513817 0.55818432 6.7755868
|
||||
2050 1.9953625 2.0366564 0.56245299 6.8382569
|
||||
2060 2.0003667 2.0462109 0.56649798 6.8390557
|
||||
2070 2.0238288 2.0834553 0.57023651 6.7637821
|
||||
2080 2.045765 2.1173867 0.5730944 6.6861321
|
||||
2090 2.0563925 2.1370313 0.57430831 6.6422581
|
||||
2100 2.0620437 2.1480293 0.57319824 6.6080678
|
||||
2110 2.0584437 2.1473173 0.56913597 6.5969671
|
||||
2120 2.0532825 2.1393006 0.56154606 6.5799417
|
||||
2130 2.0450143 2.1234905 0.55009479 6.5616931
|
||||
2140 2.0229537 2.1004507 0.53511912 6.5854627
|
||||
2150 1.9832556 2.0554119 0.51812599 6.6700591
|
||||
2160 1.9444027 2.0110758 0.50163049 6.7534263
|
||||
2170 1.9267473 1.9904528 0.48759542 6.76469
|
||||
2180 1.9262232 1.9809353 0.47662199 6.7188048
|
||||
2190 1.9359331 1.9854626 0.46836289 6.6406985
|
||||
2200 1.9530728 1.9971865 0.4620366 6.5409943
|
||||
2210 1.9657099 2.0056761 0.45692542 6.4639397
|
||||
2220 1.9661008 2.0046161 0.45253504 6.4388081
|
||||
2230 1.9574696 1.9947839 0.44864257 6.4528687
|
||||
2240 1.9522284 1.9922663 0.44518111 6.4584458
|
||||
2250 1.9518203 1.9950044 0.44206844 6.4491722
|
||||
2260 1.9527908 1.9989603 0.4391804 6.4377912
|
||||
2270 1.9452231 1.9932538 0.43643529 6.4607516
|
||||
2280 1.9249341 1.9759145 0.43392742 6.5320897
|
||||
2290 1.9087464 1.960985 0.43186869 6.5875176
|
||||
2300 1.9103289 1.964731 0.43039882 6.5765021
|
||||
2310 1.9182062 1.9783814 0.4294628 6.5434488
|
||||
2320 1.9204281 1.9796609 0.42889381 6.5351629
|
||||
2330 1.916279 1.9720659 0.42866391 6.5562619
|
||||
2340 1.9062866 1.9587628 0.42890166 6.6033936
|
||||
2350 1.9024117 1.9566812 0.42979475 6.6297969
|
||||
2360 1.908153 1.960687 0.43141898 6.6215148
|
||||
2370 1.9115944 1.9663337 0.43376668 6.6236491
|
||||
2380 1.9086193 1.9637867 0.4367911 6.6529568
|
||||
2390 1.9039907 1.9610268 0.44053991 6.6926343
|
||||
2400 1.9034944 1.9609406 0.44508818 6.7193441
|
||||
2410 1.9151521 1.9753641 0.4504458 6.7015957
|
||||
2420 1.9314517 1.9925924 0.45644382 6.6669864
|
||||
2430 1.9433933 2.0062001 0.46277215 6.6481527
|
||||
2440 1.9504631 2.0087015 0.46917209 6.6475757
|
||||
2450 1.9550092 2.0094957 0.47550077 6.6556459
|
||||
2460 1.9609689 2.0147997 0.48170141 6.6568282
|
||||
2470 1.9730726 2.0328127 0.48763131 6.6337545
|
||||
2480 1.9838562 2.0466643 0.49303443 6.6143423
|
||||
2490 1.9862031 2.0473388 0.49767532 6.6245587
|
||||
2500 1.9817565 2.0455432 0.50152131 6.6573893
|
||||
2510 1.9785788 2.0423176 0.50460561 6.6808042
|
||||
2520 1.9823006 2.0505106 0.50696374 6.6726698
|
||||
2530 1.9907178 2.0553736 0.50852885 6.6402082
|
||||
2540 2.0005205 2.0690408 0.50919421 6.5966469
|
||||
2550 2.0079727 2.0809816 0.50872954 6.5568419
|
||||
2560 2.0133128 2.096271 0.50682742 6.5199915
|
||||
2570 2.0141298 2.0990846 0.50314491 6.4951991
|
||||
2580 2.0048768 2.0874319 0.49750096 6.5025454
|
||||
2590 1.9876498 2.0638834 0.4900201 6.5333038
|
||||
2600 1.9720479 2.0474479 0.48105263 6.5527157
|
||||
2610 1.9596324 2.0355764 0.4710001 6.5547867
|
||||
2620 1.9439039 2.0106405 0.46046644 6.5646889
|
||||
2630 1.9321714 1.9924346 0.45021207 6.5589454
|
||||
2640 1.9349378 1.9923889 0.44082833 6.5012762
|
||||
2650 1.9448459 2.0069955 0.43251999 6.4228945
|
||||
2660 1.9446852 2.0050346 0.42525857 6.3921645
|
||||
2670 1.9325594 1.9884937 0.41913362 6.4169726
|
||||
2680 1.9121687 1.9606084 0.41434428 6.4821267
|
||||
2690 1.8923613 1.9339385 0.41105831 6.5517615
|
||||
2700 1.8807238 1.9191801 0.40933203 6.5949447
|
||||
2710 1.8797367 1.918758 0.40906826 6.6001309
|
||||
2720 1.8852961 1.9225996 0.41005611 6.58191
|
||||
2730 1.8937478 1.9357751 0.41204348 6.5541946
|
||||
2740 1.9019279 1.9449374 0.41476104 6.5278575
|
||||
2750 1.9134396 1.9614415 0.41800066 6.4890769
|
||||
2760 1.9339551 1.9913779 0.42150554 6.4159805
|
||||
2770 1.9597826 2.0220988 0.42487614 6.3232273
|
||||
2780 1.9753466 2.0414907 0.42771704 6.2715489
|
||||
2790 1.9720423 2.0402016 0.42976012 6.2949288
|
||||
2800 1.9512893 2.0172711 0.43109201 6.3878056
|
||||
2810 1.9232302 1.9870212 0.4320928 6.5101822
|
||||
2820 1.9026913 1.959286 0.43326424 6.6024967
|
||||
2830 1.9033802 1.9621601 0.43500785 6.6114274
|
||||
2840 1.9214292 1.9833838 0.43733454 6.5508757
|
||||
2850 1.9440563 2.0087358 0.43995473 6.4713496
|
||||
2860 1.9589136 2.0211107 0.44250821 6.4232961
|
||||
2870 1.9588429 2.022232 0.44477492 6.4355861
|
||||
2880 1.9456751 2.0009513 0.44676532 6.5021746
|
||||
2890 1.9269155 1.9782929 0.44877858 6.5926531
|
||||
2900 1.9125262 1.9554653 0.45121196 6.6657808
|
||||
2910 1.9187855 1.9572583 0.45438665 6.6589954
|
||||
2920 1.9416112 1.9784518 0.45839212 6.5888253
|
||||
2930 1.9613579 1.9975032 0.46305788 6.5317424
|
||||
2940 1.9711529 2.0102501 0.46812715 6.5148943
|
||||
2950 1.9707865 2.0133283 0.47345305 6.5389543
|
||||
2960 1.9732526 2.0170219 0.47898306 6.5537092
|
||||
2970 1.9871126 2.0282309 0.48465048 6.5273492
|
||||
2980 1.9953449 2.0404164 0.49032615 6.5227325
|
||||
2990 1.9909136 2.037246 0.49581423 6.5664662
|
||||
3000 1.9872474 2.0307896 0.5011051 6.6060698
|
||||
3010 1.9944885 2.0457308 0.5062755 6.6031811
|
||||
3020 2.0103461 2.0599491 0.51116655 6.5654871
|
||||
3030 2.0240275 2.077342 0.5154921 6.5358852
|
||||
3040 2.0205953 2.0704954 0.51898871 6.5708937
|
||||
3050 2.0032184 2.0463036 0.52167438 6.657741
|
||||
3060 1.9889341 2.0265284 0.52385964 6.7329171
|
||||
3070 1.9795143 2.0201081 0.52588914 6.7881407
|
||||
3080 1.9713362 2.0123964 0.52797238 6.8362858
|
||||
3090 1.9692592 2.0106467 0.53025538 6.8616268
|
||||
3100 1.9722487 2.0259566 0.53277635 6.8689898
|
||||
3110 1.9703322 2.0314028 0.53541462 6.895271
|
||||
3120 1.9594359 2.0217586 0.53808512 6.954362
|
||||
3130 1.9524729 2.0148628 0.5409094 6.9965233
|
||||
3140 1.9630381 2.0260807 0.54400259 6.968082
|
||||
3150 1.9902598 2.0549364 0.54720142 6.8698796
|
||||
3160 2.029715 2.0923999 0.54995378 6.7193678
|
||||
3170 2.0581544 2.1137995 0.55150021 6.6053728
|
||||
3180 2.0590739 2.1156535 0.55123668 6.5919337
|
||||
3190 2.0400682 2.0904721 0.54894762 6.6505757
|
||||
3200 2.0211594 2.0682597 0.54484887 6.7046468
|
||||
3210 2.012712 2.0573114 0.53922056 6.7130909
|
||||
3220 2.0102377 2.0554701 0.53219251 6.6919068
|
||||
3230 2.0017671 2.0505068 0.52386898 6.6867054
|
||||
3240 1.9854941 2.0308454 0.51458791 6.7051085
|
||||
3250 1.9767009 2.0187664 0.50486784 6.6916859
|
||||
3260 1.9771733 2.0186148 0.49510721 6.6424305
|
||||
3270 1.974003 2.0136039 0.48556818 6.6078903
|
||||
3280 1.9627665 1.9989122 0.47654147 6.6067904
|
||||
3290 1.9491247 1.9826247 0.46834865 6.6186709
|
||||
3300 1.9414093 1.9724941 0.4612122 6.6119543
|
||||
3310 1.9433901 1.9715482 0.45518879 6.570612
|
||||
3320 1.9518837 1.9872717 0.45010165 6.5057947
|
||||
3330 1.9603874 1.9957995 0.44566728 6.4428221
|
||||
3340 1.9615962 1.9945224 0.44167201 6.4099339
|
||||
3350 1.955918 1.9882866 0.4380303 6.4070811
|
||||
3360 1.9463445 1.9763654 0.43480086 6.4241178
|
||||
3370 1.9411187 1.9683081 0.4320639 6.4296577
|
||||
3380 1.9407224 1.9580074 0.42991627 6.4210217
|
||||
3390 1.9402479 1.9530447 0.42850635 6.4170536
|
||||
3400 1.9451337 1.9555771 0.42787382 6.3990336
|
||||
3410 1.9475586 1.9612432 0.42797178 6.3953251
|
||||
3420 1.9434927 1.960532 0.4286887 6.4210681
|
||||
3430 1.9339054 1.9516935 0.43003682 6.4707071
|
||||
3440 1.9234014 1.9464343 0.43214965 6.5248205
|
||||
3450 1.9191846 1.9444777 0.43516361 6.5558451
|
||||
3460 1.923218 1.9594606 0.43915611 6.5549213
|
||||
3470 1.9328953 1.9792053 0.44397878 6.5327637
|
||||
3480 1.9466227 1.9997841 0.44940599 6.4954965
|
||||
3490 1.9672374 2.0323219 0.45511091 6.4358811
|
||||
3500 1.9799622 2.0479841 0.46061029 6.4100217
|
||||
3510 1.97942 2.0493411 0.46551964 6.4368108
|
||||
3520 1.9725674 2.0389602 0.46976379 6.4892049
|
||||
3530 1.9716429 2.0389798 0.47344292 6.5200899
|
||||
3540 1.9789254 2.0486162 0.47659268 6.5198212
|
||||
3550 1.9872455 2.0577517 0.47908145 6.5144586
|
||||
3560 1.9808834 2.0545963 0.48076562 6.5633282
|
||||
3570 1.9637165 2.0335394 0.4816783 6.6519124
|
||||
3580 1.9407948 2.0067763 0.48212406 6.7605224
|
||||
3590 1.9226532 1.9825887 0.482523 6.8486041
|
||||
3600 1.9135067 1.9700999 0.48328349 6.8977859
|
||||
3610 1.9157516 1.9720028 0.48470695 6.8977759
|
||||
3620 1.9328644 2.0001154 0.48688778 6.8361569
|
||||
3630 1.9568208 2.0243053 0.48963934 6.7442107
|
||||
3640 1.9824587 2.0569223 0.49259174 6.6452535
|
||||
3650 1.9934906 2.0686357 0.49529039 6.6020218
|
||||
3660 1.9996281 2.0747054 0.49732231 6.5808905
|
||||
3670 2.0038801 2.0772777 0.49838834 6.5691351
|
||||
3680 1.9941342 2.0712365 0.49826732 6.6088108
|
||||
3690 1.9762631 2.0486045 0.49689109 6.6739003
|
||||
3700 1.9667284 2.034939 0.49438991 6.7010266
|
||||
3710 1.9615089 2.0168112 0.49093736 6.7040385
|
||||
3720 1.9613068 2.014749 0.48673789 6.6813041
|
||||
3730 1.9731234 2.0290151 0.48175562 6.6096756
|
||||
3740 1.9829764 2.0461907 0.47575174 6.5424752
|
||||
3750 1.9792839 2.0454423 0.4685271 6.5237752
|
||||
3760 1.9599692 2.0287015 0.46022485 6.5616271
|
||||
3770 1.935975 2.0000948 0.45138017 6.6136471
|
||||
3780 1.9236713 1.9834802 0.44262437 6.6187463
|
||||
3790 1.9268004 1.9875324 0.43430113 6.5632772
|
||||
3800 1.932601 1.9872595 0.42649564 6.4984765
|
||||
3810 1.9322506 1.9814946 0.41928856 6.4617054
|
||||
3820 1.9245737 1.9712821 0.4128224 6.461378
|
||||
3830 1.9148568 1.9555602 0.40721003 6.4774474
|
||||
3840 1.9049961 1.9457058 0.4026118 6.5029211
|
||||
3850 1.8915137 1.9265199 0.39914962 6.5483592
|
||||
3860 1.8784768 1.9058055 0.39700153 6.5962113
|
||||
3870 1.8755236 1.9045158 0.39632769 6.6079033
|
||||
3880 1.8841415 1.9140314 0.39710038 6.5777071
|
||||
3890 1.8958027 1.9331148 0.39918951 6.5359786
|
||||
3900 1.9064085 1.948805 0.40238576 6.4998591
|
||||
3910 1.9185092 1.9675732 0.40647523 6.4610682
|
||||
3920 1.9342595 1.9933225 0.41115392 6.4122308
|
||||
3930 1.9482664 2.007614 0.41603495 6.373684
|
||||
3940 1.9557759 2.0161573 0.42084462 6.3636707
|
||||
3950 1.9573687 2.016612 0.42540421 6.3804123
|
||||
3960 1.9486354 1.9998027 0.42974612 6.4404943
|
||||
3970 1.936214 1.980721 0.43412037 6.5176787
|
||||
3980 1.9274292 1.9595259 0.43885103 6.5846211
|
||||
3990 1.9233082 1.953436 0.44425085 6.6354275
|
||||
4000 1.9289165 1.9522097 0.45042645 6.6513836
|
||||
Loop time of 2.49114 on 1 procs for 2000 steps with 2775 atoms
|
||||
|
||||
Performance: 69365.902 tau/day, 802.846 timesteps/s
|
||||
98.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.4257 | 1.4257 | 1.4257 | 0.0 | 57.23
|
||||
Neigh | 0.15501 | 0.15501 | 0.15501 | 0.0 | 6.22
|
||||
Comm | 0.017206 | 0.017206 | 0.017206 | 0.0 | 0.69
|
||||
Output | 0.034183 | 0.034183 | 0.034183 | 0.0 | 1.37
|
||||
Modify | 0.81531 | 0.81531 | 0.81531 | 0.0 | 32.73
|
||||
Other | | 0.04374 | | | 1.76
|
||||
|
||||
Nlocal: 2775 ave 2775 max 2775 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 517 ave 517 max 517 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 24366 ave 24366 max 24366 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 24366
|
||||
Ave neighs/atom = 8.78054
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:05
|
||||
@ -1,909 +0,0 @@
|
||||
LAMMPS (6 Jul 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
#LAMMPS input script
|
||||
#in.GD
|
||||
#see README for details
|
||||
|
||||
###############################################################################
|
||||
#initialize variables
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
#frequency for outputting info (timesteps)
|
||||
variable dump_rate equal 50
|
||||
variable thermo_rate equal 10
|
||||
|
||||
#equilibration time (timesteps)
|
||||
variable equil equal 1000
|
||||
|
||||
#stabilization time (timesteps to reach steady-state)
|
||||
variable stabil equal 1000
|
||||
|
||||
#data collection time (timesteps)
|
||||
variable run equal 2000
|
||||
|
||||
#length of pipe
|
||||
variable L equal 30
|
||||
|
||||
#width of pipe
|
||||
variable d equal 20
|
||||
|
||||
#flux (mass/sigma*tau)
|
||||
variable J equal 0.1
|
||||
|
||||
#simulation box dimensions
|
||||
variable Lx equal 100
|
||||
variable Ly equal 40
|
||||
|
||||
#bulk fluid density
|
||||
variable dens equal 0.8
|
||||
|
||||
#lattice spacing for wall atoms
|
||||
variable aWall equal 1.0 #1.7472
|
||||
|
||||
#timestep
|
||||
variable ts equal 0.001
|
||||
|
||||
#temperature
|
||||
variable T equal 2.0
|
||||
|
||||
#thermostat damping constant
|
||||
variable tdamp equal ${ts}*100
|
||||
variable tdamp equal 0.001*100
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style atomic
|
||||
|
||||
|
||||
###############################################################################
|
||||
#create box
|
||||
|
||||
#create lattice with the spacing aWall
|
||||
variable rhoWall equal ${aWall}^(-2)
|
||||
variable rhoWall equal 1^(-2)
|
||||
lattice sq ${rhoWall}
|
||||
lattice sq 1
|
||||
Lattice spacing in x,y,z = 1 1 1
|
||||
|
||||
#modify input dimensions to be multiples of aWall
|
||||
variable L1 equal round($L/${aWall})*${aWall}
|
||||
variable L1 equal round(30/${aWall})*${aWall}
|
||||
variable L1 equal round(30/1)*${aWall}
|
||||
variable L1 equal round(30/1)*1
|
||||
variable d1 equal round($d/${aWall})*${aWall}
|
||||
variable d1 equal round(20/${aWall})*${aWall}
|
||||
variable d1 equal round(20/1)*${aWall}
|
||||
variable d1 equal round(20/1)*1
|
||||
variable Ly1 equal round(${Ly}/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/${aWall})*${aWall}
|
||||
variable Ly1 equal round(40/1)*${aWall}
|
||||
variable Ly1 equal round(40/1)*1
|
||||
variable Lx1 equal round(${Lx}/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/${aWall})*${aWall}
|
||||
variable Lx1 equal round(100/1)*${aWall}
|
||||
variable Lx1 equal round(100/1)*1
|
||||
|
||||
#create simulation box
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
variable ly2 equal ${Ly1}/2
|
||||
variable ly2 equal 40/2
|
||||
region simbox block -${lx2} ${lx2} -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 ${lx2} -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -${ly2} ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -20 ${ly2} 0 0.1 units box
|
||||
region simbox block -50 50 -20 20 0 0.1 units box
|
||||
create_box 2 simbox
|
||||
Created orthogonal box = (-50 -20 0) to (50 20 0.1)
|
||||
4 by 1 by 1 MPI processor grid
|
||||
|
||||
#####################################################################
|
||||
#set up potential
|
||||
|
||||
mass 1 1.0 #fluid atoms
|
||||
mass 2 1.0 #wall atoms
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_coeff 1 2 1.0 1.0 1.12246
|
||||
pair_coeff 2 2 0.0 0.0
|
||||
|
||||
neigh_modify exclude type 2 2
|
||||
|
||||
timestep ${ts}
|
||||
timestep 0.001
|
||||
|
||||
#####################################################################
|
||||
#create atoms
|
||||
|
||||
#create wall atoms everywhere
|
||||
create_atoms 2 box
|
||||
Created 4000 atoms
|
||||
|
||||
#define region which is "walled off"
|
||||
variable dhalf equal ${d1}/2
|
||||
variable dhalf equal 20/2
|
||||
variable Lhalf equal ${L1}/2
|
||||
variable Lhalf equal 30/2
|
||||
region walltop block -${Lhalf} ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 ${Lhalf} ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 ${dhalf} EDGE -0.1 0.1 units box
|
||||
region walltop block -15 15 10 EDGE -0.1 0.1 units box
|
||||
region wallbot block -${Lhalf} ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 ${Lhalf} EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -${dhalf} -0.1 0.1 units box
|
||||
region wallbot block -15 15 EDGE -10 -0.1 0.1 units box
|
||||
region outsidewall union 2 walltop wallbot side out
|
||||
|
||||
#remove wall atoms outside wall region
|
||||
group outside region outsidewall
|
||||
3349 atoms in group outside
|
||||
delete_atoms group outside
|
||||
Deleted 3349 atoms, new total = 651
|
||||
|
||||
#remove wall atoms that aren't on edge of wall region
|
||||
variable x1 equal ${Lhalf}-${aWall}
|
||||
variable x1 equal 15-${aWall}
|
||||
variable x1 equal 15-1
|
||||
variable y1 equal ${dhalf}+${aWall}
|
||||
variable y1 equal 10+${aWall}
|
||||
variable y1 equal 10+1
|
||||
region insideTop block -${x1} ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 ${x1} ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 ${y1} EDGE -0.1 0.1 units box
|
||||
region insideTop block -14 14 11 EDGE -0.1 0.1 units box
|
||||
region insideBot block -${x1} ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 ${x1} EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -${y1} -0.1 0.1 units box
|
||||
region insideBot block -14 14 EDGE -11 -0.1 0.1 units box
|
||||
region insideWall union 2 insideTop insideBot
|
||||
group insideWall region insideWall
|
||||
551 atoms in group insideWall
|
||||
delete_atoms group insideWall
|
||||
Deleted 551 atoms, new total = 100
|
||||
|
||||
#define new lattice, to give correct fluid density
|
||||
#y lattice const must be a multiple of aWall
|
||||
variable atrue equal ${dens}^(-1/2)
|
||||
variable atrue equal 0.8^(-1/2)
|
||||
variable ay equal round(${atrue}/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/${aWall})*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*${aWall}
|
||||
variable ay equal round(1.11803398874989/1)*1
|
||||
|
||||
#choose x lattice const to give correct density
|
||||
variable ax equal (${ay}*${dens})^(-1)
|
||||
variable ax equal (1*${dens})^(-1)
|
||||
variable ax equal (1*0.8)^(-1)
|
||||
|
||||
#change Lx to be multiple of ax
|
||||
variable Lx1 equal round(${Lx}/${ax})*${ax}
|
||||
variable Lx1 equal round(100/${ax})*${ax}
|
||||
variable Lx1 equal round(100/1.25)*${ax}
|
||||
variable Lx1 equal round(100/1.25)*1.25
|
||||
variable lx2 equal ${Lx1}/2
|
||||
variable lx2 equal 100/2
|
||||
change_box all x final -${lx2} ${lx2} units box
|
||||
change_box all x final -50 ${lx2} units box
|
||||
change_box all x final -50 50 units box
|
||||
orthogonal box = (-50 -20 0) to (50 20 0.1)
|
||||
|
||||
#define new lattice
|
||||
lattice custom ${dens} a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 ${ax} 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 ${ay} 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
lattice custom 0.8 a1 1.25 0.0 0.0 a2 0.0 1 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0
|
||||
Lattice spacing in x,y,z = 1.25 1 1
|
||||
|
||||
#fill in rest of box with bulk particles
|
||||
variable delta equal 0.001
|
||||
variable Ldelt equal ${Lhalf}+${delta}
|
||||
variable Ldelt equal 15+${delta}
|
||||
variable Ldelt equal 15+0.001
|
||||
variable dDelt equal ${dhalf}-${delta}
|
||||
variable dDelt equal 10-${delta}
|
||||
variable dDelt equal 10-0.001
|
||||
region left block EDGE -${Ldelt} EDGE EDGE -0.1 0.1 units box
|
||||
region left block EDGE -15.001 EDGE EDGE -0.1 0.1 units box
|
||||
region right block ${Ldelt} EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region right block 15.001 EDGE EDGE EDGE -0.1 0.1 units box
|
||||
region pipe block -${Ldelt} ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 ${Ldelt} -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -${dDelt} ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 ${dDelt} -0.1 0.1 units box
|
||||
region pipe block -15.001 15.001 -9.999 9.999 -0.1 0.1 units box
|
||||
|
||||
region bulk union 3 left pipe right
|
||||
create_atoms 1 region bulk
|
||||
Created 2675 atoms
|
||||
|
||||
group bulk type 1
|
||||
2675 atoms in group bulk
|
||||
group wall type 2
|
||||
100 atoms in group wall
|
||||
|
||||
#remove atoms that are too close to wall
|
||||
delete_atoms overlap 0.9 bulk wall
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command delete_atoms, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Deleted 0 atoms, new total = 2775
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude group wall wall
|
||||
|
||||
velocity bulk create $T 78915 dist gaussian rot yes mom yes loop geom
|
||||
velocity bulk create 2 78915 dist gaussian rot yes mom yes loop geom
|
||||
|
||||
#####################################################################
|
||||
#set up PUT
|
||||
#see Evans and Morriss, Phys. Rev. Lett. 56(20) 1986, p. 2172
|
||||
|
||||
#average number of particles per box, Evans and Morriss used 2.0
|
||||
variable NperBox equal 8.0
|
||||
|
||||
#calculate box sizes
|
||||
variable boxSide equal sqrt(${NperBox}/${dens})
|
||||
variable boxSide equal sqrt(8/${dens})
|
||||
variable boxSide equal sqrt(8/0.8)
|
||||
variable nX equal round(lx/${boxSide})
|
||||
variable nX equal round(lx/3.16227766016838)
|
||||
variable nY equal round(ly/${boxSide})
|
||||
variable nY equal round(ly/3.16227766016838)
|
||||
variable dX equal lx/${nX}
|
||||
variable dX equal lx/32
|
||||
variable dY equal ly/${nY}
|
||||
variable dY equal ly/13
|
||||
|
||||
#temperature of fluid (excluding wall)
|
||||
compute myT bulk temp
|
||||
|
||||
#profile-unbiased temperature of fluid
|
||||
compute myTp bulk temp/profile 1 1 0 xy ${nX} ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 ${nY}
|
||||
compute myTp bulk temp/profile 1 1 0 xy 32 13
|
||||
|
||||
#thermo setup
|
||||
thermo ${thermo_rate}
|
||||
thermo 10
|
||||
thermo_style custom step c_myT c_myTp etotal press
|
||||
|
||||
#dump initial configuration
|
||||
# dump 55 all custom 1 all.init.lammpstrj id type x y z vx vy vz
|
||||
# dump 56 wall custom 1 wall.init.lammpstrj id type x y z
|
||||
# dump_modify 55 sort id
|
||||
# dump_modify 56 sort id
|
||||
run 0
|
||||
WARNING: No fixes defined, atoms won't move (../verlet.cpp:55)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 72 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.067 | 3.068 | 3.07 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.0555109 0.77892922 7.3417096
|
||||
Loop time of 4.35114e-06 on 4 procs for 0 steps with 2775 atoms
|
||||
|
||||
114.9% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 4.351e-06 | | |100.00
|
||||
|
||||
Nlocal: 693.75 ave 800 max 578 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 266.25 ave 325 max 198 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Neighs: 6601.5 ave 8000 max 5147 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 26406
|
||||
Ave neighs/atom = 9.51568
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
# undump 55
|
||||
# undump 56
|
||||
|
||||
#####################################################################
|
||||
#equilibrate without GD
|
||||
|
||||
fix nvt bulk nvt temp $T $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 $T ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 ${tdamp}
|
||||
fix nvt bulk nvt temp 2 2 0.1
|
||||
fix_modify nvt temp myTp
|
||||
WARNING: Temperature for fix modify is not for group all (../fix_nh.cpp:1395)
|
||||
fix 2 bulk enforce2d
|
||||
|
||||
run ${equil}
|
||||
run 1000
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.13 | 3.131 | 3.132 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
0 2 2.0555109 0.77892922 7.3417096
|
||||
10 1.9173594 1.9390034 0.77876976 7.6702228
|
||||
20 1.7033394 1.6974676 0.77977799 8.5614784
|
||||
30 1.5026161 1.4723993 0.78456655 9.4308258
|
||||
40 1.4880481 1.4591602 0.79486693 9.6134304
|
||||
50 1.6192437 1.6150635 0.81109069 9.2592835
|
||||
60 1.7404087 1.7583444 0.82955456 8.952392
|
||||
70 1.7757591 1.8006606 0.8452778 8.9717917
|
||||
80 1.7573847 1.7813629 0.85769389 9.1936368
|
||||
90 1.7491183 1.7726908 0.86882429 9.3712357
|
||||
100 1.7798944 1.8079583 0.88029084 9.3871755
|
||||
110 1.8440582 1.8793133 0.89259397 9.2582848
|
||||
120 1.9191606 1.9673434 0.90533438 9.0680574
|
||||
130 1.9883299 2.0484299 0.91755461 8.88117
|
||||
140 2.0463366 2.1111872 0.92818114 8.7184178
|
||||
150 2.0953769 2.167849 0.93639789 8.5713408
|
||||
160 2.1442147 2.2216228 0.94145082 8.4082835
|
||||
170 2.1797848 2.2631458 0.94246877 8.2767903
|
||||
180 2.1863476 2.2700986 0.93873326 8.2311689
|
||||
190 2.1832866 2.2710551 0.93003012 8.1959062
|
||||
200 2.1937154 2.2868403 0.91642537 8.0842007
|
||||
210 2.2022708 2.2915142 0.89824533 7.9575312
|
||||
220 2.1884715 2.2770564 0.87677613 7.9000591
|
||||
230 2.1671124 2.2496063 0.85409501 7.8673156
|
||||
240 2.1560417 2.2379998 0.83167878 7.8003228
|
||||
250 2.1421449 2.2240624 0.81004723 7.7491508
|
||||
260 2.1172164 2.1971044 0.78931978 7.7457415
|
||||
270 2.0856847 2.1672998 0.76956352 7.7719788
|
||||
280 2.0670685 2.1449303 0.75073364 7.7524614
|
||||
290 2.0639481 2.1428374 0.73258016 7.6727716
|
||||
300 2.055776 2.1361719 0.7147669 7.6095248
|
||||
310 2.038425 2.1209353 0.69722853 7.5797085
|
||||
320 2.0203023 2.1066031 0.68006634 7.5521081
|
||||
330 2.0118478 2.1039797 0.66330302 7.4877535
|
||||
340 2.0159442 2.1096258 0.64673694 7.3761703
|
||||
350 2.0166408 2.1075061 0.63020017 7.2788
|
||||
360 2.0059407 2.0806316 0.61387618 7.2263941
|
||||
370 1.9964281 2.0642074 0.59814148 7.1728041
|
||||
380 1.9918446 2.0567527 0.58303017 7.101597
|
||||
390 1.992835 2.0548138 0.56852431 7.0084774
|
||||
400 2.0012934 2.0615016 0.55438401 6.8865948
|
||||
410 2.0084291 2.073418 0.54034073 6.7697478
|
||||
420 2.007464 2.0786717 0.52617041 6.6849032
|
||||
430 1.9983712 2.0704366 0.51188183 6.6323103
|
||||
440 1.9884651 2.0588515 0.49765394 6.5868356
|
||||
450 1.982221 2.0467396 0.4837102 6.5311681
|
||||
460 1.9738673 2.031238 0.47021649 6.4882783
|
||||
470 1.9574246 2.0060447 0.45740021 6.4814923
|
||||
480 1.9361065 1.9734507 0.44557947 6.4995199
|
||||
490 1.9251024 1.9562469 0.43506067 6.4858343
|
||||
500 1.9279545 1.9572145 0.42577835 6.4274765
|
||||
510 1.9267504 1.9570246 0.41755013 6.3927027
|
||||
520 1.9093405 1.9393872 0.41031829 6.4281888
|
||||
530 1.8820555 1.9060756 0.40432569 6.5099401
|
||||
540 1.86537 1.8912682 0.3999087 6.55843
|
||||
550 1.8694252 1.9043192 0.39717519 6.5337875
|
||||
560 1.8835224 1.9294105 0.39589322 6.4760141
|
||||
570 1.8898719 1.9462433 0.39573596 6.4520041
|
||||
580 1.8887698 1.9472764 0.39649878 6.4602989
|
||||
590 1.8945125 1.9550624 0.39810844 6.4470226
|
||||
600 1.9106571 1.9735939 0.40045321 6.3971026
|
||||
610 1.9273243 1.98509 0.40330026 6.3474421
|
||||
620 1.9351802 1.9888986 0.4064498 6.3340566
|
||||
630 1.9337889 1.9846794 0.40981479 6.3610556
|
||||
640 1.9257018 1.9757153 0.4134641 6.4184721
|
||||
650 1.9204429 1.9718256 0.41750942 6.4679594
|
||||
660 1.9220449 1.9701963 0.42202455 6.4919724
|
||||
670 1.9230578 1.9707406 0.4270412 6.5178484
|
||||
680 1.9204554 1.9740485 0.43255127 6.5572507
|
||||
690 1.9201811 1.9762854 0.43847123 6.5869126
|
||||
700 1.9271511 1.9867455 0.44474356 6.5882669
|
||||
710 1.9418851 2.0042477 0.45120727 6.558573
|
||||
720 1.9544547 2.0186724 0.4576061 6.5338329
|
||||
730 1.9687971 2.0326169 0.46367507 6.4988775
|
||||
740 1.9830308 2.0466267 0.46920367 6.4618136
|
||||
750 1.9936981 2.0526606 0.47397868 6.4367349
|
||||
760 2.0008431 2.0535449 0.47786748 6.4249001
|
||||
770 1.9982133 2.0483219 0.48085757 6.4504786
|
||||
780 1.9841544 2.0311693 0.48306488 6.5200512
|
||||
790 1.9683122 2.0158738 0.48475632 6.5959263
|
||||
800 1.9604618 2.003224 0.48619405 6.6392559
|
||||
810 1.9629155 2.0075077 0.48756075 6.6406486
|
||||
820 1.9683056 2.0110554 0.48883443 6.6269424
|
||||
830 1.975409 2.0189161 0.48995399 6.6030215
|
||||
840 1.9897264 2.035016 0.4907852 6.5485575
|
||||
850 2.0094338 2.0555358 0.49104505 6.4719926
|
||||
860 2.0217589 2.0643603 0.49040437 6.4233305
|
||||
870 2.0147718 2.0641627 0.48866908 6.4491964
|
||||
880 1.9883859 2.0324092 0.48592007 6.5488061
|
||||
890 1.9625853 2.0028776 0.48263002 6.6452734
|
||||
900 1.9520401 1.9889124 0.47925524 6.6808078
|
||||
910 1.9559583 1.9952984 0.47597346 6.6573059
|
||||
920 1.9657244 2.0083503 0.47268726 6.6073704
|
||||
930 1.969288 2.0152339 0.4692054 6.5780416
|
||||
940 1.9652206 2.0116384 0.4654438 6.5769812
|
||||
950 1.9567495 1.9960693 0.46147541 6.5942022
|
||||
960 1.9418452 1.980858 0.45753557 6.6369454
|
||||
970 1.9247196 1.9585585 0.45390337 6.6888821
|
||||
980 1.9128262 1.9481721 0.45090045 6.7198221
|
||||
990 1.9167211 1.9451096 0.44869731 6.6912394
|
||||
1000 1.935529 1.9662384 0.44728238 6.6079829
|
||||
Loop time of 0.474418 on 4 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 182118.045 tau/day, 2107.848 timesteps/s
|
||||
98.4% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.13953 | 0.19068 | 0.23764 | 10.4 | 40.19
|
||||
Neigh | 0.016439 | 0.022345 | 0.027069 | 3.2 | 4.71
|
||||
Comm | 0.018215 | 0.068071 | 0.12178 | 18.6 | 14.35
|
||||
Output | 0.011982 | 0.012633 | 0.013047 | 0.4 | 2.66
|
||||
Modify | 0.14494 | 0.15597 | 0.16628 | 2.4 | 32.88
|
||||
Other | | 0.02472 | | | 5.21
|
||||
|
||||
Nlocal: 693.75 ave 800 max 584 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 255.5 ave 323 max 192 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 6083 ave 7384 max 4742 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24332
|
||||
Ave neighs/atom = 8.76829
|
||||
Neighbor list builds = 38
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#initialize the COM velocity and run to achieve steady-state
|
||||
|
||||
#calculate velocity to add: V=J/rho_total
|
||||
variable Vadd equal $J*lx*ly/count(bulk)
|
||||
variable Vadd equal 0.1*lx*ly/count(bulk)
|
||||
|
||||
#first remove any COM velocity, then add back the streaming velocity
|
||||
velocity bulk zero linear
|
||||
velocity bulk set ${Vadd} 0.0 0.0 units box sum yes mom no
|
||||
velocity bulk set 0.149532710280374 0.0 0.0 units box sum yes mom no
|
||||
|
||||
fix GD bulk flow/gauss 1 0 0 #energy yes
|
||||
#fix_modify GD energy yes
|
||||
|
||||
run ${stabil}
|
||||
run 1000
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.13 | 3.131 | 3.132 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
1000 1.9466974 1.9662384 0.45804438 6.615449
|
||||
1010 1.9605467 1.9815754 0.45717241 6.5545496
|
||||
1020 1.9560139 1.9823875 0.45660431 6.5672421
|
||||
1030 1.9348326 1.9691606 0.45633148 6.6463667
|
||||
1040 1.9167809 1.9449522 0.45657707 6.7139486
|
||||
1050 1.9193541 1.943342 0.45767968 6.7014054
|
||||
1060 1.9410751 1.9720491 0.45967742 6.6150379
|
||||
1070 1.9658493 1.9964883 0.46221539 6.5178418
|
||||
1080 1.9767205 2.0074304 0.46491236 6.4768594
|
||||
1090 1.9714544 2.0003054 0.46759126 6.5026957
|
||||
1100 1.9647035 1.9927455 0.4703109 6.5400181
|
||||
1110 1.9657667 1.9959656 0.47317481 6.5519094
|
||||
1120 1.9706062 1.9980802 0.476185 6.5512675
|
||||
1130 1.9747655 2.0062292 0.47932281 6.554091
|
||||
1140 1.9761245 2.0075076 0.48248327 6.5670381
|
||||
1150 1.9744197 2.0073027 0.48562483 6.5914441
|
||||
1160 1.9722698 2.0046687 0.48874207 6.6165575
|
||||
1170 1.9692145 2.0013845 0.49187442 6.6438115
|
||||
1180 1.9665609 1.9970724 0.49508053 6.6693821
|
||||
1190 1.9625031 1.9908427 0.49843816 6.7002606
|
||||
1200 1.960528 1.993084 0.50203044 6.7237076
|
||||
1210 1.9649156 1.9981485 0.50587066 6.7217755
|
||||
1220 1.9788059 2.0134511 0.50987442 6.6833452
|
||||
1230 1.9952283 2.0343101 0.51379781 6.6340278
|
||||
1240 2.0039391 2.0494196 0.51730872 6.6129751
|
||||
1250 2.0019006 2.0526773 0.52014603 6.6320217
|
||||
1260 1.9974025 2.0528914 0.52221385 6.6601786
|
||||
1270 1.9953949 2.0561121 0.5234754 6.6796142
|
||||
1280 1.9893864 2.0470375 0.5238632 6.7140134
|
||||
1290 1.9694951 2.019253 0.5235093 6.798442
|
||||
1300 1.9473901 1.9965919 0.52280384 6.8863369
|
||||
1310 1.9511151 2.006161 0.52203882 6.8700917
|
||||
1320 1.979341 2.0388959 0.52106938 6.7529595
|
||||
1330 2.0073235 2.0720045 0.51935291 6.6297731
|
||||
1340 2.0202482 2.0841419 0.51624273 6.55803
|
||||
1350 2.0177489 2.0669046 0.51142591 6.5401753
|
||||
1360 2.0069274 2.04717 0.50505824 6.5506533
|
||||
1370 1.994854 2.0311383 0.49743042 6.5633001
|
||||
1380 1.9793176 2.0077184 0.48890503 6.5859072
|
||||
1390 1.9580907 1.9839831 0.48004316 6.6288992
|
||||
1400 1.9415542 1.9594192 0.47143599 6.6534105
|
||||
1410 1.9405188 1.9591825 0.46353105 6.620549
|
||||
1420 1.9504784 1.9730647 0.45640199 6.5471784
|
||||
1430 1.9594158 1.9819854 0.44995052 6.4802874
|
||||
1440 1.9615108 1.9863792 0.44406411 6.44391
|
||||
1450 1.9544127 1.9806249 0.43873409 6.4484818
|
||||
1460 1.9384927 1.9614953 0.43408605 6.4905259
|
||||
1470 1.9214711 1.9425515 0.43035972 6.5390434
|
||||
1480 1.9170761 1.9300809 0.42775046 6.5409502
|
||||
1490 1.9242904 1.9385731 0.42631007 6.5005057
|
||||
1500 1.9307133 1.9446119 0.4258836 6.4660754
|
||||
1510 1.9303576 1.9435389 0.42633976 6.4616415
|
||||
1520 1.9248382 1.9408306 0.42765441 6.4832059
|
||||
1530 1.9120794 1.9278123 0.42986958 6.5380951
|
||||
1540 1.899122 1.9125029 0.4331459 6.5987181
|
||||
1550 1.9030956 1.9187821 0.43765067 6.6012019
|
||||
1560 1.9182961 1.9453782 0.44330842 6.5674222
|
||||
1570 1.9272863 1.9613129 0.44971962 6.5619794
|
||||
1580 1.931679 1.9698134 0.45643436 6.5780809
|
||||
1590 1.9336692 1.9728684 0.46314752 6.6035675
|
||||
1600 1.938895 1.9823104 0.46964519 6.6138411
|
||||
1610 1.9510838 1.9937914 0.47568807 6.5916989
|
||||
1620 1.9685387 2.0087314 0.48102339 6.5424432
|
||||
1630 1.9894416 2.0295715 0.48539861 6.4757743
|
||||
1640 1.9982699 2.0426949 0.48860411 6.4512418
|
||||
1650 1.9901677 2.0363837 0.49062424 6.4879985
|
||||
1660 1.9814216 2.0291326 0.49172203 6.5248034
|
||||
1670 1.9812111 2.0293629 0.49218297 6.5253876
|
||||
1680 1.9903906 2.0408376 0.49211747 6.4852787
|
||||
1690 2.0015983 2.0538843 0.4914581 6.4325081
|
||||
1700 2.009727 2.0503407 0.49011163 6.3878577
|
||||
1710 2.0167822 2.0531002 0.4881688 6.3477054
|
||||
1720 2.0189021 2.0445033 0.48564798 6.3273063
|
||||
1730 2.0129713 2.0354734 0.48270666 6.3385541
|
||||
1740 2.0048763 2.0199836 0.47950943 6.3587586
|
||||
1750 1.9994843 2.0085942 0.47624908 6.3694119
|
||||
1760 1.9940025 2.0072098 0.47305283 6.3816295
|
||||
1770 1.9817431 1.9974066 0.46994486 6.4224295
|
||||
1780 1.965171 1.9805421 0.4670779 6.4832371
|
||||
1790 1.9474078 1.9662605 0.46466823 6.5516524
|
||||
1800 1.9286009 1.9507751 0.46292015 6.6263366
|
||||
1810 1.9168087 1.9437961 0.46199899 6.6759834
|
||||
1820 1.9107555 1.9306323 0.46204129 6.7029857
|
||||
1830 1.9135569 1.930819 0.46316484 6.6949737
|
||||
1840 1.9345342 1.9553413 0.46532704 6.6178988
|
||||
1850 1.9630349 1.9929548 0.46822932 6.5137866
|
||||
1860 1.9820746 2.0188839 0.47135068 6.4489028
|
||||
1870 1.9834959 2.0217145 0.47427805 6.4552721
|
||||
1880 1.9731564 2.0120293 0.47692755 6.5100251
|
||||
1890 1.9653605 2.0070624 0.47943307 6.5594235
|
||||
1900 1.9630631 2.0095488 0.48192185 6.5912876
|
||||
1910 1.9556778 2.0035006 0.48443107 6.6437189
|
||||
1920 1.9408788 1.9828296 0.48710124 6.7228731
|
||||
1930 1.9292393 1.9732376 0.49025327 6.7880112
|
||||
1940 1.9263081 1.9708942 0.49416086 6.8162477
|
||||
1950 1.9358375 1.976323 0.49899895 6.7946964
|
||||
1960 1.9520543 1.9936542 0.50485961 6.7467481
|
||||
1970 1.9709064 2.0108957 0.51165586 6.6909455
|
||||
1980 1.9940026 2.0375428 0.51918913 6.6250463
|
||||
1990 2.0171261 2.0646948 0.52705638 6.5649879
|
||||
2000 2.0302713 2.0802515 0.53472229 6.5470853
|
||||
Loop time of 0.482133 on 4 procs for 1000 steps with 2775 atoms
|
||||
|
||||
Performance: 179203.608 tau/day, 2074.116 timesteps/s
|
||||
98.6% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.1081 | 0.18228 | 0.23471 | 12.7 | 37.81
|
||||
Neigh | 0.011443 | 0.019967 | 0.025651 | 4.1 | 4.14
|
||||
Comm | 0.01639 | 0.073615 | 0.15634 | 21.8 | 15.27
|
||||
Output | 0.011851 | 0.012603 | 0.013287 | 0.5 | 2.61
|
||||
Modify | 0.14306 | 0.16634 | 0.18018 | 3.6 | 34.50
|
||||
Other | | 0.02733 | | | 5.67
|
||||
|
||||
Nlocal: 693.75 ave 797 max 590 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 259 ave 320 max 195 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 6101 ave 7360 max 4853 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24404
|
||||
Ave neighs/atom = 8.79423
|
||||
Neighbor list builds = 36
|
||||
Dangerous builds = 0
|
||||
|
||||
#####################################################################
|
||||
#collect data
|
||||
|
||||
#print the applied force and total flux to ensure conservation of Jx
|
||||
variable Fapp equal f_GD[1]
|
||||
compute vxBulk bulk reduce sum vx
|
||||
compute vyBulk bulk reduce sum vy
|
||||
variable invVol equal 1.0/(lx*ly)
|
||||
variable jx equal c_vxBulk*${invVol}
|
||||
variable jx equal c_vxBulk*0.00025
|
||||
variable jy equal c_vyBulk*${invVol}
|
||||
variable jy equal c_vyBulk*0.00025
|
||||
variable curr_step equal step
|
||||
variable p_Fapp format Fapp %.3f
|
||||
variable p_jx format jx %.5g
|
||||
variable p_jy format jy %.5g
|
||||
fix print_vCOM all print ${dump_rate} "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
fix print_vCOM all print 50 "${curr_step} ${p_Fapp} ${p_jx} ${p_jy}" file GD.out screen no title "timestep Fapp Jx Jy"
|
||||
|
||||
#compute IK1 pressure profile
|
||||
#see Todd, Evans, and Davis, Phys. Rev. E 52(2) 1995, p. 1627
|
||||
#use profile-unbiased temperature to remove the streaming velocity
|
||||
#from the kinetic part of the pressure
|
||||
compute spa bulk stress/atom myTp
|
||||
|
||||
#for the pressure profile, use the same grid as the PUT
|
||||
compute chunkX bulk chunk/atom bin/1d x lower ${dX} units box
|
||||
compute chunkX bulk chunk/atom bin/1d x lower 3.125 units box
|
||||
|
||||
#output pressure profile and other profiles
|
||||
#the pressure profile is (-1/2V)*(c_spa[1] + c_spa[2]), where
|
||||
#V is the volume of a slice
|
||||
fix profiles bulk ave/chunk 1 1 ${dump_rate} chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
fix profiles bulk ave/chunk 1 1 50 chunkX vx density/mass c_spa[1] c_spa[2] file x_profiles ave running overwrite
|
||||
|
||||
#compute velocity profile across the pipe with a finer grid
|
||||
variable dYnew equal ${dY}/10
|
||||
variable dYnew equal 3.07692307692308/10
|
||||
compute chunkY bulk chunk/atom bin/1d y center ${dYnew} units box region pipe
|
||||
compute chunkY bulk chunk/atom bin/1d y center 0.307692307692308 units box region pipe
|
||||
fix velYprof bulk ave/chunk 1 1 ${dump_rate} chunkY vx file Vy_profile ave running overwrite
|
||||
fix velYprof bulk ave/chunk 1 1 50 chunkY vx file Vy_profile ave running overwrite
|
||||
|
||||
#full trajectory
|
||||
# dump 7 bulk custom ${dump_rate} bulk.lammpstrj id type x y z
|
||||
# dump_modify 7 sort id
|
||||
|
||||
run ${run}
|
||||
run 2000
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.138 | 5.139 | 5.14 Mbytes
|
||||
Step c_myT c_myTp TotEng Press
|
||||
2000 2.0302713 2.0802515 0.53472229 6.5470853
|
||||
2010 2.0303419 2.0806129 0.54177821 6.5808527
|
||||
2020 2.0245167 2.0792991 0.54803523 6.6381758
|
||||
2030 2.0169072 2.065404 0.55345227 6.7008962
|
||||
2040 2.0052526 2.0513817 0.55818432 6.7755868
|
||||
2050 1.9953625 2.0366564 0.56245299 6.8382569
|
||||
2060 2.0003667 2.0462109 0.56649798 6.8390557
|
||||
2070 2.0238288 2.0834553 0.57023651 6.7637821
|
||||
2080 2.045765 2.1173867 0.5730944 6.6861321
|
||||
2090 2.0563925 2.1370313 0.57430831 6.6422581
|
||||
2100 2.0620437 2.1480293 0.57319824 6.6080678
|
||||
2110 2.0584437 2.1473173 0.56913597 6.5969671
|
||||
2120 2.0532825 2.1393006 0.56154606 6.5799417
|
||||
2130 2.0450143 2.1234905 0.55009479 6.5616931
|
||||
2140 2.0229537 2.1004507 0.53511912 6.5854627
|
||||
2150 1.9832556 2.0554119 0.51812599 6.6700591
|
||||
2160 1.9444027 2.0110758 0.50163049 6.7534263
|
||||
2170 1.9267473 1.9904528 0.48759542 6.76469
|
||||
2180 1.9262232 1.9809353 0.47662199 6.7188048
|
||||
2190 1.9359331 1.9854626 0.46836289 6.6406985
|
||||
2200 1.9530728 1.9971865 0.4620366 6.5409943
|
||||
2210 1.9657099 2.0056761 0.45692542 6.4639397
|
||||
2220 1.9661008 2.0046161 0.45253504 6.4388081
|
||||
2230 1.9574696 1.9947839 0.44864257 6.4528687
|
||||
2240 1.9522284 1.9922663 0.44518111 6.4584458
|
||||
2250 1.9518203 1.9950044 0.44206844 6.4491722
|
||||
2260 1.9527908 1.9989603 0.4391804 6.4377912
|
||||
2270 1.9452231 1.9932538 0.43643529 6.4607516
|
||||
2280 1.9249341 1.9759145 0.43392742 6.5320897
|
||||
2290 1.9087464 1.960985 0.43186869 6.5875176
|
||||
2300 1.9103289 1.964731 0.43039882 6.5765021
|
||||
2310 1.9182062 1.9783814 0.4294628 6.5434488
|
||||
2320 1.9204281 1.9796609 0.42889381 6.5351629
|
||||
2330 1.916279 1.9720659 0.42866391 6.5562619
|
||||
2340 1.9062866 1.9587628 0.42890166 6.6033936
|
||||
2350 1.9024117 1.9566812 0.42979475 6.6297969
|
||||
2360 1.908153 1.960687 0.43141898 6.6215148
|
||||
2370 1.9115944 1.9663337 0.43376668 6.6236491
|
||||
2380 1.9086193 1.9637867 0.4367911 6.6529568
|
||||
2390 1.9039907 1.9610268 0.44053991 6.6926343
|
||||
2400 1.9034944 1.9609406 0.44508818 6.7193441
|
||||
2410 1.9151521 1.9753641 0.4504458 6.7015957
|
||||
2420 1.9314517 1.9925924 0.45644382 6.6669864
|
||||
2430 1.9433933 2.0062001 0.46277215 6.6481527
|
||||
2440 1.9504631 2.0087015 0.46917209 6.6475757
|
||||
2450 1.9550092 2.0094957 0.47550077 6.6556459
|
||||
2460 1.9609689 2.0147997 0.48170141 6.6568282
|
||||
2470 1.9730726 2.0328127 0.48763131 6.6337545
|
||||
2480 1.9838562 2.0466643 0.49303443 6.6143423
|
||||
2490 1.9862031 2.0473388 0.49767532 6.6245587
|
||||
2500 1.9817565 2.0455432 0.50152131 6.6573893
|
||||
2510 1.9785788 2.0423176 0.50460561 6.6808042
|
||||
2520 1.9823006 2.0505106 0.50696374 6.6726698
|
||||
2530 1.9907178 2.0553736 0.50852885 6.6402082
|
||||
2540 2.0005205 2.0690408 0.50919421 6.5966469
|
||||
2550 2.0079727 2.0809816 0.50872954 6.5568419
|
||||
2560 2.0133128 2.096271 0.50682742 6.5199915
|
||||
2570 2.0141298 2.0990846 0.50314491 6.4951991
|
||||
2580 2.0048768 2.0874319 0.49750096 6.5025454
|
||||
2590 1.9876498 2.0638834 0.4900201 6.5333038
|
||||
2600 1.9720479 2.0474479 0.48105263 6.5527157
|
||||
2610 1.9596324 2.0355764 0.4710001 6.5547867
|
||||
2620 1.9439039 2.0106405 0.46046644 6.5646889
|
||||
2630 1.9321714 1.9924346 0.45021207 6.5589454
|
||||
2640 1.9349378 1.9923889 0.44082833 6.5012762
|
||||
2650 1.9448459 2.0069955 0.43251999 6.4228945
|
||||
2660 1.9446852 2.0050346 0.42525857 6.3921645
|
||||
2670 1.9325594 1.9884937 0.41913362 6.4169726
|
||||
2680 1.9121687 1.9606084 0.41434428 6.4821267
|
||||
2690 1.8923613 1.9339385 0.41105831 6.5517615
|
||||
2700 1.8807238 1.9191801 0.40933203 6.5949447
|
||||
2710 1.8797367 1.918758 0.40906826 6.6001309
|
||||
2720 1.8852961 1.9225996 0.41005611 6.58191
|
||||
2730 1.8937478 1.9357751 0.41204348 6.5541946
|
||||
2740 1.9019279 1.9449374 0.41476104 6.5278575
|
||||
2750 1.9134396 1.9614415 0.41800066 6.4890769
|
||||
2760 1.9339551 1.9913779 0.42150554 6.4159805
|
||||
2770 1.9597826 2.0220988 0.42487614 6.3232273
|
||||
2780 1.9753466 2.0414907 0.42771704 6.2715489
|
||||
2790 1.9720423 2.0402016 0.42976012 6.2949288
|
||||
2800 1.9512893 2.0172711 0.43109201 6.3878056
|
||||
2810 1.9232302 1.9870212 0.4320928 6.5101822
|
||||
2820 1.9026913 1.959286 0.43326424 6.6024967
|
||||
2830 1.9033802 1.9621601 0.43500785 6.6114274
|
||||
2840 1.9214292 1.9833838 0.43733454 6.5508757
|
||||
2850 1.9440563 2.0087358 0.43995473 6.4713496
|
||||
2860 1.9589136 2.0211107 0.44250821 6.4232961
|
||||
2870 1.9588429 2.022232 0.44477492 6.4355861
|
||||
2880 1.9456751 2.0009513 0.44676532 6.5021746
|
||||
2890 1.9269155 1.9782929 0.44877858 6.5926531
|
||||
2900 1.9125262 1.9554653 0.45121196 6.6657808
|
||||
2910 1.9187855 1.9572583 0.45438665 6.6589954
|
||||
2920 1.9416112 1.9784518 0.45839212 6.5888253
|
||||
2930 1.9613579 1.9975032 0.46305788 6.5317424
|
||||
2940 1.9711529 2.0102501 0.46812715 6.5148943
|
||||
2950 1.9707865 2.0133283 0.47345305 6.5389543
|
||||
2960 1.9732526 2.0170219 0.47898306 6.5537092
|
||||
2970 1.9871126 2.0282309 0.48465048 6.5273492
|
||||
2980 1.9953449 2.0404164 0.49032615 6.5227325
|
||||
2990 1.9909136 2.037246 0.49581423 6.5664662
|
||||
3000 1.9872474 2.0307896 0.50110509 6.6060698
|
||||
3010 1.9944885 2.0457308 0.5062755 6.6031811
|
||||
3020 2.0103461 2.0599491 0.51116655 6.5654871
|
||||
3030 2.0240275 2.077342 0.5154921 6.5358852
|
||||
3040 2.0205953 2.0704954 0.51898871 6.5708937
|
||||
3050 2.0032184 2.0463036 0.52167438 6.657741
|
||||
3060 1.9889341 2.0265284 0.52385964 6.7329171
|
||||
3070 1.9795143 2.0201081 0.52588914 6.7881407
|
||||
3080 1.9713362 2.0123964 0.52797238 6.8362858
|
||||
3090 1.9692592 2.0106467 0.53025538 6.8616268
|
||||
3100 1.9722487 2.0259566 0.53277635 6.8689898
|
||||
3110 1.9703322 2.0314028 0.53541462 6.895271
|
||||
3120 1.9594359 2.0217586 0.53808512 6.954362
|
||||
3130 1.9524729 2.0148628 0.5409094 6.9965233
|
||||
3140 1.9630381 2.0260807 0.54400259 6.968082
|
||||
3150 1.9902598 2.0549364 0.54720142 6.8698796
|
||||
3160 2.029715 2.0923999 0.54995378 6.7193678
|
||||
3170 2.0581544 2.1137995 0.55150021 6.6053728
|
||||
3180 2.059074 2.1156535 0.55123668 6.5919337
|
||||
3190 2.0400682 2.0904721 0.54894762 6.6505757
|
||||
3200 2.0211594 2.0682597 0.54484887 6.7046468
|
||||
3210 2.012712 2.0573114 0.53922057 6.7130909
|
||||
3220 2.0102377 2.0554701 0.53219251 6.6919069
|
||||
3230 2.0017671 2.0505068 0.52386898 6.6867054
|
||||
3240 1.9854941 2.0308454 0.51458792 6.7051085
|
||||
3250 1.9767009 2.0187664 0.50486785 6.6916859
|
||||
3260 1.9771733 2.0186148 0.49510722 6.6424305
|
||||
3270 1.974003 2.0136039 0.48556819 6.6078903
|
||||
3280 1.9627665 1.9989122 0.47654147 6.6067904
|
||||
3290 1.9491247 1.9826248 0.46834866 6.6186709
|
||||
3300 1.9414093 1.9724941 0.4612122 6.6119543
|
||||
3310 1.9433901 1.9715482 0.45518879 6.570612
|
||||
3320 1.9518837 1.9872717 0.45010165 6.5057947
|
||||
3330 1.9603874 1.9957995 0.44566728 6.4428221
|
||||
3340 1.9615962 1.9945224 0.44167201 6.4099339
|
||||
3350 1.955918 1.9882866 0.4380303 6.4070811
|
||||
3360 1.9463445 1.9763654 0.43480086 6.4241178
|
||||
3370 1.9411187 1.9683081 0.43206391 6.4296577
|
||||
3380 1.9407224 1.9580074 0.42991627 6.4210217
|
||||
3390 1.9402479 1.9530447 0.42850635 6.4170536
|
||||
3400 1.9451337 1.9555771 0.42787382 6.3990336
|
||||
3410 1.9475586 1.9612432 0.42797178 6.3953251
|
||||
3420 1.9434927 1.960532 0.4286887 6.4210681
|
||||
3430 1.9339054 1.9516935 0.43003682 6.4707071
|
||||
3440 1.9234014 1.9464343 0.43214965 6.5248205
|
||||
3450 1.9191846 1.9444777 0.43516361 6.5558451
|
||||
3460 1.923218 1.9594606 0.43915611 6.5549213
|
||||
3470 1.9328953 1.9792053 0.44397878 6.5327637
|
||||
3480 1.9466227 1.9997841 0.44940599 6.4954965
|
||||
3490 1.9672374 2.0323219 0.45511091 6.4358811
|
||||
3500 1.9799622 2.0479841 0.46061029 6.4100217
|
||||
3510 1.97942 2.0493411 0.46551964 6.4368108
|
||||
3520 1.9725674 2.0389602 0.46976378 6.4892049
|
||||
3530 1.9716429 2.0389798 0.47344292 6.5200899
|
||||
3540 1.9789254 2.0486162 0.47659268 6.5198212
|
||||
3550 1.9872455 2.0577517 0.47908145 6.5144586
|
||||
3560 1.9808834 2.0545962 0.48076561 6.5633282
|
||||
3570 1.9637165 2.0335394 0.4816783 6.6519124
|
||||
3580 1.9407948 2.0067763 0.48212405 6.7605224
|
||||
3590 1.9226532 1.9825887 0.48252299 6.8486041
|
||||
3600 1.9135067 1.9700999 0.48328348 6.8977858
|
||||
3610 1.9157516 1.9720028 0.48470695 6.8977759
|
||||
3620 1.9328644 2.0001154 0.48688777 6.8361569
|
||||
3630 1.9568208 2.0243053 0.48963933 6.7442107
|
||||
3640 1.9824587 2.0569223 0.49259173 6.6452535
|
||||
3650 1.9934906 2.0686356 0.49529038 6.6020218
|
||||
3660 1.9996281 2.0747054 0.4973223 6.5808904
|
||||
3670 2.0038801 2.0772777 0.49838833 6.5691351
|
||||
3680 1.9941342 2.0712365 0.49826732 6.6088107
|
||||
3690 1.9762631 2.0486045 0.49689108 6.6739002
|
||||
3700 1.9667284 2.0349391 0.4943899 6.7010265
|
||||
3710 1.9615089 2.0168112 0.49093735 6.7040384
|
||||
3720 1.9613068 2.0147489 0.48673788 6.6813041
|
||||
3730 1.9731234 2.0290151 0.48175561 6.6096757
|
||||
3740 1.9829764 2.0461907 0.47575173 6.5424752
|
||||
3750 1.9792839 2.0454423 0.46852709 6.5237753
|
||||
3760 1.9599692 2.0287014 0.46022484 6.5616271
|
||||
3770 1.935975 2.0000948 0.45138016 6.6136471
|
||||
3780 1.9236713 1.9834802 0.44262435 6.6187463
|
||||
3790 1.9268004 1.9875324 0.43430112 6.5632772
|
||||
3800 1.932601 1.9872595 0.42649563 6.4984764
|
||||
3810 1.9322506 1.9814946 0.41928855 6.4617054
|
||||
3820 1.9245737 1.9712821 0.4128224 6.4613779
|
||||
3830 1.9148568 1.9555602 0.40721003 6.4774474
|
||||
3840 1.9049961 1.9457058 0.40261179 6.5029211
|
||||
3850 1.8915137 1.9265199 0.39914961 6.5483592
|
||||
3860 1.8784768 1.9058055 0.39700153 6.5962113
|
||||
3870 1.8755236 1.9045158 0.39632768 6.6079033
|
||||
3880 1.8841415 1.9140314 0.39710037 6.577707
|
||||
3890 1.8958027 1.9331149 0.39918951 6.5359785
|
||||
3900 1.9064085 1.948805 0.40238576 6.499859
|
||||
3910 1.9185092 1.9675733 0.40647523 6.4610682
|
||||
3920 1.9342595 1.9933225 0.41115392 6.4122308
|
||||
3930 1.9482664 2.0076139 0.41603495 6.3736841
|
||||
3940 1.9557759 2.0161573 0.42084462 6.3636708
|
||||
3950 1.9573687 2.016612 0.42540421 6.3804124
|
||||
3960 1.9486354 1.9998027 0.42974612 6.4404944
|
||||
3970 1.936214 1.9807209 0.43412037 6.5176788
|
||||
3980 1.9274292 1.9595259 0.43885103 6.5846212
|
||||
3990 1.9233082 1.953436 0.44425085 6.6354276
|
||||
4000 1.9289166 1.9522097 0.45042645 6.6513835
|
||||
Loop time of 0.998413 on 4 procs for 2000 steps with 2775 atoms
|
||||
|
||||
Performance: 173074.634 tau/day, 2003.179 timesteps/s
|
||||
98.9% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.25646 | 0.3672 | 0.47947 | 15.7 | 36.78
|
||||
Neigh | 0.027925 | 0.039163 | 0.050221 | 4.5 | 3.92
|
||||
Comm | 0.032807 | 0.14565 | 0.27684 | 25.4 | 14.59
|
||||
Output | 0.025572 | 0.032272 | 0.035355 | 2.2 | 3.23
|
||||
Modify | 0.31519 | 0.35781 | 0.375 | 4.1 | 35.84
|
||||
Other | | 0.05632 | | | 5.64
|
||||
|
||||
Nlocal: 693.75 ave 805 max 582 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 255.5 ave 312 max 199 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 6091.5 ave 7423 max 4780 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 24366
|
||||
Ave neighs/atom = 8.78054
|
||||
Neighbor list builds = 72
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:01
|
||||
38
examples/PACKAGES/pedone/in.pedone.melt
Normal file
38
examples/PACKAGES/pedone/in.pedone.melt
Normal file
@ -0,0 +1,38 @@
|
||||
# Ca-O melt with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
create_atoms 1 box
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
create_atoms 2 box
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
set type 1 charge 1.2
|
||||
set type 2 charge -1.2
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
velocity all create 6000.0 98347
|
||||
|
||||
fix 1 all nvt temp 3000.0 3000.0 0.1
|
||||
|
||||
# dump 1 all atom 500 Ca-O-melt.lammpstrj
|
||||
|
||||
thermo 100
|
||||
run 1000
|
||||
38
examples/PACKAGES/pedone/in.pedone.relax
Normal file
38
examples/PACKAGES/pedone/in.pedone.relax
Normal file
@ -0,0 +1,38 @@
|
||||
# Ca-O crystal with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
create_atoms 1 box
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
create_atoms 2 box
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
displace_atoms all random 0.01 0.01 0.01 9084544
|
||||
set type 1 charge 1.2
|
||||
set type 2 charge -1.2
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
variable len equal lx*0.25
|
||||
thermo_style custom step v_len lx pe press
|
||||
thermo 100
|
||||
fix 1 all box/relax iso 0.0
|
||||
minimize 0.0 0.0 1000 10000
|
||||
|
||||
print "Expected lattice parameter: 4.7748, computed: $(v_len:%6.4f)"
|
||||
122
examples/PACKAGES/pedone/log.9Apr24.pedone.melt.g++.1
Normal file
122
examples/PACKAGES/pedone/log.9Apr24.pedone.melt.g++.1
Normal file
@ -0,0 +1,122 @@
|
||||
LAMMPS (7 Feb 2024 - Development - patch_7Feb2024_update1-373-g7ac84e18dd)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Ca-O melt with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
Created orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
create_atoms 2 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
set type 1 charge 1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
set type 2 charge -1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
velocity all create 6000.0 98347
|
||||
|
||||
fix 1 all nvt temp 3000.0 3000.0 0.1
|
||||
|
||||
# dump 1 all atom 500 Ca-O-melt.lammpstrj
|
||||
|
||||
thermo 100
|
||||
run 1000
|
||||
PPPM initialization ...
|
||||
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
|
||||
G vector (1/distance) = 0.23676226
|
||||
grid = 24 24 24
|
||||
stencil order = 5
|
||||
estimated absolute RMS force accuracy = 1.3089053e-05
|
||||
estimated relative force accuracy = 9.089844e-07
|
||||
using double precision FFTW3
|
||||
3d grid and FFT values/proc = 29791 13824
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 5 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 17
|
||||
ghost atom cutoff = 17
|
||||
binsize = 8.5, bins = 3 3 3
|
||||
2 neighbor lists, perpetual/occasional/extra = 2 0 0
|
||||
(1) pair pedone, perpetual, skip from (2)
|
||||
attributes: half, newton on
|
||||
pair build: skip
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair coul/long, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 9.239 | 9.239 | 9.239 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 6000 -3771.5568 0 -3375.2452 34213.185
|
||||
100 2894.1756 -3562.491 0 -3371.3251 114640.32
|
||||
200 2980.3531 -3570.2657 0 -3373.4076 123673.56
|
||||
300 2783.0437 -3574.5809 0 -3390.7554 119791.27
|
||||
400 3021.6581 -3568.2149 0 -3368.6285 116032.29
|
||||
500 3112.0438 -3580.0178 0 -3374.4613 114798.18
|
||||
600 2973.4609 -3577.0582 0 -3380.6553 111843.46
|
||||
700 3180.1687 -3568.4542 0 -3358.3979 121008.83
|
||||
800 2923.7803 -3573.3023 0 -3380.181 111459.55
|
||||
900 2940.3133 -3572.1322 0 -3377.9188 118177.36
|
||||
1000 3070.2584 -3575.5655 0 -3372.769 114175.52
|
||||
Loop time of 13.683 on 1 procs for 1000 steps with 512 atoms
|
||||
|
||||
Performance: 12.629 ns/day, 1.900 hours/ns, 73.084 timesteps/s, 37.419 katom-step/s
|
||||
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 11.545 | 11.545 | 11.545 | 0.0 | 84.37
|
||||
Kspace | 1.4121 | 1.4121 | 1.4121 | 0.0 | 10.32
|
||||
Neigh | 0.65265 | 0.65265 | 0.65265 | 0.0 | 4.77
|
||||
Comm | 0.056036 | 0.056036 | 0.056036 | 0.0 | 0.41
|
||||
Output | 0.00022945 | 0.00022945 | 0.00022945 | 0.0 | 0.00
|
||||
Modify | 0.0090252 | 0.0090252 | 0.0090252 | 0.0 | 0.07
|
||||
Other | | 0.00801 | | | 0.06
|
||||
|
||||
Nlocal: 512 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 10901 ave 10901 max 10901 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 374419 ave 374419 max 374419 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 374419
|
||||
Ave neighs/atom = 731.28711
|
||||
Neighbor list builds = 71
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:13
|
||||
122
examples/PACKAGES/pedone/log.9Apr24.pedone.melt.g++.4
Normal file
122
examples/PACKAGES/pedone/log.9Apr24.pedone.melt.g++.4
Normal file
@ -0,0 +1,122 @@
|
||||
LAMMPS (7 Feb 2024 - Development - patch_7Feb2024_update1-373-g7ac84e18dd)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Ca-O melt with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
Created orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
create_atoms 2 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
set type 1 charge 1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
set type 2 charge -1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
velocity all create 6000.0 98347
|
||||
|
||||
fix 1 all nvt temp 3000.0 3000.0 0.1
|
||||
|
||||
# dump 1 all atom 500 Ca-O-melt.lammpstrj
|
||||
|
||||
thermo 100
|
||||
run 1000
|
||||
PPPM initialization ...
|
||||
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
|
||||
G vector (1/distance) = 0.23676226
|
||||
grid = 24 24 24
|
||||
stencil order = 5
|
||||
estimated absolute RMS force accuracy = 1.3089053e-05
|
||||
estimated relative force accuracy = 9.089844e-07
|
||||
using double precision FFTW3
|
||||
3d grid and FFT values/proc = 11191 3456
|
||||
Generated 0 of 1 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 5 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 17
|
||||
ghost atom cutoff = 17
|
||||
binsize = 8.5, bins = 3 3 3
|
||||
2 neighbor lists, perpetual/occasional/extra = 2 0 0
|
||||
(1) pair pedone, perpetual, skip from (2)
|
||||
attributes: half, newton on
|
||||
pair build: skip
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair coul/long, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.315 | 5.315 | 5.315 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 6000 -3771.5568 0 -3375.2452 34213.185
|
||||
100 3050.0106 -3571.4712 0 -3370.0121 118480.04
|
||||
200 3100.0073 -3571.2534 0 -3366.492 120618.37
|
||||
300 2959.7127 -3580.0883 0 -3384.5935 109184.72
|
||||
400 2922.7083 -3563.9803 0 -3370.9298 120165.71
|
||||
500 3145.0439 -3571.3828 0 -3363.6465 115057.51
|
||||
600 2741.7439 -3563.5077 0 -3382.4102 115504.31
|
||||
700 2906.3636 -3567.3604 0 -3375.3895 119518.5
|
||||
800 2995.3864 -3567.3838 0 -3369.5327 117975.22
|
||||
900 2965.24 -3565.7983 0 -3369.9385 123362.35
|
||||
1000 2916.6485 -3578.7471 0 -3386.0968 115624.78
|
||||
Loop time of 4.50395 on 4 procs for 1000 steps with 512 atoms
|
||||
|
||||
Performance: 38.366 ns/day, 0.626 hours/ns, 222.028 timesteps/s, 113.678 katom-step/s
|
||||
99.4% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 3.2703 | 3.2983 | 3.3259 | 1.3 | 73.23
|
||||
Kspace | 0.79815 | 0.82633 | 0.85342 | 2.6 | 18.35
|
||||
Neigh | 0.18328 | 0.18398 | 0.18472 | 0.1 | 4.08
|
||||
Comm | 0.17423 | 0.17508 | 0.17592 | 0.2 | 3.89
|
||||
Output | 0.00019336 | 0.0002167 | 0.00028554 | 0.0 | 0.00
|
||||
Modify | 0.0089842 | 0.0091093 | 0.0092205 | 0.1 | 0.20
|
||||
Other | | 0.01096 | | | 0.24
|
||||
|
||||
Nlocal: 128 ave 143 max 118 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
Nghost: 7622.75 ave 7651 max 7598 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Neighs: 93581.8 ave 106456 max 84898 min
|
||||
Histogram: 1 1 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 374327
|
||||
Ave neighs/atom = 731.10742
|
||||
Neighbor list builds = 71
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:04
|
||||
134
examples/PACKAGES/pedone/log.9Apr24.pedone.relax.g++.1
Normal file
134
examples/PACKAGES/pedone/log.9Apr24.pedone.relax.g++.1
Normal file
@ -0,0 +1,134 @@
|
||||
LAMMPS (7 Feb 2024 - Development - patch_7Feb2024_update1-373-g7ac84e18dd)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Ca-O crystal with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
Created orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
create_atoms 2 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
displace_atoms all random 0.01 0.01 0.01 9084544
|
||||
Displacing atoms ...
|
||||
set type 1 charge 1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
set type 2 charge -1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
variable len equal lx*0.25
|
||||
thermo_style custom step v_len lx pe press
|
||||
thermo 100
|
||||
fix 1 all box/relax iso 0.0
|
||||
minimize 0.0 0.0 1000 10000
|
||||
Switching to 'neigh_modify every 1 delay 0 check yes' setting during minimization
|
||||
PPPM initialization ...
|
||||
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
|
||||
G vector (1/distance) = 0.23676226
|
||||
grid = 24 24 24
|
||||
stencil order = 5
|
||||
estimated absolute RMS force accuracy = 1.3089053e-05
|
||||
estimated relative force accuracy = 9.089844e-07
|
||||
using double precision FFTW3
|
||||
3d grid and FFT values/proc = 29791 13824
|
||||
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 = 17
|
||||
ghost atom cutoff = 17
|
||||
binsize = 8.5, bins = 3 3 3
|
||||
2 neighbor lists, perpetual/occasional/extra = 2 0 0
|
||||
(1) pair pedone, perpetual, skip from (2)
|
||||
attributes: half, newton on
|
||||
pair build: skip
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair coul/long, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
WARNING: Energy due to 1 extra global DOFs will be included in minimizer energies
|
||||
(src/min.cpp:219)
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.33 | 10.33 | 10.33 Mbytes
|
||||
Step v_len Lx PotEng Press
|
||||
0 4.8105 19.242 -3765.9116 -21299.914
|
||||
100 4.7797128 19.118851 -3767.814 -164.13101
|
||||
200 4.7787507 19.115003 -3769.1366 -373.58797
|
||||
300 4.7768265 19.107306 -3770.5634 48.944709
|
||||
400 4.7768265 19.107306 -3770.9879 -258.56116
|
||||
500 4.7758644 19.103458 -3771.3898 173.91894
|
||||
600 4.7758644 19.103458 -3771.7586 -91.813678
|
||||
700 4.7758644 19.103458 -3771.9842 -252.52883
|
||||
800 4.7749023 19.099609 -3772.3526 216.83318
|
||||
857 4.7747927 19.099171 -3772.8223 32.586251
|
||||
Loop time of 18.0592 on 1 procs for 857 steps with 512 atoms
|
||||
|
||||
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = linesearch alpha is zero
|
||||
Energy initial, next-to-last, final =
|
||||
-3765.91161156884 -3772.82226663623 -3772.82226663623
|
||||
Force two-norm initial, final = 284.3967 0.46963871
|
||||
Force max component initial, final = 284.14458 0.42827677
|
||||
Final line search alpha, max atom move = 2.8580337e-08 1.2240294e-08
|
||||
Iterations, force evaluations = 857 894
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 13.907 | 13.907 | 13.907 | 0.0 | 77.01
|
||||
Kspace | 1.3809 | 1.3809 | 1.3809 | 0.0 | 7.65
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.045871 | 0.045871 | 0.045871 | 0.0 | 0.25
|
||||
Output | 0.0002809 | 0.0002809 | 0.0002809 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 2.726 | | | 15.09
|
||||
|
||||
Nlocal: 512 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 11655 ave 11655 max 11655 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 372155 ave 372155 max 372155 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 372155
|
||||
Ave neighs/atom = 726.86523
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
|
||||
print "Expected lattice parameter: 4.7748, computed: $(v_len:%6.4f)"
|
||||
Expected lattice parameter: 4.7748, computed: 4.7748
|
||||
Total wall time: 0:00:18
|
||||
134
examples/PACKAGES/pedone/log.9Apr24.pedone.relax.g++.4
Normal file
134
examples/PACKAGES/pedone/log.9Apr24.pedone.relax.g++.4
Normal file
@ -0,0 +1,134 @@
|
||||
LAMMPS (7 Feb 2024 - Development - patch_7Feb2024_update1-373-g7ac84e18dd)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Ca-O crystal with Pedone potential
|
||||
|
||||
units metal
|
||||
atom_style charge
|
||||
|
||||
lattice fcc 4.8105 # experimental lattice parameter for fcc-lattice Ca cations
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
|
||||
region box block 0 4 0 4 0 4
|
||||
create_box 2 box
|
||||
Created orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
lattice fcc 4.8105 origin 0.5 0.5 0.5 # O anion lattice shifted by half a unit cell
|
||||
Lattice spacing in x,y,z = 4.8105 4.8105 4.8105
|
||||
create_atoms 2 box
|
||||
Created 256 atoms
|
||||
using lattice units in orthogonal box = (0 0 0) to (19.242 19.242 19.242)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
mass 1 40.078
|
||||
mass 2 15.999
|
||||
|
||||
displace_atoms all random 0.01 0.01 0.01 9084544
|
||||
Displacing atoms ...
|
||||
set type 1 charge 1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
set type 2 charge -1.2
|
||||
Setting atom values ...
|
||||
256 settings made for charge
|
||||
|
||||
timestep 0.002
|
||||
neigh_modify delay 5 every 1 check yes
|
||||
|
||||
pair_style hybrid/overlay pedone 15.0 coul/long 15.0
|
||||
kspace_style pppm 1.0e-6
|
||||
|
||||
pair_coeff * * coul/long
|
||||
pair_coeff 1 2 pedone 0.030211 2.241334 2.923245 5.0
|
||||
pair_coeff 2 2 pedone 0.042395 1.379316 3.618701 22.0
|
||||
|
||||
variable len equal lx*0.25
|
||||
thermo_style custom step v_len lx pe press
|
||||
thermo 100
|
||||
fix 1 all box/relax iso 0.0
|
||||
minimize 0.0 0.0 1000 10000
|
||||
Switching to 'neigh_modify every 1 delay 0 check yes' setting during minimization
|
||||
PPPM initialization ...
|
||||
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
|
||||
G vector (1/distance) = 0.23676226
|
||||
grid = 24 24 24
|
||||
stencil order = 5
|
||||
estimated absolute RMS force accuracy = 1.3089053e-05
|
||||
estimated relative force accuracy = 9.089844e-07
|
||||
using double precision FFTW3
|
||||
3d grid and FFT values/proc = 11191 3456
|
||||
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 = 17
|
||||
ghost atom cutoff = 17
|
||||
binsize = 8.5, bins = 3 3 3
|
||||
2 neighbor lists, perpetual/occasional/extra = 2 0 0
|
||||
(1) pair pedone, perpetual, skip from (2)
|
||||
attributes: half, newton on
|
||||
pair build: skip
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair coul/long, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
WARNING: Energy due to 1 extra global DOFs will be included in minimizer energies
|
||||
(src/min.cpp:219)
|
||||
Per MPI rank memory allocation (min/avg/max) = 6.44 | 6.44 | 6.44 Mbytes
|
||||
Step v_len Lx PotEng Press
|
||||
0 4.8105 19.242 -3765.9116 -21299.914
|
||||
100 4.7797128 19.118851 -3767.814 -164.13101
|
||||
200 4.7787507 19.115003 -3769.1367 -373.59489
|
||||
300 4.7768265 19.107306 -3770.5868 32.046893
|
||||
400 4.7768265 19.107306 -3771.0322 -290.69703
|
||||
500 4.7758644 19.103458 -3771.4223 150.34606
|
||||
600 4.7758644 19.103458 -3771.7941 -117.26938
|
||||
700 4.7758644 19.103458 -3772.0193 -277.34372
|
||||
800 4.7749023 19.099609 -3772.42 171.95177
|
||||
860 4.7748339 19.099336 -3772.8237 1.0976356
|
||||
Loop time of 5.65601 on 4 procs for 860 steps with 512 atoms
|
||||
|
||||
99.5% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = linesearch alpha is zero
|
||||
Energy initial, next-to-last, final =
|
||||
-3765.91161156888 -3772.82365446552 -3772.82365446552
|
||||
Force two-norm initial, final = 284.3967 0.067746634
|
||||
Force max component initial, final = 284.14458 0.014426328
|
||||
Final line search alpha, max atom move = 1.9073486e-06 2.7516038e-08
|
||||
Iterations, force evaluations = 860 922
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 3.7408 | 3.8442 | 4.0543 | 6.5 | 67.97
|
||||
Kspace | 0.60187 | 0.81211 | 0.91543 | 14.1 | 14.36
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.14969 | 0.15017 | 0.15071 | 0.1 | 2.66
|
||||
Output | 0.00019203 | 0.00020711 | 0.0002511 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.8494 | | | 15.02
|
||||
|
||||
Nlocal: 128 ave 135 max 123 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Nghost: 8175 ave 8180 max 8168 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
Neighs: 93038.8 ave 98164 max 89373 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 372155
|
||||
Ave neighs/atom = 726.86523
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
|
||||
print "Expected lattice parameter: 4.7748, computed: $(v_len:%6.4f)"
|
||||
Expected lattice parameter: 4.7748, computed: 4.7748
|
||||
Total wall time: 0:00:05
|
||||
@ -8,7 +8,7 @@
|
||||
|
||||
0.00000000 64.00000000 xlo xhi
|
||||
0.00000000 1.00000000 ylo yhi
|
||||
0.00000000 1.00000000 zlo zhi
|
||||
-0.50000000 0.50000000 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
# 3D simple cubic lattice simulation
|
||||
# 2D slice of 3D simple cubic lattice simulation
|
||||
|
||||
dimension 2
|
||||
boundary p f p
|
||||
|
||||
|
||||
20125
examples/PACKAGES/phonon/2-1D-diatomic/log.6Dec23.Ana.g++.1
Normal file
20125
examples/PACKAGES/phonon/2-1D-diatomic/log.6Dec23.Ana.g++.1
Normal file
File diff suppressed because it is too large
Load Diff
20125
examples/PACKAGES/phonon/2-1D-diatomic/log.6Dec23.Ana.g++.4
Normal file
20125
examples/PACKAGES/phonon/2-1D-diatomic/log.6Dec23.Ana.g++.4
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -1,206 +0,0 @@
|
||||
############################################################
|
||||
# group name of the atoms under study : all
|
||||
# total number of atoms in the group : 64
|
||||
# dimension of the system : 1 D
|
||||
# number of atoms per unit cell : 2
|
||||
# dimension of the FFT mesh : 32 x 1 x 1
|
||||
# number of wait steps before measurement : 500000
|
||||
# frequency of the measurement : 10
|
||||
# output result after this many measurement: 50000
|
||||
# number of processors used by this run : 1
|
||||
############################################################
|
||||
# mapping information between lattice index and atom id
|
||||
# nx ny nz nucell
|
||||
32 1 1 2
|
||||
# l1 l2 l3 k atom_id
|
||||
0 0 0 0 1
|
||||
0 0 0 1 2
|
||||
1 0 0 0 3
|
||||
1 0 0 1 4
|
||||
2 0 0 0 5
|
||||
2 0 0 1 6
|
||||
3 0 0 0 7
|
||||
3 0 0 1 8
|
||||
4 0 0 0 9
|
||||
4 0 0 1 10
|
||||
5 0 0 0 11
|
||||
5 0 0 1 12
|
||||
6 0 0 0 13
|
||||
6 0 0 1 14
|
||||
7 0 0 0 15
|
||||
7 0 0 1 16
|
||||
8 0 0 0 17
|
||||
8 0 0 1 18
|
||||
9 0 0 0 19
|
||||
9 0 0 1 20
|
||||
10 0 0 0 21
|
||||
10 0 0 1 22
|
||||
11 0 0 0 23
|
||||
11 0 0 1 24
|
||||
12 0 0 0 25
|
||||
12 0 0 1 26
|
||||
13 0 0 0 27
|
||||
13 0 0 1 28
|
||||
14 0 0 0 29
|
||||
14 0 0 1 30
|
||||
15 0 0 0 31
|
||||
15 0 0 1 32
|
||||
16 0 0 0 33
|
||||
16 0 0 1 34
|
||||
17 0 0 0 35
|
||||
17 0 0 1 36
|
||||
18 0 0 0 37
|
||||
18 0 0 1 38
|
||||
19 0 0 0 39
|
||||
19 0 0 1 40
|
||||
20 0 0 0 41
|
||||
20 0 0 1 42
|
||||
21 0 0 0 43
|
||||
21 0 0 1 44
|
||||
22 0 0 0 45
|
||||
22 0 0 1 46
|
||||
23 0 0 0 47
|
||||
23 0 0 1 48
|
||||
24 0 0 0 49
|
||||
24 0 0 1 50
|
||||
25 0 0 0 51
|
||||
25 0 0 1 52
|
||||
26 0 0 0 53
|
||||
26 0 0 1 54
|
||||
27 0 0 0 55
|
||||
27 0 0 1 56
|
||||
28 0 0 0 57
|
||||
28 0 0 1 58
|
||||
29 0 0 0 59
|
||||
29 0 0 1 60
|
||||
30 0 0 0 61
|
||||
30 0 0 1 62
|
||||
31 0 0 0 63
|
||||
31 0 0 1 64
|
||||
############################################################
|
||||
############################################################
|
||||
# Current time step : 1000000
|
||||
# Total number of measurements : 50000
|
||||
# Average temperature of the measurement : 0.00499889
|
||||
# Boltzmann constant under current units : 1
|
||||
# basis vector A1 = [2 0 0]
|
||||
# basis vector A2 = [0 1 0]
|
||||
# basis vector A3 = [0 0 1]
|
||||
############################################################
|
||||
# qx qy qz Phi(q)
|
||||
0 0 0 2.0269 0 -1.43323 0 -1.43323 0 1.01345 0
|
||||
0.03125 0 0 2.06958 0 -1.44367 0.144297 -1.44367 -0.144297 1.03745 0
|
||||
0.0625 0 0 2.00734 -7.10386e-17 -1.36818 0.273607 -1.36818 -0.273607 1.02097 0
|
||||
0.09375 0 0 2.06033 7.36546e-16 -1.32894 0.389454 -1.32894 -0.389454 1.00889 3.19674e-16
|
||||
0.125 0 0 2.04516 7.25738e-16 -1.20961 0.516478 -1.20961 -0.516478 1.0073 2.84154e-16
|
||||
0.15625 0 0 2.05756 0 -1.12954 0.615757 -1.12954 -0.615757 1.02862 0
|
||||
0.1875 0 0 2.01319 0 -0.970491 0.627631 -0.970491 -0.627631 0.998014 0
|
||||
0.21875 0 0 1.92269 1.42077e-16 -0.863486 0.66779 -0.863486 -0.66779 1.00343 8.73509e-17
|
||||
0.25 0 0 1.99044 1.71855e-16 -0.671658 0.661397 -0.671658 -0.661397 0.956893 7.10386e-17
|
||||
0.28125 0 0 1.96341 -7.10386e-17 -0.556809 0.66713 -0.556809 -0.66713 0.987126 4.2268e-17
|
||||
0.3125 0 0 2.04354 0 -0.442943 0.661601 -0.442943 -0.661601 0.961726 1.77596e-17
|
||||
0.34375 0 0 1.98412 0 -0.313464 0.632666 -0.313464 -0.632666 1.01134 -2.21836e-17
|
||||
0.375 0 0 2.00509 2.17993e-17 -0.187554 0.499349 -0.187554 -0.499349 0.953607 -8.87982e-18
|
||||
0.40625 0 0 1.91679 0 -0.0962947 0.408121 -0.0962947 -0.408121 1.02919 0
|
||||
0.4375 0 0 1.98963 0 -0.0137565 0.277826 -0.0137565 -0.277826 1.01624 0
|
||||
0.46875 0 0 2.08228 0 -0.0312083 0.0872272 -0.0312083 -0.0872272 0.991567 0
|
||||
0.5 0 0 1.95481 0 0.0542224 0 0.0542224 0 1.00583 0
|
||||
0.53125 0 0 2.08228 0 -0.0312083 -0.0872272 -0.0312083 0.0872272 0.991567 0
|
||||
0.5625 0 0 1.98963 0 -0.0137565 -0.277826 -0.0137565 0.277826 1.01624 0
|
||||
0.59375 0 0 1.91679 0 -0.0962947 -0.408121 -0.0962947 0.408121 1.02919 0
|
||||
0.625 0 0 2.00509 -2.17993e-17 -0.187554 -0.499349 -0.187554 0.499349 0.953607 8.87982e-18
|
||||
0.65625 0 0 1.98412 0 -0.313464 -0.632666 -0.313464 0.632666 1.01134 2.21836e-17
|
||||
0.6875 0 0 2.04354 0 -0.442943 -0.661601 -0.442943 0.661601 0.961726 -1.77596e-17
|
||||
0.71875 0 0 1.96341 7.10386e-17 -0.556809 -0.66713 -0.556809 0.66713 0.987126 -4.2268e-17
|
||||
0.75 0 0 1.99044 -1.71855e-16 -0.671658 -0.661397 -0.671658 0.661397 0.956893 -7.10386e-17
|
||||
0.78125 0 0 1.92269 -1.42077e-16 -0.863486 -0.66779 -0.863486 0.66779 1.00343 -8.73509e-17
|
||||
0.8125 0 0 2.01319 0 -0.970491 -0.627631 -0.970491 0.627631 0.998014 0
|
||||
0.84375 0 0 2.05756 0 -1.12954 -0.615757 -1.12954 0.615757 1.02862 0
|
||||
0.875 0 0 2.04516 -7.25738e-16 -1.20961 -0.516478 -1.20961 0.516478 1.0073 -2.84154e-16
|
||||
0.90625 0 0 2.06033 -7.36546e-16 -1.32894 -0.389454 -1.32894 0.389454 1.00889 -3.19674e-16
|
||||
0.9375 0 0 2.00734 7.10386e-17 -1.36818 -0.273607 -1.36818 0.273607 1.02097 0
|
||||
0.96875 0 0 2.06958 0 -1.44367 -0.144297 -1.44367 0.144297 1.03745 0
|
||||
############################################################
|
||||
# Current time step : 1500000
|
||||
# Total number of measurements : 100000
|
||||
# Average temperature of the measurement : 0.00499969
|
||||
# Boltzmann constant under current units : 1
|
||||
# basis vector A1 = [2 0 0]
|
||||
# basis vector A2 = [0 1 0]
|
||||
# basis vector A3 = [0 0 1]
|
||||
############################################################
|
||||
# qx qy qz Phi(q)
|
||||
0 0 0 2.00227 0 -1.41582 0 -1.41582 0 1.00114 0
|
||||
0.03125 0 0 2.06839 -2.94857e-15 -1.44775 0.141336 -1.44775 -0.141336 1.03568 -1.48867e-15
|
||||
0.0625 0 0 1.99449 0 -1.35985 0.267438 -1.35985 -0.267438 0.997747 0
|
||||
0.09375 0 0 2.01906 7.07225e-16 -1.30258 0.390432 -1.30258 -0.390432 1.00279 3.55249e-16
|
||||
0.125 0 0 2.0047 0 -1.19787 0.503497 -1.19787 -0.503497 1.00067 -3.55249e-17
|
||||
0.15625 0 0 2.05042 4.26299e-16 -1.12849 0.613659 -1.12849 -0.613659 1.03457 1.85685e-16
|
||||
0.1875 0 0 1.99151 0 -0.971684 0.625667 -0.971684 -0.625667 0.990665 0
|
||||
0.21875 0 0 1.96519 -7.10498e-17 -0.861495 0.687109 -0.861495 -0.687109 1.0008 0
|
||||
0.25 0 0 2.01865 0 -0.687312 0.684014 -0.687312 -0.684014 0.977055 0
|
||||
0.28125 0 0 1.9933 0 -0.560168 0.698726 -0.560168 -0.698726 1.00805 -4.40715e-17
|
||||
0.3125 0 0 2.01323 0 -0.446505 0.648764 -0.446505 -0.648764 1.00283 -1.77625e-17
|
||||
0.34375 0 0 2.00398 0 -0.313827 0.630741 -0.313827 -0.630741 0.996834 0
|
||||
0.375 0 0 2.0191 0 -0.216211 0.499651 -0.216211 -0.499651 0.978322 0
|
||||
0.40625 0 0 1.97734 -4.44061e-18 -0.102328 0.398954 -0.102328 -0.398954 1.03793 0
|
||||
0.4375 0 0 1.99332 -2.22031e-18 -0.0639782 0.238226 -0.0639782 -0.238226 1.00811 -1.3774e-18
|
||||
0.46875 0 0 2.02854 0 -0.0151203 0.0911116 -0.0151203 -0.0911116 1.00593 0
|
||||
0.5 0 0 1.99466 0 0.0671755 0 0.0671755 0 0.967275 0
|
||||
0.53125 0 0 2.02854 0 -0.0151203 -0.0911116 -0.0151203 0.0911116 1.00593 0
|
||||
0.5625 0 0 1.99332 2.22031e-18 -0.0639782 -0.238226 -0.0639782 0.238226 1.00811 1.3774e-18
|
||||
0.59375 0 0 1.97734 4.44061e-18 -0.102328 -0.398954 -0.102328 0.398954 1.03793 0
|
||||
0.625 0 0 2.0191 0 -0.216211 -0.499651 -0.216211 0.499651 0.978322 0
|
||||
0.65625 0 0 2.00398 0 -0.313827 -0.630741 -0.313827 0.630741 0.996834 0
|
||||
0.6875 0 0 2.01323 0 -0.446505 -0.648764 -0.446505 0.648764 1.00283 1.77625e-17
|
||||
0.71875 0 0 1.9933 0 -0.560168 -0.698726 -0.560168 0.698726 1.00805 4.40715e-17
|
||||
0.75 0 0 2.01865 0 -0.687312 -0.684014 -0.687312 0.684014 0.977055 0
|
||||
0.78125 0 0 1.96519 7.10498e-17 -0.861495 -0.687109 -0.861495 0.687109 1.0008 0
|
||||
0.8125 0 0 1.99151 0 -0.971684 -0.625667 -0.971684 0.625667 0.990665 0
|
||||
0.84375 0 0 2.05042 -4.26299e-16 -1.12849 -0.613659 -1.12849 0.613659 1.03457 -1.85685e-16
|
||||
0.875 0 0 2.0047 0 -1.19787 -0.503497 -1.19787 0.503497 1.00067 3.55249e-17
|
||||
0.90625 0 0 2.01906 -7.07225e-16 -1.30258 -0.390432 -1.30258 0.390432 1.00279 -3.55249e-16
|
||||
0.9375 0 0 1.99449 0 -1.35985 -0.267438 -1.35985 0.267438 0.997747 0
|
||||
0.96875 0 0 2.06839 2.94857e-15 -1.44775 -0.141336 -1.44775 0.141336 1.03568 1.48867e-15
|
||||
############################################################
|
||||
# Current time step : 2000000
|
||||
# Total number of measurements : 150000
|
||||
# Average temperature of the measurement : 0.00499897
|
||||
# Boltzmann constant under current units : 1
|
||||
# basis vector A1 = [2 0 0]
|
||||
# basis vector A2 = [0 1 0]
|
||||
# basis vector A3 = [0 0 1]
|
||||
############################################################
|
||||
# qx qy qz Phi(q)
|
||||
0 0 0 1.99479 0 -1.41053 0 -1.41053 0 0.997396 0
|
||||
0.03125 0 0 2.03068 0 -1.41965 0.138345 -1.41965 -0.138345 1.0155 0
|
||||
0.0625 0 0 1.99892 7.10396e-17 -1.36162 0.269053 -1.36162 -0.269053 1.00066 0
|
||||
0.09375 0 0 2.00599 0 -1.29893 0.389829 -1.29893 -0.389829 0.995323 0
|
||||
0.125 0 0 1.991 6.87803e-16 -1.20232 0.495552 -1.20232 -0.495552 0.991252 2.84159e-16
|
||||
0.15625 0 0 2.05187 1.42079e-16 -1.12612 0.617447 -1.12612 -0.617447 1.02736 0
|
||||
0.1875 0 0 1.97476 7.10396e-17 -0.972012 0.630423 -0.972012 -0.630423 0.996946 0
|
||||
0.21875 0 0 2.00314 0 -0.862555 0.695244 -0.862555 -0.695244 0.999215 0
|
||||
0.25 0 0 1.9755 0 -0.69573 0.680591 -0.69573 -0.680591 0.988546 0
|
||||
0.28125 0 0 1.99393 0 -0.560979 0.692292 -0.560979 -0.692292 0.995507 -3.55198e-17
|
||||
0.3125 0 0 2.00817 0 -0.436753 0.642127 -0.436753 -0.642127 0.989051 0
|
||||
0.34375 0 0 2.02348 0 -0.310766 0.620888 -0.310766 -0.620888 1.01631 0
|
||||
0.375 0 0 2.01177 0 -0.213987 0.483325 -0.213987 -0.483325 0.98933 0
|
||||
0.40625 0 0 1.97394 0 -0.116509 0.382146 -0.116509 -0.382146 1.03672 0
|
||||
0.4375 0 0 1.98656 0 -0.0609164 0.250798 -0.0609164 -0.250798 1.01266 1.39007e-18
|
||||
0.46875 0 0 2.03013 0 -0.0242785 0.120597 -0.0242785 -0.120597 1.02741 1.78858e-19
|
||||
0.5 0 0 1.98872 0 0.0648313 0 0.0648313 0 0.973791 0
|
||||
0.53125 0 0 2.03013 0 -0.0242785 -0.120597 -0.0242785 0.120597 1.02741 -1.78858e-19
|
||||
0.5625 0 0 1.98656 0 -0.0609164 -0.250798 -0.0609164 0.250798 1.01266 -1.39007e-18
|
||||
0.59375 0 0 1.97394 0 -0.116509 -0.382146 -0.116509 0.382146 1.03672 0
|
||||
0.625 0 0 2.01177 0 -0.213987 -0.483325 -0.213987 0.483325 0.98933 0
|
||||
0.65625 0 0 2.02348 0 -0.310766 -0.620888 -0.310766 0.620888 1.01631 0
|
||||
0.6875 0 0 2.00817 0 -0.436753 -0.642127 -0.436753 0.642127 0.989051 0
|
||||
0.71875 0 0 1.99393 0 -0.560979 -0.692292 -0.560979 0.692292 0.995507 3.55198e-17
|
||||
0.75 0 0 1.9755 0 -0.69573 -0.680591 -0.69573 0.680591 0.988546 0
|
||||
0.78125 0 0 2.00314 0 -0.862555 -0.695244 -0.862555 0.695244 0.999215 0
|
||||
0.8125 0 0 1.97476 -7.10396e-17 -0.972012 -0.630423 -0.972012 0.630423 0.996946 0
|
||||
0.84375 0 0 2.05187 -1.42079e-16 -1.12612 -0.617447 -1.12612 0.617447 1.02736 0
|
||||
0.875 0 0 1.991 -6.87803e-16 -1.20232 -0.495552 -1.20232 0.495552 0.991252 -2.84159e-16
|
||||
0.90625 0 0 2.00599 0 -1.29893 -0.389829 -1.29893 0.389829 0.995323 0
|
||||
0.9375 0 0 1.99892 -7.10396e-17 -1.36162 -0.269053 -1.36162 0.269053 1.00066 0
|
||||
0.96875 0 0 2.03068 0 -1.41965 -0.138345 -1.41965 0.138345 1.0155 0
|
||||
@ -104,6 +104,7 @@ prd: parallel replica dynamics of vacancy diffusion in bulk Si
|
||||
python: use of PYTHON package to invoke Python code from input script
|
||||
qeq: use of QEQ package for charge equilibration
|
||||
reaxff: RDX and TATB and several other models using ReaxFF
|
||||
replicate: use of replicate command
|
||||
rerun: use of rerun and read_dump commands
|
||||
rigid: rigid bodies modeled as independent or coupled
|
||||
shear: sideways shear applied to 2d solid, with and without a void
|
||||
@ -115,6 +116,7 @@ tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
|
||||
template: examples for using atom_style template and comparing to atom style molecular
|
||||
tersoff: regression test input for Tersoff variants
|
||||
threebody: regression test input for a variety of threebody potentials
|
||||
triclinic: general triclinic simulation boxes versus orthogonal boxes
|
||||
ttm: two-temeperature model examples
|
||||
vashishta: models using the Vashishta potential
|
||||
voronoi: Voronoi tesselation via compute voronoi/atom command
|
||||
|
||||
18
examples/granular/data.particles
Normal file
18
examples/granular/data.particles
Normal file
@ -0,0 +1,18 @@
|
||||
Python generated LAMMPS data file
|
||||
|
||||
2 atoms
|
||||
1 atom types
|
||||
|
||||
0 0.08 xlo xhi
|
||||
0 0.04 ylo yhi
|
||||
0 0.08 zlo zhi
|
||||
|
||||
Atoms # sphere
|
||||
|
||||
1 1 0.004 2500 0.04 0.02 0.04 0 0 0
|
||||
2 1 0.004 2500 0.04 0.02 0.04416 0 0 0
|
||||
|
||||
Velocities
|
||||
|
||||
1 0.0 0.0 1 0 0 0
|
||||
2 0.0 0.0 -1 0 0 0
|
||||
24
examples/granular/in.restitution
Normal file
24
examples/granular/in.restitution
Normal file
@ -0,0 +1,24 @@
|
||||
units si
|
||||
atom_style sphere
|
||||
|
||||
boundary p p f
|
||||
region box block 0 80e-3 0 40e-3 0 80e-3 open 3 open 4
|
||||
create_box 2 box
|
||||
|
||||
read_data data.particles add append
|
||||
group mb type 1
|
||||
|
||||
pair_style granular
|
||||
pair_coeff * * hertz/material 1e6 0.8 0.4 tangential mindlin NULL 0.0 0.5 damping coeff_restitution
|
||||
# pair_coeff * * hooke 1e6 0.5 tangential mindlin 1 1.0 0.0 damping coeff_restitution
|
||||
comm_modify vel yes
|
||||
|
||||
timestep 1e-9
|
||||
fix 1 all nve/sphere
|
||||
compute s all stress/atom NULL pair
|
||||
|
||||
#dump 1 all custom 2000000 op.dump id x y z vx vy vz
|
||||
#dump_modify 1 pad 8
|
||||
thermo_style custom step ke
|
||||
run_style verlet
|
||||
run 10000000
|
||||
80
examples/granular/log.13May23.restitution.g++.1
Normal file
80
examples/granular/log.13May23.restitution.g++.1
Normal file
@ -0,0 +1,80 @@
|
||||
LAMMPS (17 Apr 2024 - Development - patch_17Apr2024-93-g4e7bddaa0b)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units si
|
||||
atom_style sphere
|
||||
|
||||
boundary p p f
|
||||
region box block 0 80e-3 0 40e-3 0 80e-3 open 3 open 4
|
||||
create_box 2 box
|
||||
Created orthogonal box = (0 0 0) to (0.08 0.04 0.08)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
|
||||
read_data data.particles add append
|
||||
Reading data file ...
|
||||
orthogonal box = (0 0 0) to (0.08 0.04 0.08)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
2 atoms
|
||||
reading velocities ...
|
||||
2 velocities
|
||||
read_data CPU = 0.002 seconds
|
||||
group mb type 1
|
||||
2 atoms in group mb
|
||||
|
||||
pair_style granular
|
||||
pair_coeff * * hertz/material 1e6 0.8 0.4 tangential mindlin NULL 0.0 0.5 damping coeff_restitution
|
||||
# pair_coeff * * hooke 1e6 0.5 tangential mindlin 1 1.0 0.0 damping coeff_restitution
|
||||
comm_modify vel yes
|
||||
|
||||
timestep 1e-9
|
||||
fix 1 all nve/sphere
|
||||
compute s all stress/atom NULL pair
|
||||
|
||||
#dump 1 all custom 2000000 op.dump id x y z vx vy vz
|
||||
#dump_modify 1 pad 8
|
||||
thermo_style custom step ke
|
||||
run_style verlet
|
||||
run 10000000
|
||||
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 = 0.005
|
||||
ghost atom cutoff = 0.005
|
||||
binsize = 0.0025, bins = 32 16 32
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair granular, 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) = 10.1 | 10.1 | 10.1 Mbytes
|
||||
Step KinEng
|
||||
0 8.3775804e-05
|
||||
10000000 5.3616513e-05
|
||||
Loop time of 5.99782 on 1 procs for 10000000 steps with 2 atoms
|
||||
|
||||
77.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.60235 | 0.60235 | 0.60235 | 0.0 | 10.04
|
||||
Neigh | 0.00021965 | 0.00021965 | 0.00021965 | 0.0 | 0.00
|
||||
Comm | 1.7939 | 1.7939 | 1.7939 | 0.0 | 29.91
|
||||
Output | 2.5955e-05 | 2.5955e-05 | 2.5955e-05 | 0.0 | 0.00
|
||||
Modify | 1.7622 | 1.7622 | 1.7622 | 0.0 | 29.38
|
||||
Other | | 1.839 | | | 30.66
|
||||
|
||||
Nlocal: 2 ave 2 max 2 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 = 14
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:06
|
||||
BIN
examples/mliap/ACE_NN_Pytorch.pt
Normal file
BIN
examples/mliap/ACE_NN_Pytorch.pt
Normal file
Binary file not shown.
BIN
examples/mliap/Cu_ACE.mliap.pytorch.model.pt
Normal file
BIN
examples/mliap/Cu_ACE.mliap.pytorch.model.pt
Normal file
Binary file not shown.
294
examples/mliap/H_N_O_ccs.yace
Normal file
294
examples/mliap/H_N_O_ccs.yace
Normal file
@ -0,0 +1,294 @@
|
||||
elements: [H, N, O]
|
||||
E0: [0.000000, 0.000000, 0.000000]
|
||||
deltaSplineBins: 0.001000
|
||||
embeddings:
|
||||
0: {ndensity: 1, FS_parameters: [1.0, 1.0], npoti: FinnisSinclair, rho_core_cutoff: 100000, drho_core_cutoff: 250}
|
||||
1: {ndensity: 1, FS_parameters: [1.0, 1.0], npoti: FinnisSinclair, rho_core_cutoff: 100000, drho_core_cutoff: 250}
|
||||
2: {ndensity: 1, FS_parameters: [1.0, 1.0], npoti: FinnisSinclair, rho_core_cutoff: 100000, drho_core_cutoff: 250}
|
||||
bonds:
|
||||
[0, 0]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.0, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[0, 1]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.5, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[0, 2]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.7, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[1, 0]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.5, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[1, 1]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 4.4, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[1, 2]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.7, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[2, 0]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.7, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[2, 1]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.7, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
[2, 2]: {nradmax: 2, lmax: 2, nradbasemax: 2, radbasename: ChebExpCos, radparameters: [3.3], radcoefficients: [[[1, 0], [1, 0], [1, 0]], [[0, 1], [0, 1], [0, 1]]], prehc: 0, lambdahc: 3.3, rcut: 5.5, dcut: 0.01, rcut_in: 0.1, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
functions:
|
||||
0:
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [2, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 0], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
1:
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [2, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 1, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 0], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 1, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
2:
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [1], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [2], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 1], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [2, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 1], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 1], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 1], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [2, 2], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [1, 2], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [1, 2], ns: [2, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [2, 2], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 1], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [2, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 2], ns: [1, 1, 1], ls: [1, 2, 1], ms_combs: [-1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -2, 1, 1, -1, 0, 1, 0, -1], ctildes: [0.10540925533894599, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.21081851067789198, -0.18257418583505536, 0.25819888974716115, -0.18257418583505536, 0.10540925533894599]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 1, 1], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [2, 1, 1], ms_combs: [-2, 1, 1, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 2, -1, -1], ctildes: [0.25819888974716115, -0.18257418583505536, -0.18257418583505536, 0.10540925533894599, 0.21081851067789198, 0.10540925533894599, -0.18257418583505536, -0.18257418583505536, 0.25819888974716115]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [1, 2, 2], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 2, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 0], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 1], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 1, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 1, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [1, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
- {mu0: 2, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [2, 2, 2, 2], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
@ -160,3 +160,44 @@ in.mliap.so3.nn.Si
|
||||
------------------
|
||||
|
||||
Example of NN model with SO3 descriptors for Si
|
||||
|
||||
NOTE: The use of ACE within mliap requires the generalized Glebsch-Gordan
|
||||
coefficients (a.k.a. coupling coefficients, ccs, etc.) are defined within
|
||||
a ctilde file. These are used to construct the ACE descriptors for both
|
||||
linear models and non-linear models within mliap. These define the size
|
||||
of the ACE basis used as well as hyperparameters for the basis functions
|
||||
for descriptors in mliap. These files may be generated with various
|
||||
software for fitting ACE models must follow the format for ACE C-Tilde
|
||||
potential files in `../PACKAGES/pace/*.ace` or the convenient yaml-based
|
||||
`.yace` format. For the ACE mliap interface, the coupling coefficient file
|
||||
should NOT include linear model coefficients. If the linear model coefficients
|
||||
are included in the coupling coefficient file, mliap will evaluate ACE
|
||||
contributions to a linear model rather than ACE descriptors.
|
||||
|
||||
One convenient feature of mliap/ace, is that it enables the user to
|
||||
decouple the linear model coefficients and the ace descriptors. Both are
|
||||
typically included in ACE potentials with C-Tilde format. This is
|
||||
demonstrated in the first example for ACE: linear model coefficients are
|
||||
provided separately (in `linear_ACE_coeff.acecoeff`) from coupling
|
||||
coefficients (in `linear_ACE_ccs.yace`). They are combined in a linear
|
||||
pytorch model using `convert_mliap_lin_ACE.py`.
|
||||
|
||||
in.mliap.pytorch.ace
|
||||
------------------
|
||||
|
||||
Example of linear model with ACE descriptors for minimal Ta dataset
|
||||
|
||||
in.mliap.ace.compute
|
||||
------------------
|
||||
|
||||
Example for calculating multi-element ACE descriptors through ML-IAP
|
||||
|
||||
in.mliap.pytorch.ace.NN
|
||||
------------------
|
||||
|
||||
Example of NN model with ACE descriptors for minimal Ta dataset
|
||||
|
||||
mliap_pytorch_ACE.py
|
||||
------------------
|
||||
|
||||
Example of NN model with ACE descriptors for minimal Ta dataset through mliappy
|
||||
|
||||
BIN
examples/mliap/Ta06A.mliap.pytorch.model.pt
Normal file
BIN
examples/mliap/Ta06A.mliap.pytorch.model.pt
Normal file
Binary file not shown.
BIN
examples/mliap/Ta_ACE.mliap.pytorch.model.pt
Normal file
BIN
examples/mliap/Ta_ACE.mliap.pytorch.model.pt
Normal file
Binary file not shown.
172
examples/mliap/ace_compute_struct.data
Normal file
172
examples/mliap/ace_compute_struct.data
Normal file
@ -0,0 +1,172 @@
|
||||
latte_cell_0.data (written by ASE)
|
||||
|
||||
161 atoms
|
||||
3 atom types
|
||||
0.0 12 xlo xhi
|
||||
0.0 12 ylo yhi
|
||||
0.0 12 zlo zhi
|
||||
|
||||
|
||||
Atoms
|
||||
|
||||
1 3 1.2688096799999999 2.0079938400000001 2.7446829899999998
|
||||
2 1 1.5343068200000001 2.0638766500000001 3.7105626900000002
|
||||
3 1 1.7848279600000001 2.6755003400000001 2.2268847200000002
|
||||
4 1 1.56251195 1.1089126899999999 2.3978115199999999
|
||||
5 1 11.61728216 5.71881094 2.4732045999999999
|
||||
6 2 6.5501865600000002 4.7439566800000001 3.6526025500000001
|
||||
7 1 6.4564895299999998 4.1571673000000002 2.6975267999999999
|
||||
8 2 2.0835561 1.59406078 8.5498047600000007
|
||||
9 1 1.1041162499999999 1.4971771599999999 8.1507879200000009
|
||||
10 1 2.60115534 2.2945960400000001 7.95374187
|
||||
11 1 1.9817723300000001 2.0194066400000001 9.5128239400000005
|
||||
12 1 0.99333338000000004 3.6983907299999998 8.1903947899999991
|
||||
13 3 4.9484070999999998 5.3645501400000004 9.16152503
|
||||
14 1 9.0716170599999995 9.3748453999999999 4.2276462400000003
|
||||
15 2 0.30864418999999998 7.7136657499999997 2.9274995599999998
|
||||
16 1 0.47661671 10.1807211 3.71160091
|
||||
17 1 1.07465334 7.8226921999999997 3.5771466900000002
|
||||
18 1 0.38402249999999999 8.3770493300000002 2.1748437100000002
|
||||
19 1 11.435413410000001 7.7903735999999997 3.4040245499999999
|
||||
20 3 6.1570384599999999 10.25988474 3.50899568
|
||||
21 1 5.5932224399999999 9.5632944700000007 3.1446559000000001
|
||||
22 2 1.7785569000000001 7.6312579300000003 9.1488452299999992
|
||||
23 1 2.5594048599999999 6.96832838 9.3069700199999996
|
||||
24 1 2.12441551 8.4547986999999996 8.6428622900000001
|
||||
25 1 1.04552782 7.1697722800000001 8.5894244999999998
|
||||
26 1 0.34824445999999998 10.17844028 9.1629463799999993
|
||||
27 3 5.9638830399999998 10.723709400000001 9.4568803900000002
|
||||
28 1 6.5890835699999997 10.926486110000001 8.7981925800000003
|
||||
29 2 7.1065890400000002 1.83029753 3.3452543600000002
|
||||
30 1 6.9229304999999997 1.8465022099999999 4.3089037100000001
|
||||
31 1 8.0780433600000006 1.9303052199999999 3.2089521400000001
|
||||
32 1 5.6795373600000003 10.471831630000001 4.3244390499999996
|
||||
33 1 6.82999417 0.95850113000000003 2.9815288199999999
|
||||
34 2 11.383805349999999 4.6301225199999996 2.5393688399999998
|
||||
35 1 0.37927047000000003 4.1943216300000001 2.59073807
|
||||
36 3 5.2376410099999999 1.91523463 9.7240636400000007
|
||||
37 1 4.7887202499999999 2.7036936499999999 9.5698142300000004
|
||||
38 1 9.8129906699999996 9.2075140700000002 4.08265499
|
||||
39 1 4.7980879500000002 1.1403494700000001 9.6739962800000008
|
||||
40 1 5.4455845600000004 2.0102099999999998 10.620773509999999
|
||||
41 3 0.90954338999999995 4.6240093199999999 8.3108110600000007
|
||||
42 1 11.909735319999999 4.7483814000000004 8.2500624600000005
|
||||
43 2 7.3223424499999998 7.5866457 3.0245226500000002
|
||||
44 1 7.4470362200000002 8.3169646700000008 3.7148003300000001
|
||||
45 1 6.9073805300000002 7.9385021 2.1723768699999999
|
||||
46 1 5.5542868500000004 5.1176065800000003 3.7655251999999999
|
||||
47 1 6.8124309500000004 6.7778811599999997 3.3973232499999999
|
||||
48 2 0.29575823000000001 11.04303794 3.1016142499999999
|
||||
49 1 0.86490721999999998 11.83879228 3.6389974500000002
|
||||
50 3 6.85201686 8.0846369300000003 8.8762878799999996
|
||||
51 1 7.3351430100000004 7.4263498700000001 9.3821674799999997
|
||||
52 1 6.7919613300000004 7.7595477199999996 7.9716174799999999
|
||||
53 1 3.8990487699999998 6.4283490399999996 8.8832409600000002
|
||||
54 1 5.95997296 9.9329723199999993 9.4746654699999997
|
||||
55 3 11.403658979999999 10.371960359999999 9.2766092199999992
|
||||
56 1 10.983666360000001 9.5157199800000001 9.1478757300000009
|
||||
57 3 1.5223279700000001 5.3327331100000004 0.57537605999999997
|
||||
58 1 2.3815113999999999 5.7251991200000001 0.77945295999999997
|
||||
59 1 0.92079957000000001 6.0931282299999996 0.62203253000000003
|
||||
60 3 11.23490924 2.9153355200000002 6.7585064099999999
|
||||
61 1 10.792340190000001 2.9755225099999998 5.9000018399999998
|
||||
62 1 10.751242059999999 2.1896156000000002 7.1807401500000001
|
||||
63 3 11.39027944 7.3462855600000001 6.7258299499999996
|
||||
64 1 10.92025679 6.69831954 7.2776696599999999
|
||||
65 1 11.12238028 7.0632020999999998 5.8394107799999997
|
||||
66 3 8.4684319499999994 10.71736286 10.60018556
|
||||
67 1 8.5672201599999998 11.420466080000001 11.25794033
|
||||
68 1 9.0803109800000001 10.04804949 10.9406517
|
||||
69 3 6.5851757299999996 9.9940623399999993 6.5574614899999997
|
||||
70 1 7.0276325799999997 10.76096604 6.1723333699999996
|
||||
71 1 5.7419327400000002 10.384583920000001 6.8228822999999998
|
||||
72 3 1.7600546399999999 1.01771919 5.4926787700000004
|
||||
73 1 1.9704209100000001 1.01748419 6.4429703700000003
|
||||
74 1 1.42973007 0.11076352 5.3470644900000002
|
||||
75 1 2.61130613 9.7034123700000006 10.450306830000001
|
||||
76 3 3.05086908 10.48131334 10.085189310000001
|
||||
77 1 3.0032693199999998 10.93357295 9.3652121000000008
|
||||
78 3 6.4631532199999997 8.7652058299999993 11.967847969999999
|
||||
79 1 6.4506808400000004 9.6596595300000008 11.588956019999999
|
||||
80 1 5.6611629700000003 8.3535737700000006 11.638443329999999
|
||||
81 3 1.1745999300000001 5.2420690800000003 5.1001449699999997
|
||||
82 1 1.31932881 5.5236392399999996 6.0128966300000002
|
||||
83 1 0.58053834999999998 4.4898134599999997 5.2325565000000003
|
||||
84 3 6.7275549699999999 0.78840874999999999 7.3817280900000002
|
||||
85 1 6.3887965600000003 1.54670982 6.8634520400000003
|
||||
86 1 7.6791783999999996 0.94039024000000004 7.2649461000000004
|
||||
87 3 8.5476657199999995 0.0064750299999999997 5.0450514100000001
|
||||
88 1 8.8736290899999997 11.10484108 4.8601807900000003
|
||||
89 1 8.0477597599999999 0.20198361000000001 4.2357399400000002
|
||||
90 3 1.2895030000000001 8.4280097900000008 11.82038504
|
||||
91 1 1.4766666399999999 8.1087866399999999 10.87290333
|
||||
92 1 2.10220669 8.1947620200000006 0.29510553
|
||||
93 3 9.6797907599999995 6.4207335499999996 4.3469150599999997
|
||||
94 1 8.9271530099999996 6.72940235 3.7974122399999999
|
||||
95 1 10.20024126 5.9167739199999998 3.66976111
|
||||
96 3 3.57411616 6.7041021699999996 3.8825478499999999
|
||||
97 1 2.8894899500000002 6.1560529800000001 4.2980848099999998
|
||||
98 1 4.3613707699999997 6.4304732400000004 4.3804965400000002
|
||||
99 3 4.7506556 11.441853350000001 1.12537088
|
||||
100 1 4.0861192800000001 10.748523670000001 1.1923347099999999
|
||||
101 1 5.5035301600000004 10.965688249999999 0.73651277000000004
|
||||
102 3 9.5254526399999992 4.8994443900000002 8.3732284099999994
|
||||
103 1 8.7885959800000002 4.3508043900000004 8.6632831400000008
|
||||
104 1 9.6149067499999994 4.6084911499999999 7.4540068699999997
|
||||
105 3 4.1970746700000001 1.34592128 3.67401439
|
||||
106 1 4.9437011999999996 0.74406280999999996 3.514068
|
||||
107 1 4.1905534900000001 1.7730376000000001 2.7963049400000002
|
||||
108 3 1.88232618 11.95451227 0.60024434000000004
|
||||
109 1 2.0464587299999999 11.02454723 0.38329541
|
||||
110 1 1.1518493700000001 0.17494340999999999 11.99928285
|
||||
111 3 3.7593842199999998 11.01685511 6.4562050800000002
|
||||
112 1 3.2125414299999999 10.4553747 5.8894917099999997
|
||||
113 1 3.4166026899999999 10.821557670000001 7.3296563900000002
|
||||
114 3 9.7039841399999993 3.95001545 11.894743249999999
|
||||
115 1 10.461666060000001 3.9163117999999999 11.285435229999999
|
||||
116 1 10.09834695 4.4026997400000001 0.68193007999999999
|
||||
117 3 8.5639596400000002 3.5169507499999999 5.6224104199999996
|
||||
118 1 8.3966650299999994 2.6262214699999999 5.2638164300000003
|
||||
119 1 7.9695371399999999 4.0825059799999996 5.0049407400000003
|
||||
120 3 9.6736245000000007 0.48030482000000002 7.9257577799999996
|
||||
121 1 9.6131980400000003 11.883419180000001 7.1680923999999999
|
||||
122 1 9.9784050299999993 11.90238635 8.63894187
|
||||
123 3 3.9424153099999999 6.9650296699999998 11.60258943
|
||||
124 1 4.2767152700000004 6.8460048999999996 10.670225220000001
|
||||
125 1 4.6570638500000001 6.5129461500000003 0.091159879999999999
|
||||
126 3 3.0570173199999999 9.6631958499999993 3.6611250599999998
|
||||
127 1 2.5400490100000002 9.5743355000000001 2.8444047600000002
|
||||
128 1 2.9314874400000002 8.7809807200000005 4.0425234200000002
|
||||
129 3 7.4549612700000001 5.8430850799999998 11.011384720000001
|
||||
130 1 8.1675884100000005 5.4639182799999997 10.47644287
|
||||
131 1 6.7135573700000002 5.8393818399999997 10.361099749999999
|
||||
132 3 9.8029139300000008 7.9578901699999998 10.21404942
|
||||
133 1 10.38910242 8.3400641400000008 10.87949429
|
||||
134 1 9.0637612000000001 7.6392374099999998 10.756928869999999
|
||||
135 3 4.4963435599999997 4.1067935799999997 11.73387805
|
||||
136 1 4.5473727899999998 4.9577970899999997 11.19223377
|
||||
137 1 5.3588818399999996 4.1756111699999998 0.20355936999999999
|
||||
138 3 9.5923448100000002 7.3418014600000001 1.34856172
|
||||
139 1 8.8715593300000002 7.4776837199999999 2.05040471
|
||||
140 1 9.0443221699999992 7.2732200799999998 0.54011714
|
||||
141 3 7.0350963100000001 3.22348773 0.7070824
|
||||
142 1 7.1784470499999999 4.1340314300000003 1.0184109699999999
|
||||
143 1 7.7787854400000001 2.7888888399999998 1.15838887
|
||||
144 3 9.2124107800000008 0.48085899999999998 1.21751966
|
||||
145 1 9.6620436499999993 11.657271079999999 1.45318397
|
||||
146 1 9.9404883900000005 1.11619136 1.18684594
|
||||
147 3 1.19704207 9.5859959200000002 6.6190888899999996
|
||||
148 1 0.25606413 9.6737366500000004 6.8319340899999998
|
||||
149 1 1.2690051899999999 8.6249354900000004 6.5480112500000001
|
||||
150 3 0.78256133999999999 2.6040609300000002 11.453408359999999
|
||||
151 1 0.61502181 3.5607405999999999 11.40300991
|
||||
152 1 1.55655312 2.5457368800000002 10.866733030000001
|
||||
153 3 5.8627936099999998 7.1217054800000001 5.89173203
|
||||
154 1 6.3432410700000004 7.9400136699999999 6.0855840299999997
|
||||
155 1 5.5077296699999998 6.8468306800000001 6.7436875799999996
|
||||
156 3 10.887828150000001 9.9637482500000001 0.51092815999999996
|
||||
157 1 11.78841776 10.322043069999999 0.44704989000000001
|
||||
158 1 11.02688182 9.2051906700000004 1.0976661299999999
|
||||
159 3 3.93073389 4.1645674499999998 5.7137877000000001
|
||||
160 1 4.6884062999999996 3.5788913299999998 5.5644605800000004
|
||||
161 1 4.2956948500000003 4.7644888099999996 6.3801669700000003
|
||||
46
examples/mliap/ccs_single_element.yace
Normal file
46
examples/mliap/ccs_single_element.yace
Normal file
@ -0,0 +1,46 @@
|
||||
elements: [Ta]
|
||||
E0: [0.000000]
|
||||
deltaSplineBins: 0.001000
|
||||
embeddings:
|
||||
0: {ndensity: 1, FS_parameters: [1.0, 1.0], npoti: FinnisSinclair, rho_core_cutoff: 100000, drho_core_cutoff: 250}
|
||||
bonds:
|
||||
[0, 0]: {nradmax: 8, lmax: 2, nradbasemax: 8, radbasename: ChebExpCos, radparameters: [0.5723], radcoefficients: [[[1, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0]], [[0, 1, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0]], [[0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0]], [[0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0]], [[0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0]], [[0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 1, 0, 0]], [[0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 1, 0]], [[0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 0, 0, 0, 1]]], prehc: 0, lambdahc: 0.5723, rcut: 4.842, dcut: 0.01, rcut_in: 0.595, dcut_in: 0.01, inner_cutoff_type: distance}
|
||||
functions:
|
||||
0:
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [1], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [2], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [3], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [4], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [5], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [6], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [7], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 1, ndensity: 1, num_ms_combs: 1, mus: [0], ns: [8], ls: [0], ms_combs: [0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [1, 1], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [1, 2], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [1, 3], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [2, 2], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [2, 3], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 1, mus: [0, 0], ns: [3, 3], ls: [0, 0], ms_combs: [0, 0], ctildes: [1.0]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 1], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [1, 3], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [2, 2], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [2, 3], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 3, mus: [0, 0], ns: [3, 3], ls: [1, 1], ms_combs: [-1, 1, 0, 0, 1, -1], ctildes: [0.5773502691896257, -0.5773502691896257, 0.5773502691896257]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 1], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [1, 3], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [2, 2], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [2, 3], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 2, ndensity: 1, num_ms_combs: 5, mus: [0, 0], ns: [3, 3], ls: [2, 2], ms_combs: [-2, 2, -1, 1, 0, 0, 1, -1, 2, -2], ctildes: [0.4472135954999579, -0.4472135954999579, 0.447213595499958, -0.4472135954999579, 0.4472135954999579]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 1, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 1, 2], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 2, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [1, 2, 2], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [2, 2, 1], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 9, mus: [0, 0, 0], ns: [2, 2, 2], ls: [1, 1, 2], ms_combs: [-1, -1, 2, -1, 0, 1, -1, 1, 0, 0, -1, 1, 0, 0, 0, 0, 1, -1, 1, -1, 0, 1, 0, -1, 1, 1, -2], ctildes: [0.19999999999999998, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.16329931618554522, -0.1414213562373095, 0.08164965809277261, -0.1414213562373095, 0.19999999999999998]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 1, 1], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 1, 2], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [1, 2, 2], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 3, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0], ns: [2, 2, 2], ls: [2, 2, 2], ms_combs: [-2, 0, 2, -2, 1, 1, -2, 2, 0, -1, -1, 2, -1, 0, 1, -1, 1, 0, -1, 2, -1, 0, -2, 2, 0, -1, 1, 0, 0, 0, 0, 1, -1, 0, 2, -2, 1, -2, 1, 1, -1, 0, 1, 0, -1, 1, 1, -2, 2, -2, 0, 2, -1, -1, 2, 0, -2], ctildes: [0.10690449676496976, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, 0.05345224838248488, -0.10690449676496976, 0.05345224838248488, 0.10690449676496976, -0.1309307341415954, 0.05345224838248488, 0.05345224838248488, -0.1309307341415954, 0.10690449676496976, -0.1309307341415954, 0.10690449676496976]}
|
||||
- {mu0: 0, rank: 4, ndensity: 1, num_ms_combs: 19, mus: [0, 0, 0, 0], ns: [1, 1, 1, 1], ls: [1, 1, 1, 1], ms_combs: [-1, -1, 1, 1, -1, 0, 0, 1, -1, 0, 1, 0, -1, 1, -1, 1, -1, 1, 0, 0, -1, 1, 1, -1, 0, -1, 0, 1, 0, -1, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0, 1, -1, 0, 0, 1, 0, -1, 1, -1, -1, 1, 1, -1, 0, 0, 1, -1, 1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 1, -1, -1], ctildes: [0.0, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, -0.3333333333333333, 0.3333333333333333, -0.3333333333333333, 0.0, 0.0, 0.3333333333333333, -0.3333333333333333, 0.3333333333333333, 0.0, 0.0, 0.0]}
|
||||
32
examples/mliap/convert_mliap_lin_ACE.py
Normal file
32
examples/mliap/convert_mliap_lin_ACE.py
Normal file
@ -0,0 +1,32 @@
|
||||
import sys
|
||||
import numpy as np
|
||||
import torch
|
||||
|
||||
# torch.nn.modules useful for defining a MLIAPPY model.
|
||||
from lammps.mliap.pytorch import TorchWrapper, IgnoreElems
|
||||
|
||||
# Read coefficients
|
||||
coeffs = np.genfromtxt("linear_ACE_coeff.acecoeff",skip_header=4)
|
||||
# If using the "linear_ACE_pot.yace" instead of just the clebsch-gordan coefficients in "linear_ACE_ccs.yace",
|
||||
# uncomment below
|
||||
|
||||
#B_coeffs = np.genfromtxt("linear_ACE_coeff.acecoeff",skip_header=4)
|
||||
#coeffs = np.append(np.zeros(1),np.ones(len(B_coeffs)-1))
|
||||
|
||||
# Write coefficients to a pytorch linear model
|
||||
bias = coeffs[0]
|
||||
weights = coeffs[1:]
|
||||
lin = torch.nn.Linear(weights.shape[0],1)
|
||||
lin.to(torch.float64)
|
||||
with torch.autograd.no_grad():
|
||||
lin.weight.set_(torch.from_numpy(weights).unsqueeze(0))
|
||||
lin.bias.set_(torch.as_tensor(bias,dtype=torch.float64).unsqueeze(0))
|
||||
|
||||
# Wrap the pytorch model for usage with mliappy coupling.
|
||||
model = IgnoreElems(lin) # The linear module does not use the types.
|
||||
n_descriptors = lin.weight.shape[1]
|
||||
print ('ndescriptors',n_descriptors)
|
||||
n_elements = 1
|
||||
linked_model = TorchWrapper(model,n_descriptors=n_descriptors,n_elements=n_elements)
|
||||
|
||||
torch.save(linked_model,"Ta_ACE.mliap.pytorch.model.pt")
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user