Merge branch 'master' into collected-small-changes
This commit is contained in:
@ -1,11 +1,133 @@
|
||||
Notes for Developers and Code Maintainers
|
||||
Notes for developers and code maintainers
|
||||
-----------------------------------------
|
||||
|
||||
This section documents how a few large sections of code with LAMMPS
|
||||
work at a conceptual level. Comments on code in source files
|
||||
This section documents how some of the code functionality within
|
||||
LAMMPS works at a conceptual level. Comments on code in source files
|
||||
typically document what a variable stores, what a small section of
|
||||
code does, or what a function does or its input/outputs. The topics
|
||||
on this page are intended to document code at a higher level.
|
||||
code does, or what a function does and its input/outputs. The topics
|
||||
on this page are intended to document code functionality at a higher level.
|
||||
|
||||
Fix contributions to instantaneous energy, virial, and cumulative energy
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Fixes can calculate contributions to the instantaneous energy and/or
|
||||
virial of the system, both in a global and peratom sense. Fixes that
|
||||
perform thermostatting or barostatting can calculate the cumulative
|
||||
energy they add to or subtract from the system, which is accessed by
|
||||
the *ecouple* and *econserve* thermodynamic keywords. This subsection
|
||||
explains how both work and what flags to set in a new fix to enable
|
||||
this functionality.
|
||||
|
||||
Let's start with thermostatting and barostatting fixes. Examples are
|
||||
the :doc:`fix langevin <fix_langevin>` and :doc:`fix npt <fix_nh>`
|
||||
commands. Here is what the fix needs to do:
|
||||
|
||||
* Set the variable *ecouple_flag* = 1 in the constructor. Also set
|
||||
*scalar_flag* = 1, *extscalar* = 1, and *global_freq* to a timestep
|
||||
increment which matches how often the fix is invoked.
|
||||
* Implement a compute_scalar() method that returns the cumulative
|
||||
energy added or subtracted by the fix, e.g. by rescaling the
|
||||
velocity of atoms. The sign convention is that subtracted energy is
|
||||
positive, added energy is negative. This must be the total energy
|
||||
added to the entire system, i.e. an "extensive" quantity, not a
|
||||
per-atom energy. Cumulative means the summed energy since the fix
|
||||
was instantiated, even across multiple runs. This is because the
|
||||
energy is used by the *econserve* thermodynamic keyword to check
|
||||
that the fix is conserving the total energy of the system,
|
||||
i.e. potential energy + kinetic energy + coupling energy = a
|
||||
constant.
|
||||
|
||||
And here is how the code operates:
|
||||
|
||||
* The Modify class makes a list of all fixes that set *ecouple_flag* = 1.
|
||||
* The :doc:`thermo_style custom <thermo_style>` command defines
|
||||
*ecouple* and *econserve* keywords.
|
||||
* These keywords sum the energy contributions from all the
|
||||
*ecouple_flag* = 1 fixes by invoking the energy_couple() method in
|
||||
the Modify class, which calls the compute_scalar() method of each
|
||||
fix in the list.
|
||||
|
||||
------------------
|
||||
|
||||
Next, here is how a fix contributes to the instantaneous energy and
|
||||
virial of the system. First, it sets any or all of these flags to a
|
||||
value of 1 in their constructor:
|
||||
|
||||
* *energy_global_flag* to contribute to global energy, example: :doc:`fix indent <fix_indent>`
|
||||
* *energy_peratom_flag* to contribute to peratom energy, :doc:`fix cmap <fix_cmap>`
|
||||
* *virial_global_flag* to contribute to global virial, example: :doc:`fix wall <fix_wall>`
|
||||
* *virial_peratom_flag* to contribute to peratom virial, example: :doc:`fix wall <fix_wall>`
|
||||
|
||||
The fix must also do the following:
|
||||
|
||||
* For global energy, implement a compute_scalar() method that returns
|
||||
the energy added or subtracted on this timestep. Here the sign
|
||||
convention is that added energy is positive, subtracted energy is
|
||||
negative.
|
||||
* For peratom energy, invoke the ev_init(eflag,vflag) function each
|
||||
time the fix is invoked, which initializes per-atom energy storage.
|
||||
The value of eflag may need to be stored from an earlier call to the
|
||||
fix during the same timestep. See how the :doc:`fix cmap
|
||||
<fix_cmap>` command does this in src/MOLECULE/fix_cmap.cpp. When an
|
||||
energy for one or more atoms is calculated, invoke the ev_tally()
|
||||
function to tally the contribution to each atom. Both the ev_init()
|
||||
and ev_tally() methods are in the parent Fix class.
|
||||
* For global and/or peratom virial, invoke the v_init(vflag) function
|
||||
each time the fix is invoked, which initializes virial storage.
|
||||
When forces on one or more atoms are calculated, invoke the
|
||||
v_tally() function to tally the contribution. Both the v_init() and
|
||||
v_tally() methods are in the parent Fix class. Note that there are
|
||||
several variants of v_tally(); choose the one appropriate to your
|
||||
fix.
|
||||
|
||||
.. note::
|
||||
|
||||
The ev_init() and ev_tally() methods also account for global and
|
||||
peratom virial contributions. Thus you do not need to invoke the
|
||||
v_init() and v_tally() methods, if the fix also calculates peratom
|
||||
energies.
|
||||
|
||||
The fix must also specify whether (by default) to include or exclude
|
||||
these contributions to the global/peratom energy/virial of the system.
|
||||
For the fix to include the contributions, set either of both of these
|
||||
variables in the contructor:
|
||||
|
||||
* *thermo_energy* = 1, for global and peratom energy
|
||||
* *thermo_virial* = 1, for global and peratom virial
|
||||
|
||||
Note that these variables are zeroed in fix.cpp. Thus if you don't
|
||||
set the variables, the contributions will be excluded (by default)
|
||||
|
||||
However, the user has ultimate control over whether to include or
|
||||
exclude the contributions of the fix via the :doc:`fix modify
|
||||
<fix_modify>` command:
|
||||
|
||||
* fix modify *energy yes* to include global and peratom energy contributions
|
||||
* fix modify *virial yes* to include global and peratom virial contributions
|
||||
|
||||
If the fix contributes to any of the global/peratom energy/virial
|
||||
values for the system, it should be explained on the fix doc page,
|
||||
along with the default values for the *energy yes/no* and *virial
|
||||
yes/no* settings of the :doc:`fix modify <fix_modify>` command.
|
||||
|
||||
Finally, these 4 contributions are included in the output of 4
|
||||
computes:
|
||||
|
||||
* global energy in :doc:`compute pe <compute_pe>`
|
||||
* peratom energy in :doc:`compute pe/atom <compute_pe_atom>`
|
||||
* global virial in :doc:`compute pressure <compute_pressure>`
|
||||
* peratom virial in :doc:`compute stress/atom <compute_stress_atom>`
|
||||
|
||||
These computes invoke a method of the Modify class to include
|
||||
contributions from fixes that have the corresponding flags set,
|
||||
e.g. *energy_peratom_flag* and *thermo_energy* for :doc:`compute
|
||||
pe/atom <compute_pe_atom>`.
|
||||
|
||||
Note that each compute has an optional keyword to either include or
|
||||
exclude all contributions from fixes. Also note that :doc:`compute pe
|
||||
<compute_pe>` and :doc:`compute pressure <compute_pressure>` are what
|
||||
is used (by default) by :doc:`thermodynamic output <thermo_style>` to
|
||||
calculate values for its *pe* and *press* keywords.
|
||||
|
||||
KSpace PPPM FFT grids
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@ -46,11 +46,12 @@ the compute command was issued. The value of the displacement will be
|
||||
.. note::
|
||||
|
||||
Initial coordinates are stored in "unwrapped" form, by using the
|
||||
image flags associated with each atom. See the :doc:`dump custom <dump>` command for a discussion of "unwrapped" coordinates.
|
||||
See the Atoms section of the :doc:`read_data <read_data>` command for a
|
||||
discussion of image flags and how they are set for each atom. You can
|
||||
reset the image flags (e.g. to 0) before invoking this compute by
|
||||
using the :doc:`set image <set>` command.
|
||||
image flags associated with each atom. See the :doc:`dump custom
|
||||
<dump>` command for a discussion of "unwrapped" coordinates. See
|
||||
the Atoms section of the :doc:`read_data <read_data>` command for a
|
||||
discussion of image flags and how they are set for each atom. You
|
||||
can reset the image flags (e.g. to 0) before invoking this compute
|
||||
by using the :doc:`set image <set>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@ -118,32 +118,38 @@ converge properly.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" inferred by the added force to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
||||
needed so that the :doc:`minimize <minimize>` command can include the
|
||||
forces added by this fix in a consistent manner. I.e. there is a
|
||||
decrease in potential energy when atoms move in the direction of the
|
||||
added force.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy inferred by the added force to
|
||||
the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`. Note that this
|
||||
energy is a fictitious quantity but is needed so that the
|
||||
:doc:`minimize <minimize>` command can include the forces added by
|
||||
this fix in a consistent manner. I.e. there is a decrease in
|
||||
potential energy when atoms move in the direction of the added force.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the added forces on atoms to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces on atoms to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost
|
||||
level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a global scalar and a global 3-vector of forces,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the potential energy discussed above. The vector is the
|
||||
total force on the group of atoms before the forces on individual
|
||||
atoms are changed by the fix. The scalar and vector values calculated
|
||||
by this fix are "extensive".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||
The vector is the total force on the group of atoms before the forces
|
||||
on individual atoms are changed by the fix. The scalar and vector
|
||||
values calculated by this fix are "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
@ -55,13 +55,15 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" inferred by the added forces to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
||||
needed so that the :doc:`minimize <minimize>` command can include the
|
||||
forces added by this fix in a consistent manner. I.e. there is a
|
||||
decrease in potential energy when atoms move in the direction of the
|
||||
added forces.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential "energy" inferred by the added torques
|
||||
to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`. Note that this
|
||||
is a fictitious quantity but is needed so that the :doc:`minimize
|
||||
<minimize>` command can include the forces added by this fix in a
|
||||
consistent manner. I.e. there is a decrease in potential energy when
|
||||
atoms move in the direction of the added forces.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
@ -78,16 +80,28 @@ No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
The forces due to this fix are imposed during an energy minimization,
|
||||
invoked by the :doc:`minimize <minimize>` command. You should not
|
||||
specify force components with a variable that has time-dependence for
|
||||
use with a minimizer, since the minimizer increments the timestep as
|
||||
the iteration count during the minimization.
|
||||
invoked by the :doc:`minimize <minimize>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the fictitious potential energy associated with the
|
||||
added forces to be included in the total potential energy of the
|
||||
system (the quantity being minimized), you MUST enable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
.. note::
|
||||
|
||||
You should not specify force components with a variable that has
|
||||
time-dependence for use with a minimizer, since the minimizer
|
||||
increments the timestep as the iteration count during the
|
||||
minimization.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -122,10 +122,22 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. The :doc:`fix_modify <fix_modify>` options relevant to this
|
||||
fix are listed below. No global scalar or vector or per-atom quantities
|
||||
are stored by this fix for access by various :doc:`output commands
|
||||
<Howto_output>`. No parameter of this fix can be used with the
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
||||
this fix, but this fix does add the kinetic energy imparted to atoms
|
||||
by the momentum coupling mode of the AtC package to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`.
|
||||
|
||||
Additional :doc:`fix_modify <fix_modify>` options relevant to this
|
||||
fix are listed below.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the energy
|
||||
discussed in the previous paragraph. The scalar value is "extensive".
|
||||
|
||||
No parameter of this fix can be used with the
|
||||
*start/stop* keywords of the :doc:`run <run>` command. This fix is not
|
||||
invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
@ -145,10 +157,10 @@ one, e.g. nve, nvt, etc. In addition, currently:
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
After specifying this fix in your input script, several other
|
||||
:doc:`fix_modify <fix_modify>` commands are used to setup the problem,
|
||||
e.g. define the finite element mesh and prescribe initial and boundary
|
||||
conditions.
|
||||
After specifying this fix in your input script, several
|
||||
:doc:`fix_modify AtC <fix_modify>` commands are used to setup the
|
||||
problem, e.g. define the finite element mesh and prescribe initial and
|
||||
boundary conditions. Each of these options has its own doc page.
|
||||
|
||||
*fix_modify* commands for setup:
|
||||
|
||||
@ -240,7 +252,8 @@ miscellaneous *fix_modify* commands:
|
||||
* :doc:`fix_modify AtC remove_species <atc_remove_species>`
|
||||
* :doc:`fix_modify AtC remove_molecule <atc_remove_molecule>`
|
||||
|
||||
Note: a set of example input files with the attendant material files are included in the ``examples/USER/atc`` folders.
|
||||
Note: a set of example input files with the attendant material files
|
||||
are included in the ``examples/USER/atc`` folders.
|
||||
|
||||
Default
|
||||
"""""""
|
||||
@ -252,30 +265,52 @@ For detailed exposition of the theory and algorithms please see:
|
||||
|
||||
.. _Wagner:
|
||||
|
||||
**(Wagner)** Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA, "An atomistic-to-continuum coupling method for heat transfer in solids." Special Issue of Computer Methods and Applied Mechanics (2008) 197:3351.
|
||||
**(Wagner)** Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA, "An
|
||||
atomistic-to-continuum coupling method for heat transfer in solids."
|
||||
Special Issue of Computer Methods and Applied Mechanics (2008)
|
||||
197:3351.
|
||||
|
||||
.. _Zimmeman2004:
|
||||
|
||||
**(Zimmerman2004)** Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE; Klein, PA; Bammann, DJ, "Calculation of stress in atomistic simulation." Special Issue of Modelling and Simulation in Materials Science and Engineering (2004), 12:S319.
|
||||
**(Zimmerman2004)** Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE;
|
||||
Klein, PA; Bammann, DJ, "Calculation of stress in atomistic
|
||||
simulation." Special Issue of Modelling and Simulation in Materials
|
||||
Science and Engineering (2004), 12:S319.
|
||||
|
||||
.. _Zimmerman2010:
|
||||
|
||||
**(Zimmerman2010)** Zimmerman, JA; Jones, RE; Templeton, JA, "A material frame approach for evaluating continuum variables in atomistic simulations." Journal of Computational Physics (2010), 229:2364.
|
||||
**(Zimmerman2010)** Zimmerman, JA; Jones, RE; Templeton, JA, "A
|
||||
material frame approach for evaluating continuum variables in
|
||||
atomistic simulations." Journal of Computational Physics (2010),
|
||||
229:2364.
|
||||
|
||||
.. _Templeton2010:
|
||||
|
||||
**(Templeton2010)** Templeton, JA; Jones, RE; Wagner, GJ, "Application of a field-based method to spatially varying thermal transport problems in molecular dynamics." Modelling and Simulation in Materials Science and Engineering (2010), 18:085007.
|
||||
**(Templeton2010)** Templeton, JA; Jones, RE; Wagner, GJ, "Application
|
||||
of a field-based method to spatially varying thermal transport
|
||||
problems in molecular dynamics." Modelling and Simulation in
|
||||
Materials Science and Engineering (2010), 18:085007.
|
||||
|
||||
.. _Jones:
|
||||
|
||||
**(Jones)** Jones, RE; Templeton, JA; Wagner, GJ; Olmsted, D; Modine, JA, "Electron transport enhanced molecular dynamics for metals and semi-metals." International Journal for Numerical Methods in Engineering (2010), 83:940.
|
||||
**(Jones)** Jones, RE; Templeton, JA; Wagner, GJ; Olmsted, D; Modine,
|
||||
JA, "Electron transport enhanced molecular dynamics for metals and
|
||||
semi-metals." International Journal for Numerical Methods in
|
||||
Engineering (2010), 83:940.
|
||||
|
||||
.. _Templeton2011:
|
||||
|
||||
**(Templeton2011)** Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA; Wong, BM, "A long-range electric field solver for molecular dynamics based on atomistic-to-continuum modeling." Journal of Chemical Theory and Computation (2011), 7:1736.
|
||||
**(Templeton2011)** Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA;
|
||||
Wong, BM, "A long-range electric field solver for molecular dynamics
|
||||
based on atomistic-to-continuum modeling." Journal of Chemical Theory
|
||||
and Computation (2011), 7:1736.
|
||||
|
||||
.. _Mandadapu:
|
||||
|
||||
**(Mandadapu)** Mandadapu, KK; Templeton, JA; Lee, JW, "Polarization as a field variable from molecular dynamics simulations." Journal of Chemical Physics (2013), 139:054115.
|
||||
**(Mandadapu)** Mandadapu, KK; Templeton, JA; Lee, JW, "Polarization
|
||||
as a field variable from molecular dynamics simulations." Journal of
|
||||
Chemical Physics (2013), 139:054115.
|
||||
|
||||
Please refer to the standard finite element (FE) texts, e.g. T.J.R Hughes " The finite element method ", Dover 2003, for the basics of FE simulation.
|
||||
Please refer to the standard finite element (FE) texts, e.g. T.J.R
|
||||
Hughes " The finite element method ", Dover 2003, for the basics of FE
|
||||
simulation.
|
||||
|
||||
@ -75,6 +75,39 @@ Note that *V_avg* and *Coeff_i* should all be in the proper units, e.g. if you
|
||||
are using *units real*\ , *V_avg* should be in cubic angstroms, and the
|
||||
coefficients should all be in atmospheres \* cubic angstroms.
|
||||
|
||||
----------
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the cumulative global energy change to :doc:`binary
|
||||
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the fix continues in an uninterrupted
|
||||
fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
||||
you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
@ -47,14 +47,15 @@ for running *ab initio* MD with quantum forces.
|
||||
The group associated with this fix is ignored.
|
||||
|
||||
The protocol and :doc:`units <units>` for message format and content
|
||||
that LAMMPS exchanges with the server code is defined on the :doc:`server md <server_md>` doc page.
|
||||
that LAMMPS exchanges with the server code is defined on the
|
||||
:doc:`server md <server_md>` doc page.
|
||||
|
||||
Note that when using LAMMPS as an MD client, your LAMMPS input script
|
||||
should not normally contain force field commands, like a
|
||||
:doc:`pair_style <pair_style>`, :doc:`bond_style <bond_style>`, or
|
||||
:doc:`kspace_style <kspace_style>` command. However it is possible for
|
||||
a server code to only compute a portion of the full force-field, while
|
||||
LAMMPS computes the remaining part. Your LAMMPS script can also
|
||||
:doc:`kspace_style <kspace_style>` command. However it is possible
|
||||
for a server code to only compute a portion of the full force-field,
|
||||
while LAMMPS computes the remaining part. Your LAMMPS script can also
|
||||
specify boundary conditions or force constraints in the usual way,
|
||||
which will be added to the per-atom forces returned by the server
|
||||
code.
|
||||
@ -69,16 +70,21 @@ LAMMPS and another code in tandem to perform a coupled simulation.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential energy computed by the server application to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy set by the server application to
|
||||
the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the server application's contribution to the system's
|
||||
virial as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||
default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution computed by the server application to
|
||||
the global pressure of the system via the :doc:`compute pressure
|
||||
<compute_pressure>` command. This can be accessed by
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -86,13 +92,16 @@ energy discussed above. The scalar value calculated by this fix is
|
||||
"extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the MESSAGE package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
A script that uses this command must also use the
|
||||
:doc:`message <message>` command to setup and shut down the messaging
|
||||
|
||||
@ -29,11 +29,12 @@ Description
|
||||
This command enables CMAP cross-terms to be added to simulations which
|
||||
use the CHARMM force field. These are relevant for any CHARMM model
|
||||
of a peptide or protein sequences that is 3 or more amino-acid
|
||||
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>` for details,
|
||||
including the analytic energy expressions for CMAP interactions. The
|
||||
CMAP cross-terms add additional potential energy contributions to pairs
|
||||
of overlapping phi-psi dihedrals of amino-acids, which are important
|
||||
to properly represent their conformational behavior.
|
||||
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>`
|
||||
for details, including the analytic energy expressions for CMAP
|
||||
interactions. The CMAP cross-terms add additional potential energy
|
||||
contributions to pairs of overlapping phi-psi dihedrals of
|
||||
amino-acids, which are important to properly represent their
|
||||
conformational behavior.
|
||||
|
||||
The examples/cmap directory has a sample input script and data file
|
||||
for a small peptide, that illustrates use of the fix cmap command.
|
||||
@ -93,19 +94,27 @@ the note below about how to include the CMAP energy when performing an
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the list of CMAP cross-terms to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>` command
|
||||
This fix writes the list of CMAP cross-terms to :doc:`binary restart
|
||||
files <restart>`. See the :doc:`read_restart <read_restart>` command
|
||||
for info on how to re-specify a fix in an input script that reads a
|
||||
restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" of the CMAP interactions system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of the CMAP interactions to both
|
||||
the global potential energy and peratom potential energies of the
|
||||
sysstem as part of :doc:`thermodynamic output <thermo_style>` or
|
||||
output by the :doc:`compute pe/atom <compute_pe_atom>` command. The
|
||||
default setting for this fix is :doc:`fix_modify energy yes
|
||||
<fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the interaction between atoms to
|
||||
the system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the CMAP interactions to both
|
||||
the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -121,8 +130,8 @@ invoked by the :doc:`minimize <minimize>` command.
|
||||
.. note::
|
||||
|
||||
If you want the potential energy associated with the CMAP terms
|
||||
forces to be included in the total potential energy of the system (the
|
||||
quantity being minimized), you MUST enable the
|
||||
forces to be included in the total potential energy of the system
|
||||
(the quantity being minimized), you MUST not disable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
|
||||
@ -35,12 +35,12 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This fix interfaces LAMMPS to the collective variables "Colvars"
|
||||
library, which allows to calculate potentials of mean force
|
||||
(PMFs) for any set of colvars, using different sampling methods:
|
||||
currently implemented are the Adaptive Biasing Force (ABF) method,
|
||||
metadynamics, Steered Molecular Dynamics (SMD) and Umbrella Sampling
|
||||
(US) via a flexible harmonic restraint bias.
|
||||
This fix interfaces LAMMPS to the collective variables (Colvars)
|
||||
library, which allows to calculate potentials of mean force (PMFs) for
|
||||
any set of colvars, using different sampling methods: currently
|
||||
implemented are the Adaptive Biasing Force (ABF) method, metadynamics,
|
||||
Steered Molecular Dynamics (SMD) and Umbrella Sampling (US) via a
|
||||
flexible harmonic restraint bias.
|
||||
|
||||
This documentation describes only the fix colvars command itself and
|
||||
LAMMPS specific parts of the code. The full documentation of the
|
||||
@ -98,9 +98,11 @@ This fix writes the current status of the colvars module into
|
||||
mode status file that is written by the colvars module itself and the
|
||||
kind of information in both files is identical.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change from the biasing force added by the fix
|
||||
to the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy change from the biasing force added by
|
||||
Colvars to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The *fix_modify configfile <config file>* option allows to add settings
|
||||
from an additional config file to the colvars module. This option can
|
||||
@ -113,15 +115,16 @@ in a pair of double quotes ("), or can span multiple lines when bracketed
|
||||
by a pair of triple double quotes (""", like python embedded documentation).
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the Covars
|
||||
energy mentioned above. The scalar value calculated by this fix is
|
||||
"extensive".
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-COLVARS package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
There can only be one colvars fix active at a time. Since the interface
|
||||
communicates only the minimum amount of information and colvars module
|
||||
|
||||
@ -100,9 +100,9 @@ minimize the orientation of dipoles in an applied electric field.
|
||||
|
||||
The *energy* keyword specifies the name of an atom-style
|
||||
:doc:`variable <variable>` which is used to compute the energy of each
|
||||
atom as function of its position. Like variables used for *ex*\ , *ey*\ ,
|
||||
*ez*\ , the energy variable is specified as v_name, where name is the
|
||||
variable name.
|
||||
atom as function of its position. Like variables used for *ex*\ ,
|
||||
*ey*\ , *ez*\ , the energy variable is specified as v_name, where name
|
||||
is the variable name.
|
||||
|
||||
Note that when the *energy* keyword is used during an energy
|
||||
minimization, you must insure that the formula defined for the
|
||||
@ -117,31 +117,38 @@ minimization will not converge properly.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" inferred by the added force due to
|
||||
the electric field to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. This is a fictitious
|
||||
quantity but is needed so that the :doc:`minimize <minimize>` command
|
||||
can include the forces added by this fix in a consistent manner.
|
||||
I.e. there is a decrease in potential energy when atoms move in the
|
||||
direction of the added force due to the electric field.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy inferred by the added force due
|
||||
to the electric field to the global potential energy of the system as
|
||||
part of :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
Note that this energy is a fictitious quantity but is needed so that
|
||||
the :doc:`minimize <minimize>` command can include the forces added by
|
||||
this fix in a consistent manner. I.e. there is a decrease in
|
||||
potential energy when atoms move in the direction of the added force
|
||||
due to the electric field.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the added forces on atoms to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces on atoms to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a global scalar and a global 3-vector of forces,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the potential energy discussed above. The vector is the
|
||||
total force added to the group of atoms. The scalar and vector values
|
||||
calculated by this fix are "extensive".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||
The vector is the total force added to the group of atoms. The scalar
|
||||
and vector values calculated by this fix are "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
@ -84,7 +84,8 @@ code `Quest <quest_>`_.
|
||||
|
||||
If mode is *pf/array* then the fix simply stores force values in an
|
||||
array. The fix adds these forces to each atom in the group, once
|
||||
every *Napply* steps, similar to the way the :doc:`fix addforce <fix_addforce>` command works.
|
||||
every *Napply* steps, similar to the way the :doc:`fix addforce
|
||||
<fix_addforce>` command works.
|
||||
|
||||
The name of the public force array provided by the FixExternal
|
||||
class is
|
||||
@ -150,19 +151,27 @@ of properties that the caller code may want to communicate to LAMMPS
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" set by the external driver to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
||||
needed so that the :doc:`minimize <minimize>` command can include the
|
||||
forces added by this fix in a consistent manner. I.e. there is a
|
||||
decrease in potential energy when atoms move in the direction of the
|
||||
added force.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy set by the external driver to
|
||||
both the global potential energy and peratom potential energies of the
|
||||
system as part of :doc:`thermodynamic output <thermo_style>` or output
|
||||
by the :doc:`compute pe/atom <compute_pe_atom>` command. The default
|
||||
setting for this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||
Note that this energy may be a fictitious quantity but it is needed so
|
||||
that the :doc:`minimize <minimize>` command can include the forces
|
||||
added by this fix in a consistent manner. I.e. there is a decrease in
|
||||
potential energy when atoms move in the direction of the added force.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the interactions computed by the
|
||||
external program to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution computed by the external program to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -178,7 +187,7 @@ invoked by the :doc:`minimize <minimize>` command.
|
||||
|
||||
If you want the fictitious potential energy associated with the
|
||||
added forces to be included in the total potential energy of the
|
||||
system (the quantity being minimized), you MUST enable the
|
||||
system (the quantity being minimized), you MUST not disable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
|
||||
@ -76,28 +76,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The instantaneous values of the extended variables are written to
|
||||
:doc:`binary restart files <restart>`. Because the state of the random
|
||||
number generator is not saved in restart files, this means you cannot
|
||||
do "exact" restarts with this fix, where the simulation continues on
|
||||
the same as if no restart had taken place. However, in a statistical
|
||||
sense, a restarted simulation should produce the same behavior.
|
||||
Note however that you should use a different seed each time you
|
||||
restart, otherwise the same sequence of random numbers will be used
|
||||
each time, which might lead to stochastic synchronization and
|
||||
:doc:`binary restart files <restart>`. Because the state of the
|
||||
random number generator is not saved in restart files, this means you
|
||||
cannot do "exact" restarts with this fix, where the simulation
|
||||
continues on the same as if no restart had taken place. However, in a
|
||||
statistical sense, a restarted simulation should produce the same
|
||||
behavior. Note however that you should use a different seed each time
|
||||
you restart, otherwise the same sequence of random numbers will be
|
||||
used each time, which might lead to stochastic synchronization and
|
||||
subtle artifacts in the sampling.
|
||||
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -55,17 +55,22 @@ momentum.
|
||||
GD applies an external fluctuating gravitational field that acts as a
|
||||
driving force to keep the system away from equilibrium. To maintain
|
||||
steady state, a profile-unbiased thermostat must be implemented to
|
||||
dissipate the heat that is added by the driving force. :doc:`Compute temp/profile <compute_temp_profile>` can be used to implement a
|
||||
dissipate the heat that is added by the driving force. :doc:`Compute
|
||||
temp/profile <compute_temp_profile>` can be used to implement a
|
||||
profile-unbiased thermostat.
|
||||
|
||||
A common use of this fix is to compute a pressure drop across a pipe,
|
||||
pore, or membrane. The pressure profile can be computed in LAMMPS with
|
||||
:doc:`compute stress/atom <compute_stress_atom>` and :doc:`fix ave/chunk <fix_ave_chunk>`, or with the hardy method in :doc:`fix atc <fix_atc>`. Note that the simple :doc:`compute stress/atom <compute_stress_atom>` method is only accurate away
|
||||
from inhomogeneities in the fluid, such as fixed wall atoms. Further,
|
||||
the computed pressure profile must be corrected for the acceleration
|
||||
:doc:`compute stress/atom <compute_stress_atom>` and :doc:`fix
|
||||
ave/chunk <fix_ave_chunk>`, or with the hardy method in :doc:`fix atc
|
||||
<fix_atc>`. Note that the simple :doc:`compute stress/atom
|
||||
<compute_stress_atom>` method is only accurate away from
|
||||
inhomogeneities in the fluid, such as fixed wall atoms. Further, the
|
||||
computed pressure profile must be corrected for the acceleration
|
||||
applied by GD before computing a pressure drop or comparing it to
|
||||
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The pressure
|
||||
correction is discussed and described in :ref:`(Strong) <Strong>`.
|
||||
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The
|
||||
pressure correction is discussed and described in :ref:`(Strong)
|
||||
<Strong>`.
|
||||
|
||||
For a complete example including the considerations discussed
|
||||
above, see the examples/USER/flow_gauss directory.
|
||||
@ -102,14 +107,15 @@ computed by the fix will return zero.
|
||||
of wall atoms fixed, such as :doc:`fix spring/self <fix_spring_self>`.
|
||||
|
||||
If this fix is used in a simulation with the :doc:`rRESPA <run_style>`
|
||||
integrator, the applied acceleration must be computed and applied at the same
|
||||
rRESPA level as the interactions between the flowing fluid and the obstacle.
|
||||
The rRESPA level at which the acceleration is applied can be changed using
|
||||
the :doc:`fix_modify <fix_modify>` *respa* option discussed below. If the
|
||||
flowing fluid and the obstacle interact through multiple interactions that are
|
||||
computed at different rRESPA levels, then there must be a separate flow/gauss
|
||||
fix for each level. For example, if the flowing fluid and obstacle interact
|
||||
through pairwise and long-range Coulomb interactions, which are computed at
|
||||
integrator, the applied acceleration must be computed and applied at
|
||||
the same rRESPA level as the interactions between the flowing fluid
|
||||
and the obstacle. The rRESPA level at which the acceleration is
|
||||
applied can be changed using the :doc:`fix_modify <fix_modify>`
|
||||
*respa* option discussed below. If the flowing fluid and the obstacle
|
||||
interact through multiple interactions that are computed at different
|
||||
rRESPA levels, then there must be a separate flow/gauss fix for each
|
||||
level. For example, if the flowing fluid and obstacle interact through
|
||||
pairwise and long-range Coulomb interactions, which are computed at
|
||||
rRESPA levels 3 and 4, respectively, then there must be two separate
|
||||
flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
||||
*fix_modify respa 4*.
|
||||
@ -119,38 +125,48 @@ flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to subtract the work done from the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy added by the fix to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows the user to set at which level of the :doc:`rRESPA <run_style>`
|
||||
integrator the fix computes and adds the external acceleration. Default is the
|
||||
outermost level.
|
||||
fix. This allows the user to set at which level of the :doc:`rRESPA
|
||||
<run_style>` integrator the fix computes and adds the external
|
||||
acceleration. Default is the outermost level.
|
||||
|
||||
This fix computes a global scalar and a global 3-vector of forces,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the negative of the work done on the system, see above
|
||||
discussion. The vector is the total force that this fix applied to
|
||||
the group of atoms on the current timestep. The scalar and vector
|
||||
values calculated by this fix are "extensive".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the negative of the work done on the
|
||||
system, see the discussion above. It is only calculated if the
|
||||
*energy* keyword is enabled or :doc:`fix_modify energy yes
|
||||
<fix_modify>` is set.
|
||||
|
||||
The vector is the total force that this fix applied to the group of
|
||||
atoms on the current timestep. The scalar and vector values
|
||||
calculated by this fix are "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix addforce <fix_addforce>`, :doc:`compute temp/profile <compute_temp_profile>`, :doc:`velocity <velocity>`
|
||||
:doc:`fix addforce <fix_addforce>`, :doc:`compute temp/profile
|
||||
<compute_temp_profile>`, :doc:`velocity <velocity>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
@ -398,12 +398,13 @@ adds all inserted atoms of the specified type to the
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the fix to :doc:`binary restart files <restart>`. This includes information about the random
|
||||
number generator seed, the next timestep for MC exchanges, the number
|
||||
of MC step attempts and successes etc. See
|
||||
the :doc:`read_restart <read_restart>` command for info on how to
|
||||
re-specify a fix in an input script that reads a restart file, so that
|
||||
the operation of the fix continues in an uninterrupted fashion.
|
||||
This fix writes the state of the fix to :doc:`binary restart files
|
||||
<restart>`. This includes information about the random number
|
||||
generator seed, the next timestep for MC exchanges, the number of MC
|
||||
step attempts and successes etc. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -411,8 +412,8 @@ the operation of the fix continues in an uninterrupted fashion.
|
||||
after reading the restart with :doc:`reset_timestep <reset_timestep>`.
|
||||
The fix will try to detect it and stop with an error.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix.
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to
|
||||
this fix.
|
||||
|
||||
This fix computes a global vector of length 8, which can be accessed
|
||||
by various :doc:`output commands <Howto_output>`. The vector values are
|
||||
@ -430,7 +431,8 @@ the following global cumulative quantities:
|
||||
The vector values calculated by this fix are "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -103,28 +103,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The instantaneous values of the extended variables are written to
|
||||
:doc:`binary restart files <restart>`. Because the state of the random
|
||||
number generator is not saved in restart files, this means you cannot
|
||||
do "exact" restarts with this fix, where the simulation continues on
|
||||
the same as if no restart had taken place. However, in a statistical
|
||||
sense, a restarted simulation should produce the same behavior.
|
||||
Note however that you should use a different seed each time you
|
||||
restart, otherwise the same sequence of random numbers will be used
|
||||
each time, which might lead to stochastic synchronization and
|
||||
:doc:`binary restart files <restart>`. Because the state of the
|
||||
random number generator is not saved in restart files, this means you
|
||||
cannot do "exact" restarts with this fix, where the simulation
|
||||
continues on the same as if no restart had taken place. However, in a
|
||||
statistical sense, a restarted simulation should produce the same
|
||||
behavior. Note however that you should use a different seed each time
|
||||
you restart, otherwise the same sequence of random numbers will be
|
||||
used each time, which might lead to stochastic synchronization and
|
||||
subtle artifacts in the sampling.
|
||||
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -103,23 +103,27 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the gravitational potential energy of the system to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the gravitational potential energy of the system to
|
||||
the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. This scalar is the gravitational
|
||||
potential energy of the particles in the defined field, namely mass \*
|
||||
(g dot x) for each particles, where x and mass are the particles
|
||||
position and mass, and g is the gravitational field. The scalar value
|
||||
calculated by this fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. This scalar is the
|
||||
gravitational potential energy of the particles in the defined field,
|
||||
namely mass \* (g dot x) for each particles, where x and mass are the
|
||||
particles position and mass, and g is the gravitational field. The
|
||||
scalar value calculated by this fix is "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -200,16 +200,20 @@ algorithm.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of the bias potential to the system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of the bias potential to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy no <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar and global vector of length 12, which
|
||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||
scalar is the magnitude of the bias potential (energy units) applied on
|
||||
the current timestep. The vector stores the following quantities:
|
||||
This fix computes a global scalar and global vector of length 12,
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||
(energy units) applied on the current timestep. The vector stores the
|
||||
following quantities:
|
||||
|
||||
* 1 = boost factor on this step (unitless)
|
||||
* 2 = max strain :math:`E_{ij}` of any bond on this step (absolute value, unitless)
|
||||
@ -253,7 +257,8 @@ The scalar and vector values calculated by this fix are all
|
||||
"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 :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -370,15 +370,17 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of the bias potential to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of the bias potential to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy no <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar and global vector of length 28,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the magnitude of the bias potential (energy units)
|
||||
applied on the current timestep, summed over all biased bonds. The
|
||||
vector stores the following quantities:
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||
(energy units) applied on the current timestep, summed over all biased
|
||||
bonds. The vector stores the following quantities:
|
||||
|
||||
* 1 = average boost for all bonds on this step (unitless)
|
||||
* 2 = # of biased bonds on this step
|
||||
@ -510,8 +512,8 @@ 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 and vector values calculated by this fix are all
|
||||
"intensive".
|
||||
The scalar value is an "extensive" quantity since it grows with the
|
||||
system size; the 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}`
|
||||
@ -524,7 +526,8 @@ close to 1.0, which indicates a good choice of :math:`V^{max}`.
|
||||
The local values calculated by this fix are unitless.
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -179,20 +179,25 @@ contains *xlat*\ , *ylat*\ , *zlat* keywords of the
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of interaction between atoms and the indenter to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. The energy of each particle interacting
|
||||
with the indenter is K/3 (r - R)\^3.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and the
|
||||
indenter to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`. The energy of
|
||||
each particle interacting with the indenter is K/3 (r - R)\^3.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a global scalar energy and a global 3-vector of
|
||||
forces (on the indenter), which can be accessed by various :doc:`output commands <Howto_output>`. The scalar and vector values calculated
|
||||
by this fix are "extensive".
|
||||
forces (on the indenter), which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar and vector values
|
||||
calculated by this fix are "extensive".
|
||||
|
||||
The forces due to this fix are imposed during an energy minimization,
|
||||
invoked by the :doc:`minimize <minimize>` command. Note that if you
|
||||
@ -204,10 +209,10 @@ check if you have done this.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the atom/indenter interaction energy to be included
|
||||
in the total potential energy of the system (the quantity being
|
||||
minimized), you must enable the :doc:`fix_modify <fix_modify>` *energy*
|
||||
option for this fix.
|
||||
If you want the atom/indenter interaction energy to be included in
|
||||
the total potential energy of the system (the quantity being
|
||||
minimized), you must enable the :doc:`fix_modify <fix_modify>`
|
||||
*energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -230,7 +230,7 @@ conservation.
|
||||
|
||||
.. note::
|
||||
|
||||
this accumulated energy does NOT include kinetic energy removed
|
||||
This accumulated energy does NOT include kinetic energy removed
|
||||
by the *zero* flag. LAMMPS will print a warning when both options are
|
||||
active.
|
||||
|
||||
@ -244,7 +244,8 @@ to zero by subtracting off an equal part of it from each atom in the
|
||||
group. As a result, the center-of-mass of a system with zero initial
|
||||
momentum will not drift over time.
|
||||
|
||||
The keyword *gjf* can be used to run the :ref:`Gronbech-Jensen/Farago <Gronbech-Jensen>` time-discretization of the Langevin model. As
|
||||
The keyword *gjf* can be used to run the :ref:`Gronbech-Jensen/Farago
|
||||
<Gronbech-Jensen>` time-discretization of the Langevin model. As
|
||||
described in the papers cited below, the purpose of this method is to
|
||||
enable longer timesteps to be used (up to the numerical stability
|
||||
limit of the integrator), while still producing the correct Boltzmann
|
||||
@ -252,19 +253,20 @@ distribution of atom positions.
|
||||
|
||||
The current implementation provides the user with the option to output
|
||||
the velocity in one of two forms: *vfull* or *vhalf*\ , which replaces
|
||||
the outdated option *yes*\ . The *gjf* option *vfull* outputs the on-site
|
||||
velocity given in :ref:`Gronbech-Jensen/Farago <Gronbech-Jensen>`; this velocity
|
||||
is shown to be systematically lower than the target temperature by a small
|
||||
amount, which grows quadratically with the timestep.
|
||||
The *gjf* option *vhalf* outputs the 2GJ half-step velocity given in
|
||||
:ref:`Gronbech Jensen/Gronbech-Jensen <2Gronbech-Jensen>`; for linear systems,
|
||||
this velocity is shown to not have any statistical errors for any stable time step.
|
||||
An overview of statistically correct Boltzmann and Maxwell-Boltzmann
|
||||
sampling of true on-site and true half-step velocities is given in
|
||||
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`.
|
||||
Regardless of the choice of output velocity, the sampling of the configurational
|
||||
distribution of atom positions is the same, and linearly consistent with the
|
||||
target temperature.
|
||||
the outdated option *yes*\ . The *gjf* option *vfull* outputs the
|
||||
on-site velocity given in :ref:`Gronbech-Jensen/Farago
|
||||
<Gronbech-Jensen>`; this velocity is shown to be systematically lower
|
||||
than the target temperature by a small amount, which grows
|
||||
quadratically with the timestep. The *gjf* option *vhalf* outputs the
|
||||
2GJ half-step velocity given in :ref:`Gronbech Jensen/Gronbech-Jensen
|
||||
<2Gronbech-Jensen>`; for linear systems, this velocity is shown to not
|
||||
have any statistical errors for any stable time step. An overview of
|
||||
statistically correct Boltzmann and Maxwell-Boltzmann sampling of true
|
||||
on-site and true half-step velocities is given in
|
||||
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`. Regardless of the choice
|
||||
of output velocity, the sampling of the configurational distribution
|
||||
of atom positions is the same, and linearly consistent with the target
|
||||
temperature.
|
||||
|
||||
----------
|
||||
|
||||
@ -287,16 +289,18 @@ you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||
*yes*\ . See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive". Note that calculation of this quantity requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
Note that calculation of this quantity also requires setting the
|
||||
*tally* keyword to *yes*\ .
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
|
||||
@ -81,16 +81,18 @@ you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||
*yes*\ . See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive". Note that calculation of this quantity requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
Note that calculation of this quantity also requires setting the
|
||||
*tally* keyword to *yes*\ .
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
|
||||
@ -107,16 +107,27 @@ larger system sizes and longer time scales
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential energy computed by LATTE to the system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy computed by LATTE to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy yes <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the LATTE DFTB contribution to the system's virial as part
|
||||
of :doc:`thermodynamic output <thermo_style>`. The default is *virial
|
||||
yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution compute by LATTE to the global
|
||||
pressure of the system via the :doc:`compute pressure
|
||||
<compute_pressure>` command. This can be accessed by
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution computed by LATTE to the global
|
||||
pressure of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
virial yes <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -127,20 +138,22 @@ No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
The DFTB forces computed by LATTE via this fix are imposed during an
|
||||
energy minimization, invoked by the :doc:`minimize <minimize>` command.
|
||||
energy minimization, invoked by the :doc:`minimize <minimize>`
|
||||
command.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the potential energy associated with the DFTB
|
||||
forces to be included in the total potential energy of the system (the
|
||||
quantity being minimized), you MUST enable the
|
||||
quantity being minimized), you MUST not disable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the LATTE package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
You must use metal units, as set by the :doc:`units <units>` command to
|
||||
use this fix.
|
||||
|
||||
@ -50,7 +50,8 @@ This fix is based on the :doc:`fix rigid <fix_rigid>` command, and was
|
||||
created to be used in place of that fix, to integrate the equations of
|
||||
motion of spherical rigid bodies when a lattice-Boltzmann fluid is
|
||||
present with a user-specified value of the force-coupling constant.
|
||||
The fix uses the integration algorithm described in :ref:`Mackay et al. <Mackay>` to update the positions, velocities, and orientations of
|
||||
The fix uses the integration algorithm described in :ref:`Mackay et
|
||||
al. <Mackay>` to update the positions, velocities, and orientations of
|
||||
a set of spherical rigid bodies experiencing velocity dependent
|
||||
hydrodynamic forces. The spherical bodies are assumed to rotate as
|
||||
solid, uniform density spheres, with moments of inertia calculated
|
||||
@ -88,9 +89,18 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
No information about the *rigid* and *rigid/nve* fixes are written to
|
||||
:doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces on atoms to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
Similar to the :doc:`fix rigid <fix_rigid>` command: The rigid fix
|
||||
computes a global scalar which can be accessed by various :doc:`output commands <Howto_output>`. The scalar value calculated by these
|
||||
fixes is "intensive". The scalar is the current temperature of the
|
||||
computes a global scalar which can be accessed by 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
|
||||
@ -130,7 +140,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-LB package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
Can only be used if a lattice-Boltzmann fluid has been created via the
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
||||
|
||||
@ -59,43 +59,58 @@ define their own compute by default, as described in their
|
||||
documentation. Thus this option allows the user to override the
|
||||
default method for computing P.
|
||||
|
||||
The *energy* keyword can be used with fixes that support it.
|
||||
*energy yes* adds a contribution to the potential energy of the
|
||||
system. The fix's global and per-atom
|
||||
energy is included in the calculation performed by the :doc:`compute pe <compute_pe>` or :doc:`compute pe/atom <compute_pe_atom>`
|
||||
commands. See the :doc:`thermo_style <thermo_style>` command for info
|
||||
on how potential energy is output. For fixes that tally a global
|
||||
energy, it can be printed by using the keyword f_ID in the
|
||||
thermo_style custom command, where ID is the fix-ID of the appropriate
|
||||
fix.
|
||||
The *energy* keyword can be used with fixes that support it, which is
|
||||
explained at the bottom of their doc page. *Energy yes* will add a
|
||||
contribution to the potential energy of the system. More
|
||||
specifically, the fix's global or per-atom energy is included in the
|
||||
calculation performed by the :doc:`compute pe <compute_pe>` or
|
||||
:doc:`compute pe/atom <compute_pe_atom>` commands. The former is what
|
||||
is used the :doc:`thermo_style <thermo_style>` command for output of
|
||||
any quantity that includes the global potential energy of the system.
|
||||
Note that the :doc:`compute pe <compute_pe>` and :doc:`compute pe/atom
|
||||
<compute_pe_atom>` commands also have an option to include or exclude
|
||||
the contribution from fixes. For fixes that tally a global energy, it
|
||||
can also be printed with thermodynamic output by using the keyword
|
||||
f_ID in the thermo_style custom command, where ID is the fix-ID of the
|
||||
appropriate fix.
|
||||
|
||||
.. note::
|
||||
|
||||
You must also specify the *energy yes* setting for a fix if you
|
||||
are using it when performing an :doc:`energy minimization <minimize>`
|
||||
and if you want the energy and forces it produces to be part of the
|
||||
optimization criteria.
|
||||
|
||||
The *virial* keyword can be used with fixes that support it.
|
||||
*virial yes* adds a contribution to the virial of the
|
||||
system. The fix's global and per-atom
|
||||
virial is included in the calculation performed by the :doc:`compute pressure <compute_pressure>` or
|
||||
:doc:`compute stress/atom <compute_stress_atom>`
|
||||
commands. See the :doc:`thermo_style <thermo_style>` command for info
|
||||
on how pressure is output.
|
||||
If you are performing an :doc:`energy minimization <minimize>` with
|
||||
one of these fixes and want the energy and forces it produces to be
|
||||
part of the optimization criteria, you must specify the *energy
|
||||
yes* setting.
|
||||
|
||||
.. note::
|
||||
|
||||
You must specify the *virial yes* setting for a fix if you
|
||||
are doing :doc:`box relaxation <fix_box_relax>` and
|
||||
if you want virial contribution of the fix to be part of the
|
||||
relaxation criteria, although this seems unlikely.
|
||||
For most fixes that suppport the *energy* keyword, the default
|
||||
setting is *no*. For a few it is *yes*, when a user would expect
|
||||
that to be the case. The doc page of each fix gives the default.
|
||||
|
||||
The *virial* keyword can be used with fixes that support it, which is
|
||||
explained at the bottom of their doc page. *Virial yes* will add a
|
||||
contribution to the virial of the system. More specifically, the
|
||||
fix's global or per-atom virial is included in the calculation
|
||||
performed by the :doc:`compute pressure <compute_pressure>` or
|
||||
:doc:`compute stress/atom <compute_stress_atom>` commands. The former
|
||||
is what is used the :doc:`thermo_style <thermo_style>` command for
|
||||
output of any quantity that includes the global pressure of the
|
||||
system. Note that the :doc:`compute pressure <compute_pressure>` and
|
||||
:doc:`compute stress/atom <compute_stress_atom>` commands also have an
|
||||
option to include or exclude the contribution from fixes.
|
||||
|
||||
.. note::
|
||||
|
||||
This option is only supported by fixes that explicitly say
|
||||
so. For some of these (e.g. the :doc:`fix shake <fix_shake>` command)
|
||||
the default setting is *virial yes*\ , for others it is *virial no*\ .
|
||||
If you are performing an :doc:`energy minimization <minimize>` with
|
||||
:doc:`box relaxation <fix_box_relax>` and one of these fixes and
|
||||
want the virial contribution of the fix to be part of the
|
||||
optimization criteria, you must specify the *virial yes* setting.
|
||||
|
||||
.. note::
|
||||
|
||||
For most fixes that suppport the *virial* keyword, the default
|
||||
setting is *no*. For a few it is *yes*, when a user would expect
|
||||
that to be the case. The doc page of each fix gives the default.
|
||||
|
||||
For fixes that set or modify forces, it may be possible to select at
|
||||
which :doc:`r-RESPA <run_style>` level the fix operates via the *respa*
|
||||
@ -112,13 +127,15 @@ The *dynamic/dof* keyword determines whether the number of atoms N in
|
||||
the fix group and their associated degrees of freedom are re-computed
|
||||
each time a temperature is computed. Only fix styles that calculate
|
||||
their own internal temperature use this option. Currently this is
|
||||
only the :doc:`fix rigid/nvt/small <fix_rigid>` and :doc:`fix rigid/npt/small <fix_rigid>` commands for the purpose of
|
||||
only the :doc:`fix rigid/nvt/small <fix_rigid>` and :doc:`fix
|
||||
rigid/npt/small <fix_rigid>` commands for the purpose of
|
||||
thermostatting rigid body translation and rotation. By default, N and
|
||||
their DOF are assumed to be constant. If you are adding atoms or
|
||||
molecules to the system (see the :doc:`fix pour <fix_pour>`, :doc:`fix deposit <fix_deposit>`, and :doc:`fix gcmc <fix_gcmc>` commands) or
|
||||
molecules to the system (see the :doc:`fix pour <fix_pour>`, :doc:`fix
|
||||
deposit <fix_deposit>`, and :doc:`fix gcmc <fix_gcmc>` commands) or
|
||||
expect atoms or molecules to be lost (e.g. due to exiting the
|
||||
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then
|
||||
this option should be used to insure the temperature is correctly
|
||||
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then this
|
||||
option should be used to insure the temperature is correctly
|
||||
normalized.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -131,20 +131,29 @@ command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
The progress of the MSST can be monitored by printing the global
|
||||
scalar and global vector quantities computed by the fix.
|
||||
|
||||
The scalar is the cumulative energy change due to the fix. This is
|
||||
also the energy added to the potential energy by the
|
||||
:doc:`fix_modify <fix_modify>` *energy* command. With this command, the
|
||||
thermo keyword *etotal* prints the conserved quantity of the MSST
|
||||
dynamic equations. This can be used to test if the MD timestep is
|
||||
sufficiently small for accurate integration of the dynamic
|
||||
equations. See also :doc:`thermo_style <thermo_style>` command.
|
||||
As mentioned above, the scalar is the cumulative energy change due to
|
||||
the fix. By monitoring the thermodynamic *econserve* output, this can
|
||||
be used to test if the MD timestep is sufficiently small for accurate
|
||||
integration of the dynamic equations.
|
||||
|
||||
The global vector contains four values in this order:
|
||||
The global vector contains four values in the following order. The
|
||||
vector values output by this fix are "intensive".
|
||||
|
||||
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*, *lagrangian_position*]
|
||||
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*,
|
||||
*lagrangian_position*]
|
||||
|
||||
1. *dhugoniot* is the departure from the Hugoniot (temperature units).
|
||||
2. *drayleigh* is the departure from the Rayleigh line (pressure units).
|
||||
@ -157,17 +166,11 @@ headers, the following LAMMPS commands are suggested:
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix msst all msst z
|
||||
fix_modify msst energy yes
|
||||
variable dhug equal f_msst[1]
|
||||
variable dray equal f_msst[2]
|
||||
variable lgr_vel equal f_msst[3]
|
||||
variable lgr_pos equal f_msst[4]
|
||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
These fixes compute a global scalar and a global vector of 4
|
||||
quantities, which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar values calculated by this fix are
|
||||
"extensive"; the vector values are "intensive".
|
||||
thermo_style custom step temp ke pe lz pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -594,17 +594,20 @@ compute temperature on a subset of atoms.
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by these fixes, via
|
||||
either thermostatting and/or barostatting, is included in the
|
||||
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
These fixes compute a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
The scalar is the cumulative energy change due to the fix.
|
||||
These fixes compute also compute a global vector of quantities, which
|
||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||
vector values are "intensive".
|
||||
|
||||
The vector stores internal Nose/Hoover thermostat and barostat
|
||||
variables. The number and meaning of the vector values depends on
|
||||
|
||||
@ -87,7 +87,8 @@ It also means that changing attributes of *thermo_temp* or
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
@ -101,9 +102,10 @@ consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||
|
||||
@ -84,7 +84,8 @@ It also means that changing attributes of *thermo_temp* or
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
@ -98,9 +99,10 @@ consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||
|
||||
@ -100,7 +100,8 @@ It also means that changing attributes of *thermo_temp* or
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
@ -114,9 +115,10 @@ consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||
|
||||
@ -168,43 +168,47 @@ specified, then the instantaneous value in the system at the start of
|
||||
the simulation is used.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by these fixes. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure, as described above.
|
||||
If you do this, note that the kinetic energy derived from the compute
|
||||
supported by this fix. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure, as described above. If you
|
||||
do this, note that the kinetic energy derived from the compute
|
||||
temperature should be consistent with the virial term computed using
|
||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||
compute temperature on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. Either way, this energy is \*not\*
|
||||
included in the definition of internal energy E when calculating the value
|
||||
of Delta in the above equation.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details. Note that this energy is \*not\* included in
|
||||
the definition of internal energy E when calculating the value of
|
||||
Delta in the above equation.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
The scalar is the cumulative energy change due to the fix.
|
||||
This fix also computes a global vector of quantities, which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
||||
The vector values are "intensive".
|
||||
|
||||
The vector stores three quantities unique to this fix (:math:`\Delta`, Us, and up),
|
||||
followed by all the internal Nose/Hoover thermostat and barostat
|
||||
variables defined for :doc:`fix npt <fix_nh>`. Delta is the deviation
|
||||
of the temperature from the target temperature, given by the above equation.
|
||||
Us and up are the shock and particle velocity corresponding to a steady
|
||||
shock calculated from the RH conditions. They have units of distance/time.
|
||||
The vector stores three quantities unique to this fix (:math:`\Delta`,
|
||||
Us, and up), followed by all the internal Nose/Hoover thermostat and
|
||||
barostat variables defined for :doc:`fix npt <fix_nh>`. Delta is the
|
||||
deviation of the temperature from the target temperature, given by the
|
||||
above equation. Us and up are the shock and particle velocity
|
||||
corresponding to a steady shock calculated from the RH
|
||||
conditions. They have units of distance/time.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix style is part of the SHOCK package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
All the usual restrictions for :doc:`fix npt <fix_nh>` apply,
|
||||
plus the additional ones mentioned above.
|
||||
All the usual restrictions for :doc:`fix npt <fix_nh>` apply, plus the
|
||||
additional ones mentioned above.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -124,10 +124,10 @@ consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||
|
||||
@ -45,7 +45,8 @@ can also have a bias velocity removed from them before thermostatting
|
||||
takes place; see the description below.
|
||||
|
||||
Additional parameters affecting the thermostat and barostat are
|
||||
specified by keywords and values documented with the :doc:`fix npt <fix_nh>` command. See, for example, discussion of the *temp*\ ,
|
||||
specified by keywords and values documented with the :doc:`fix npt
|
||||
<fix_nh>` command. See, for example, discussion of the *temp*\ ,
|
||||
*iso*\ , *aniso*\ , and *dilate* keywords.
|
||||
|
||||
The particles in the fix group are the only ones whose velocities and
|
||||
@ -121,10 +122,10 @@ consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||
|
||||
@ -487,27 +487,31 @@ compute temperature on a subset of atoms.
|
||||
.. note::
|
||||
|
||||
If both the *temp* and *press* keywords are used in a single
|
||||
thermo_modify command (or in two separate commands), then the order in
|
||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
||||
an argument when it is specified. The *temp* keyword will override
|
||||
this (for the pressure compute being used by fix npt), but only if the
|
||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
||||
comes before the *press* keyword, then the new pressure compute
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
thermo_modify command (or in two separate commands), then the order
|
||||
in which the keywords are specified is important. Note that a
|
||||
:doc:`pressure compute <compute_pressure>` defines its own
|
||||
temperature compute as an argument when it is specified. The
|
||||
*temp* keyword will override this (for the pressure compute being
|
||||
used by fix npt), but only if the *temp* keyword comes after the
|
||||
*press* keyword. If the *temp* keyword comes before the *press*
|
||||
keyword, then the new pressure compute specified by the *press*
|
||||
keyword will be unaffected by the *temp* setting.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix, due to
|
||||
thermostatting and/or barostatting, is included in the
|
||||
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
This fix computes a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by this fix is "extensive"; the vector
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix also computes a global vector of quantities, which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. Rhe vector
|
||||
values are "intensive".
|
||||
|
||||
The scalar is the cumulative energy change due to the fix.
|
||||
|
||||
The vector stores internal Nose/Hoover thermostat and barostat
|
||||
variables. The number and meaning of the vector values depends on
|
||||
which fix is used and the settings for keywords *tchain* and *pchain*\ ,
|
||||
|
||||
@ -93,13 +93,14 @@ IDs of the new computes are the fix-ID + underscore + "temp" or fix_ID
|
||||
since pressure is computed for the entire system.
|
||||
|
||||
Note that these are NOT the computes used by thermodynamic output (see
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*
|
||||
and *thermo_press*. This means you can change the attributes of this
|
||||
fix's temperature or pressure via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
||||
or pressure during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
||||
It also means that changing attributes of *thermo_temp* or
|
||||
*thermo_press* will have no effect on this fix.
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||
*thermo_temp* and *thermo_press*. This means you can change the
|
||||
attributes of this fix's temperature or pressure via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this
|
||||
temperature or pressure during thermodynamic output via the
|
||||
:doc:`thermo_style custom <thermo_style>` command using the
|
||||
appropriate compute-ID. It also means that changing attributes of
|
||||
*thermo_temp* or *thermo_press* will have no effect on this fix.
|
||||
|
||||
Like other fixes that perform thermostatting, this fix can be used
|
||||
with :doc:`compute commands <compute>` that calculate a temperature
|
||||
@ -129,18 +130,18 @@ a fix in an input script that reads a restart file, so that the
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by this fix. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure. If you do this, note
|
||||
that the kinetic energy derived from the compute temperature should be
|
||||
supported by this fix. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure. If you do this, note that
|
||||
the kinetic energy derived from the compute temperature should be
|
||||
consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||
|
||||
@ -92,19 +92,21 @@ thermal degrees of freedom, and the bias is added back in.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat to
|
||||
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||
|
||||
@ -89,19 +89,21 @@ thermal degrees of freedom, and the bias is added back in.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat to
|
||||
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||
|
||||
@ -122,19 +122,21 @@ thermal degrees of freedom, and the bias is added back in.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat to
|
||||
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||
|
||||
@ -41,19 +41,21 @@ velocity.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat to
|
||||
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt/eff <fix_nh_eff>` command.
|
||||
|
||||
@ -106,19 +106,21 @@ thermal degrees of freedom, and the bias is added back in.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat to
|
||||
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||
|
||||
@ -144,16 +144,20 @@ writing the orientation files is given in :ref:`(Wicaksono2) <Wicaksono2>`
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential energy of atom interactions with the grain
|
||||
boundary driving force to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of atom interactions with the
|
||||
grain bounadry driving force to the global potential energy of the
|
||||
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||
default setting for this fix is :doc:`fix_modify energy no
|
||||
<fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by these
|
||||
fixes. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator a fix is adding its forces. Default is the outermost level.
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||
these fixes. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator a fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix calculates a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -166,13 +170,16 @@ order parameter Xi and normalized order parameter (0 to 1) for each
|
||||
atom. The per-atom values can be accessed on any timestep.
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the MISC package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
This fix should only be used with fcc or bcc lattices.
|
||||
|
||||
|
||||
@ -26,22 +26,24 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
The fix applies a synthetic driving force to a grain boundary which can
|
||||
be used for the investigation of grain boundary motion. The affiliation
|
||||
of atoms to either of the two grains forming the grain boundary is
|
||||
determined from an orientation-dependent order parameter as described
|
||||
in :ref:`(Ulomek) <Ulomek>`. The potential energy of atoms is either increased by an amount
|
||||
of 0.5*\ *u0* or -0.5*\ *u0* according to the orientation of the surrounding
|
||||
crystal. This creates a potential energy gradient which pushes atoms near
|
||||
the grain boundary to orient according to the energetically favorable
|
||||
grain orientation. This fix is designed for applications in bicrystal system
|
||||
with one grain boundary and open ends, or two opposite grain boundaries in
|
||||
a periodic system. In either case, the entire system can experience a
|
||||
displacement during the simulation which needs to be accounted for in the
|
||||
evaluation of the grain boundary velocity. While the basic method is
|
||||
described in :ref:`(Ulomek) <Ulomek>`, the implementation follows the efficient
|
||||
implementation from :ref:`(Schratt & Mohles) <Schratt>`. The synthetic potential energy added to an
|
||||
atom j is given by the following formulas
|
||||
The fix applies a synthetic driving force to a grain boundary which
|
||||
can be used for the investigation of grain boundary motion. The
|
||||
affiliation of atoms to either of the two grains forming the grain
|
||||
boundary is determined from an orientation-dependent order parameter
|
||||
as described in :ref:`(Ulomek) <Ulomek>`. The potential energy of
|
||||
atoms is either increased by an amount of 0.5*\ *u0* or -0.5*\ *u0*
|
||||
according to the orientation of the surrounding crystal. This creates
|
||||
a potential energy gradient which pushes atoms near the grain boundary
|
||||
to orient according to the energetically favorable grain
|
||||
orientation. This fix is designed for applications in bicrystal system
|
||||
with one grain boundary and open ends, or two opposite grain
|
||||
boundaries in a periodic system. In either case, the entire system can
|
||||
experience a displacement during the simulation which needs to be
|
||||
accounted for in the evaluation of the grain boundary velocity. While
|
||||
the basic method is described in :ref:`(Ulomek) <Ulomek>`, the
|
||||
implementation follows the efficient implementation from
|
||||
:ref:`(Schratt & Mohles) <Schratt>`. The synthetic potential energy
|
||||
added to an atom j is given by the following formulas
|
||||
|
||||
.. math::
|
||||
|
||||
@ -60,60 +62,69 @@ atom j is given by the following formulas
|
||||
which are fully explained in :ref:`(Ulomek) <Ulomek>`
|
||||
and :ref:`(Schratt & Mohles) <Schratt>`.
|
||||
|
||||
The force on each atom is the negative gradient of the synthetic potential energy. It
|
||||
depends on the surrounding of this atom. An atom far from the grain boundary does not
|
||||
experience a synthetic force as its surrounding is that of an oriented single crystal
|
||||
and thermal fluctuations are masked by the parameter *eta*\ . Near the grain boundary
|
||||
however, the gradient is nonzero and synthetic force terms are computed.
|
||||
The orientationsFile specifies the perfect oriented crystal basis vectors for the
|
||||
two adjoining crystals. The first three lines (line=row vector) for the energetically penalized and the
|
||||
last three lines for the energetically favored grain assuming *u0* is positive. For
|
||||
negative *u0*, this is reversed. With the *cutoff* parameter, the size of the region around
|
||||
each atom which is used in the order parameter computation is defined. The cutoff must be
|
||||
smaller than the interaction range of the MD potential. It should at
|
||||
least include the nearest neighbor shell. For high temperatures or low angle
|
||||
grain boundaries, it might be beneficial to increase the cutoff in order to get a more
|
||||
precise identification of the atoms surrounding. However, computation time will
|
||||
increase as more atoms are considered in the order parameter and force computation.
|
||||
It is also worth noting that the cutoff radius must not exceed the communication
|
||||
distance for ghost atoms in LAMMPS. With orientationsFile, the
|
||||
6 oriented crystal basis vectors is specified. Each line of the input file
|
||||
contains the three components of a primitive lattice vector oriented according to
|
||||
the grain orientation in the simulation box. The first (last) three lines correspond
|
||||
to the primitive lattice vectors of the first (second) grain. An example for
|
||||
a :math:`\Sigma\langle001\rangle` mis-orientation is given at the end.
|
||||
|
||||
If no synthetic energy difference between the grains is created, :math:`u0=0`, the
|
||||
force computation is omitted. In this case, still, the order parameter of the
|
||||
driving force is computed and can be used to track the grain boundary motion throughout the
|
||||
simulation.
|
||||
|
||||
The force on each atom is the negative gradient of the synthetic
|
||||
potential energy. It depends on the surrounding of this atom. An atom
|
||||
far from the grain boundary does not experience a synthetic force as
|
||||
its surrounding is that of an oriented single crystal and thermal
|
||||
fluctuations are masked by the parameter *eta*\ . Near the grain
|
||||
boundary however, the gradient is nonzero and synthetic force terms
|
||||
are computed. The orientationsFile specifies the perfect oriented
|
||||
crystal basis vectors for the two adjoining crystals. The first three
|
||||
lines (line=row vector) for the energetically penalized and the last
|
||||
three lines for the energetically favored grain assuming *u0* is
|
||||
positive. For negative *u0*, this is reversed. With the *cutoff*
|
||||
parameter, the size of the region around each atom which is used in
|
||||
the order parameter computation is defined. The cutoff must be smaller
|
||||
than the interaction range of the MD potential. It should at least
|
||||
include the nearest neighbor shell. For high temperatures or low angle
|
||||
grain boundaries, it might be beneficial to increase the cutoff in
|
||||
order to get a more precise identification of the atoms
|
||||
surrounding. However, computation time will increase as more atoms are
|
||||
considered in the order parameter and force computation. It is also
|
||||
worth noting that the cutoff radius must not exceed the communication
|
||||
distance for ghost atoms in LAMMPS. With orientationsFile, the 6
|
||||
oriented crystal basis vectors is specified. Each line of the input
|
||||
file contains the three components of a primitive lattice vector
|
||||
oriented according to the grain orientation in the simulation box. The
|
||||
first (last) three lines correspond to the primitive lattice vectors
|
||||
of the first (second) grain. An example for a
|
||||
:math:`\Sigma\langle001\rangle` mis-orientation is given at the end.
|
||||
|
||||
If no synthetic energy difference between the grains is created,
|
||||
:math:`u0=0`, the force computation is omitted. In this case, still,
|
||||
the order parameter of the driving force is computed and can be used
|
||||
to track the grain boundary motion throughout the simulation.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc: `binary restart files <restart>`.
|
||||
No information about this fix is written to :doc: `binary restart
|
||||
files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this fix to
|
||||
add the potential energy of atom interactions with the grain boundary
|
||||
driving force to the system's potential energy as part of thermodynamic output.
|
||||
The total sum of added synthetic potential energy is computed and can be accessed
|
||||
by various output options. The order parameter as well as the thermally masked
|
||||
output parameter are stored in per-atom arrays and can also be accessed by various
|
||||
:doc:`output commands <Howto_output>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of atom interactions with the
|
||||
grain bounadry driving force to the global potential energy of the
|
||||
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||
default setting for this fix is :doc:`fix_modify energy no
|
||||
<fix_modify>`.
|
||||
|
||||
No parameter of this fix can be used with the start/stop keywords of the run command. This fix is
|
||||
not invoked during energy minimization.
|
||||
This fix calculates a per-atom array with 2 columns, which can be
|
||||
accessed by indices 1-1 by any command that uses per-atom values from
|
||||
a fix as input. See the :doc:`Howto output <Howto_output>` doc page
|
||||
for an overview of LAMMPS output options.
|
||||
|
||||
The first column is the order parameter for each atom; the second is
|
||||
the thermal masking value for each atom. Both are described above.
|
||||
|
||||
No parameter of this fix can be used with the start/stop keywords of
|
||||
the run command. This fix is not invoked during energy minimization.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if LAMMPS was
|
||||
built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
|
||||
Related commands
|
||||
|
||||
@ -66,7 +66,8 @@ plumed fix in the LAMMPS input.
|
||||
|
||||
The *plumedfile* keyword allows the user to specify the name of the
|
||||
PLUMED input file. Instructions as to what should be included in a
|
||||
plumed input file can be found in the `documentation for PLUMED <plumeddocs_>`_
|
||||
plumed input file can be found in the `documentation for PLUMED
|
||||
<plumeddocs_>`_
|
||||
|
||||
The *outfile* keyword allows the user to specify the name of a file in
|
||||
which to output the PLUMED log. This log file normally just repeats the
|
||||
@ -78,31 +79,45 @@ be specified by the user in the PLUMED input file.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
When performing a restart of a calculation that involves PLUMED you must
|
||||
include a RESTART command in the PLUMED input file as detailed in the
|
||||
`PLUMED documentation <plumeddocs_>`_. When the restart command is found in
|
||||
the PLUMED input PLUMED will append to the files that were generated in
|
||||
the run that was performed previously. No part of the PLUMED restart
|
||||
data is included in the LAMMPS restart files. Furthermore, any history
|
||||
dependent bias potentials that were accumulated in previous calculations
|
||||
will be read in when the RESTART command is included in the PLUMED
|
||||
input.
|
||||
When performing a restart of a calculation that involves PLUMED you
|
||||
must include a RESTART command in the PLUMED input file as detailed in
|
||||
the `PLUMED documentation <plumeddocs_>`_. When the restart command
|
||||
is found in the PLUMED input PLUMED will append to the files that were
|
||||
generated in the run that was performed previously. No part of the
|
||||
PLUMED restart data is included in the LAMMPS restart files.
|
||||
Furthermore, any history dependent bias potentials that were
|
||||
accumulated in previous calculations will be read in when the RESTART
|
||||
command is included in the PLUMED input.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
||||
this fix.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy change from the biasing force added by
|
||||
PLUMED to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||
|
||||
Nothing is computed by this fix that can be accessed by any of the
|
||||
:doc:`output commands <Howto_output>` within LAMMPS. All the quantities
|
||||
of interest can be output by commands that are native to PLUMED,
|
||||
however.
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution from the biasing force to the global
|
||||
pressure of the system via the :doc:`compute pressure
|
||||
<compute_pressure>` command. This can be accessed by
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the PLUMED
|
||||
energy mentioned above. The scalar value calculated by this fix is
|
||||
"extensive".
|
||||
|
||||
Note that other quantities of interest can be output by commands that
|
||||
are native to PLUMED.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-PLUMED package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
There can only be one plumed fix active at a time.
|
||||
There can only be one fix plumed command active at a time.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -39,14 +39,15 @@ useful for treating a large biomolecule as a collection of connected,
|
||||
coarse-grained particles.
|
||||
|
||||
The coupling, associated motion constraints, and time integration is
|
||||
performed by the software package `Parallelizable Open source Efficient Multibody Software (POEMS)` which computes the
|
||||
constrained rigid-body motion of articulated (jointed) multibody
|
||||
systems :ref:`(Anderson) <Anderson>`. POEMS was written and is distributed
|
||||
by Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee,
|
||||
and other members of his group at Rensselaer Polytechnic Institute
|
||||
(RPI). Rudranarayan developed the LAMMPS/POEMS interface. For
|
||||
copyright information on POEMS and other details, please refer to the
|
||||
documents in the poems directory distributed with LAMMPS.
|
||||
performed by the software package `Parallelizable Open source
|
||||
Efficient Multibody Software (POEMS)` which computes the constrained
|
||||
rigid-body motion of articulated (jointed) multibody systems
|
||||
:ref:`(Anderson) <Anderson>`. POEMS was written and is distributed by
|
||||
Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee, and
|
||||
other members of his group at Rensselaer Polytechnic Institute (RPI).
|
||||
Rudranarayan developed the LAMMPS/POEMS interface. For copyright
|
||||
information on POEMS and other details, please refer to the documents
|
||||
in the poems directory distributed with LAMMPS.
|
||||
|
||||
This fix updates the positions and velocities of the rigid atoms with
|
||||
a constant-energy time integration, so you should not update the same
|
||||
@ -107,7 +108,16 @@ off, and there is only a single fix poems defined.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces and torques
|
||||
on atoms to both the global pressure and per-atom stress of the system
|
||||
via the :doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *bodyforces* option is supported by
|
||||
this fix style to set whether per-body forces and torques are computed
|
||||
@ -115,16 +125,18 @@ early or late in a timestep, i.e. at the post-force stage or at the
|
||||
final-integrate stage, respectively.
|
||||
|
||||
No global or per-atom quantities are stored by this fix for access by
|
||||
various :doc:`output commands <Howto_output>`. No parameter of this fix
|
||||
can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
various :doc:`output commands <Howto_output>`. No parameter of this
|
||||
fix can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization
|
||||
<minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only enabled if LAMMPS
|
||||
was built with that package, which also requires the POEMS library be
|
||||
built and linked with LAMMPS. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only
|
||||
enabled if LAMMPS was built with that package, which also requires the
|
||||
POEMS library be built and linked with LAMMPS. See the :doc:`Build
|
||||
package <Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -42,11 +42,12 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This fix applies a precession torque to each magnetic spin in the group.
|
||||
This fix applies a precession torque to each magnetic spin in the
|
||||
group.
|
||||
|
||||
Style *zeeman* is used for the simulation of the interaction
|
||||
between the magnetic spins in the defined group and an external
|
||||
magnetic field:
|
||||
Style *zeeman* is used for the simulation of the interaction between
|
||||
the magnetic spins in the defined group and an external magnetic
|
||||
field:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -62,17 +63,17 @@ with:
|
||||
|
||||
The field value in Tesla is multiplied by the gyromagnetic
|
||||
ratio, :math:`g \cdot \mu_B/\hbar`, converting it into a precession frequency in
|
||||
rad.THz (in metal units and with :math:`\mu_B = 5.788\cdot 10^{-5}` eV/T).
|
||||
rad.THz (in metal units and with :math:`\mu_B = 5.788\cdot 10^{-5}`
|
||||
eV/T).
|
||||
|
||||
As a comparison, the figure below displays the simulation of a
|
||||
single spin (of norm :math:`\mu_i = 1.0`) submitted to an external
|
||||
magnetic field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and oriented along the z
|
||||
axis).
|
||||
The upper plot shows the average magnetization along the
|
||||
external magnetic field axis and the lower plot the Zeeman
|
||||
energy, both as a function of temperature.
|
||||
The reference result is provided by the plot of the Langevin
|
||||
function for the same parameters.
|
||||
As a comparison, the figure below displays the simulation of a single
|
||||
spin (of norm :math:`\mu_i = 1.0`) submitted to an external magnetic
|
||||
field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and
|
||||
oriented along the z axis). The upper plot shows the average
|
||||
magnetization along the external magnetic field axis and the lower
|
||||
plot the Zeeman energy, both as a function of temperature. The
|
||||
reference result is provided by the plot of the Langevin function for
|
||||
the same parameters.
|
||||
|
||||
.. image:: JPG/zeeman_langevin.jpg
|
||||
:align: center
|
||||
@ -88,10 +89,12 @@ for the magnetic spins in the defined group:
|
||||
|
||||
.. math::
|
||||
|
||||
H_{aniso} = -\sum_{{ i}=1}^{N} K_{an}(\mathbf{r}_{i})\, \left( \vec{s}_{i} \cdot \vec{n}_{i} \right)^2
|
||||
H_{aniso} = -\sum_{{ i}=1}^{N} K_{an}(\mathbf{r}_{i})\, \left(
|
||||
\vec{s}_{i} \cdot \vec{n}_{i} \right)^2
|
||||
|
||||
with :math:`n` defining the direction of the anisotropy, and :math:`K` (in eV) its intensity.
|
||||
If :math:`K > 0`, an easy axis is defined, and if :math:`K < 0`, an easy plane is defined.
|
||||
with :math:`n` defining the direction of the anisotropy, and :math:`K`
|
||||
(in eV) its intensity. If :math:`K > 0`, an easy axis is defined, and
|
||||
if :math:`K < 0`, an easy plane is defined.
|
||||
|
||||
Style *cubic* is used to simulate a cubic anisotropy, with three
|
||||
possible easy axis for the magnetic spins in the defined group:
|
||||
@ -110,17 +113,17 @@ possible easy axis for the magnetic spins in the defined group:
|
||||
\left(\vec{s}_{i} \cdot \vec{n_2} \right)^2
|
||||
\left(\vec{s}_{i} \cdot \vec{n_3} \right)^2
|
||||
|
||||
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients and
|
||||
:math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3` defining the three anisotropic directions
|
||||
defined by the command (from *n1x* to *n3z*).
|
||||
For :math:`\vec{n}_1 = (1 0 0)`, :math:`\vec{n}_2 = (0 1 0)`, and :math:`\vec{n}_3 = (0 0 1)`, :math:`K_1 < 0` defines an
|
||||
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients
|
||||
and :math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3`
|
||||
defining the three anisotropic directions defined by the command (from
|
||||
*n1x* to *n3z*). For :math:`\vec{n}_1 = (1 0 0)`, :math:`\vec{n}_2 =
|
||||
(0 1 0)`, and :math:`\vec{n}_3 = (0 0 1)`, :math:`K_1 < 0` defines an
|
||||
iron type anisotropy (easy axis along the :math:`(0 0 1)`-type cube
|
||||
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy axis
|
||||
along the :math:`(1 1 1)`-type cube diagonals).
|
||||
:math:`K_2^c > 0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
||||
diagonals.
|
||||
See chapter 2 of :ref:`(Skomski) <Skomski1>` for more details on cubic
|
||||
anisotropies.
|
||||
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy
|
||||
axis along the :math:`(1 1 1)`-type cube diagonals). :math:`K_2^c >
|
||||
0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
||||
diagonals. See chapter 2 of :ref:`(Skomski) <Skomski1>` for more
|
||||
details on cubic anisotropies.
|
||||
|
||||
In all cases, the choice of :math:`(x y z)` only imposes the vector
|
||||
directions for the forces. Only the direction of the vector is
|
||||
@ -134,32 +137,35 @@ Those styles can be combined within one single command line.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
By default, the energy associated to this fix is not added to the potential
|
||||
energy of the system.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this fix
|
||||
to add this magnetic potential energy to the potential energy of the system,
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all precession/spin zeeman 1.0 0.0 0.0 1.0
|
||||
fix_modify 1 energy yes
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy assocatiated with the spin precession
|
||||
torque to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`.
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
energy (in energy units) discussed in the previous paragraph. The
|
||||
scalar value is an "extensive" quantity.
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
The *precession/spin* style is part of the SPIN package. This style
|
||||
is only enabled if LAMMPS was built with this package, and if the
|
||||
atom_style "spin" was declared. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
atom_style "spin" was declared. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
The *precession/spin* style can only be declared once. If more
|
||||
than one precession type (for example combining an anisotropy and a Zeeman interactions)
|
||||
has to be declared, they have to be chained in the same command
|
||||
line (as shown in the examples above).
|
||||
The *precession/spin* style can only be declared once. If more than
|
||||
one precession type (for example combining an anisotropy and a Zeeman
|
||||
interactions) has to be declared, they have to be chained in the same
|
||||
command line (as shown in the examples above).
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -152,13 +152,30 @@ Because the state of the random number generator is not written to
|
||||
"exactly" in an uninterrupted fashion. However, in a statistical
|
||||
sense, a restarted simulation should produce similar behaviors of the
|
||||
system as if it is not interrupted. To achieve such a restart, one
|
||||
should write explicitly the same value for *q*\ , *mu*\ , *damp*\ , *f_max*,
|
||||
*N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system is
|
||||
compressed during the first run.
|
||||
should write explicitly the same value for *q*\ , *mu*\ , *damp*\ ,
|
||||
*f_max*, *N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system
|
||||
is compressed during the first run.
|
||||
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
The progress of the QBMSST can be monitored by printing the global
|
||||
scalar and global vector quantities computed by the fix. The global
|
||||
vector contains five values in this order:
|
||||
scalar and global vector quantities computed by the fix.
|
||||
|
||||
As mentioned above, the scalar is the cumulative energy change due to
|
||||
the fix. By monitoring the thermodynamic *econserve* output, this can
|
||||
be used to test if the MD timestep is sufficiently small for accurate
|
||||
integration of the dynamic equations.
|
||||
|
||||
The global vector contains five values in the following order. The
|
||||
vector values output by this fix are "intensive".
|
||||
|
||||
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*, *lagrangian_position*,
|
||||
*quantum_temperature*]
|
||||
@ -170,29 +187,21 @@ vector contains five values in this order:
|
||||
5. *quantum_temperature* is the temperature of the quantum thermal bath :math:`T^{qm}`.
|
||||
|
||||
To print these quantities to the log file with descriptive column
|
||||
headers, the following LAMMPS commands are suggested. Here the
|
||||
:doc:`fix_modify <fix_modify>` energy command is also enabled to allow
|
||||
the thermo keyword *etotal* to print the quantity :math:`E^{tot}`. See
|
||||
also the :doc:`thermo_style <thermo_style>` command.
|
||||
headers, the following LAMMPS commands are suggested.
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix fix_id all msst z
|
||||
fix_modify fix_id energy yes
|
||||
variable dhug equal f_fix_id[1]
|
||||
variable dray equal f_fix_id[2]
|
||||
variable lgr_vel equal f_fix_id[3]
|
||||
variable lgr_pos equal f_fix_id[4]
|
||||
variable T_qm equal f_fix_id[5]
|
||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id
|
||||
thermo_style custom step temp ke pe lz pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id
|
||||
|
||||
The global scalar under the entry f_fix_id is the quantity of thermo
|
||||
energy as an extra part of :math:`E^{tot}`. This global scalar and the
|
||||
vector of 5 quantities can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
It is worth noting that the temp keyword
|
||||
under the :doc:`thermo_style <thermo_style>` command print the
|
||||
instantaneous classical temperature :math:`T^{cl}` as described
|
||||
in the command :doc:`fix qtb <fix_qtb>`.
|
||||
It is worth noting that the temp keyword for the :doc:`thermo_style
|
||||
<thermo_style>` command prints the instantaneous classical temperature
|
||||
:math:`T^{cl}` as described by the :doc:`fix qtb <fix_qtb>` command.
|
||||
|
||||
----------
|
||||
|
||||
@ -200,7 +209,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix style is part of the USER-QTB package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
All cell dimensions must be periodic. This fix can not be used with a
|
||||
triclinic cell. The QBMSST fix has been tested only for the group-ID
|
||||
|
||||
@ -219,15 +219,19 @@ current dihedral angle :math:`\phi` is equal to :math:`\phi_0`.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential energy associated with this fix to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy associated with this fix to the
|
||||
global potential energy of the system as part of :doc:`thermodynamic
|
||||
output <thermo_style>` The default setting for this fix is
|
||||
:doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@ -45,11 +45,34 @@ temperatures :ref:`(Pedersen) <Pedersen>`.
|
||||
An example of using the interface pinning method is located in the
|
||||
*examples/USER/misc/rhok* directory.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy calculated by the fix to the
|
||||
global potential energy of the system as part of :doc:`thermodynamic
|
||||
output <thermo_style>`. The default setting for this fix is
|
||||
:doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
energy discussed in the preceding paragraph. The scalar stored by
|
||||
this fix is "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -752,25 +752,17 @@ rigid/nvt.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about the 4 NVE rigid styles is written to :doc:`binary restart files <restart>`. The exception is if the *infile* or
|
||||
*mol* keyword is used, in which case an auxiliary file is written out
|
||||
with rigid body information each time a restart file is written, as
|
||||
No information about the 4 NVE rigid styles is written to :doc:`binary
|
||||
restart files <restart>`. The exception is if the *infile* or *mol*
|
||||
keyword is used, in which case an auxiliary file is written out with
|
||||
rigid body information each time a restart file is written, as
|
||||
explained above for the *infile* keyword. For the 2 NVT rigid styles,
|
||||
the state of the Nose/Hoover thermostat is written to :doc:`binary restart files <restart>`. Ditto for the 4 NPT and NPH rigid styles, and
|
||||
the state of the Nose/Hoover barostat. See the
|
||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
||||
a fix in an input script that reads a restart file, so that the
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by the 6
|
||||
NVT, NPT, NPH rigid styles to add the energy change induced by the
|
||||
thermostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to keeping the objects rigid to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial yes*
|
||||
the state of the Nose/Hoover thermostat is written to :doc:`binary
|
||||
restart files <restart>`. Ditto for the 4 NPT and NPH rigid styles,
|
||||
and the state of the Nose/Hoover barostat. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by the 4 NPT and NPH rigid styles to change the computes
|
||||
@ -783,6 +775,12 @@ all rigid styles to set whether per-body forces and torques are
|
||||
computed early or late in a timestep, i.e. at the post-force stage or
|
||||
at the final-integrate stage or the timestep, respectively.
|
||||
|
||||
The cumulative energy change in the system imposed by the 6 NVT, NPT,
|
||||
NPH rigid fixes, via either thermostatting and/or barostatting, is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
The 2 NVE rigid fixes compute a global scalar which can be accessed by
|
||||
various :doc:`output commands <Howto_output>`. The scalar value
|
||||
calculated by these fixes is "intensive". The scalar is the current
|
||||
@ -798,13 +796,22 @@ are removed from this calculation, but only for the *rigid* and
|
||||
|
||||
The 6 NVT, NPT, NPH rigid fixes compute a global scalar which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
||||
value calculated by these fixes is "extensive". The scalar is the
|
||||
cumulative energy change due to the thermostatting and barostatting
|
||||
the fix performs.
|
||||
is the same cumulative energy change due to these fixes described
|
||||
above. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
these fixes to add the contribution due to the added forces on atoms
|
||||
to both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
All of the *rigid* styles (not the *rigid/small* styles) compute a
|
||||
global array of values which can be accessed by various :doc:`output commands <Howto_output>`. Similar information about the bodies
|
||||
defined by the *rigid/small* styles can be accessed via the :doc:`compute rigid/local <compute_rigid_local>` command.
|
||||
global array of values which can be accessed by various :doc:`output
|
||||
commands <Howto_output>`. Similar information about the bodies
|
||||
defined by the *rigid/small* styles can be accessed via the
|
||||
:doc:`compute rigid/local <compute_rigid_local>` command.
|
||||
|
||||
The number of rows in the array is equal to the number of rigid
|
||||
bodies. The number of columns is 15. Thus for each rigid body, 15
|
||||
|
||||
@ -191,22 +191,29 @@ LAMMPS closely follows (:ref:`Andersen (1983) <Andersen3>`).
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to keeping the constraints to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial yes*
|
||||
No information about these fixes is written to :doc:`binary restart
|
||||
files <restart>`.
|
||||
|
||||
No information about these fixes is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
||||
are relevant to these fixes. No global or per-atom quantities are
|
||||
stored by these fixes for access by various :doc:`output commands <Howto_output>`. No parameter of these fixes can be used
|
||||
with the *start/stop* keywords of the :doc:`run <run>` command. These
|
||||
fixes are not invoked during :doc:`energy minimization <minimize>`.
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
these fixes to add the contribution due to the added forces on atoms
|
||||
to both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
No global or per-atom quantities are stored by these fixes for access
|
||||
by various :doc:`output commands <Howto_output>`. No parameter of
|
||||
these fixes can be used with the *start/stop* keywords of the
|
||||
:doc:`run <run>` command. These fixes are not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
These fixes are part of the RIGID package. They are only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
For computational efficiency, there can only be one shake or rattle
|
||||
fix defined in a simulation.
|
||||
|
||||
@ -48,10 +48,12 @@ Description
|
||||
"""""""""""
|
||||
|
||||
This fix implements several options of steered MD (SMD) as reviewed in
|
||||
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational changes
|
||||
in systems and to compute the potential of mean force (PMF) along the
|
||||
assumed reaction coordinate :ref:`(Park) <Park>` based on Jarzynski's
|
||||
equality :ref:`(Jarzynski) <Jarzynski>`. This fix borrows a lot from :doc:`fix spring <fix_spring>` and :doc:`fix setforce <fix_setforce>`.
|
||||
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational
|
||||
changes in systems and to compute the potential of mean force (PMF)
|
||||
along the assumed reaction coordinate :ref:`(Park) <Park>` based on
|
||||
Jarzynski's equality :ref:`(Jarzynski) <Jarzynski>`. This fix borrows
|
||||
a lot from :doc:`fix spring <fix_spring>` and :doc:`fix setforce
|
||||
<fix_setforce>`.
|
||||
|
||||
You can apply a moving spring force to a group of atoms (\ *tether*
|
||||
style) or between two groups of atoms (\ *couple* style). The spring
|
||||
@ -108,30 +110,36 @@ See the :doc:`read_restart <read_restart>` command for info on how to
|
||||
re-specify a fix in an input script that reads a restart file, so that
|
||||
the operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the added forces on atoms to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces on atoms to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a vector list of 7 quantities, which can be accessed
|
||||
by various :doc:`output commands <Howto_output>`. The quantities in the
|
||||
vector are in this order: the x-, y-, and z-component of the pulling
|
||||
force, the total force in direction of the pull, the equilibrium
|
||||
distance of the spring, the distance between the two reference points,
|
||||
and finally the accumulated PMF (the sum of pulling forces times
|
||||
displacement).
|
||||
by various :doc:`output commands <Howto_output>`. The quantities in
|
||||
the vector are in this order: the x-, y-, and z-component of the
|
||||
pulling force, the total force in direction of the pull, the
|
||||
equilibrium distance of the spring, the distance between the two
|
||||
reference points, and finally the accumulated PMF (the sum of pulling
|
||||
forces times displacement).
|
||||
|
||||
The force is the total force on the group of atoms by the spring. In
|
||||
the case of the *couple* style, it is the force on the fix group
|
||||
(group-ID) or the negative of the force on the second group (group-ID2).
|
||||
The vector values calculated by this fix are "extensive".
|
||||
(group-ID) or the negative of the force on the second group
|
||||
(group-ID2). The vector values calculated by this fix are
|
||||
"extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -100,11 +100,14 @@ last example holds the ion a distance 5 away from the pore axis
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy stored in the spring to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in the spring to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
|
||||
@ -62,9 +62,11 @@ will define the same number of chunks. The restart data is only applied
|
||||
when the number of chunks matches. Otherwise the center of mass
|
||||
coordinates are recomputed.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy stored in all the springs to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in all the springs to the global
|
||||
potential energy of the system as part of :doc:`thermodynamic output
|
||||
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||
energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
|
||||
@ -44,15 +44,18 @@ plane, respectively.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the original coordinates of tethered atoms to :doc:`binary restart files <restart>`, so that the spring effect will be the
|
||||
same in a restarted simulation. See the
|
||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
||||
a fix in an input script that reads a restart file, so that the
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
This fix writes the original coordinates of tethered atoms to
|
||||
:doc:`binary restart files <restart>`, so that the spring effect will
|
||||
be the same in a restarted simulation. See the :doc:`read_restart
|
||||
<read_restart>` command for info on how to re-specify a fix in an
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy stored in the per-atom springs to the system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in the per-atom springs to the
|
||||
global potential energy of the system as part of :doc:`thermodynamic
|
||||
output <thermo_style>`. The default setting for this fix is
|
||||
:doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
|
||||
@ -132,14 +132,15 @@ you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
|
||||
@ -142,32 +142,36 @@ ensemble.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
These fixes write the cumulative global energy change and the
|
||||
random number generator states to :doc:`binary restart files <restart>`.
|
||||
See the :doc:`read_restart <read_restart>` command for info on how to
|
||||
re-specify a fix in an input script that reads a restart file,
|
||||
so that the selected fix continues in an uninterrupted fashion. The
|
||||
random number generator state can only be restored when the number
|
||||
of processors remains unchanged from what is recorded in the restart file.
|
||||
|
||||
No information about these fixes are written to :doc:`binary restart files <restart>`.
|
||||
These fixes write the cumulative global energy change and the random
|
||||
number generator states to :doc:`binary restart files <restart>`. See
|
||||
the :doc:`read_restart <read_restart>` command for info on how to
|
||||
re-specify a fix in an input script that reads a restart file, so that
|
||||
the selected fix continues in an uninterrupted fashion. The random
|
||||
number generator state can only be restored when the number of
|
||||
processors remains unchanged from what is recorded in the restart
|
||||
file.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by these
|
||||
fixes. You can use it to assign a temperature :doc:`compute <compute>`
|
||||
you have defined to these fixes which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
these fixes and by the compute should be the same.
|
||||
fixes. You can use it to assign a temperature :doc:`compute
|
||||
<compute>` you have defined to these fixes which will be used in its
|
||||
thermostatting procedure, as described above. For consistency, the
|
||||
group used by these fixes and by the compute should be the same.
|
||||
|
||||
These fixes can ramp its target temperature over multiple runs, using
|
||||
the *start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
||||
The cumulative energy change in the system imposed by these fixes is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
These fixes compute a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to the fix. The scalar value calculated by this fix
|
||||
is "extensive".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
These fixes can ramp their target temperature over multiple runs,
|
||||
using the *start* and *stop* keywords of the :doc:`run <run>` command.
|
||||
See the :doc:`run <run>` command for details of how to do this.
|
||||
|
||||
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -100,13 +100,13 @@ ID of the new compute is the fix-ID + underscore + "temp", and the
|
||||
group for the new compute is the same as the fix group.
|
||||
|
||||
Note that this is NOT the compute used by thermodynamic output (see
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*.
|
||||
This means you can change the attributes of this fix's temperature
|
||||
(e.g. its degrees-of-freedom) via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
||||
during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
||||
It also means that changing attributes of *thermo_temp* will have no
|
||||
effect on this fix.
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||
*thermo_temp*. This means you can change the attributes of this fix's
|
||||
temperature (e.g. its degrees-of-freedom) via the :doc:`compute_modify
|
||||
<compute_modify>` command or print this temperature during
|
||||
thermodynamic output via the :doc:`thermo_style custom <thermo_style>`
|
||||
command using the appropriate compute-ID. It also means that changing
|
||||
attributes of *thermo_temp* will have no effect on this fix.
|
||||
|
||||
Like other fixes that perform thermostatting, this fix can be used
|
||||
with :doc:`compute commands <compute>` that calculate a temperature
|
||||
@ -114,13 +114,14 @@ after removing a "bias" from the atom velocities. E.g. removing the
|
||||
center-of-mass velocity from a group of atoms or only calculating
|
||||
temperature on the x-component of velocity or only calculating
|
||||
temperature for atoms in a geometric region. This is not done by
|
||||
default, but only if the :doc:`fix_modify <fix_modify>` command is used
|
||||
to assign a temperature compute to this fix that includes such a bias
|
||||
term. See the doc pages for individual :doc:`compute commands <compute>` to determine which ones include a bias. In
|
||||
this case, the thermostat works in the following manner: the current
|
||||
temperature is calculated taking the bias into account, bias is
|
||||
removed from each atom, thermostatting is performed on the remaining
|
||||
thermal degrees of freedom, and the bias is added back in.
|
||||
default, but only if the :doc:`fix_modify <fix_modify>` command is
|
||||
used to assign a temperature compute to this fix that includes such a
|
||||
bias term. See the doc pages for individual :doc:`compute commands
|
||||
<compute>` to determine which ones include a bias. In this case, the
|
||||
thermostat works in the following manner: the current temperature is
|
||||
calculated taking the bias into account, bias is removed from each
|
||||
atom, thermostatting is performed on the remaining thermal degrees of
|
||||
freedom, and the bias is added back in.
|
||||
|
||||
----------
|
||||
|
||||
@ -139,15 +140,15 @@ you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output
|
||||
<thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
|
||||
@ -38,7 +38,8 @@ particles.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
||||
@ -46,14 +47,15 @@ you have defined to this fix which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
This fix can ramp its target temperature over multiple runs, using the
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
|
||||
@ -218,10 +218,10 @@ a fix in an input script that reads a restart file, so that the
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by these fixes. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure, as described above.
|
||||
If you do this, note that the kinetic energy derived from the compute
|
||||
supported by these fixes. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure, as described above. If you
|
||||
do this, note that the kinetic energy derived from the compute
|
||||
temperature should be consistent with the virial term computed using
|
||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||
compute temperature on a subset of atoms.
|
||||
@ -229,42 +229,49 @@ compute temperature on a subset of atoms.
|
||||
.. note::
|
||||
|
||||
If both the *temp* and *press* keywords are used in a single
|
||||
thermo_modify command (or in two separate commands), then the order in
|
||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
||||
an argument when it is specified. The *temp* keyword will override
|
||||
this (for the pressure compute being used by fix npt), but only if the
|
||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
||||
comes before the *press* keyword, then the new pressure compute
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
thermo_modify command (or in two separate commands), then the order
|
||||
in which the keywords are specified is important. Note that a
|
||||
:doc:`pressure compute <compute_pressure>` defines its own
|
||||
temperature compute as an argument when it is specified. The
|
||||
*temp* keyword will override this (for the pressure compute being
|
||||
used by fix npt), but only if the *temp* keyword comes after the
|
||||
*press* keyword. If the *temp* keyword comes before the *press*
|
||||
keyword, then the new pressure compute specified by the *press*
|
||||
keyword will be unaffected by the *temp* setting.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by these fixes, due
|
||||
to thermostatting and/or barostating, are included in the
|
||||
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
The scalar is the cumulative energy change due to the fix.
|
||||
The vector stores the three temperatures :math:`T_\mathrm{M}`, :math:`T_\mathrm{R}` and :math:`T_\mathrm{D}`.
|
||||
These fixes compute a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||
cumulative energy change due to this fix described in the previous
|
||||
paragraph. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
These fixes also compute a global vector of quantities, which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. The vector
|
||||
values are "intensive". The vector stores the three temperatures
|
||||
:math:`T_\mathrm{M}`, :math:`T_\mathrm{R}` and :math:`T_\mathrm{D}`.
|
||||
|
||||
These fixes can ramp their external temperature and pressure over
|
||||
multiple runs, using the *start* and *stop* keywords of the
|
||||
:doc:`run <run>` command. See the :doc:`run <run>` command for details of
|
||||
how to do this.
|
||||
multiple runs, using the *start* and *stop* keywords of the :doc:`run
|
||||
<run>` command. See the :doc:`run <run>` command for details of how
|
||||
to do this.
|
||||
|
||||
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
||||
These fixes are not invoked during :doc:`energy minimization
|
||||
<minimize>`.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
These fixes are only available when LAMMPS was built with the USER-DRUDE package.
|
||||
These fixes cannot be used with dynamic groups as defined by the :doc:`group <group>` command.
|
||||
These fixes cannot be used in 2D simulations.
|
||||
These fixes are only available when LAMMPS was built with the
|
||||
USER-DRUDE package. These fixes cannot be used with dynamic groups as
|
||||
defined by the :doc:`group <group>` command. These fixes cannot be
|
||||
used in 2D simulations.
|
||||
|
||||
*X*\ , *y*\ , *z* cannot be barostatted if the associated dimension is not
|
||||
periodic. *Xy*\ , *xz*\ , and *yz* can only be barostatted if the
|
||||
|
||||
@ -89,13 +89,14 @@ time:
|
||||
|
||||
\lambda(\tau) = \tau
|
||||
|
||||
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2* performs
|
||||
the lambda switching at a rate defined by the following switching
|
||||
function
|
||||
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2*
|
||||
performs the lambda switching at a rate defined by the following
|
||||
switching function
|
||||
|
||||
.. math::
|
||||
|
||||
\lambda(\tau) = \tau^5 \left( 70 \tau^4 - 315 \tau^3 + 540 \tau^2 - 420 \tau + 126 \right)
|
||||
\lambda(\tau) = \tau^5 \left( 70 \tau^4 - 315 \tau^3 + 540 \tau^2 -
|
||||
420 \tau + 126 \right)
|
||||
|
||||
This function has zero slope as lambda approaches its extreme values
|
||||
(0 and 1), according to :ref:`de Koning <deKoning96>` this results in
|
||||
@ -106,16 +107,19 @@ increase in computational resources cost.
|
||||
|
||||
.. note::
|
||||
|
||||
As described in :ref:`Freitas <Freitas1>`, it is important to keep the
|
||||
center-of-mass fixed during the thermodynamic integration. A nonzero
|
||||
total velocity will result in divergences during the integration due
|
||||
to the fact that the atoms are 'attached' to their equilibrium
|
||||
positions by the Einstein crystal. Check the option *zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity <velocity>`. The use of
|
||||
the Nose-Hoover thermostat (:doc:`fix nvt <fix_nh>`) is *NOT*
|
||||
recommended due to its well documented issues with the canonical
|
||||
sampling of harmonic degrees of freedom (notice that the *chain*
|
||||
option will *NOT* solve this problem). The Langevin thermostat (:doc:`fix langevin <fix_langevin>`) correctly thermostats the system and we
|
||||
advise its usage with ti/spring command.
|
||||
As described in :ref:`Freitas <Freitas1>`, it is important to keep
|
||||
the center-of-mass fixed during the thermodynamic integration. A
|
||||
nonzero total velocity will result in divergences during the
|
||||
integration due to the fact that the atoms are 'attached' to their
|
||||
equilibrium positions by the Einstein crystal. Check the option
|
||||
*zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity
|
||||
<velocity>`. The use of the Nose-Hoover thermostat (:doc:`fix nvt
|
||||
<fix_nh>`) is *NOT* recommended due to its well documented issues
|
||||
with the canonical sampling of harmonic degrees of freedom (notice
|
||||
that the *chain* option will *NOT* solve this problem). The
|
||||
Langevin thermostat (:doc:`fix langevin <fix_langevin>`) correctly
|
||||
thermostats the system and we advise its usage with ti/spring
|
||||
command.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
@ -127,10 +131,11 @@ be the same in a restarted simulation. See the :doc:`read restart
|
||||
input script that reads a restart file, so that the operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix modify <fix_modify>` *energy* option is supported by
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in the per-atom springs to the
|
||||
system's potential energy as part of :doc:`thermodynamic output
|
||||
<thermo_style>`.
|
||||
global potential energy of the system as part of :doc:`thermodynamic
|
||||
output <thermo_style>`. The default setting for this fix is
|
||||
:doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
This fix computes a global scalar and a global vector quantities which
|
||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||
|
||||
@ -331,23 +331,33 @@ perturbation on the particles:
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of interaction between atoms and each wall to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and all the
|
||||
specified walls to the global potential energy of the system as part
|
||||
of :doc:`thermodynamic output <thermo_style>`. The default setting
|
||||
for this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the interaction between
|
||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the interaction between atoms
|
||||
and all the specified walls to both the global pressure and per-atom
|
||||
stress of the system via the :doc:`compute pressure
|
||||
<compute_pressure>` and :doc:`compute stress/atom
|
||||
<compute_stress_atom>` commands. The former can be accessed by
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify virial no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix computes a global scalar energy and a global vector of
|
||||
forces, which can be accessed by various :doc:`output commands <Howto_output>`. Note that the scalar energy is the sum
|
||||
of interactions with all defined walls. If you want the energy on a
|
||||
forces, which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. Note that the scalar energy is the sum of
|
||||
interactions with all defined walls. If you want the energy on a
|
||||
per-wall basis, you need to use multiple fix wall commands. The
|
||||
length of the vector is equal to the number of walls defined by the
|
||||
fix. Each vector value is the normal force on a specific wall. Note
|
||||
|
||||
@ -56,20 +56,27 @@ Description
|
||||
"""""""""""
|
||||
|
||||
Fix *wall/ees* bounds the simulation domain on one or more of its
|
||||
faces with a flat wall that interacts with the ellipsoidal atoms in the
|
||||
group by generating a force on the atom in a direction perpendicular to
|
||||
the wall and a torque parallel with the wall. The energy of
|
||||
wall-particle interactions E is given by:
|
||||
faces with a flat wall that interacts with the ellipsoidal atoms in
|
||||
the group by generating a force on the atom in a direction
|
||||
perpendicular to the wall and a torque parallel with the wall. The
|
||||
energy of wall-particle interactions E is given by:
|
||||
|
||||
.. math::
|
||||
|
||||
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3 \sigma_{n}^2+3 r \sigma_{n}^4\right) }{945 \left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r \sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{ \left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12 \sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n < r < r_c
|
||||
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3
|
||||
\sigma_{n}^2+3 r \sigma_{n}^4\right) }{945
|
||||
\left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r
|
||||
\sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{
|
||||
\left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12
|
||||
\sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n
|
||||
< r < r_c
|
||||
|
||||
Introduced by Babadi and Ejtehadi in :ref:`(Babadi) <BabadiEjtehadi>`. Here,
|
||||
*r* is the distance from the particle to the wall at position *coord*\ ,
|
||||
and Rc is the *cutoff* distance at which the particle and wall no
|
||||
longer interact. Also, :math:`\sigma_n` is the distance between center of
|
||||
ellipsoid and the nearest point of its surface to the wall as shown below.
|
||||
Introduced by Babadi and Ejtehadi in :ref:`(Babadi)
|
||||
<BabadiEjtehadi>`. Here, *r* is the distance from the particle to the
|
||||
wall at position *coord*\ , and Rc is the *cutoff* distance at which
|
||||
the particle and wall no longer interact. Also, :math:`\sigma_n` is
|
||||
the distance between center of ellipsoid and the nearest point of its
|
||||
surface to the wall as shown below.
|
||||
|
||||
.. image:: JPG/fix_wall_ees_image.jpg
|
||||
:align: center
|
||||
@ -85,13 +92,15 @@ pre-factor is
|
||||
|
||||
.. math::
|
||||
|
||||
8 \pi^2 \quad \rho_{wall} \quad \rho_{ellipsoid} \quad \epsilon \quad \sigma_a \quad \sigma_b \quad \sigma_c
|
||||
8 \pi^2 \quad \rho_{wall} \quad \rho_{ellipsoid} \quad \epsilon
|
||||
\quad \sigma_a \quad \sigma_b \quad \sigma_c
|
||||
|
||||
where :math:`\epsilon` is the LJ energy parameter for the constituent LJ
|
||||
particles and :math:`\sigma_a`, :math:`\sigma_b`, and :math:`\sigma_c`
|
||||
are the radii of the ellipsoidal particles. :math:`\rho_{wall}` and
|
||||
:math:`\rho_{ellipsoid}` are the number density of the constituent
|
||||
particles, in the wall and ellipsoid respectively, in units of 1/volume.
|
||||
where :math:`\epsilon` is the LJ energy parameter for the constituent
|
||||
LJ particles and :math:`\sigma_a`, :math:`\sigma_b`, and
|
||||
:math:`\sigma_c` are the radii of the ellipsoidal
|
||||
particles. :math:`\rho_{wall}` and :math:`\rho_{ellipsoid}` are the
|
||||
number density of the constituent particles, in the wall and ellipsoid
|
||||
respectively, in units of 1/volume.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -106,16 +115,56 @@ Fix *wall/region/ees* treats the surface of the geometric region defined
|
||||
by the *region-ID* as a bounding wall which interacts with nearby
|
||||
ellipsoidal particles according to the EES potential introduced above.
|
||||
|
||||
Other details of this command are the same as for the :doc:`fix wall/region <fix_wall_region>` command. One may also find an example
|
||||
Other details of this command are the same as for the :doc:`fix
|
||||
wall/region <fix_wall_region>` command. One may also find an example
|
||||
of using this fix in the examples/USER/misc/ees/ directory.
|
||||
|
||||
----------
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about these fixes are written to :doc:`binary restart
|
||||
files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
these fixes to add the energy of interaction between atoms and all the
|
||||
specified walls or region wall to the global potential energy of the
|
||||
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||
default settings for thes fixes are :doc:`fix_modify energy no
|
||||
<fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||
these fixes. This allows to set at which level of the :doc:`r-RESPA
|
||||
<run_style>` integrator the fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
These fixes computes a global scalar and a global vector of forces,
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. See the :doc:`fix wall <fix_wall>` command for a
|
||||
description of the scalar and vector.
|
||||
|
||||
No parameter of these fixes can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
The forces due to these fixes are imposed during an energy
|
||||
minimization, invoked by the :doc:`minimize <minimize>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the atom/wall interaction energy to be included in
|
||||
the total potential energy of the system (the quantity being
|
||||
minimized), you MUST enable the :doc:`fix_modify <fix_modify>` *energy*
|
||||
option for this fix.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
These fixes are part of the USER-MISC package. They are only enabled
|
||||
if LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
This fix requires that atoms be ellipsoids as defined by the
|
||||
These fixes requires that atoms be ellipsoids as defined by the
|
||||
:doc:`atom_style ellipsoid <atom_style>` command.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -194,24 +194,32 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of interaction between atoms and the wall to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and the region
|
||||
wall to the global potential energy of the system as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to the interaction between
|
||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the interaction between atoms
|
||||
and the region wall to both the global pressure and per-atom stress of
|
||||
the system via the :doc:`compute pressure <compute_pressure>` and
|
||||
:doc:`compute stress/atom <compute_stress_atom>` commands. The former
|
||||
can be accessed by :doc:`thermodynamic output <thermo_style>`. The
|
||||
default setting for this fix is :doc:`fix_modify virial no
|
||||
<fix_modify>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
|
||||
This fix computes a global scalar energy and a global 3-length vector
|
||||
of forces, which can be accessed by various :doc:`output commands <Howto_output>`. The scalar energy is the sum of energy
|
||||
interactions for all particles interacting with the wall represented
|
||||
by the region surface. The 3 vector quantities are the x,y,z
|
||||
components of the total force acting on the wall due to the particles.
|
||||
The scalar and vector values calculated by this fix are "extensive".
|
||||
of forces, which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar energy is the sum of energy interactions
|
||||
for all particles interacting with the wall represented by the region
|
||||
surface. The 3 vector quantities are the x,y,z components of the
|
||||
total force acting on the wall due to the particles. The scalar and
|
||||
vector values calculated by this fix are "extensive".
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
@ -221,10 +229,10 @@ invoked by the :doc:`minimize <minimize>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the atom/wall interaction energy to be included in
|
||||
the total potential energy of the system (the quantity being
|
||||
minimized), you MUST enable the :doc:`fix_modify <fix_modify>` *energy*
|
||||
option for this fix.
|
||||
If you want the atom/wall interaction energy to be included in the
|
||||
total potential energy of the system (the quantity being
|
||||
minimized), you MUST enable the :doc:`fix_modify <fix_modify>`
|
||||
*energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -155,11 +155,11 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the fix to :doc:`binary restart files
|
||||
<restart>`. This includes information about the random number generator
|
||||
seed, the next timestep for Widom insertions etc. See the
|
||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
||||
a fix in an input script that reads a restart file, so that the
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
<restart>`. This includes information about the random number
|
||||
generator seed, the next timestep for Widom insertions etc. See the
|
||||
:doc:`read_restart <read_restart>` command for info on how to
|
||||
re-specify a fix in an input script that reads a restart file, so that
|
||||
the operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@ Syntax
|
||||
thermo_modify keyword value ...
|
||||
|
||||
* one or more keyword/value pairs may be listed
|
||||
* keyword = *lost* or *lost/bond* or *norm* or *flush* or *line* or *format* or *temp* or *press*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
keyword = *lost* or *lost/bond* or *norm* or *flush* or *line* or *format* or *temp* or *press*\ :l
|
||||
*lost* value = *error* or *warn* or *ignore*
|
||||
*lost/bond* value = *error* or *warn* or *ignore*
|
||||
*norm* value = *yes* or *no*
|
||||
|
||||
@ -20,9 +20,10 @@ Syntax
|
||||
*custom* args = list of keywords
|
||||
possible keywords = step, elapsed, elaplong, dt, time,
|
||||
cpu, tpcpu, spcpu, cpuremain, part, timeremain,
|
||||
atoms, temp, press, pe, ke, etotal, enthalpy,
|
||||
atoms, temp, press, pe, ke, etotal,
|
||||
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,
|
||||
@ -49,7 +50,6 @@ Syntax
|
||||
pe = total potential energy
|
||||
ke = kinetic energy
|
||||
etotal = total energy (pe + ke)
|
||||
enthalpy = enthalpy (etotal + press\*vol)
|
||||
evdwl = van der Waals pairwise energy (includes etail)
|
||||
ecoul = Coulombic pairwise energy
|
||||
epair = pairwise energy (evdwl + ecoul + elong)
|
||||
@ -60,6 +60,9 @@ Syntax
|
||||
emol = molecular energy (ebond + eangle + edihed + eimp)
|
||||
elong = long-range kspace energy
|
||||
etail = van der Waals energy long-range tail correction
|
||||
enthalpy = enthalpy (etotal + press\*vol)
|
||||
ecouple = cumulative energy change due to thermo/baro statting fixes
|
||||
econserve = pe + ke + ecouple = etotal + ecouple
|
||||
vol = volume
|
||||
density = mass density of system
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
@ -197,27 +200,33 @@ change the attributes of this potential energy via the
|
||||
|
||||
The kinetic energy of the system *ke* is inferred from the temperature
|
||||
of the system with :math:`\frac{1}{2} k_B T` of energy for each degree
|
||||
of freedom. Thus, using different :doc:`compute commands <compute>` for
|
||||
calculating temperature, via the :doc:`thermo_modify temp
|
||||
of freedom. Thus, using different :doc:`compute commands <compute>`
|
||||
for calculating temperature, via the :doc:`thermo_modify temp
|
||||
<thermo_modify>` command, may yield different kinetic energies, since
|
||||
different computes that calculate temperature can subtract out different
|
||||
non-thermal components of velocity and/or include different degrees of
|
||||
freedom (translational, rotational, etc).
|
||||
different computes that calculate temperature can subtract out
|
||||
different non-thermal components of velocity and/or include different
|
||||
degrees of freedom (translational, rotational, etc).
|
||||
|
||||
The potential energy of the system *pe* will include contributions
|
||||
from fixes if the :doc:`fix_modify thermo <fix_modify>` option is set
|
||||
for a fix that calculates such a contribution. For example, the :doc:`fix wall/lj93 <fix_wall>` fix calculates the energy of atoms
|
||||
from fixes if the :doc:`fix_modify energy yes <fix_modify>` option is
|
||||
set for a fix that calculates such a contribution. For example, the
|
||||
:doc:`fix wall/lj93 <fix_wall>` fix calculates the energy of atoms
|
||||
interacting with the wall. See the doc pages for "individual fixes"
|
||||
to see which ones contribute.
|
||||
to see which ones contribute and whether their default
|
||||
:doc:`fix_modify energy <fix_modify>` setting is *yes* or *no*\ .
|
||||
|
||||
A long-range tail correction *etail* for the van der Waals pairwise
|
||||
energy will be non-zero only if the :doc:`pair_modify tail <pair_modify>` option is turned on. The *etail* contribution
|
||||
is included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
||||
energy will be non-zero only if the :doc:`pair_modify tail
|
||||
<pair_modify>` option is turned on. The *etail* contribution is
|
||||
included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
||||
corresponding tail correction to the pressure is included in *press*
|
||||
and *pxx*\ , *pyy*\ , etc.
|
||||
|
||||
----------
|
||||
|
||||
Here is more information on other keywords whose meaning may not be
|
||||
clear:
|
||||
|
||||
The *step*\ , *elapsed*\ , and *elaplong* keywords refer to timestep
|
||||
count. *Step* is the current timestep, or iteration count when a
|
||||
:doc:`minimization <minimize>` is being performed. *Elapsed* is the
|
||||
@ -228,13 +237,14 @@ keywords for the :doc:`run <run>` for info on how to invoke a series of
|
||||
runs that keep track of an initial starting time. If these keywords
|
||||
are not used, then *elapsed* and *elaplong* are the same value.
|
||||
|
||||
The *dt* keyword is the current timestep size in time
|
||||
:doc:`units <units>`. The *time* keyword is the current elapsed
|
||||
simulation time, also in time :doc:`units <units>`, which is simply
|
||||
(step\*dt) if the timestep size has not changed and the timestep has
|
||||
not been reset. If the timestep has changed (e.g. via :doc:`fix dt/reset <fix_dt_reset>`) or the timestep has been reset (e.g. via
|
||||
the "reset_timestep" command), then the simulation time is effectively
|
||||
a cumulative value up to the current point.
|
||||
The *dt* keyword is the current timestep size in time :doc:`units
|
||||
<units>`. The *time* keyword is the current elapsed simulation time,
|
||||
also in time :doc:`units <units>`, which is simply (step\*dt) if the
|
||||
timestep size has not changed and the timestep has not been reset. If
|
||||
the timestep has changed (e.g. via :doc:`fix dt/reset <fix_dt_reset>`)
|
||||
or the timestep has been reset (e.g. via the "reset_timestep"
|
||||
command), then the simulation time is effectively a cumulative value
|
||||
up to the current point.
|
||||
|
||||
The *cpu* keyword is elapsed CPU seconds since the beginning of this
|
||||
run. The *tpcpu* and *spcpu* keywords are measures of how fast your
|
||||
@ -266,16 +276,29 @@ a filename for output specific to this partition. See discussion of
|
||||
the :doc:`-partition command-line switch <Run_options>` for details on
|
||||
running in multi-partition mode.
|
||||
|
||||
The *timeremain* keyword returns the remaining seconds when a
|
||||
timeout has been configured via the :doc:`timer timeout <timer>` command.
|
||||
If the timeout timer is inactive, the value of this keyword is 0.0 and
|
||||
if the timer is expired, it is negative. This allows for example to exit
|
||||
The *timeremain* keyword is the seconds remaining when a timeout has
|
||||
been configured via the :doc:`timer timeout <timer>` command. If the
|
||||
timeout timer is inactive, the value of this keyword is 0.0 and if the
|
||||
timer is expired, it is negative. This allows for example to exit
|
||||
loops cleanly, if the timeout is expired with:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
if "$(timeremain) < 0.0" then "quit 0"
|
||||
|
||||
The *ecouple* keyword is cumulative energy change in the system due to
|
||||
any thermostatting or barostatting fixes that are being used. A
|
||||
positive value means that energy has been subtracted from the system
|
||||
(added to the coupling reservoir). See the *econserve* keyword for an
|
||||
explanation of why this sign choice makes sense.
|
||||
|
||||
The *econserve* keyword is the sum of the potential and kinetic energy
|
||||
of the system as well as the energy that has been transferred by
|
||||
thermostatting or barostatting to their coupling reservoirs. I.e. it
|
||||
is *pe* + *ke* + *econserve*\ . Ideally, for a simulation in the NVE,
|
||||
NPH, or NPT ensembles, the *econserve* quantity should remain constant
|
||||
over time.
|
||||
|
||||
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
|
||||
@ -295,12 +318,13 @@ to reduce the delay factor to insure 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>` doc 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*\ .
|
||||
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>` doc 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*\ .
|
||||
|
||||
----------
|
||||
|
||||
@ -330,8 +354,8 @@ creates a global vector with 6 values.
|
||||
|
||||
----------
|
||||
|
||||
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global
|
||||
values calculated by a compute to be output. As discussed on the
|
||||
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global values
|
||||
calculated by a compute to be output. As discussed on the
|
||||
:doc:`compute <compute>` doc page, computes can calculate global,
|
||||
per-atom, or local values. Only global values can be referenced by
|
||||
this command. However, per-atom compute values for an individual atom
|
||||
@ -353,12 +377,13 @@ kinetic energy that are summed over all atoms in the compute group.
|
||||
Intensive quantities are printed directly without normalization by
|
||||
thermo_style custom. Extensive quantities may be normalized by the
|
||||
total number of atoms in the simulation (NOT the number of atoms in
|
||||
the compute group) when output, depending on the :doc:`thermo_modify norm <thermo_modify>` option being used.
|
||||
the compute group) when output, depending on the :doc:`thermo_modify
|
||||
norm <thermo_modify>` option being used.
|
||||
|
||||
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global
|
||||
values calculated by a fix to be output. As discussed on the
|
||||
:doc:`fix <fix>` doc page, fixes can calculate global, per-atom, or
|
||||
local values. Only global values can be referenced by this command.
|
||||
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global values
|
||||
calculated by a fix to be output. As discussed on the :doc:`fix
|
||||
<fix>` doc page, fixes can calculate global, per-atom, or local
|
||||
values. Only global values can be referenced by this command.
|
||||
However, per-atom fix values can be referenced for an individual atom
|
||||
in a :doc:`variable <variable>` and the variable referenced by
|
||||
thermo_style custom, as discussed below. See the discussion above for
|
||||
@ -377,8 +402,8 @@ energy that are summed over all atoms in the fix group. Intensive
|
||||
quantities are printed directly without normalization by thermo_style
|
||||
custom. Extensive quantities may be normalized by the total number of
|
||||
atoms in the simulation (NOT the number of atoms in the fix group)
|
||||
when output, depending on the :doc:`thermo_modify norm <thermo_modify>`
|
||||
option being used.
|
||||
when output, depending on the :doc:`thermo_modify norm
|
||||
<thermo_modify>` option being used.
|
||||
|
||||
The *v_name* keyword allow the current value of a variable to be
|
||||
output. The name in the keyword should be replaced by the variable
|
||||
|
||||
@ -1,16 +1,16 @@
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
@ -39,7 +39,7 @@ pair_coeff * * 1.0 0.8908987
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
@ -61,16 +61,12 @@ reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
@ -81,7 +77,7 @@ variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (no drag)'
|
||||
|
||||
@ -109,16 +105,12 @@ reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term on
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
@ -129,7 +121,7 @@ variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (with drag)'
|
||||
|
||||
@ -153,10 +145,6 @@ fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
@ -167,7 +155,7 @@ variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (Nose-Hoover chain)'
|
||||
|
||||
|
||||
399
examples/hugoniostat/log.08Feb21.hugoniostat.g++.1
Normal file
399
examples/hugoniostat/log.08Feb21.hugoniostat.g++.1
Normal file
@ -0,0 +1,399 @@
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.4142135 2.0000000 2.0000000
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (7.0710677 9.9999999 9.9999999)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
create_atoms CPU = 0.001 seconds
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (src/min.cpp:188)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.8475372
|
||||
ghost atom cutoff = 1.8475372
|
||||
binsize = 0.92376862, bins = 8 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.247 | 4.247 | 4.247 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937536 -6.2937536 -2.7722424 -2.7722424 -2.7722424 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319014 -6.3319014 -0.75971257 -0.75971257 -0.75971257 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344253 -6.3344253 -4.3330648e-13 -4.7530261e-13 -4.7130069e-13 6.9780267 9.8684199 9.8684199
|
||||
Loop time of 0.200013 on 1 procs for 134 steps with 1000 atoms
|
||||
|
||||
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.29375358358557 -6.33442531515503 -6.33442531515503
|
||||
Force two-norm initial, final = 3395.2895 5.5740327e-10
|
||||
Force max component initial, final = 1960.2713 3.2730334e-10
|
||||
Final line search alpha, max atom move = 1.0000000 3.2730334e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.14357 | 0.14357 | 0.14357 | 0.0 | 71.78
|
||||
Neigh | 0.0017562 | 0.0017562 | 0.0017562 | 0.0 | 0.88
|
||||
Comm | 0.0049057 | 0.0049057 | 0.0049057 | 0.0 | 2.45
|
||||
Output | 5.126e-05 | 5.126e-05 | 5.126e-05 | 0.0 | 0.03
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.04973 | | | 24.86
|
||||
|
||||
Nlocal: 1000.00 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724.00 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 21000.0 ave 21000 max 21000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21.000000
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Start Run #1
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (no drag)'
|
||||
|
||||
#dump id all atom 500 dump.hugoniostat
|
||||
|
||||
#dump 2 all image 500 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 5
|
||||
|
||||
#dump 3 all movie 500 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 5
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.124 | 3.124 | 3.124 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014381062 -0.00023971829 9.8684199 0 -0.004855267 2.3814248 0.0041108563
|
||||
1000 0.0093381492 0.013993217 -2.1704431 -4183.8284 129.15284 58.544409 8.3142517 -4.1816719 0.93744212 23.519052 3.7381985
|
||||
2000 0.24794859 0.37155095 -5.8915826 -528.38691 8.3849811 1.3744297 9.5938806 -0.52286688 -0.24350394 13.910493 0.41033425
|
||||
3000 0.3892042 0.5832225 -3.7686896 -3442.3257 72.742382 28.486576 8.6238082 -3.4391402 0.0038227739 19.697354 2.5139569
|
||||
4000 0.67010303 1.0041494 -4.2080956 -2935.8105 35.596234 3.9346859 8.7508489 -2.9326065 -0.58038927 14.529876 1.6677093
|
||||
5000 0.41845028 0.62704774 -4.8392822 -1894.6664 30.624319 4.6370699 8.7827304 -1.8904542 -0.31998377 13.670423 1.5249748
|
||||
6000 0.22409652 0.33580864 -3.7653422 -2666.4156 50.804071 7.220865 8.25496 -2.6629861 -0.017448126 14.48017 2.3883779
|
||||
7000 0.094832866 0.14210705 -4.5432169 -2337.0271 35.853414 3.4750842 8.4475655 -2.332626 -0.052659776 12.95347 1.8841809
|
||||
8000 0.043338745 0.06494311 -4.6249403 -1687.4892 39.679004 6.7256868 8.4321684 -1.6829292 0.070571417 13.554654 1.9927395
|
||||
9000 0.018233343 0.027322664 -4.425909 -1916.4941 41.680023 5.9079935 8.3470382 -1.9120955 0.090887676 13.502397 2.1013348
|
||||
10000 0.0082616415 0.01238007 -4.6221264 -1723.6542 39.842157 6.5678795 8.41093 -1.7190444 0.099616538 13.484322 2.0113699
|
||||
Loop time of 15.2001 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 56841.813 tau/day, 657.891 timesteps/s
|
||||
99.8% 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.69 | 11.69 | 11.69 | 0.0 | 76.91
|
||||
Neigh | 0.34087 | 0.34087 | 0.34087 | 0.0 | 2.24
|
||||
Comm | 0.41211 | 0.41211 | 0.41211 | 0.0 | 2.71
|
||||
Output | 0.001153 | 0.001153 | 0.001153 | 0.0 | 0.01
|
||||
Modify | 2.6404 | 2.6404 | 2.6404 | 0.0 | 17.37
|
||||
Other | | 0.1158 | | | 0.76
|
||||
|
||||
Nlocal: 1000.00 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1886.00 ave 1886 max 1886 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 20874.0 ave 20874 max 20874 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 20874
|
||||
Ave neighs/atom = 20.874000
|
||||
Neighbor list builds = 188
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #2
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term on
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (with drag)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.124 | 3.124 | 3.124 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014381062 -0.00023971829 9.8684199 0 -0.004855267 2.3814248 0.0041108563
|
||||
1000 0.0062572988 0.0093765623 -5.989087 -1670.9191 18.918118 7.5844401 9.2338165 -1.6649394 0.023419337 13.976997 0.92138738
|
||||
2000 0.0068451081 0.010257394 -5.456581 -2537.81 37.064253 15.537266 8.9496405 -2.5323637 0.10230605 16.325406 1.5455016
|
||||
3000 0.0073276099 0.010980423 -5.3663421 -2643.8751 39.907292 16.807489 8.9154852 -2.6385198 0.11818116 16.63905 1.6326832
|
||||
4000 0.0069296906 0.010384141 -5.36234 -2655.7228 40.010742 16.851482 8.9144328 -2.6503709 0.11868137 16.651571 1.6356847
|
||||
5000 0.0076142461 0.011409948 -5.3631443 -2664.4499 39.997648 16.846756 8.9145416 -2.6590982 0.1184114 16.649779 1.6353254
|
||||
6000 0.0077053831 0.011546517 -5.3628538 -2673.2444 39.991598 16.840314 8.9145803 -2.667893 0.11818361 16.648852 1.6351691
|
||||
7000 0.0077405663 0.011599239 -5.3623531 -2682.1589 40.000448 16.844009 8.9145774 -2.6768081 0.11809899 16.650669 1.6353525
|
||||
8000 0.0080673569 0.012088934 -5.3623755 -2691.0104 39.995327 16.840134 8.9146099 -2.6856601 0.11787103 16.649882 1.6352204
|
||||
9000 0.0083223083 0.012470979 -5.3622988 -2699.8929 40.00571 16.847764 8.9146503 -2.6945431 0.11781523 16.652389 1.6353987
|
||||
10000 0.0091249116 0.01367368 -5.3630138 -2708.966 39.987197 16.837314 8.9146848 -2.7036167 0.11743014 16.648832 1.6349911
|
||||
Loop time of 13.6753 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 63179.754 tau/day, 731.247 timesteps/s
|
||||
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 10.568 | 10.568 | 10.568 | 0.0 | 77.28
|
||||
Neigh | 0.019792 | 0.019792 | 0.019792 | 0.0 | 0.14
|
||||
Comm | 0.33708 | 0.33708 | 0.33708 | 0.0 | 2.46
|
||||
Output | 0.0011928 | 0.0011928 | 0.0011928 | 0.0 | 0.01
|
||||
Modify | 2.639 | 2.639 | 2.639 | 0.0 | 19.30
|
||||
Other | | 0.1101 | | | 0.81
|
||||
|
||||
Nlocal: 1000.00 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724.00 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 21000.0 ave 21000 max 21000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21.000000
|
||||
Neighbor list builds = 11
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #3
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off, Nose-Hoover chains
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (Nose-Hoover chain)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.124 | 3.124 | 3.124 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014381062 -0.00023971829 9.8684199 0 -0.004855267 2.3814248 0.0041108563
|
||||
1000 0.0083300318 0.012482553 -5.5023183 -838.99233 35.610078 14.886668 8.9677982 -0.83350249 0.093761717 16.159482 1.500112
|
||||
2000 0.020386436 0.030549075 -5.294934 -1021.4347 41.760404 17.563313 8.8960328 -1.0161703 0.1178086 16.852842 1.6868239
|
||||
3000 0.049693082 0.074465084 -5.3469418 -982.1922 39.030412 16.123502 8.9325589 -0.97691972 0.073097533 16.601991 1.6003728
|
||||
4000 0.11859524 0.17771497 -5.207074 -1299.948 40.941639 16.507821 8.9213137 -1.2949186 0.018189971 16.904165 1.6487306
|
||||
5000 0.130146 0.19502378 -5.261025 -1208.3405 39.059595 15.609328 8.9431689 -1.2032745 -0.00023811036 16.701434 1.5920334
|
||||
6000 0.13812959 0.20698719 -5.1710048 -1334.1421 40.904888 16.242199 8.9222846 -1.329178 -0.0044756362 16.90509 1.6471606
|
||||
7000 0.12107441 0.18143001 -5.2602562 -1170.0585 39.060849 15.577606 8.9397535 -1.1649797 0.005587398 16.671517 1.5949415
|
||||
8000 0.14333426 0.21478639 -5.1717109 -1352.635 40.876285 16.205871 8.9218128 -1.3476781 -0.0069373292 16.895041 1.6469877
|
||||
9000 0.12159783 0.18221435 -5.2591928 -1186.8604 39.22852 15.6778 8.9376658 -1.1817834 0.0077335044 16.68885 1.6001243
|
||||
10000 0.15321647 0.22959488 -5.188176 -1391.2245 40.666599 16.146259 8.9228489 -1.3862659 -0.0091900905 16.860718 1.6418747
|
||||
Loop time of 13.963 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 61877.846 tau/day, 716.179 timesteps/s
|
||||
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 10.667 | 10.667 | 10.667 | 0.0 | 76.40
|
||||
Neigh | 0.16763 | 0.16763 | 0.16763 | 0.0 | 1.20
|
||||
Comm | 0.36182 | 0.36182 | 0.36182 | 0.0 | 2.59
|
||||
Output | 0.0011809 | 0.0011809 | 0.0011809 | 0.0 | 0.01
|
||||
Modify | 2.6516 | 2.6516 | 2.6516 | 0.0 | 18.99
|
||||
Other | | 0.1135 | | | 0.81
|
||||
|
||||
Nlocal: 1000.00 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724.00 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 20654.0 ave 20654 max 20654 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 20654
|
||||
Ave neighs/atom = 20.654000
|
||||
Neighbor list builds = 94
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:43
|
||||
399
examples/hugoniostat/log.08Feb21.hugoniostat.g++.4
Normal file
399
examples/hugoniostat/log.08Feb21.hugoniostat.g++.4
Normal file
@ -0,0 +1,399 @@
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.4142135 2.0000000 2.0000000
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (7.0710677 9.9999999 9.9999999)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
create_atoms CPU = 0.105 seconds
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (src/min.cpp:188)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.8475372
|
||||
ghost atom cutoff = 1.8475372
|
||||
binsize = 0.92376862, bins = 8 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.211 | 4.211 | 4.211 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937536 -6.2937536 -2.7722424 -2.7722424 -2.7722424 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319014 -6.3319014 -0.75971257 -0.75971257 -0.75971257 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344253 -6.3344253 -4.303004e-13 -4.72443e-13 -4.7038971e-13 6.9780267 9.8684199 9.8684199
|
||||
Loop time of 0.38554 on 4 procs for 134 steps with 1000 atoms
|
||||
|
||||
75.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.29375358358589 -6.33442531515435 -6.33442531515435
|
||||
Force two-norm initial, final = 3395.2895 5.5617370e-10
|
||||
Force max component initial, final = 1960.2713 3.2533415e-10
|
||||
Final line search alpha, max atom move = 1.0000000 3.2533415e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.031873 | 0.042436 | 0.055233 | 4.3 | 11.01
|
||||
Neigh | 0.0004189 | 0.00049466 | 0.00058317 | 0.0 | 0.13
|
||||
Comm | 0.085755 | 0.095315 | 0.10484 | 2.7 | 24.72
|
||||
Output | 2.8372e-05 | 3.0637e-05 | 3.6955e-05 | 0.0 | 0.01
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.2473 | | | 64.13
|
||||
|
||||
Nlocal: 250.000 ave 305 max 205 min
|
||||
Histogram: 1 0 0 0 2 0 0 0 0 1
|
||||
Nghost: 829.000 ave 874 max 774 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
Neighs: 5250.00 ave 6445 max 4305 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21.000000
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Start Run #1
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.006 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (no drag)'
|
||||
|
||||
#dump id all atom 500 dump.hugoniostat
|
||||
|
||||
#dump 2 all image 500 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 5
|
||||
|
||||
#dump 3 all movie 500 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 5
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.086 | 3.086 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014347835 -0.00026463907 9.8684199 0 -0.0048552735 2.378672 0.0041061045
|
||||
1000 0.010586669 0.015864123 -2.1721826 -4183.9265 129.03333 58.456619 8.3141284 -4.1817701 0.93542364 23.507245 3.7366151
|
||||
2000 0.33213628 0.49770621 -5.5847928 -972.65689 12.097176 1.2026574 9.4616027 -0.9675698 -0.35714344 13.85823 0.59422982
|
||||
3000 0.46981589 0.70401911 -3.9208694 -3177.4622 63.005615 22.559014 8.6828715 -3.1742453 -0.16959033 18.776506 2.284245
|
||||
4000 0.5486246 0.82211396 -4.170224 -2897.9717 38.4091 4.9062274 8.6573154 -2.8946236 -0.45434723 14.506949 1.8023381
|
||||
5000 0.30607733 0.45865688 -4.73528 -1914.3534 35.002193 6.2096608 8.6658138 -1.9100768 -0.19602135 13.896788 1.714585
|
||||
6000 0.13928238 0.20871465 -4.3038564 -1672.0118 50.372856 12.190245 8.3966652 -1.6679166 0.11455965 15.089171 2.2725288
|
||||
7000 0.055325106 0.082904671 -5.2030895 -1689.3101 30.859753 6.5561993 8.6850199 -1.6841899 0.020593532 13.15254 1.5972063
|
||||
8000 0.02793065 0.041854078 -4.5281755 -966.55101 48.144696 12.229149 8.4107035 -0.96206469 0.19920754 14.821718 2.2112004
|
||||
9000 0.018182543 0.02724654 -4.9847463 -1618.778 37.347471 8.7290944 8.5607031 -1.6138205 0.10912671 13.773572 1.8458347
|
||||
10000 0.0082850143 0.012415094 -5.0129769 -1686.404 36.462176 8.3390717 8.5689886 -1.6814034 0.10655037 13.652105 1.8181142
|
||||
Loop time of 22.212 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 38897.956 tau/day, 450.208 timesteps/s
|
||||
76.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 | 3.4702 | 3.5904 | 3.684 | 4.4 | 16.16
|
||||
Neigh | 0.1001 | 0.10727 | 0.11784 | 2.0 | 0.48
|
||||
Comm | 5.1418 | 5.2862 | 5.3573 | 3.7 | 23.80
|
||||
Output | 0.083086 | 0.095493 | 0.11021 | 4.0 | 0.43
|
||||
Modify | 11.789 | 11.841 | 11.967 | 2.1 | 53.31
|
||||
Other | | 1.292 | | | 5.82
|
||||
|
||||
Nlocal: 250.000 ave 260 max 240 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 927.500 ave 934 max 921 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 5049.00 ave 5203 max 4889 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 20196
|
||||
Ave neighs/atom = 20.196000
|
||||
Neighbor list builds = 175
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #2
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term on
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (with drag)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.086 | 3.086 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014347835 -0.00026463907 9.8684199 0 -0.0048552735 2.378672 0.0041061045
|
||||
1000 0.0063089135 0.0094539069 -5.9892322 -1671.0142 18.914957 7.5823225 9.2337797 -1.6650344 0.02342632 13.975435 0.92133641
|
||||
2000 0.006881368 0.01031173 -5.4566762 -2537.9852 37.064191 15.537213 8.9495783 -2.5325389 0.1023455 16.32485 1.5455517
|
||||
3000 0.0072427308 0.010853232 -5.3662814 -2644.0227 39.906002 16.80569 8.9154322 -2.6386673 0.1182133 16.638326 1.6327015
|
||||
4000 0.0070936511 0.010629836 -5.362616 -2655.9513 40.007995 16.850321 8.9143648 -2.6505993 0.11869211 16.650416 1.6356858
|
||||
5000 0.0074091959 0.01110268 -5.3628939 -2664.5927 39.998199 16.845204 8.9144816 -2.6592409 0.11846407 16.649379 1.6353872
|
||||
6000 0.0077388568 0.011596677 -5.362926 -2673.502 39.995216 16.842807 8.9145056 -2.6681507 0.11826568 16.648964 1.635306
|
||||
7000 0.0076023299 0.011392091 -5.3621079 -2682.3942 39.998343 16.839762 8.9144789 -2.6770435 0.1181081 16.649386 1.6353924
|
||||
8000 0.0076916892 0.011525996 -5.3617056 -2691.2334 40.000701 16.839078 8.9144843 -2.6858832 0.11795298 16.649924 1.635436
|
||||
9000 0.0082153298 0.012310672 -5.3620895 -2700.1796 40.006134 16.845865 8.914544 -2.6948298 0.11785245 16.651566 1.6354968
|
||||
10000 0.0088368733 0.013242055 -5.3625353 -2709.138 39.989575 16.835079 8.914577 -2.7037887 0.11749055 16.648403 1.6351305
|
||||
Loop time of 19.325 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 44708.822 tau/day, 517.463 timesteps/s
|
||||
77.5% 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.3012 | 3.4003 | 3.584 | 5.9 | 17.60
|
||||
Neigh | 0.0047636 | 0.0054044 | 0.0072584 | 1.5 | 0.03
|
||||
Comm | 4.5282 | 4.5961 | 4.651 | 2.1 | 23.78
|
||||
Output | 0.00071692 | 0.0062424 | 0.0086811 | 4.1 | 0.03
|
||||
Modify | 10.133 | 10.215 | 10.287 | 1.7 | 52.86
|
||||
Other | | 1.102 | | | 5.70
|
||||
|
||||
Nlocal: 250.000 ave 258 max 239 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 1 1
|
||||
Nghost: 829.000 ave 840 max 821 min
|
||||
Histogram: 1 1 0 0 0 1 0 0 0 1
|
||||
Neighs: 5250.00 ave 5360 max 5090 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21.000000
|
||||
Neighbor list builds = 10
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #3
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.046520549 0.065789991 0.065789991) to (7.0245472 9.9342099 9.9342099)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off, Nose-Hoover chains
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair econserve pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (Nose-Hoover chain)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7475372
|
||||
ghost atom cutoff = 1.7475372
|
||||
binsize = 0.87376862, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.086 | 3.086 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair Econserve Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344253 -6.3194403 0.014347835 -0.00026463907 9.8684199 0 -0.0048552735 2.378672 0.0041061045
|
||||
1000 0.0078345757 0.011740112 -5.5017136 -838.78091 35.616593 14.888102 8.9677603 -0.83329094 0.093891841 16.160627 1.5002802
|
||||
2000 0.019260442 0.028861773 -5.2936038 -1018.9574 41.771461 17.563025 8.8958988 -1.0136927 0.11811776 16.853931 1.6871615
|
||||
3000 0.04811126 0.072094723 -5.3454068 -976.69826 39.061528 16.137201 8.9322605 -0.97142494 0.073850795 16.606008 1.6012612
|
||||
4000 0.11854637 0.17764173 -5.2071392 -1296.5766 40.843143 16.426195 8.9202981 -1.2915471 0.017621672 16.874934 1.6476132
|
||||
5000 0.13634185 0.20430827 -5.2645154 -1258.4101 39.098283 15.627986 8.9407719 -1.2533499 -0.00067591716 16.688492 1.5948462
|
||||
6000 0.14222512 0.21312434 -5.1774698 -1369.5986 40.888661 16.260803 8.9214848 -1.3646342 -0.0041700902 16.894723 1.6475174
|
||||
7000 0.12683772 0.19006633 -5.2679854 -1210.973 39.084165 15.633846 8.9393379 -1.2058951 0.00572464 16.672829 1.595768
|
||||
8000 0.14531337 0.21775209 -5.1737911 -1372.667 40.861256 16.19118 8.9199953 -1.367711 -0.0065459838 16.876028 1.648237
|
||||
9000 0.12123505 0.18167072 -5.2546764 -1189.0875 39.276006 15.677923 8.9363537 -1.1840145 0.0075170176 16.687402 1.6022003
|
||||
10000 0.1477113 0.22134539 -5.1833959 -1353.4057 40.578404 16.080238 8.9245614 -1.3484436 -0.0098061873 16.857426 1.6386338
|
||||
Loop time of 18.9651 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 45557.373 tau/day, 527.284 timesteps/s
|
||||
77.1% 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.1152 | 3.3473 | 3.5591 | 10.0 | 17.65
|
||||
Neigh | 0.045731 | 0.056706 | 0.066921 | 3.7 | 0.30
|
||||
Comm | 3.9563 | 4.1638 | 4.4413 | 9.7 | 21.96
|
||||
Output | 0.00067329 | 0.0033167 | 0.011241 | 7.9 | 0.02
|
||||
Modify | 10.321 | 10.425 | 10.482 | 2.0 | 54.97
|
||||
Other | | 0.9693 | | | 5.11
|
||||
|
||||
Nlocal: 250.000 ave 257 max 244 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Nghost: 832.250 ave 840 max 822 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
Neighs: 5144.25 ave 5282 max 4949 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
|
||||
Total # of neighbors = 20577
|
||||
Ave neighs/atom = 20.577000
|
||||
Neighbor list builds = 95
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:01:01
|
||||
@ -1,401 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.41421 2 2
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0 0 0) to (7.07107 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
Time spent = 0.000465155 secs
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (src/min.cpp:168)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769, bins = 8 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.247 | 4.247 | 4.247 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937539 -6.2937539 -2.7722431 -2.7722431 -2.7722431 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319018 -6.3319018 -0.75971321 -0.75971321 -0.75971321 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344257 -6.3344257 -4.5005818e-13 -4.9677973e-13 -4.9219424e-13 6.9780266 9.8684199 9.8684199
|
||||
Loop time of 0.0724094 on 1 procs for 134 steps with 1000 atoms
|
||||
|
||||
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.2937539309 -6.33442568056 -6.33442568056
|
||||
Force two-norm initial, final = 3395.29 5.83329e-10
|
||||
Force max component initial, final = 1960.27 3.42093e-10
|
||||
Final line search alpha, max atom move = 1 3.42093e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.054599 | 0.054599 | 0.054599 | 0.0 | 75.40
|
||||
Neigh | 0.0011106 | 0.0011106 | 0.0011106 | 0.0 | 1.53
|
||||
Comm | 0.002012 | 0.002012 | 0.002012 | 0.0 | 2.78
|
||||
Output | 1.955e-05 | 1.955e-05 | 1.955e-05 | 0.0 | 0.03
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.01467 | | | 20.26
|
||||
|
||||
Nlocal: 1000 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 21000 ave 21000 max 21000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
|
||||
# Start Run #1
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (no drag)'
|
||||
|
||||
#dump id all atom 500 dump.hugoniostat
|
||||
|
||||
#dump 2 all image 500 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 5
|
||||
|
||||
#dump 3 all movie 500 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 5
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.771 | 2.771 | 2.771 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014381062 -0.0002397183 9.8684199 0 -0.0048551451 2.3814196 0.0041108654
|
||||
1000 0.0093381489 0.013993216 -2.170443 -6.3381216 129.15286 58.544417 8.3142516 -4.1816719 0.93744258 23.519053 3.7381989
|
||||
2000 0.24794909 0.37155171 -5.8915802 -6.0429087 8.3850692 1.3744507 9.5938765 -0.5228803 -0.2435043 13.910468 0.4103393
|
||||
3000 0.38920701 0.5832267 -3.768677 -6.6246124 72.742761 28.486747 8.623805 -3.439162 0.003825459 19.697379 2.5139668
|
||||
4000 0.67009971 1.0041444 -4.2080644 -6.1365367 35.596179 3.9344133 8.7508422 -2.9326167 -0.58039603 14.529822 1.6677129
|
||||
5000 0.41848975 0.62710689 -4.8393088 -6.1026724 30.626544 4.6387208 8.7827245 -1.8904705 -0.31996439 13.670884 1.5250343
|
||||
6000 0.22410139 0.33581594 -3.7652941 -6.0923259 50.807437 7.2229456 8.2549488 -2.6628477 -0.017396966 14.4806 2.3884652
|
||||
7000 0.095001485 0.14235972 -4.5436753 -6.7307217 35.8743 3.4938089 8.4476287 -2.3294061 -0.052272192 12.957528 1.8846881
|
||||
8000 0.043277437 0.064851239 -4.6264096 -6.2447456 39.658659 6.7266325 8.4327483 -1.6831873 0.070488482 13.553882 1.9918311
|
||||
9000 0.018271956 0.027380526 -4.4239627 -6.3085661 41.708324 5.9081923 8.3463321 -1.9119839 0.091057512 13.503882 2.1025305
|
||||
10000 0.0082840001 0.012413574 -4.622252 -6.3316699 39.830379 6.5596321 8.4109569 -1.7218314 0.099435465 13.482451 2.0110543
|
||||
Loop time of 6.20702 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 139197.321 tau/day, 1611.080 timesteps/s
|
||||
98.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 5.0198 | 5.0198 | 5.0198 | 0.0 | 80.87
|
||||
Neigh | 0.21405 | 0.21405 | 0.21405 | 0.0 | 3.45
|
||||
Comm | 0.16164 | 0.16164 | 0.16164 | 0.0 | 2.60
|
||||
Output | 0.00053501 | 0.00053501 | 0.00053501 | 0.0 | 0.01
|
||||
Modify | 0.7419 | 0.7419 | 0.7419 | 0.0 | 11.95
|
||||
Other | | 0.06911 | | | 1.11
|
||||
|
||||
Nlocal: 1000 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1886 ave 1886 max 1886 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 20874 ave 20874 max 20874 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 20874
|
||||
Ave neighs/atom = 20.874
|
||||
Neighbor list builds = 188
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #2
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term on
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (with drag)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.771 | 2.771 | 2.771 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014381062 -0.0002397183 9.8684199 0 -0.0048551451 2.3814196 0.0041108654
|
||||
1000 0.0062572991 0.0093765627 -5.9890874 -7.64465 18.918117 7.5844397 9.2338165 -1.6649392 0.02341947 13.976996 0.92138738
|
||||
2000 0.006845108 0.010257394 -5.4565813 -7.9786876 37.064254 15.537266 8.9496404 -2.5323637 0.1023062 16.325405 1.5455017
|
||||
3000 0.0073276109 0.010980425 -5.3663425 -7.9938818 39.907292 16.807488 8.9154852 -2.6385197 0.11818131 16.639049 1.6326833
|
||||
4000 0.0069296915 0.010384143 -5.3623404 -8.0023271 40.010741 16.851482 8.9144328 -2.6503708 0.11868152 16.651571 1.6356847
|
||||
5000 0.0076142476 0.01140995 -5.3631447 -8.0108329 39.997648 16.846756 8.9145416 -2.6590981 0.11841154 16.649778 1.6353255
|
||||
6000 0.0077053839 0.011546518 -5.3628542 -8.0192007 39.991597 16.840313 8.9145803 -2.6678931 0.11818376 16.648851 1.6351691
|
||||
7000 0.0077405662 0.011599239 -5.3623534 -8.0275624 40.000448 16.844008 8.9145774 -2.6768081 0.11809914 16.650669 1.6353525
|
||||
8000 0.008067359 0.012088937 -5.3623759 -8.0359471 39.995327 16.840134 8.9146099 -2.6856601 0.11787118 16.649881 1.6352204
|
||||
9000 0.0083223114 0.012470984 -5.3622992 -8.0443714 40.00571 16.847763 8.9146503 -2.6945431 0.11781538 16.652389 1.6353987
|
||||
10000 0.0091249143 0.013673684 -5.3630142 -8.0529573 39.987196 16.837314 8.9146848 -2.7036168 0.11743028 16.648831 1.6349911
|
||||
Loop time of 5.48047 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 157650.687 tau/day, 1824.661 timesteps/s
|
||||
98.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 4.5166 | 4.5166 | 4.5166 | 0.0 | 82.41
|
||||
Neigh | 0.012162 | 0.012162 | 0.012162 | 0.0 | 0.22
|
||||
Comm | 0.14168 | 0.14168 | 0.14168 | 0.0 | 2.59
|
||||
Output | 0.00053787 | 0.00053787 | 0.00053787 | 0.0 | 0.01
|
||||
Modify | 0.74394 | 0.74394 | 0.74394 | 0.0 | 13.57
|
||||
Other | | 0.06553 | | | 1.20
|
||||
|
||||
Nlocal: 1000 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 21000 ave 21000 max 21000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 11
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #3
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off, Nose-Hoover chains
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (Nose-Hoover chain)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.771 | 2.771 | 2.771 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014381062 -0.0002397183 9.8684199 0 -0.0048551451 2.3814196 0.0041108654
|
||||
1000 0.0083300394 0.012482564 -5.5023188 -6.3233387 35.610076 14.886667 8.9677982 -0.83350251 0.093761848 16.159481 1.500112
|
||||
2000 0.020386462 0.030549113 -5.2949349 -6.2805556 41.760388 17.563305 8.896033 -1.0161699 0.11780863 16.85284 1.6868235
|
||||
3000 0.049693152 0.074465188 -5.3469434 -6.2493961 39.030372 16.123483 8.9325594 -0.9769179 0.073097387 16.601986 1.6003716
|
||||
4000 0.11859514 0.17771482 -5.207077 -6.3242752 40.941558 16.507785 8.9213147 -1.2949131 0.018189678 16.904156 1.6487282
|
||||
5000 0.13014573 0.19502337 -5.2610248 -6.269279 39.059628 15.609345 8.9431685 -1.2032776 -0.00023747376 16.701437 1.5920344
|
||||
6000 0.1381307 0.20698886 -5.171005 -6.2931942 40.904837 16.242165 8.9222854 -1.3291781 -0.0044770368 16.905086 1.6471589
|
||||
7000 0.12107326 0.18142828 -5.2602554 -6.2438099 39.060928 15.57765 8.9397525 -1.1649827 0.0055890257 16.671524 1.594944
|
||||
8000 0.14333636 0.21478954 -5.1717123 -6.304602 40.876188 16.205815 8.9218142 -1.3476793 -0.0069396327 16.895033 1.6469846
|
||||
9000 0.12159663 0.18221255 -5.2591911 -6.2587685 39.228648 15.677869 8.9376641 -1.18179 0.0077357066 16.688862 1.6001283
|
||||
10000 0.15321883 0.22959841 -5.1881787 -6.3448453 40.666451 16.146177 8.922851 -1.386265 -0.0091929687 16.860705 1.6418699
|
||||
Loop time of 5.6426 on 1 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 153120.907 tau/day, 1772.233 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 | 4.5653 | 4.5653 | 4.5653 | 0.0 | 80.91
|
||||
Neigh | 0.10885 | 0.10885 | 0.10885 | 0.0 | 1.93
|
||||
Comm | 0.14695 | 0.14695 | 0.14695 | 0.0 | 2.60
|
||||
Output | 0.00055218 | 0.00055218 | 0.00055218 | 0.0 | 0.01
|
||||
Modify | 0.75364 | 0.75364 | 0.75364 | 0.0 | 13.36
|
||||
Other | | 0.0673 | | | 1.19
|
||||
|
||||
Nlocal: 1000 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 20654 ave 20654 max 20654 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 20654
|
||||
Ave neighs/atom = 20.654
|
||||
Neighbor list builds = 94
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:17
|
||||
@ -1,401 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.41421 2 2
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0 0 0) to (7.07107 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
Time spent = 0.0003438 secs
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (src/min.cpp:168)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769, bins = 8 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.211 | 4.211 | 4.211 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937539 -6.2937539 -2.7722431 -2.7722431 -2.7722431 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319018 -6.3319018 -0.75971321 -0.75971321 -0.75971321 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344257 -6.3344257 -4.5046204e-13 -4.92206e-13 -4.9610344e-13 6.9780266 9.8684199 9.8684199
|
||||
Loop time of 0.0269771 on 4 procs for 134 steps with 1000 atoms
|
||||
|
||||
94.3% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.2937539309 -6.33442568056 -6.33442568056
|
||||
Force two-norm initial, final = 3395.29 5.80609e-10
|
||||
Force max component initial, final = 1960.27 3.41627e-10
|
||||
Final line search alpha, max atom move = 1 3.41627e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.011534 | 0.013897 | 0.016008 | 1.3 | 51.51
|
||||
Neigh | 0.00024176 | 0.00029498 | 0.00035191 | 0.0 | 1.09
|
||||
Comm | 0.0029764 | 0.0050126 | 0.0073018 | 2.2 | 18.58
|
||||
Output | 1.8835e-05 | 1.9968e-05 | 2.2888e-05 | 0.0 | 0.07
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.007753 | | | 28.74
|
||||
|
||||
Nlocal: 250 ave 305 max 205 min
|
||||
Histogram: 1 0 0 0 2 0 0 0 0 1
|
||||
Nghost: 829 ave 874 max 774 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
Neighs: 5250 ave 6445 max 4305 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
|
||||
# Start Run #1
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 10.0 z 40.0 40.0 70.0 drag 0.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (no drag)'
|
||||
|
||||
#dump id all atom 500 dump.hugoniostat
|
||||
|
||||
#dump 2 all image 500 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 5
|
||||
|
||||
#dump 3 all movie 500 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 5
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.717 | 2.809 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014347835 -0.00026463907 9.8684199 0 -0.0048551516 2.3786668 0.0041061135
|
||||
1000 0.010586668 0.015864122 -2.1721826 -6.3380886 129.03334 58.456626 8.3141284 -4.1817701 0.93542408 23.507246 3.7366154
|
||||
2000 0.3321368 0.49770699 -5.584787 -6.0546694 12.097343 1.2026972 9.4615963 -0.96758935 -0.3571439 13.858218 0.5942385
|
||||
3000 0.46981685 0.70402055 -3.9208474 -6.3911005 63.005989 22.559106 8.6828663 -3.1742737 -0.16958917 18.776521 2.2842567
|
||||
4000 0.54866493 0.82217439 -4.1703408 -6.2427645 38.408608 4.9066022 8.6573289 -2.894598 -0.45434132 14.506935 1.8023166
|
||||
5000 0.30625495 0.45892304 -4.7355785 -6.186448 35.000599 6.2097986 8.6658098 -1.9097925 -0.19603125 13.896448 1.7145489
|
||||
6000 0.13938196 0.20886386 -4.303964 -5.7629121 50.370681 12.189231 8.3966581 -1.6678119 0.11451271 15.088809 2.2724852
|
||||
7000 0.055349516 0.082941249 -5.2031342 -6.8043199 30.859256 6.5562297 8.6850282 -1.684127 0.020586458 13.152479 1.5971879
|
||||
8000 0.027926794 0.0418483 -4.5281656 -5.4484008 48.145681 12.229919 8.4107051 -0.96208352 0.19922201 14.821877 2.2112219
|
||||
9000 0.018195086 0.027265336 -4.9847444 -6.5712684 37.347655 8.7291385 8.5606968 -1.6137894 0.10912534 13.773573 1.8458438
|
||||
10000 0.0082893467 0.012421586 -5.0130076 -6.6821423 36.46118 8.3386716 8.5689995 -1.6815563 0.1065388 13.651975 1.8180818
|
||||
Loop time of 2.01177 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 429472.539 tau/day, 4970.747 timesteps/s
|
||||
98.1% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.2437 | 1.2651 | 1.2843 | 1.7 | 62.89
|
||||
Neigh | 0.051696 | 0.052503 | 0.053247 | 0.3 | 2.61
|
||||
Comm | 0.24826 | 0.26724 | 0.28867 | 3.5 | 13.28
|
||||
Output | 0.00058603 | 0.00085759 | 0.0016623 | 0.0 | 0.04
|
||||
Modify | 0.37363 | 0.37671 | 0.38189 | 0.5 | 18.73
|
||||
Other | | 0.04935 | | | 2.45
|
||||
|
||||
Nlocal: 250 ave 260 max 240 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 927.5 ave 934 max 921 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 5048.5 ave 5203 max 4889 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
|
||||
Total # of neighbors = 20194
|
||||
Ave neighs/atom = 20.194
|
||||
Neighbor list builds = 175
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #2
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term on
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0 drag 200.0 tchain 1 pchain 0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (with drag)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.717 | 2.809 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014347835 -0.00026463907 9.8684199 0 -0.0048551516 2.3786668 0.0041061135
|
||||
1000 0.0063089138 0.0094539073 -5.9892326 -7.6448129 18.914956 7.5823222 9.2337797 -1.6650342 0.023426454 13.975434 0.92133642
|
||||
2000 0.0068813683 0.01031173 -5.4566765 -7.9789037 37.064192 15.537213 8.9495783 -2.5325388 0.10234565 16.32485 1.5455517
|
||||
3000 0.0072427316 0.010853233 -5.3662818 -7.9940958 39.906002 16.80569 8.9154322 -2.6386672 0.11821344 16.638326 1.6327015
|
||||
4000 0.0070936522 0.010629838 -5.3626164 -8.0025859 40.007994 16.850321 8.9143648 -2.6505993 0.11869226 16.650416 1.6356859
|
||||
5000 0.0074091958 0.01110268 -5.3628943 -8.0110325 39.998199 16.845204 8.9144816 -2.6592409 0.11846422 16.649379 1.6353872
|
||||
6000 0.0077388573 0.011596678 -5.3629264 -8.0194804 39.995216 16.842807 8.9145056 -2.6681507 0.11826582 16.648964 1.635306
|
||||
7000 0.0076023298 0.011392091 -5.3621083 -8.0277598 39.998343 16.839762 8.9144789 -2.6770435 0.11810824 16.649386 1.6353924
|
||||
8000 0.007691692 0.011526001 -5.361706 -8.0360632 40.000701 16.839078 8.9144843 -2.6858833 0.11795313 16.649923 1.6354361
|
||||
9000 0.0082153298 0.012310672 -5.3620899 -8.0446091 40.006134 16.845865 8.914544 -2.6948299 0.11785259 16.651566 1.6354969
|
||||
10000 0.0088368792 0.013242063 -5.3625357 -8.0530825 39.989575 16.835079 8.914577 -2.7037888 0.1174907 16.648402 1.6351306
|
||||
Loop time of 1.80214 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 479429.980 tau/day, 5548.958 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 | 1.1353 | 1.1591 | 1.1787 | 1.5 | 64.32
|
||||
Neigh | 0.0028975 | 0.0029137 | 0.0029218 | 0.0 | 0.16
|
||||
Comm | 0.20882 | 0.22752 | 0.25213 | 3.4 | 12.62
|
||||
Output | 0.00058103 | 0.0007953 | 0.0014329 | 0.0 | 0.04
|
||||
Modify | 0.36598 | 0.36908 | 0.37078 | 0.3 | 20.48
|
||||
Other | | 0.04277 | | | 2.37
|
||||
|
||||
Nlocal: 250 ave 258 max 239 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 1 1
|
||||
Nghost: 829 ave 840 max 821 min
|
||||
Histogram: 1 1 0 0 0 1 0 0 0 1
|
||||
Neighs: 5250 ave 5360 max 5090 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 10
|
||||
Dangerous builds = 0
|
||||
|
||||
# Start Run #3
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0465206 0.06579 0.06579) to (7.02455 9.93421 9.93421)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
restoring pair style lj/cubic from restart
|
||||
1000 atoms
|
||||
|
||||
neighbor 0.2 bin
|
||||
neigh_modify every 1 delay 0 check yes
|
||||
timestep 0.001
|
||||
reset_timestep 0
|
||||
|
||||
# Pzz = 40.0, drag/damping term off, Nose-Hoover chains
|
||||
|
||||
fix myhug all nphug temp 1.0 1.0 1.0 z 40.0 40.0 70.0
|
||||
|
||||
# Specify reference state from paper, times 1000 atoms
|
||||
|
||||
fix_modify myhug e0 -6334.0 p0 0.0 v0 680.73519
|
||||
|
||||
# Add fix energy to output etotal
|
||||
|
||||
fix_modify myhug energy yes
|
||||
|
||||
# Define output
|
||||
|
||||
variable dele equal f_myhug[1] # energy delta [temperature]
|
||||
variable us equal f_myhug[2] # shock velocity [distance/time]
|
||||
variable up equal f_myhug[3] # particle velocity [distance/time]
|
||||
variable pzz equal pzz # axial stress
|
||||
variable tau equal 0.5*(pzz-0.5*(pxx+pyy)) # shear stress
|
||||
variable time equal dt*step
|
||||
|
||||
thermo 1000
|
||||
thermo_style custom step temp ke epair etotal pzz v_tau lz f_myhug v_dele v_us v_up
|
||||
|
||||
fix stress all print 10 "${time} ${pzz} ${tau} " screen no append stress_vs_t.dat title '#time pzz tau (Nose-Hoover chain)'
|
||||
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.74754
|
||||
ghost atom cutoff = 1.74754
|
||||
binsize = 0.873769, bins = 8 12 12
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cubic, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.717 | 2.809 | 3.086 Mbytes
|
||||
Step Temp KinEng E_pair TotEng Pzz v_tau Lz f_myhug v_dele v_us v_up
|
||||
0 0.01 0.014985 -6.3344257 -6.3194407 0.014347835 -0.00026463907 9.8684199 0 -0.0048551516 2.3786668 0.0041061135
|
||||
1000 0.0078345827 0.011740122 -5.501714 -6.3232649 35.616592 14.888101 8.9677603 -0.833291 0.093891974 16.160626 1.5002802
|
||||
2000 0.019260469 0.028861813 -5.2936047 -6.2784351 41.771445 17.563018 8.895899 -1.0136922 0.11811779 16.853929 1.687161
|
||||
3000 0.048111305 0.072094791 -5.3454082 -6.2447367 39.061491 16.137184 8.932261 -0.97142325 0.073850675 16.606004 1.6012602
|
||||
4000 0.11854629 0.17764161 -5.2071426 -6.3210422 40.843054 16.426156 8.9202992 -1.2915412 0.017621345 16.874925 1.6476105
|
||||
5000 0.13634167 0.204308 -5.2645153 -6.3135608 39.098316 15.628006 8.9407716 -1.2533534 -0.00067532215 16.688495 1.5948471
|
||||
6000 0.14222646 0.21312635 -5.1774703 -6.3289809 40.888616 16.260775 8.9214855 -1.3646369 -0.0041713956 16.89472 1.6475159
|
||||
7000 0.12683662 0.19006468 -5.2679846 -6.2838171 39.084233 15.633883 8.939337 -1.2058972 0.0057260888 16.672835 1.5957701
|
||||
8000 0.14531516 0.21775476 -5.1737923 -6.3237483 40.861161 16.191124 8.9199968 -1.3677107 -0.0065481979 16.876021 1.6482339
|
||||
9000 0.12123357 0.18166851 -5.2546748 -6.2570254 39.276123 15.677988 8.9363522 -1.1840191 0.0075191856 16.687414 1.6022039
|
||||
10000 0.14771416 0.22134967 -5.1833988 -6.3104954 40.578265 16.080163 8.9245634 -1.3484463 -0.0098090911 16.857414 1.6386293
|
||||
Loop time of 1.8702 on 4 procs for 10000 steps with 1000 atoms
|
||||
|
||||
Performance: 461983.152 tau/day, 5347.027 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 | 1.1723 | 1.1812 | 1.1956 | 0.9 | 63.16
|
||||
Neigh | 0.028221 | 0.030409 | 0.035555 | 1.7 | 1.63
|
||||
Comm | 0.22963 | 0.24139 | 0.25155 | 1.6 | 12.91
|
||||
Output | 0.00055218 | 0.00077897 | 0.0014515 | 0.0 | 0.04
|
||||
Modify | 0.37165 | 0.37241 | 0.3732 | 0.1 | 19.91
|
||||
Other | | 0.04404 | | | 2.35
|
||||
|
||||
Nlocal: 250 ave 257 max 244 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Nghost: 832.25 ave 840 max 822 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
Neighs: 5144.25 ave 5282 max 4949 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
|
||||
Total # of neighbors = 20577
|
||||
Ave neighs/atom = 20.577
|
||||
Neighbor list builds = 95
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:05
|
||||
@ -1,110 +0,0 @@
|
||||
LAMMPS (5 Oct 2016)
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.41421 2 2
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0 0 0) to (7.07107 10 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Resetting reneighboring criteria during minimization (../min.cpp:168)
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769 -> bins = 8 11 11
|
||||
Memory usage per processor = 3.65406 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937539 -6.2937539 -2.7722431 -2.7722431 -2.7722431 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319018 -6.3319018 -0.75971321 -0.75971321 -0.75971321 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344257 -6.3344257 -4.5005818e-13 -4.9677973e-13 -4.9219424e-13 6.9780266 9.8684199 9.8684199
|
||||
Loop time of 0.0817621 on 1 procs for 134 steps with 1000 atoms
|
||||
|
||||
100.3% CPU use with 1 MPI tasks x no OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.2937539309 -6.33442568056 -6.33442568056
|
||||
Force two-norm initial, final = 3395.29 5.83329e-10
|
||||
Force max component initial, final = 1960.27 3.42093e-10
|
||||
Final line search alpha, max atom move = 1 3.42093e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.066955 | 0.066955 | 0.066955 | 0.0 | 81.89
|
||||
Neigh | 0.001004 | 0.001004 | 0.001004 | 0.0 | 1.23
|
||||
Comm | 0.0014298 | 0.0014298 | 0.0014298 | 0.0 | 1.75
|
||||
Output | 1.5974e-05 | 1.5974e-05 | 1.5974e-05 | 0.0 | 0.02
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.01236 | | | 15.11
|
||||
|
||||
Nlocal: 1000 ave 1000 max 1000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1724 ave 1724 max 1724 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 21000 ave 21000 max 21000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769 -> bins = 8 11 11
|
||||
|
||||
# Start Run #1
|
||||
|
||||
log log.nodrag
|
||||
@ -1,110 +0,0 @@
|
||||
LAMMPS (5 Oct 2016)
|
||||
# This script reproduces stress trajectories from Fig. 1 in
|
||||
# Ravelo, Holian, Germann, and Lomdahl, PRB 70 014103 (2004)
|
||||
#
|
||||
# Three thermostatting scenarios are visited: undamped (nodrag),
|
||||
# damped (drag) and Nose-Hoover chain (nhchains).
|
||||
#
|
||||
# The axial and shear stress trajectories are printed to the
|
||||
# file "stress_vs_t.dat". For the damped case, the original figure
|
||||
# seems to be a plot of 2*tau, rather than tau.
|
||||
#
|
||||
# The script also demonstrates how to
|
||||
# orient a crystal along <110>,
|
||||
# and how to use the lj/cubic pair style.
|
||||
|
||||
units lj
|
||||
boundary p p p
|
||||
|
||||
atom_style atomic
|
||||
|
||||
# Set up FCC lattice with z axis along <110>
|
||||
|
||||
lattice fcc 1.4142136 orient x 0 0 1 orient y 1 -1 0 orient z 1 1 0
|
||||
Lattice spacing in x,y,z = 1.41421 2 2
|
||||
|
||||
region mycell block 0.0 5.0 0.0 5.0 0.0 5.0 units lattice
|
||||
create_box 1 mycell
|
||||
Created orthogonal box = (0 0 0) to (7.07107 10 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
mass * 1.0
|
||||
create_atoms 1 box
|
||||
Created 1000 atoms
|
||||
|
||||
# Using units of Rmin, so sigma = 2^-1/6 = 0.8908987
|
||||
|
||||
pair_style lj/cubic
|
||||
pair_coeff * * 1.0 0.8908987
|
||||
|
||||
# Relax box dimensions
|
||||
|
||||
fix 3 all box/relax aniso 0.0 vmax 1.0e-4 nreset 100
|
||||
|
||||
thermo 100
|
||||
thermo_style custom step temp pe etotal pxx pyy pzz lx ly lz
|
||||
|
||||
min_modify line quadratic
|
||||
minimize 0.0 1.0e-6 10000 100000
|
||||
WARNING: Resetting reneighboring criteria during minimization (../min.cpp:168)
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769 -> bins = 8 11 11
|
||||
Memory usage per processor = 3.63062 Mbytes
|
||||
Step Temp PotEng TotEng Pxx Pyy Pzz Lx Ly Lz
|
||||
0 0 -6.2937539 -6.2937539 -2.7722431 -2.7722431 -2.7722431 7.0710677 9.9999999 9.9999999
|
||||
100 0 -6.3319018 -6.3319018 -0.75971321 -0.75971321 -0.75971321 7.0003571 9.8999999 9.8999999
|
||||
134 0 -6.3344257 -6.3344257 -4.5046204e-13 -4.92206e-13 -4.9610344e-13 6.9780266 9.8684199 9.8684199
|
||||
Loop time of 0.0299768 on 4 procs for 134 steps with 1000 atoms
|
||||
|
||||
98.4% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = force tolerance
|
||||
Energy initial, next-to-last, final =
|
||||
-6.2937539309 -6.33442568056 -6.33442568056
|
||||
Force two-norm initial, final = 3395.29 5.80609e-10
|
||||
Force max component initial, final = 1960.27 3.41627e-10
|
||||
Final line search alpha, max atom move = 1 3.41627e-10
|
||||
Iterations, force evaluations = 134 137
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.01485 | 0.017638 | 0.020133 | 1.4 | 58.84
|
||||
Neigh | 0.00022697 | 0.00027376 | 0.00033092 | 0.2 | 0.91
|
||||
Comm | 0.0026414 | 0.0050641 | 0.0078235 | 2.6 | 16.89
|
||||
Output | 1.502e-05 | 1.6749e-05 | 2.0027e-05 | 0.0 | 0.06
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 0.006985 | | | 23.30
|
||||
|
||||
Nlocal: 250 ave 305 max 205 min
|
||||
Histogram: 1 0 0 0 2 0 0 0 0 1
|
||||
Nghost: 829 ave 874 max 774 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
Neighs: 5250 ave 6445 max 4305 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 21000
|
||||
Ave neighs/atom = 21
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Define initial velocity
|
||||
|
||||
velocity all create 0.01 87287 mom yes rot yes dist gaussian
|
||||
write_restart restart.equil
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.84754
|
||||
ghost atom cutoff = 1.84754
|
||||
binsize = 0.923769 -> bins = 8 11 11
|
||||
|
||||
# Start Run #1
|
||||
|
||||
log log.nodrag
|
||||
@ -36,15 +36,12 @@ unfix 2
|
||||
# MSST fix
|
||||
fix msst all msst z 28.0 q 200 mu 3e2 tscale 0.01
|
||||
|
||||
# this is needed to make etotal equal the MSST conserved quantity
|
||||
fix_modify msst energy yes
|
||||
|
||||
variable dhug equal f_msst[1]
|
||||
variable dray equal f_msst[2]
|
||||
variable lgr_vel equal f_msst[3]
|
||||
variable lgr_pos equal f_msst[4]
|
||||
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz etotal &
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz econserve &
|
||||
v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
#dump id all atom 50 dump.msst
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
LAMMPS (30 Jun 2020)
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# LJ test of msst shock dynamics
|
||||
|
||||
@ -10,18 +10,18 @@ atom_style atomic
|
||||
timestep 1e-03
|
||||
|
||||
lattice fcc 5.3589
|
||||
Lattice spacing in x,y,z = 5.3589 5.3589 5.3589
|
||||
Lattice spacing in x,y,z = 5.3589000 5.3589000 5.3589000
|
||||
|
||||
## Specify the box as a given number of unit cells.
|
||||
region box1 block 0 18 0 18 0 18 units lattice
|
||||
|
||||
## Instantiate the system.
|
||||
create_box 1 box1
|
||||
Created orthogonal box = (0 0 0) to (96.4602 96.4602 96.4602)
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (96.460200 96.460200 96.460200)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 region box1
|
||||
Created 23328 atoms
|
||||
create_atoms CPU = 0.007 seconds
|
||||
create_atoms CPU = 0.012 seconds
|
||||
|
||||
mass 1 40.00
|
||||
|
||||
@ -63,30 +63,30 @@ Step Temp E_pair E_mol TotEng Press
|
||||
80 300.28534 -1056.589 0 -151.15321 8324.8812
|
||||
90 305.83368 -1073.3097 0 -151.14426 8175.2478
|
||||
100 304.06857 -1067.9843 0 -151.14112 8191.234
|
||||
Loop time of 3.62419 on 1 procs for 100 steps with 23328 atoms
|
||||
Loop time of 8.29437 on 1 procs for 100 steps with 23328 atoms
|
||||
|
||||
Performance: 4.768 ns/day, 5.034 hours/ns, 27.592 timesteps/s
|
||||
Performance: 2.083 ns/day, 11.520 hours/ns, 12.056 timesteps/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 | 3.4606 | 3.4606 | 3.4606 | 0.0 | 95.49
|
||||
Neigh | 0.065469 | 0.065469 | 0.065469 | 0.0 | 1.81
|
||||
Comm | 0.030757 | 0.030757 | 0.030757 | 0.0 | 0.85
|
||||
Output | 0.0024359 | 0.0024359 | 0.0024359 | 0.0 | 0.07
|
||||
Modify | 0.049582 | 0.049582 | 0.049582 | 0.0 | 1.37
|
||||
Other | | 0.01537 | | | 0.42
|
||||
Pair | 7.9896 | 7.9896 | 7.9896 | 0.0 | 96.33
|
||||
Neigh | 0.13503 | 0.13503 | 0.13503 | 0.0 | 1.63
|
||||
Comm | 0.053102 | 0.053102 | 0.053102 | 0.0 | 0.64
|
||||
Output | 0.0035691 | 0.0035691 | 0.0035691 | 0.0 | 0.04
|
||||
Modify | 0.091417 | 0.091417 | 0.091417 | 0.0 | 1.10
|
||||
Other | | 0.02167 | | | 0.26
|
||||
|
||||
Nlocal: 23328.0 ave 23328.0 max 23328.0 min
|
||||
Nlocal: 23328.0 ave 23328 max 23328 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 22235.0 ave 22235.0 max 22235.0 min
|
||||
Nghost: 22235.0 ave 22235 max 22235 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2183715.0 ave 2183715.0 max 2183715.0 min
|
||||
Neighs: 2.18372e+06 ave 2.18372e+06 max 2.18372e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 2183715
|
||||
Ave neighs/atom = 93.60918209876543
|
||||
Ave neighs/atom = 93.609182
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
unfix 2
|
||||
@ -102,15 +102,12 @@ MSST parameters:
|
||||
Initial volume calculated on first step
|
||||
Initial energy calculated on first step
|
||||
|
||||
# this is needed to make etotal equal the MSST conserved quantity
|
||||
fix_modify msst energy yes
|
||||
|
||||
variable dhug equal f_msst[1]
|
||||
variable dray equal f_msst[2]
|
||||
variable lgr_vel equal f_msst[3]
|
||||
variable lgr_pos equal f_msst[4]
|
||||
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
#dump id all atom 50 dump.msst
|
||||
|
||||
@ -126,42 +123,42 @@ Fix MSST p0 = 8106.7886
|
||||
Fix MSST e0 = -151.14112
|
||||
Fix MSST initial strain rate of -0.032011238 established by reducing temperature by factor of 0.01
|
||||
Per MPI rank memory allocation (min/avg/max) = 18.98 | 18.98 | 18.98 Mbytes
|
||||
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz TotEng v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
100 301.02788 907.67474 -1058.8159 96.4602 96.4602 96.4602 8242.1214 8202.9779 8095.8693 -151.14112 1.5203428 -10.919311 0 0 9.1684318
|
||||
110 297.71411 897.68288 -1048.8859 96.4602 96.4602 96.399397 8347.6253 8303.7121 8220.7572 -151.20299 1.439058 28.652258 0.017649501 -0.55980494 5.7336721
|
||||
120 295.64308 891.43821 -1042.72 96.4602 96.4602 96.340496 8431.6742 8379.2441 8331.5304 -151.28174 1.3655893 56.776734 0.034747125 -1.119263 2.3808018
|
||||
130 296.02228 892.5816 -1043.9407 96.4602 96.4602 96.283468 8456.2492 8412.6368 8392.5853 -151.35912 1.2945465 37.811981 0.05130089 -1.6783851 -0.87840575
|
||||
140 298.19024 899.11855 -1050.5482 96.4602 96.4602 96.228236 8430.5151 8415.6802 8414.2537 -151.42965 1.2243399 -18.01985 0.067333442 -2.2371818 -4.0330712
|
||||
150 300.86421 907.18122 -1058.6966 96.4602 96.4602 96.174681 8399.4697 8396.2236 8420.9004 -151.51534 1.1598278 -86.5197 0.082879112 -2.7956634 -7.0824881
|
||||
160 303.34119 914.64996 -1066.2388 96.4602 96.4602 96.122673 8388.3438 8360.5024 8428.751 -151.58881 1.0977647 -151.64553 0.097975827 -3.353839 -10.033902
|
||||
170 304.87769 919.28288 -1070.961 96.4602 96.4602 96.072088 8408.8694 8333.4337 8449.5665 -151.67812 1.044322 -201.80899 0.11265931 -3.9117174 -12.897768
|
||||
180 304.99 919.62151 -1071.3588 96.4602 96.4602 96.022824 8461.5542 8343.1436 8484.9824 -151.73733 0.99203387 -235.51793 0.12695926 -4.4693063 -15.685622
|
||||
190 305.1148 919.99782 -1071.7807 96.4602 96.4602 95.9748 8498.7562 8371.4217 8514.4473 -151.78288 0.93937416 -273.43964 0.1408996 -5.0266132 -18.403999
|
||||
200 306.45829 924.0488 -1075.8787 96.4602 96.4602 95.927931 8488.9509 8385.2408 8529.6443 -151.82991 0.88654815 -324.00777 0.15450451 -5.583645 -21.055149
|
||||
Loop time of 7.9807 on 1 procs for 100 steps with 23328 atoms
|
||||
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz Econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
100 301.02788 907.67474 -1067.9843 96.4602 96.4602 96.4602 8242.1214 8202.9779 8095.8693 -151.14112 1.5203428 -10.919311 0 0 9.1684318
|
||||
110 297.71411 897.68288 -1054.6195 96.4602 96.4602 96.399397 8347.6253 8303.7121 8220.7572 -151.20299 1.439058 28.652258 0.017649501 -0.55980494 5.7336721
|
||||
120 295.64308 891.43821 -1045.1008 96.4602 96.4602 96.340496 8431.6742 8379.2441 8331.5304 -151.28174 1.3655893 56.776734 0.034747125 -1.119263 2.3808018
|
||||
130 296.02228 892.5816 -1043.0623 96.4602 96.4602 96.283468 8456.2492 8412.6368 8392.5853 -151.35912 1.2945465 37.811981 0.05130089 -1.6783851 -0.87840575
|
||||
140 298.19024 899.11855 -1046.5151 96.4602 96.4602 96.228236 8430.5151 8415.6802 8414.2537 -151.42965 1.2243399 -18.01985 0.067333442 -2.2371818 -4.0330712
|
||||
150 300.86421 907.18122 -1051.6141 96.4602 96.4602 96.174681 8399.4697 8396.2236 8420.9004 -151.51534 1.1598278 -86.5197 0.082879112 -2.7956634 -7.0824881
|
||||
160 303.34119 914.64996 -1056.2049 96.4602 96.4602 96.122673 8388.3438 8360.5024 8428.751 -151.58881 1.0977647 -151.64553 0.097975827 -3.353839 -10.033902
|
||||
170 304.87769 919.28288 -1058.0632 96.4602 96.4602 96.072088 8408.8694 8333.4337 8449.5665 -151.67812 1.044322 -201.80899 0.11265931 -3.9117174 -12.897768
|
||||
180 304.99 919.62151 -1055.6732 96.4602 96.4602 96.022824 8461.5542 8343.1436 8484.9824 -151.73733 0.99203387 -235.51793 0.12695926 -4.4693063 -15.685622
|
||||
190 305.1148 919.99782 -1053.3767 96.4602 96.4602 95.9748 8498.7562 8371.4217 8514.4473 -151.78288 0.93937416 -273.43964 0.1408996 -5.0266132 -18.403999
|
||||
200 306.45829 924.0488 -1054.8236 96.4602 96.4602 95.927931 8488.9509 8385.2408 8529.6443 -151.82991 0.88654815 -324.00777 0.15450451 -5.583645 -21.055149
|
||||
Loop time of 13.2508 on 1 procs for 100 steps with 23328 atoms
|
||||
|
||||
Performance: 2.165 ns/day, 11.084 hours/ns, 12.530 timesteps/s
|
||||
Performance: 1.304 ns/day, 18.404 hours/ns, 7.547 timesteps/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 | 6.8295 | 6.8295 | 6.8295 | 0.0 | 85.58
|
||||
Neigh | 0.13211 | 0.13211 | 0.13211 | 0.0 | 1.66
|
||||
Comm | 0.032946 | 0.032946 | 0.032946 | 0.0 | 0.41
|
||||
Output | 0.02301 | 0.02301 | 0.02301 | 0.0 | 0.29
|
||||
Modify | 0.94857 | 0.94857 | 0.94857 | 0.0 | 11.89
|
||||
Other | | 0.01452 | | | 0.18
|
||||
Pair | 11.716 | 11.716 | 11.716 | 0.0 | 88.41
|
||||
Neigh | 0.26843 | 0.26843 | 0.26843 | 0.0 | 2.03
|
||||
Comm | 0.056694 | 0.056694 | 0.056694 | 0.0 | 0.43
|
||||
Output | 0.029758 | 0.029758 | 0.029758 | 0.0 | 0.22
|
||||
Modify | 1.1599 | 1.1599 | 1.1599 | 0.0 | 8.75
|
||||
Other | | 0.02035 | | | 0.15
|
||||
|
||||
Nlocal: 23328.0 ave 23328.0 max 23328.0 min
|
||||
Nlocal: 23328.0 ave 23328 max 23328 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 22205.0 ave 22205.0 max 22205.0 min
|
||||
Nghost: 22205.0 ave 22205 max 22205 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2183494.0 ave 2183494.0 max 2183494.0 min
|
||||
Neighs: 2.18349e+06 ave 2.18349e+06 max 2.18349e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 2183494
|
||||
Ave neighs/atom = 93.5997085048011
|
||||
Ave neighs/atom = 93.599709
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:11
|
||||
Total wall time: 0:00:22
|
||||
@ -1,4 +1,4 @@
|
||||
LAMMPS (30 Jun 2020)
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# LJ test of msst shock dynamics
|
||||
|
||||
@ -10,18 +10,18 @@ atom_style atomic
|
||||
timestep 1e-03
|
||||
|
||||
lattice fcc 5.3589
|
||||
Lattice spacing in x,y,z = 5.3589 5.3589 5.3589
|
||||
Lattice spacing in x,y,z = 5.3589000 5.3589000 5.3589000
|
||||
|
||||
## Specify the box as a given number of unit cells.
|
||||
region box1 block 0 18 0 18 0 18 units lattice
|
||||
|
||||
## Instantiate the system.
|
||||
create_box 1 box1
|
||||
Created orthogonal box = (0 0 0) to (96.4602 96.4602 96.4602)
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (96.460200 96.460200 96.460200)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
create_atoms 1 region box1
|
||||
Created 23328 atoms
|
||||
create_atoms CPU = 0.003 seconds
|
||||
create_atoms CPU = 0.080 seconds
|
||||
|
||||
mass 1 40.00
|
||||
|
||||
@ -63,30 +63,30 @@ Step Temp E_pair E_mol TotEng Press
|
||||
80 299.37658 -1053.8476 0 -151.1519 8352.9467
|
||||
90 304.24026 -1068.4941 0 -151.13319 8218.1594
|
||||
100 301.9683 -1061.6332 0 -151.12284 8244.1277
|
||||
Loop time of 0.995305 on 4 procs for 100 steps with 23328 atoms
|
||||
Loop time of 5.66225 on 4 procs for 100 steps with 23328 atoms
|
||||
|
||||
Performance: 17.362 ns/day, 1.382 hours/ns, 100.472 timesteps/s
|
||||
98.2% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
Performance: 3.052 ns/day, 7.864 hours/ns, 17.661 timesteps/s
|
||||
78.0% 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.88957 | 0.90144 | 0.91686 | 1.1 | 90.57
|
||||
Neigh | 0.016824 | 0.016945 | 0.017106 | 0.1 | 1.70
|
||||
Comm | 0.039949 | 0.054853 | 0.068734 | 4.8 | 5.51
|
||||
Output | 0.00076342 | 0.0010425 | 0.0018687 | 1.5 | 0.10
|
||||
Modify | 0.012839 | 0.012946 | 0.013153 | 0.1 | 1.30
|
||||
Other | | 0.008074 | | | 0.81
|
||||
Pair | 2.6416 | 2.7792 | 2.9335 | 6.4 | 49.08
|
||||
Neigh | 0.029522 | 0.037458 | 0.054701 | 5.3 | 0.66
|
||||
Comm | 2.1998 | 2.4099 | 2.5822 | 8.8 | 42.56
|
||||
Output | 0.10457 | 0.10816 | 0.11265 | 1.0 | 1.91
|
||||
Modify | 0.023462 | 0.033517 | 0.044696 | 4.9 | 0.59
|
||||
Other | | 0.294 | | | 5.19
|
||||
|
||||
Nlocal: 5832.0 ave 5850.0 max 5813.0 min
|
||||
Nlocal: 5832.00 ave 5850 max 5813 min
|
||||
Histogram: 1 0 0 0 1 1 0 0 0 1
|
||||
Nghost: 10571.0 ave 10590.0 max 10553.0 min
|
||||
Nghost: 10571.0 ave 10590 max 10553 min
|
||||
Histogram: 1 0 0 0 1 1 0 0 0 1
|
||||
Neighs: 545761.75 ave 548069.0 max 543643.0 min
|
||||
Neighs: 545762.0 ave 548069 max 543643 min
|
||||
Histogram: 1 0 0 1 0 1 0 0 0 1
|
||||
|
||||
Total # of neighbors = 2183047
|
||||
Ave neighs/atom = 93.58054698216735
|
||||
Ave neighs/atom = 93.580547
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
unfix 2
|
||||
@ -102,15 +102,12 @@ MSST parameters:
|
||||
Initial volume calculated on first step
|
||||
Initial energy calculated on first step
|
||||
|
||||
# this is needed to make etotal equal the MSST conserved quantity
|
||||
fix_modify msst energy yes
|
||||
|
||||
variable dhug equal f_msst[1]
|
||||
variable dray equal f_msst[2]
|
||||
variable lgr_vel equal f_msst[3]
|
||||
variable lgr_pos equal f_msst[4]
|
||||
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
#dump id all atom 50 dump.msst
|
||||
|
||||
@ -126,42 +123,42 @@ Fix MSST p0 = 8186.2393
|
||||
Fix MSST e0 = -151.12284
|
||||
Fix MSST initial strain rate of -0.031900492 established by reducing temperature by factor of 0.01
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.535 | 8.535 | 8.535 Mbytes
|
||||
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz TotEng v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
100 298.94862 901.40524 -1052.5281 96.4602 96.4602 96.4602 8270.9151 8253.4662 8175.4946 -151.12284 1.5098415 -10.744684 0 0 9.1051034
|
||||
110 296.49826 894.01679 -1045.224 96.4602 96.4602 96.399609 8338.4937 8340.5504 8294.9909 -151.20723 1.4327442 23.73173 0.017588167 -0.55980562 5.6560557
|
||||
120 295.97607 892.44225 -1043.7239 96.4602 96.4602 96.340904 8377.6797 8385.921 8378.3042 -151.28169 1.3584606 24.672199 0.034628719 -1.1192655 2.2953307
|
||||
130 297.34893 896.58179 -1047.945 96.4602 96.4602 96.284029 8379.2516 8394.8806 8416.2669 -151.36322 1.2881444 -17.170168 0.051138087 -1.6783905 -0.96527961
|
||||
140 299.71946 903.72952 -1055.1787 96.4602 96.4602 96.22888 8357.0358 8388.6743 8424.3188 -151.44922 1.221125 -86.501161 0.067146366 -2.2371908 -4.1195182
|
||||
150 301.79241 909.97998 -1061.4976 96.4602 96.4602 96.175327 8332.7118 8393.7027 8434.6177 -151.51765 1.1560248 -151.34689 0.082691635 -2.7956762 -7.172084
|
||||
160 303.18249 914.17141 -1065.7667 96.4602 96.4602 96.123244 8321.1154 8413.1248 8454.5596 -151.59527 1.0977348 -204.4864 0.097810061 -3.3538554 -10.134387
|
||||
170 304.34089 917.66428 -1069.3198 96.4602 96.4602 96.072522 8327.6227 8431.1177 8467.92 -151.65554 1.0390628 -262.29751 0.11253339 -3.9117366 -13.01442
|
||||
180 305.86343 922.25514 -1073.9633 96.4602 96.4602 96.023049 8345.1853 8432.5201 8461.3276 -151.70813 0.97863988 -338.30793 0.12689398 -4.4693274 -15.815462
|
||||
190 307.44054 927.01052 -1078.7892 96.4602 96.4602 95.9747 8368.4081 8427.5109 8450.584 -151.77867 0.92329631 -416.89333 0.1409285 -5.0266346 -18.541801
|
||||
200 308.43619 930.01265 -1081.8521 96.4602 96.4602 95.927349 8393.2058 8443.1265 8454.6733 -151.83947 0.8723277 -479.24592 0.1546734 -5.5836644 -21.20378
|
||||
Loop time of 2.16596 on 4 procs for 100 steps with 23328 atoms
|
||||
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz Econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
100 298.94862 901.40524 -1061.6332 96.4602 96.4602 96.4602 8270.9151 8253.4662 8175.4946 -151.12284 1.5098415 -10.744684 0 0 9.1051034
|
||||
110 296.49826 894.01679 -1050.8801 96.4602 96.4602 96.399609 8338.4937 8340.5504 8294.9909 -151.20723 1.4327442 23.73173 0.017588167 -0.55980562 5.6560557
|
||||
120 295.97607 892.44225 -1046.0193 96.4602 96.4602 96.340904 8377.6797 8385.921 8378.3042 -151.28169 1.3584606 24.672199 0.034628719 -1.1192655 2.2953307
|
||||
130 297.34893 896.58179 -1046.9797 96.4602 96.4602 96.284029 8379.2516 8394.8806 8416.2669 -151.36322 1.2881444 -17.170168 0.051138087 -1.6783905 -0.96527961
|
||||
140 299.71946 903.72952 -1051.0592 96.4602 96.4602 96.22888 8357.0358 8388.6743 8424.3188 -151.44922 1.221125 -86.501161 0.067146366 -2.2371908 -4.1195182
|
||||
150 301.79241 909.97998 -1054.3256 96.4602 96.4602 96.175327 8332.7118 8393.7027 8434.6177 -151.51765 1.1560248 -151.34689 0.082691635 -2.7956762 -7.172084
|
||||
160 303.18249 914.17141 -1055.6323 96.4602 96.4602 96.123244 8321.1154 8413.1248 8454.5596 -151.59527 1.0977348 -204.4864 0.097810061 -3.3538554 -10.134387
|
||||
170 304.34089 917.66428 -1056.3054 96.4602 96.4602 96.072522 8327.6227 8431.1177 8467.92 -151.65554 1.0390628 -262.29751 0.11253339 -3.9117366 -13.01442
|
||||
180 305.86343 922.25514 -1058.1478 96.4602 96.4602 96.023049 8345.1853 8432.5201 8461.3276 -151.70813 0.97863988 -338.30793 0.12689398 -4.4693274 -15.815462
|
||||
190 307.44054 927.01052 -1060.2474 96.4602 96.4602 95.9747 8368.4081 8427.5109 8450.584 -151.77867 0.92329631 -416.89333 0.1409285 -5.0266346 -18.541801
|
||||
200 308.43619 930.01265 -1060.6483 96.4602 96.4602 95.927349 8393.2058 8443.1265 8454.6733 -151.83947 0.8723277 -479.24592 0.1546734 -5.5836644 -21.20378
|
||||
Loop time of 11.445 on 4 procs for 100 steps with 23328 atoms
|
||||
|
||||
Performance: 7.978 ns/day, 3.008 hours/ns, 46.169 timesteps/s
|
||||
98.5% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
Performance: 1.510 ns/day, 15.896 hours/ns, 8.737 timesteps/s
|
||||
77.1% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.7569 | 1.7822 | 1.8059 | 1.6 | 82.28
|
||||
Neigh | 0.034235 | 0.03546 | 0.037677 | 0.7 | 1.64
|
||||
Comm | 0.065427 | 0.091172 | 0.11833 | 7.4 | 4.21
|
||||
Output | 0.0062776 | 0.0065615 | 0.0074117 | 0.6 | 0.30
|
||||
Modify | 0.24069 | 0.2423 | 0.24655 | 0.5 | 11.19
|
||||
Other | | 0.008271 | | | 0.38
|
||||
Pair | 3.7358 | 4.0193 | 4.3315 | 10.5 | 35.12
|
||||
Neigh | 0.05921 | 0.078071 | 0.089958 | 4.1 | 0.68
|
||||
Comm | 2.3136 | 2.683 | 3.054 | 16.3 | 23.44
|
||||
Output | 0.038525 | 0.040035 | 0.044559 | 1.3 | 0.35
|
||||
Modify | 4.2814 | 4.3709 | 4.4749 | 4.1 | 38.19
|
||||
Other | | 0.2537 | | | 2.22
|
||||
|
||||
Nlocal: 5832.0 ave 5874.0 max 5803.0 min
|
||||
Nlocal: 5832.00 ave 5874 max 5803 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
Nghost: 10563.75 ave 10588.0 max 10526.0 min
|
||||
Nghost: 10563.8 ave 10588 max 10526 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
Neighs: 545708.5 ave 550787.0 max 542668.0 min
|
||||
Neighs: 545708.0 ave 550787 max 542668 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 2182834
|
||||
Ave neighs/atom = 93.57141632373114
|
||||
Ave neighs/atom = 93.571416
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:03
|
||||
Total wall time: 0:00:17
|
||||
@ -53,9 +53,9 @@ velocity all create $t 5287287 loop geom
|
||||
pair_style sw
|
||||
pair_coeff * * Si.sw Si Si Si Si Si Si Si Si
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
@ -71,9 +71,9 @@ read_restart restart.equil
|
||||
pair_style sw
|
||||
pair_coeff * * CdTeZnSeHgS0.sw Cd Zn Hg Cd Te S Se Te
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
@ -87,9 +87,9 @@ read_restart restart.equil
|
||||
pair_style vashishta
|
||||
pair_coeff * * InP.vashishta In In In In P P P P
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
@ -106,9 +106,9 @@ change_box all x scale ${fac} y scale ${fac} z scale ${fac} remap
|
||||
pair_style tersoff
|
||||
pair_coeff * * BNC.tersoff N N N C B B C B
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
|
||||
373
examples/threebody/log.08Feb21.threebody.g++.1
Normal file
373
examples/threebody/log.08Feb21.threebody.g++.1
Normal file
@ -0,0 +1,373 @@
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Simple regression tests for threebody potentials
|
||||
|
||||
# NOTE: These are not intended to represent real materials
|
||||
|
||||
units metal
|
||||
|
||||
atom_style atomic
|
||||
atom_modify map array
|
||||
boundary p p p
|
||||
atom_modify sort 0 0.0
|
||||
|
||||
# temperature
|
||||
|
||||
variable t equal 1800.0
|
||||
|
||||
# cubic diamond unit cell
|
||||
|
||||
variable a equal 5.431
|
||||
lattice custom $a a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
lattice custom 5.431 a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
Lattice spacing in x,y,z = 5.4310000 5.4310000 5.4310000
|
||||
|
||||
region myreg block 0 4 0 4 0 4
|
||||
|
||||
create_box 8 myreg
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 region myreg basis 1 1 basis 2 2 basis 3 3 basis 4 4 basis 5 5 basis 6 6 basis 7 7 basis 8 8
|
||||
Created 512 atoms
|
||||
create_atoms CPU = 0.001 seconds
|
||||
|
||||
mass * 28.06
|
||||
|
||||
velocity all create $t 5287287 loop geom
|
||||
velocity all create 1800 5287287 loop geom
|
||||
|
||||
# Equilibrate using Stillinger-Weber model for silicon
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * Si.sw Si Si Si Si Si Si Si Si
|
||||
Reading sw potential file Si.sw with DATE: 2007-06-11
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.77118
|
||||
ghost atom cutoff = 4.77118
|
||||
binsize = 2.38559, bins = 10 10 10
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.983 | 2.983 | 2.983 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
0 1800 -2220.3392 -2101.4457 -2101.4457 12358.626
|
||||
10 1006.0192 -2167.7053 -2101.2558 -2101.3286 13892.426
|
||||
20 588.26396 -2139.7132 -2100.8573 -2101.3117 11295.566
|
||||
30 990.55956 -2165.2164 -2099.788 -2101.3931 6279.0239
|
||||
40 700.12917 -2144.4279 -2098.183 -2101.3427 5594.2388
|
||||
50 523.64239 -2131.7796 -2097.192 -2101.3122 6013.0994
|
||||
60 989.47092 -2161.3716 -2096.0152 -2101.3839 5819.2688
|
||||
70 877.27433 -2152.4432 -2094.4975 -2101.3461 9116.6569
|
||||
80 800.80221 -2146.1371 -2093.2426 -2101.313 11995.66
|
||||
90 1293.9689 -2176.9021 -2091.4329 -2101.3848 11692.45
|
||||
100 1112.9699 -2162.7259 -2089.2121 -2101.3478 12263.758
|
||||
Loop time of 0.157871 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 54.728 ns/day, 0.439 hours/ns, 633.430 timesteps/s
|
||||
99.8% 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.14704 | 0.14704 | 0.14704 | 0.0 | 93.14
|
||||
Neigh | 0.00247 | 0.00247 | 0.00247 | 0.0 | 1.56
|
||||
Comm | 0.0024729 | 0.0024729 | 0.0024729 | 0.0 | 1.57
|
||||
Output | 0.0002656 | 0.0002656 | 0.0002656 | 0.0 | 0.17
|
||||
Modify | 0.0050237 | 0.0050237 | 0.0050237 | 0.0 | 3.18
|
||||
Other | | 0.0006011 | | | 0.38
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1017.00 ave 1017 max 1017 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 13988.0 ave 13988 max 13988 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 13988
|
||||
Ave neighs/atom = 27.320312
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Test Stillinger-Weber model for Cd/Te/Zn/Se/Hg/S
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * CdTeZnSeHgS0.sw Cd Zn Hg Cd Te S Se Te
|
||||
Reading sw potential file CdTeZnSeHgS0.sw with DATE: 2013-08-09
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.6320004
|
||||
ghost atom cutoff = 5.6320004
|
||||
binsize = 2.8160002, bins = 8 8 8
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.001 | 3.001 | 3.001 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -625.76163 -552.24781 -564.38354 462129.66
|
||||
110 1502.8461 -649.55768 -550.29179 -564.45814 463413.45
|
||||
120 1926.4523 -674.71265 -547.46675 -564.53612 486338.88
|
||||
130 1152.6663 -621.47264 -545.33681 -564.37203 514892.2
|
||||
140 1762.244 -659.86941 -543.46979 -564.4985 488159.88
|
||||
150 1767.8665 -657.67178 -540.90078 -564.48386 466721.31
|
||||
160 1075.2874 -610.12809 -539.10328 -564.36709 470151.9
|
||||
170 1697.9313 -649.3684 -537.21675 -564.47207 467953.71
|
||||
180 1856.1197 -657.14338 -534.54309 -564.48754 488372.27
|
||||
190 1346.1107 -621.42431 -532.5111 -564.38065 511750.04
|
||||
200 1919.5266 -657.26587 -530.47743 -564.47797 488684.56
|
||||
Loop time of 0.455825 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 18.955 ns/day, 1.266 hours/ns, 219.382 timesteps/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 | 0.44091 | 0.44091 | 0.44091 | 0.0 | 96.73
|
||||
Neigh | 0.0054555 | 0.0054555 | 0.0054555 | 0.0 | 1.20
|
||||
Comm | 0.0035784 | 0.0035784 | 0.0035784 | 0.0 | 0.79
|
||||
Output | 0.00024486 | 0.00024486 | 0.00024486 | 0.0 | 0.05
|
||||
Modify | 0.0050471 | 0.0050471 | 0.0050471 | 0.0 | 1.11
|
||||
Other | | 0.000592 | | | 0.13
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1428.00 ave 1428 max 1428 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 17344.0 ave 17344 max 17344 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 17344
|
||||
Ave neighs/atom = 33.875000
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Vashishta model for In/P
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style vashishta
|
||||
pair_coeff * * InP.vashishta In In In In P P P P
|
||||
Reading vashishta potential file InP.vashishta with DATE: 2015-10-14
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7
|
||||
ghost atom cutoff = 7
|
||||
binsize = 3.5, bins = 7 7 7
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair vashishta, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.025 | 3.025 | 3.025 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -1497.2988 -1423.785 -1435.9207 355619.19
|
||||
110 1250.545 -1504.5795 -1421.9785 -1435.9786 345188.52
|
||||
120 1360.2275 -1509.3443 -1419.4986 -1435.9801 333306.3
|
||||
130 1066.4516 -1487.9076 -1417.4664 -1435.9076 334465.11
|
||||
140 1481.0477 -1513.0511 -1415.2251 -1435.988 308725.1
|
||||
150 1216.1167 -1493.0774 -1412.7505 -1435.9217 304249.09
|
||||
160 1211.4398 -1490.7459 -1410.728 -1435.9164 288897.09
|
||||
170 1542.2025 -1510.0774 -1408.212 -1435.9608 260104.14
|
||||
180 1302.9041 -1491.7765 -1405.7172 -1435.8971 249514.04
|
||||
190 1332.3326 -1491.5271 -1403.524 -1435.9213 227537.99
|
||||
200 1352.1813 -1490.4513 -1401.1371 -1435.9049 207626.42
|
||||
Loop time of 0.217808 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 39.668 ns/day, 0.605 hours/ns, 459.121 timesteps/s
|
||||
98.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.19635 | 0.19635 | 0.19635 | 0.0 | 90.15
|
||||
Neigh | 0.01054 | 0.01054 | 0.01054 | 0.0 | 4.84
|
||||
Comm | 0.0051923 | 0.0051923 | 0.0051923 | 0.0 | 2.38
|
||||
Output | 0.00027919 | 0.00027919 | 0.00027919 | 0.0 | 0.13
|
||||
Modify | 0.0048637 | 0.0048637 | 0.0048637 | 0.0 | 2.23
|
||||
Other | | 0.0005858 | | | 0.27
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1838.00 ave 1838 max 1838 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 36482.0 ave 36482 max 36482 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 36482
|
||||
Ave neighs/atom = 71.253906
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff model for B/N/C
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
variable fac equal 0.6
|
||||
change_box all x scale ${fac} y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale 0.6 remap
|
||||
Changing box ...
|
||||
orthogonal box = (4.3448000 0.0000000 0.0000000) to (17.379200 21.724000 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 0.0000000) to (17.379200 17.379200 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 4.3448000) to (17.379200 17.379200 17.379200)
|
||||
|
||||
pair_style tersoff
|
||||
pair_coeff * * BNC.tersoff N N N C B B C B
|
||||
Reading tersoff potential file BNC.tersoff with DATE: 2013-03-21
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 9
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.982 | 2.982 | 2.982 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -3259.7676 -3186.2538 -3198.3895 1912461.3
|
||||
110 1772.8268 -3301.5479 -3184.4493 -3198.8218 1885295.6
|
||||
120 1169.7287 -3258.74 -3181.4772 -3197.9294 1898705.2
|
||||
130 1308.5623 -3265.1338 -3178.7007 -3197.5922 1894187.5
|
||||
140 1486.0361 -3274.951 -3176.7954 -3197.776 1871927.6
|
||||
150 1419.0362 -3267.7302 -3174.0002 -3197.2296 1925234.6
|
||||
160 1196.6689 -3250.1492 -3171.1069 -3196.7078 1902235.1
|
||||
170 1707.5846 -3281.7658 -3168.9766 -3196.9721 1863047.3
|
||||
180 1337.4358 -3254.9844 -3166.6442 -3196.8222 1880420.9
|
||||
190 1441.8052 -3259.0364 -3163.8023 -3196.3556 1904512.1
|
||||
200 1569.0317 -3265.0089 -3161.3714 -3196.3328 1899462.7
|
||||
Loop time of 0.487425 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 17.726 ns/day, 1.354 hours/ns, 205.160 timesteps/s
|
||||
99.1% 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.47762 | 0.47762 | 0.47762 | 0.0 | 97.99
|
||||
Neigh | 0.0014286 | 0.0014286 | 0.0014286 | 0.0 | 0.29
|
||||
Comm | 0.0024068 | 0.0024068 | 0.0024068 | 0.0 | 0.49
|
||||
Output | 0.00028992 | 0.00028992 | 0.00028992 | 0.0 | 0.06
|
||||
Modify | 0.0050635 | 0.0050635 | 0.0050635 | 0.0 | 1.04
|
||||
Other | | 0.0006182 | | | 0.13
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1028.00 ave 1028 max 1028 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 14604.0 ave 14604 max 14604 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 14604
|
||||
Ave neighs/atom = 28.523438
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:01
|
||||
373
examples/threebody/log.08Feb21.threebody.g++.4
Normal file
373
examples/threebody/log.08Feb21.threebody.g++.4
Normal file
@ -0,0 +1,373 @@
|
||||
LAMMPS (24 Dec 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Simple regression tests for threebody potentials
|
||||
|
||||
# NOTE: These are not intended to represent real materials
|
||||
|
||||
units metal
|
||||
|
||||
atom_style atomic
|
||||
atom_modify map array
|
||||
boundary p p p
|
||||
atom_modify sort 0 0.0
|
||||
|
||||
# temperature
|
||||
|
||||
variable t equal 1800.0
|
||||
|
||||
# cubic diamond unit cell
|
||||
|
||||
variable a equal 5.431
|
||||
lattice custom $a a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
lattice custom 5.431 a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
Lattice spacing in x,y,z = 5.4310000 5.4310000 5.4310000
|
||||
|
||||
region myreg block 0 4 0 4 0 4
|
||||
|
||||
create_box 8 myreg
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
create_atoms 1 region myreg basis 1 1 basis 2 2 basis 3 3 basis 4 4 basis 5 5 basis 6 6 basis 7 7 basis 8 8
|
||||
Created 512 atoms
|
||||
create_atoms CPU = 0.074 seconds
|
||||
|
||||
mass * 28.06
|
||||
|
||||
velocity all create $t 5287287 loop geom
|
||||
velocity all create 1800 5287287 loop geom
|
||||
|
||||
# Equilibrate using Stillinger-Weber model for silicon
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * Si.sw Si Si Si Si Si Si Si Si
|
||||
Reading sw potential file Si.sw with DATE: 2007-06-11
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.77118
|
||||
ghost atom cutoff = 4.77118
|
||||
binsize = 2.38559, bins = 10 10 10
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.958 | 2.958 | 2.958 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
0 1800 -2220.3392 -2101.4457 -2101.4457 12358.626
|
||||
10 1006.0192 -2167.7053 -2101.2558 -2101.3286 13892.426
|
||||
20 588.26396 -2139.7132 -2100.8573 -2101.3117 11295.566
|
||||
30 990.55956 -2165.2164 -2099.788 -2101.3931 6279.0239
|
||||
40 700.12917 -2144.4279 -2098.183 -2101.3427 5594.2388
|
||||
50 523.64239 -2131.7796 -2097.192 -2101.3122 6013.0994
|
||||
60 989.47092 -2161.3716 -2096.0152 -2101.3839 5819.2688
|
||||
70 877.27433 -2152.4432 -2094.4975 -2101.3461 9116.6569
|
||||
80 800.80221 -2146.1371 -2093.2426 -2101.313 11995.66
|
||||
90 1293.9689 -2176.9021 -2091.4329 -2101.3848 11692.45
|
||||
100 1112.9699 -2162.7259 -2089.2121 -2101.3478 12263.758
|
||||
Loop time of 0.0998364 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 86.542 ns/day, 0.277 hours/ns, 1001.639 timesteps/s
|
||||
81.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.037337 | 0.049389 | 0.069239 | 5.9 | 49.47
|
||||
Neigh | 0.00067854 | 0.00068814 | 0.00070286 | 0.0 | 0.69
|
||||
Comm | 0.025239 | 0.04504 | 0.056869 | 6.1 | 45.11
|
||||
Output | 0.00015712 | 0.00082219 | 0.0028148 | 0.0 | 0.82
|
||||
Modify | 0.0014369 | 0.0015754 | 0.0016632 | 0.2 | 1.58
|
||||
Other | | 0.002321 | | | 2.33
|
||||
|
||||
Nlocal: 128.000 ave 132 max 125 min
|
||||
Histogram: 1 1 0 0 0 1 0 0 0 1
|
||||
Nghost: 525.000 ave 528 max 521 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 1 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 3497.00 ave 3619 max 3397 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 13988
|
||||
Ave neighs/atom = 27.320312
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Test Stillinger-Weber model for Cd/Te/Zn/Se/Hg/S
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * CdTeZnSeHgS0.sw Cd Zn Hg Cd Te S Se Te
|
||||
Reading sw potential file CdTeZnSeHgS0.sw with DATE: 2013-08-09
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.6320004
|
||||
ghost atom cutoff = 5.6320004
|
||||
binsize = 2.8160002, bins = 8 8 8
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.967 | 2.967 | 2.968 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -625.76163 -552.24782 -564.38354 462129.66
|
||||
110 1502.8461 -649.55768 -550.29179 -564.45814 463413.45
|
||||
120 1926.4523 -674.71265 -547.46675 -564.53613 486338.88
|
||||
130 1152.6663 -621.47265 -545.33681 -564.37203 514892.19
|
||||
140 1762.244 -659.86941 -543.46979 -564.4985 488159.88
|
||||
150 1767.8665 -657.67179 -540.90079 -564.48386 466721.31
|
||||
160 1075.2874 -610.1281 -539.10328 -564.36709 470151.9
|
||||
170 1697.9313 -649.3684 -537.21676 -564.47208 467953.7
|
||||
180 1856.1197 -657.14338 -534.54309 -564.48754 488372.26
|
||||
190 1346.1107 -621.42432 -532.5111 -564.38065 511750.03
|
||||
200 1919.5266 -657.26587 -530.47743 -564.47797 488684.56
|
||||
Loop time of 0.286556 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 30.151 ns/day, 0.796 hours/ns, 348.971 timesteps/s
|
||||
81.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.11093 | 0.139 | 0.16864 | 5.8 | 48.51
|
||||
Neigh | 0.0014305 | 0.0014756 | 0.0015156 | 0.1 | 0.51
|
||||
Comm | 0.10154 | 0.12374 | 0.16907 | 7.8 | 43.18
|
||||
Output | 0.0001862 | 0.00030428 | 0.0006578 | 0.0 | 0.11
|
||||
Modify | 0.0038164 | 0.019159 | 0.034146 | 10.8 | 6.69
|
||||
Other | | 0.002872 | | | 1.00
|
||||
|
||||
Nlocal: 128.000 ave 135 max 122 min
|
||||
Histogram: 1 0 1 0 0 0 1 0 0 1
|
||||
Nghost: 759.750 ave 770 max 751 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 4336.00 ave 4563 max 4128 min
|
||||
Histogram: 1 0 1 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 17344
|
||||
Ave neighs/atom = 33.875000
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Vashishta model for In/P
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style vashishta
|
||||
pair_coeff * * InP.vashishta In In In In P P P P
|
||||
Reading vashishta potential file InP.vashishta with DATE: 2015-10-14
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7
|
||||
ghost atom cutoff = 7
|
||||
binsize = 3.5, bins = 7 7 7
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair vashishta, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.988 | 2.988 | 2.988 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -1497.2988 -1423.785 -1435.9207 355619.19
|
||||
110 1250.545 -1504.5795 -1421.9785 -1435.9786 345188.52
|
||||
120 1360.2275 -1509.3443 -1419.4986 -1435.9801 333306.3
|
||||
130 1066.4516 -1487.9076 -1417.4664 -1435.9076 334465.11
|
||||
140 1481.0477 -1513.0511 -1415.2251 -1435.988 308725.1
|
||||
150 1216.1167 -1493.0774 -1412.7505 -1435.9217 304249.09
|
||||
160 1211.4398 -1490.7459 -1410.728 -1435.9164 288897.09
|
||||
170 1542.2025 -1510.0774 -1408.212 -1435.9608 260104.14
|
||||
180 1302.9041 -1491.7765 -1405.7172 -1435.8971 249514.04
|
||||
190 1332.3326 -1491.5271 -1403.524 -1435.9213 227537.99
|
||||
200 1352.1813 -1490.4513 -1401.1371 -1435.9049 207626.42
|
||||
Loop time of 0.14468 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 59.718 ns/day, 0.402 hours/ns, 691.179 timesteps/s
|
||||
81.2% 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.047903 | 0.058669 | 0.086091 | 6.6 | 40.55
|
||||
Neigh | 0.0027876 | 0.002852 | 0.0028808 | 0.1 | 1.97
|
||||
Comm | 0.034642 | 0.066142 | 0.078599 | 7.1 | 45.72
|
||||
Output | 0.00018477 | 0.0049147 | 0.019101 | 11.7 | 3.40
|
||||
Modify | 0.0015709 | 0.0022651 | 0.0029545 | 1.4 | 1.57
|
||||
Other | | 0.009837 | | | 6.80
|
||||
|
||||
Nlocal: 128.000 ave 131 max 124 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
Nghost: 1013.25 ave 1025 max 1002 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 9120.50 ave 9356 max 8868 min
|
||||
Histogram: 1 0 0 0 1 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 36482
|
||||
Ave neighs/atom = 71.253906
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff model for B/N/C
|
||||
|
||||
clear
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 24 Dec 2020, LAMMPS = 24 Dec 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.005 seconds
|
||||
|
||||
variable fac equal 0.6
|
||||
change_box all x scale ${fac} y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale 0.6 remap
|
||||
Changing box ...
|
||||
orthogonal box = (4.3448000 0.0000000 0.0000000) to (17.379200 21.724000 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 0.0000000) to (17.379200 17.379200 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 4.3448000) to (17.379200 17.379200 17.379200)
|
||||
|
||||
pair_style tersoff
|
||||
pair_coeff * * BNC.tersoff N N N C B B C B
|
||||
Reading tersoff potential file BNC.tersoff with DATE: 2013-03-21
|
||||
|
||||
thermo_style custom step temp epair etotal econserve press
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 9
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.948 | 2.948 | 2.948 Mbytes
|
||||
Step Temp E_pair TotEng Econserve Press
|
||||
100 1112.9699 -3259.7676 -3186.2538 -3198.3895 1912461.3
|
||||
110 1772.8268 -3301.5479 -3184.4493 -3198.8218 1885295.6
|
||||
120 1169.7287 -3258.74 -3181.4772 -3197.9294 1898705.2
|
||||
130 1308.5623 -3265.1338 -3178.7007 -3197.5922 1894187.5
|
||||
140 1486.0361 -3274.951 -3176.7954 -3197.776 1871927.6
|
||||
150 1419.0362 -3267.7302 -3174.0002 -3197.2296 1925234.6
|
||||
160 1196.6689 -3250.1492 -3171.1069 -3196.7078 1902235.1
|
||||
170 1707.5846 -3281.7658 -3168.9766 -3196.9721 1863047.3
|
||||
180 1337.4358 -3254.9844 -3166.6442 -3196.8222 1880420.9
|
||||
190 1441.8052 -3259.0364 -3163.8023 -3196.3556 1904512.1
|
||||
200 1569.0317 -3265.0089 -3161.3714 -3196.3328 1899462.7
|
||||
Loop time of 0.348631 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 24.783 ns/day, 0.968 hours/ns, 286.836 timesteps/s
|
||||
81.0% 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.13281 | 0.15657 | 0.20106 | 6.9 | 44.91
|
||||
Neigh | 0.00037527 | 0.00039309 | 0.00040412 | 0.0 | 0.11
|
||||
Comm | 0.12177 | 0.16672 | 0.19154 | 6.8 | 47.82
|
||||
Output | 0.00019097 | 0.000462 | 0.0012722 | 0.0 | 0.13
|
||||
Modify | 0.018353 | 0.020198 | 0.02302 | 1.3 | 5.79
|
||||
Other | | 0.004286 | | | 1.23
|
||||
|
||||
Nlocal: 128.000 ave 132 max 123 min
|
||||
Histogram: 1 0 0 0 0 1 1 0 0 1
|
||||
Nghost: 529.500 ave 533 max 524 min
|
||||
Histogram: 1 0 0 0 0 0 1 1 0 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 3651.00 ave 3783 max 3494 min
|
||||
Histogram: 1 0 0 0 0 1 1 0 0 1
|
||||
|
||||
Total # of neighbors = 14604
|
||||
Ave neighs/atom = 28.523438
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:01
|
||||
@ -1,547 +0,0 @@
|
||||
LAMMPS (30 Nov 2020)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Simple regression tests for threebody potentials
|
||||
|
||||
# NOTE: These are not intended to represent real materials
|
||||
|
||||
units metal
|
||||
|
||||
atom_style atomic
|
||||
atom_modify map array
|
||||
boundary p p p
|
||||
atom_modify sort 0 0.0
|
||||
|
||||
# temperature
|
||||
|
||||
variable t equal 1800.0
|
||||
|
||||
# cubic diamond unit cell
|
||||
|
||||
variable a equal 5.431
|
||||
lattice custom $a a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
lattice custom 5.431 a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
Lattice spacing in x,y,z = 5.4310000 5.4310000 5.4310000
|
||||
|
||||
region myreg block 0 4 0 4 0 4
|
||||
|
||||
create_box 8 myreg
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 region myreg basis 1 1 basis 2 2 basis 3 3 basis 4 4 basis 5 5 basis 6 6 basis 7 7 basis 8 8
|
||||
Created 512 atoms
|
||||
create_atoms CPU = 0.000 seconds
|
||||
|
||||
mass * 28.06
|
||||
|
||||
velocity all create $t 5287287 loop geom
|
||||
velocity all create 1800 5287287 loop geom
|
||||
|
||||
# Equilibrate using Stillinger-Weber model for silicon
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * Si.sw Si Si Si Si Si Si Si Si
|
||||
Reading sw potential file Si.sw with DATE: 2007-06-11
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.77118
|
||||
ghost atom cutoff = 4.77118
|
||||
binsize = 2.38559, bins = 10 10 10
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.983 | 2.983 | 2.983 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 1800 -2220.3392 0 -2101.4457 12358.626
|
||||
10 1006.0192 -2167.7053 0 -2101.3286 13892.426
|
||||
20 588.26396 -2139.7132 0 -2101.3117 11295.566
|
||||
30 990.55956 -2165.2164 0 -2101.3931 6279.0239
|
||||
40 700.12917 -2144.4279 0 -2101.3427 5594.2388
|
||||
50 523.64239 -2131.7796 0 -2101.3122 6013.0994
|
||||
60 989.47092 -2161.3716 0 -2101.3839 5819.2688
|
||||
70 877.27433 -2152.4432 0 -2101.3461 9116.6569
|
||||
80 800.80221 -2146.1371 0 -2101.313 11995.66
|
||||
90 1293.9689 -2176.9021 0 -2101.3848 11692.45
|
||||
100 1112.9699 -2162.7259 0 -2101.3478 12263.758
|
||||
Loop time of 0.092666 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 93.238 ns/day, 0.257 hours/ns, 1079.144 timesteps/s
|
||||
99.1% 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.089633 | 0.089633 | 0.089633 | 0.0 | 96.73
|
||||
Neigh | 0.001474 | 0.001474 | 0.001474 | 0.0 | 1.59
|
||||
Comm | 0.00041 | 0.00041 | 0.00041 | 0.0 | 0.44
|
||||
Output | 0.000153 | 0.000153 | 0.000153 | 0.0 | 0.17
|
||||
Modify | 0.000782 | 0.000782 | 0.000782 | 0.0 | 0.84
|
||||
Other | | 0.000214 | | | 0.23
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1017.00 ave 1017 max 1017 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 13988.0 ave 13988 max 13988 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 13988
|
||||
Ave neighs/atom = 27.320312
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Test Stillinger-Weber model for Cd/Te/Zn/Se/Hg/S
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.002 seconds
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * CdTeZnSeHgS0.sw Cd Zn Hg Cd Te S Se Te
|
||||
Reading sw potential file CdTeZnSeHgS0.sw with DATE: 2013-08-09
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.6320004
|
||||
ghost atom cutoff = 5.6320004
|
||||
binsize = 2.8160002, bins = 8 8 8
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.001 | 3.001 | 3.001 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -625.76163 0 -564.38354 462129.66
|
||||
110 1502.8461 -649.55768 0 -564.45814 463413.45
|
||||
120 1926.4523 -674.71265 0 -564.53612 486338.88
|
||||
130 1152.6663 -621.47264 0 -564.37203 514892.2
|
||||
140 1762.244 -659.86941 0 -564.4985 488159.88
|
||||
150 1767.8665 -657.67178 0 -564.48386 466721.31
|
||||
160 1075.2874 -610.12809 0 -564.36709 470151.9
|
||||
170 1697.9313 -649.3684 0 -564.47207 467953.71
|
||||
180 1856.1197 -657.14338 0 -564.48754 488372.27
|
||||
190 1346.1107 -621.42431 0 -564.38065 511750.04
|
||||
200 1919.5266 -657.26587 0 -564.47797 488684.56
|
||||
Loop time of 0.289193 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 29.876 ns/day, 0.803 hours/ns, 345.790 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 | 0.28463 | 0.28463 | 0.28463 | 0.0 | 98.42
|
||||
Neigh | 0.002821 | 0.002821 | 0.002821 | 0.0 | 0.98
|
||||
Comm | 0.000605 | 0.000605 | 0.000605 | 0.0 | 0.21
|
||||
Output | 0.000176 | 0.000176 | 0.000176 | 0.0 | 0.06
|
||||
Modify | 0.000769 | 0.000769 | 0.000769 | 0.0 | 0.27
|
||||
Other | | 0.000188 | | | 0.07
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1428.00 ave 1428 max 1428 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 17344.0 ave 17344 max 17344 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 17344
|
||||
Ave neighs/atom = 33.875000
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Vashishta model for In/P
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style vashishta
|
||||
pair_coeff * * InP.vashishta In In In In P P P P
|
||||
Reading vashishta potential file InP.vashishta with DATE: 2015-10-14
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7
|
||||
ghost atom cutoff = 7
|
||||
binsize = 3.5, bins = 7 7 7
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair vashishta, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.025 | 3.025 | 3.025 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -1497.2988 0 -1435.9207 355619.19
|
||||
110 1250.545 -1504.5795 0 -1435.9786 345188.52
|
||||
120 1360.2275 -1509.3443 0 -1435.9801 333306.3
|
||||
130 1066.4516 -1487.9076 0 -1435.9076 334465.11
|
||||
140 1481.0477 -1513.0511 0 -1435.988 308725.1
|
||||
150 1216.1167 -1493.0774 0 -1435.9217 304249.09
|
||||
160 1211.4398 -1490.7459 0 -1435.9164 288897.09
|
||||
170 1542.2025 -1510.0774 0 -1435.9608 260104.14
|
||||
180 1302.9041 -1491.7765 0 -1435.8971 249514.04
|
||||
190 1332.3326 -1491.5271 0 -1435.9213 227537.99
|
||||
200 1352.1813 -1490.4513 0 -1435.9049 207626.42
|
||||
Loop time of 0.126684 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 68.201 ns/day, 0.352 hours/ns, 789.366 timesteps/s
|
||||
99.3% 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.11981 | 0.11981 | 0.11981 | 0.0 | 94.57
|
||||
Neigh | 0.004903 | 0.004903 | 0.004903 | 0.0 | 3.87
|
||||
Comm | 0.000846 | 0.000846 | 0.000846 | 0.0 | 0.67
|
||||
Output | 0.000145 | 0.000145 | 0.000145 | 0.0 | 0.11
|
||||
Modify | 0.000772 | 0.000772 | 0.000772 | 0.0 | 0.61
|
||||
Other | | 0.000207 | | | 0.16
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1838.00 ave 1838 max 1838 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 36482.0 ave 36482 max 36482 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 36482
|
||||
Ave neighs/atom = 71.253906
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff model for B/N/C
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
variable fac equal 0.6
|
||||
change_box all x scale ${fac} y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale 0.6 remap
|
||||
Changing box ...
|
||||
orthogonal box = (4.3448000 0.0000000 0.0000000) to (17.379200 21.724000 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 0.0000000) to (17.379200 17.379200 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 4.3448000) to (17.379200 17.379200 17.379200)
|
||||
|
||||
pair_style tersoff
|
||||
pair_coeff * * BNC.tersoff N N N C B B C B
|
||||
Reading tersoff potential file BNC.tersoff with DATE: 2013-03-21
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 9
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.982 | 2.982 | 2.982 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -3259.7676 0 -3198.3895 1912461.3
|
||||
110 1772.8268 -3301.5479 0 -3198.8218 1885295.6
|
||||
120 1169.7287 -3258.74 0 -3197.9294 1898705.2
|
||||
130 1308.5623 -3265.1338 0 -3197.5922 1894187.5
|
||||
140 1486.0361 -3274.951 0 -3197.776 1871927.6
|
||||
150 1419.0362 -3267.7302 0 -3197.2296 1925234.6
|
||||
160 1196.6689 -3250.1492 0 -3196.7078 1902235.1
|
||||
170 1707.5846 -3281.7658 0 -3196.9721 1863047.3
|
||||
180 1337.4358 -3254.9844 0 -3196.8222 1880420.9
|
||||
190 1441.8052 -3259.0364 0 -3196.3556 1904512.1
|
||||
200 1569.0317 -3265.0089 0 -3196.3328 1899462.7
|
||||
Loop time of 0.114312 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 75.583 ns/day, 0.318 hours/ns, 874.799 timesteps/s
|
||||
99.3% 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.1121 | 0.1121 | 0.1121 | 0.0 | 98.06
|
||||
Neigh | 0.000773 | 0.000773 | 0.000773 | 0.0 | 0.68
|
||||
Comm | 0.000415 | 0.000415 | 0.000415 | 0.0 | 0.36
|
||||
Output | 0.000136 | 0.000136 | 0.000136 | 0.0 | 0.12
|
||||
Modify | 0.000703 | 0.000703 | 0.000703 | 0.0 | 0.61
|
||||
Other | | 0.000186 | | | 0.16
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1028.00 ave 1028 max 1028 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 14604.0 ave 14604 max 14604 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 14604
|
||||
Ave neighs/atom = 28.523438
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff/Mod model for Si
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style tersoff/mod
|
||||
pair_coeff * * Si.tersoff.mod Si Si Si Si Si Si Si Si
|
||||
Reading tersoff/mod potential file Si.tersoff.mod with DATE: 2013-07-26
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.3
|
||||
ghost atom cutoff = 4.3
|
||||
binsize = 2.15, bins = 11 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff/mod, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.986 | 2.986 | 2.986 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -2309.6047 0 -2248.2266 17662.891
|
||||
110 835.77436 -2289.6119 0 -2248.1918 19964.211
|
||||
120 1067.0735 -2303.0587 0 -2248.2414 13767.101
|
||||
130 957.60664 -2293.7047 0 -2248.2139 14850.338
|
||||
140 865.12471 -2285.7774 0 -2248.1971 17101.553
|
||||
150 1104.7368 -2299.5468 0 -2248.2286 13031.988
|
||||
160 1077.1682 -2295.3841 0 -2248.2227 13615.019
|
||||
170 843.8591 -2277.9713 0 -2248.1911 18966.532
|
||||
180 1008.7412 -2286.922 0 -2248.2075 17275.649
|
||||
190 1237.9346 -2299.5487 0 -2248.2305 14334.006
|
||||
200 1060.2161 -2285.3352 0 -2248.1952 18999.834
|
||||
Loop time of 0.12412 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 69.610 ns/day, 0.345 hours/ns, 805.672 timesteps/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.12079 | 0.12079 | 0.12079 | 0.0 | 97.32
|
||||
Neigh | 0.001821 | 0.001821 | 0.001821 | 0.0 | 1.47
|
||||
Comm | 0.000407 | 0.000407 | 0.000407 | 0.0 | 0.33
|
||||
Output | 0.000159 | 0.000159 | 0.000159 | 0.0 | 0.13
|
||||
Modify | 0.000736 | 0.000736 | 0.000736 | 0.0 | 0.59
|
||||
Other | | 0.000203 | | | 0.16
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1007.00 ave 1007 max 1007 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 8884.00 ave 8884 max 8884 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 8884
|
||||
Ave neighs/atom = 17.351562
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff/Mod/C model for Si
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
newton on on
|
||||
pair_style tersoff/mod/c
|
||||
pair_coeff * * Si.tersoff.modc Si Si Si Si Si Si Si Si
|
||||
Reading tersoff/mod/c potential file Si.tersoff.modc with DATE: 2016-11-09
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.205694
|
||||
ghost atom cutoff = 4.205694
|
||||
binsize = 2.102847, bins = 11 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff/mod/c, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.980 | 2.980 | 2.980 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -2309.1331 0 -2247.755 20346.718
|
||||
110 831.93715 -2288.8853 0 -2247.7187 21758.195
|
||||
120 1077.6698 -2303.2846 0 -2247.7693 16036.053
|
||||
130 972.43247 -2294.1847 0 -2247.7467 16614.835
|
||||
140 815.76148 -2282.0495 0 -2247.7194 18310.116
|
||||
150 1072.7096 -2297.0491 0 -2247.7574 13896.767
|
||||
160 1061.8824 -2294.0028 0 -2247.7522 13663.179
|
||||
170 787.17244 -2273.8946 0 -2247.7175 18586.606
|
||||
180 932.5662 -2281.6828 0 -2247.7315 18154.167
|
||||
190 1205.7299 -2297.2769 0 -2247.7608 14504.136
|
||||
200 1022.5285 -2282.7039 0 -2247.7245 18710.495
|
||||
Loop time of 0.12973 on 1 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 66.600 ns/day, 0.360 hours/ns, 770.832 timesteps/s
|
||||
99.3% 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.12643 | 0.12643 | 0.12643 | 0.0 | 97.45
|
||||
Neigh | 0.001798 | 0.001798 | 0.001798 | 0.0 | 1.39
|
||||
Comm | 0.000421 | 0.000421 | 0.000421 | 0.0 | 0.32
|
||||
Output | 0.00016 | 0.00016 | 0.00016 | 0.0 | 0.12
|
||||
Modify | 0.000733 | 0.000733 | 0.000733 | 0.0 | 0.57
|
||||
Other | | 0.000192 | | | 0.15
|
||||
|
||||
Nlocal: 512.000 ave 512 max 512 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 958.000 ave 958 max 958 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 8416.00 ave 8416 max 8416 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 8416
|
||||
Ave neighs/atom = 16.437500
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:00
|
||||
@ -1,547 +0,0 @@
|
||||
LAMMPS (30 Nov 2020)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Simple regression tests for threebody potentials
|
||||
|
||||
# NOTE: These are not intended to represent real materials
|
||||
|
||||
units metal
|
||||
|
||||
atom_style atomic
|
||||
atom_modify map array
|
||||
boundary p p p
|
||||
atom_modify sort 0 0.0
|
||||
|
||||
# temperature
|
||||
|
||||
variable t equal 1800.0
|
||||
|
||||
# cubic diamond unit cell
|
||||
|
||||
variable a equal 5.431
|
||||
lattice custom $a a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
lattice custom 5.431 a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 1.0 basis 0.0 0.0 0.0 basis 0.0 0.5 0.5 basis 0.5 0.0 0.5 basis 0.5 0.5 0.0 basis 0.25 0.25 0.25 basis 0.25 0.75 0.75 basis 0.75 0.25 0.75 basis 0.75 0.75 0.25
|
||||
Lattice spacing in x,y,z = 5.4310000 5.4310000 5.4310000
|
||||
|
||||
region myreg block 0 4 0 4 0 4
|
||||
|
||||
create_box 8 myreg
|
||||
Created orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
create_atoms 1 region myreg basis 1 1 basis 2 2 basis 3 3 basis 4 4 basis 5 5 basis 6 6 basis 7 7 basis 8 8
|
||||
Created 512 atoms
|
||||
create_atoms CPU = 0.001 seconds
|
||||
|
||||
mass * 28.06
|
||||
|
||||
velocity all create $t 5287287 loop geom
|
||||
velocity all create 1800 5287287 loop geom
|
||||
|
||||
# Equilibrate using Stillinger-Weber model for silicon
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * Si.sw Si Si Si Si Si Si Si Si
|
||||
Reading sw potential file Si.sw with DATE: 2007-06-11
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.77118
|
||||
ghost atom cutoff = 4.77118
|
||||
binsize = 2.38559, bins = 10 10 10
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.958 | 2.958 | 2.958 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 1800 -2220.3392 0 -2101.4457 12358.626
|
||||
10 1006.0192 -2167.7053 0 -2101.3286 13892.426
|
||||
20 588.26396 -2139.7132 0 -2101.3117 11295.566
|
||||
30 990.55956 -2165.2164 0 -2101.3931 6279.0239
|
||||
40 700.12917 -2144.4279 0 -2101.3427 5594.2388
|
||||
50 523.64239 -2131.7796 0 -2101.3122 6013.0994
|
||||
60 989.47092 -2161.3716 0 -2101.3839 5819.2688
|
||||
70 877.27433 -2152.4432 0 -2101.3461 9116.6569
|
||||
80 800.80221 -2146.1371 0 -2101.313 11995.66
|
||||
90 1293.9689 -2176.9021 0 -2101.3848 11692.45
|
||||
100 1112.9699 -2162.7259 0 -2101.3478 12263.758
|
||||
Loop time of 0.0284905 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 303.259 ns/day, 0.079 hours/ns, 3509.942 timesteps/s
|
||||
99.0% 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.022257 | 0.023383 | 0.025192 | 0.7 | 82.07
|
||||
Neigh | 0.00036 | 0.00037475 | 0.000387 | 0.0 | 1.32
|
||||
Comm | 0.002084 | 0.0039075 | 0.005034 | 1.8 | 13.72
|
||||
Output | 9.9e-05 | 0.00011525 | 0.00016 | 0.0 | 0.40
|
||||
Modify | 0.000428 | 0.00043675 | 0.000443 | 0.0 | 1.53
|
||||
Other | | 0.0002728 | | | 0.96
|
||||
|
||||
Nlocal: 128.000 ave 132 max 125 min
|
||||
Histogram: 1 1 0 0 0 1 0 0 0 1
|
||||
Nghost: 525.000 ave 528 max 521 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 1 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 3497.00 ave 3619 max 3397 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 13988
|
||||
Ave neighs/atom = 27.320312
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
|
||||
write_restart restart.equil
|
||||
System init for write_restart ...
|
||||
|
||||
# Test Stillinger-Weber model for Cd/Te/Zn/Se/Hg/S
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.000 seconds
|
||||
|
||||
pair_style sw
|
||||
pair_coeff * * CdTeZnSeHgS0.sw Cd Zn Hg Cd Te S Se Te
|
||||
Reading sw potential file CdTeZnSeHgS0.sw with DATE: 2013-08-09
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.6320004
|
||||
ghost atom cutoff = 5.6320004
|
||||
binsize = 2.8160002, bins = 8 8 8
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair sw, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.967 | 2.967 | 2.968 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -625.76163 0 -564.38354 462129.66
|
||||
110 1502.8461 -649.55768 0 -564.45814 463413.45
|
||||
120 1926.4523 -674.71265 0 -564.53613 486338.88
|
||||
130 1152.6663 -621.47265 0 -564.37203 514892.19
|
||||
140 1762.244 -659.86941 0 -564.4985 488159.88
|
||||
150 1767.8665 -657.67179 0 -564.48386 466721.31
|
||||
160 1075.2874 -610.1281 0 -564.36709 470151.9
|
||||
170 1697.9313 -649.3684 0 -564.47208 467953.7
|
||||
180 1856.1197 -657.14338 0 -564.48754 488372.26
|
||||
190 1346.1107 -621.42432 0 -564.38065 511750.03
|
||||
200 1919.5266 -657.26587 0 -564.47797 488684.56
|
||||
Loop time of 0.084576 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 102.157 ns/day, 0.235 hours/ns, 1182.369 timesteps/s
|
||||
99.2% 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.072089 | 0.074912 | 0.076672 | 0.7 | 88.57
|
||||
Neigh | 0.000745 | 0.0008125 | 0.000883 | 0.0 | 0.96
|
||||
Comm | 0.006054 | 0.0077975 | 0.010598 | 2.1 | 9.22
|
||||
Output | 0.000129 | 0.00015525 | 0.000219 | 0.0 | 0.18
|
||||
Modify | 0.000523 | 0.000578 | 0.000641 | 0.0 | 0.68
|
||||
Other | | 0.0003213 | | | 0.38
|
||||
|
||||
Nlocal: 128.000 ave 135 max 122 min
|
||||
Histogram: 1 0 1 0 0 0 1 0 0 1
|
||||
Nghost: 759.750 ave 770 max 751 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 4336.00 ave 4563 max 4128 min
|
||||
Histogram: 1 0 1 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 17344
|
||||
Ave neighs/atom = 33.875000
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Vashishta model for In/P
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style vashishta
|
||||
pair_coeff * * InP.vashishta In In In In P P P P
|
||||
Reading vashishta potential file InP.vashishta with DATE: 2015-10-14
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 7
|
||||
ghost atom cutoff = 7
|
||||
binsize = 3.5, bins = 7 7 7
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair vashishta, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.988 | 2.988 | 2.988 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -1497.2988 0 -1435.9207 355619.19
|
||||
110 1250.545 -1504.5795 0 -1435.9786 345188.52
|
||||
120 1360.2275 -1509.3443 0 -1435.9801 333306.3
|
||||
130 1066.4516 -1487.9076 0 -1435.9076 334465.11
|
||||
140 1481.0477 -1513.0511 0 -1435.988 308725.1
|
||||
150 1216.1167 -1493.0774 0 -1435.9217 304249.09
|
||||
160 1211.4398 -1490.7459 0 -1435.9164 288897.09
|
||||
170 1542.2025 -1510.0774 0 -1435.9608 260104.14
|
||||
180 1302.9041 -1491.7765 0 -1435.8971 249514.04
|
||||
190 1332.3326 -1491.5271 0 -1435.9213 227537.99
|
||||
200 1352.1813 -1490.4513 0 -1435.9049 207626.42
|
||||
Loop time of 0.0404882 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 213.395 ns/day, 0.112 hours/ns, 2469.852 timesteps/s
|
||||
99.1% 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.032713 | 0.033094 | 0.033544 | 0.2 | 81.74
|
||||
Neigh | 0.001251 | 0.0012875 | 0.001308 | 0.1 | 3.18
|
||||
Comm | 0.004788 | 0.005204 | 0.00557 | 0.4 | 12.85
|
||||
Output | 0.000123 | 0.0001385 | 0.000182 | 0.0 | 0.34
|
||||
Modify | 0.000492 | 0.00050725 | 0.000533 | 0.0 | 1.25
|
||||
Other | | 0.0002565 | | | 0.63
|
||||
|
||||
Nlocal: 128.000 ave 131 max 124 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
Nghost: 1013.25 ave 1025 max 1002 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 9120.50 ave 9356 max 8868 min
|
||||
Histogram: 1 0 0 0 1 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 36482
|
||||
Ave neighs/atom = 71.253906
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff model for B/N/C
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
variable fac equal 0.6
|
||||
change_box all x scale ${fac} y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale ${fac} z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale ${fac} remap
|
||||
change_box all x scale 0.6 y scale 0.6 z scale 0.6 remap
|
||||
Changing box ...
|
||||
orthogonal box = (4.3448000 0.0000000 0.0000000) to (17.379200 21.724000 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 0.0000000) to (17.379200 17.379200 21.724000)
|
||||
orthogonal box = (4.3448000 4.3448000 4.3448000) to (17.379200 17.379200 17.379200)
|
||||
|
||||
pair_style tersoff
|
||||
pair_coeff * * BNC.tersoff N N N C B B C B
|
||||
Reading tersoff potential file BNC.tersoff with DATE: 2013-03-21
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 9
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.948 | 2.948 | 2.948 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -3259.7676 0 -3198.3895 1912461.3
|
||||
110 1772.8268 -3301.5479 0 -3198.8218 1885295.6
|
||||
120 1169.7287 -3258.74 0 -3197.9294 1898705.2
|
||||
130 1308.5623 -3265.1338 0 -3197.5922 1894187.5
|
||||
140 1486.0361 -3274.951 0 -3197.776 1871927.6
|
||||
150 1419.0362 -3267.7302 0 -3197.2296 1925234.6
|
||||
160 1196.6689 -3250.1492 0 -3196.7078 1902235.1
|
||||
170 1707.5846 -3281.7658 0 -3196.9721 1863047.3
|
||||
180 1337.4358 -3254.9844 0 -3196.8222 1880420.9
|
||||
190 1441.8052 -3259.0364 0 -3196.3556 1904512.1
|
||||
200 1569.0317 -3265.0089 0 -3196.3328 1899462.7
|
||||
Loop time of 0.03452 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 250.290 ns/day, 0.096 hours/ns, 2896.871 timesteps/s
|
||||
99.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.029269 | 0.029729 | 0.030688 | 0.3 | 86.12
|
||||
Neigh | 0.000203 | 0.00023375 | 0.000271 | 0.0 | 0.68
|
||||
Comm | 0.00275 | 0.0036492 | 0.004132 | 0.9 | 10.57
|
||||
Output | 0.000104 | 0.000121 | 0.000165 | 0.0 | 0.35
|
||||
Modify | 0.000456 | 0.0004605 | 0.000463 | 0.0 | 1.33
|
||||
Other | | 0.000326 | | | 0.94
|
||||
|
||||
Nlocal: 128.000 ave 132 max 123 min
|
||||
Histogram: 1 0 0 0 0 1 1 0 0 1
|
||||
Nghost: 529.500 ave 533 max 524 min
|
||||
Histogram: 1 0 0 0 0 0 1 1 0 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 3651.00 ave 3783 max 3494 min
|
||||
Histogram: 1 0 0 0 0 1 1 0 0 1
|
||||
|
||||
Total # of neighbors = 14604
|
||||
Ave neighs/atom = 28.523438
|
||||
Neighbor list builds = 1
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff/Mod model for Si
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
|
||||
pair_style tersoff/mod
|
||||
pair_coeff * * Si.tersoff.mod Si Si Si Si Si Si Si Si
|
||||
Reading tersoff/mod potential file Si.tersoff.mod with DATE: 2013-07-26
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.3
|
||||
ghost atom cutoff = 4.3
|
||||
binsize = 2.15, bins = 11 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff/mod, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.950 | 2.950 | 2.950 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -2309.6047 0 -2248.2266 17662.891
|
||||
110 835.77436 -2289.6119 0 -2248.1918 19964.211
|
||||
120 1067.0735 -2303.0587 0 -2248.2414 13767.101
|
||||
130 957.60664 -2293.7047 0 -2248.2139 14850.338
|
||||
140 865.12471 -2285.7774 0 -2248.1971 17101.553
|
||||
150 1104.7368 -2299.5468 0 -2248.2286 13031.988
|
||||
160 1077.1682 -2295.3841 0 -2248.2227 13615.019
|
||||
170 843.8591 -2277.9713 0 -2248.1911 18966.532
|
||||
180 1008.7412 -2286.922 0 -2248.2075 17275.649
|
||||
190 1237.9346 -2299.5487 0 -2248.2305 14334.006
|
||||
200 1060.2161 -2285.3352 0 -2248.1952 18999.834
|
||||
Loop time of 0.043388 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 199.133 ns/day, 0.121 hours/ns, 2304.785 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.033874 | 0.036197 | 0.037433 | 0.7 | 83.43
|
||||
Neigh | 0.000538 | 0.00055575 | 0.000575 | 0.0 | 1.28
|
||||
Comm | 0.004381 | 0.0055505 | 0.007783 | 1.8 | 12.79
|
||||
Output | 0.000141 | 0.0001635 | 0.000228 | 0.0 | 0.38
|
||||
Modify | 0.000532 | 0.000615 | 0.000692 | 0.0 | 1.42
|
||||
Other | | 0.000306 | | | 0.71
|
||||
|
||||
Nlocal: 128.000 ave 135 max 121 min
|
||||
Histogram: 1 0 0 0 1 1 0 0 0 1
|
||||
Nghost: 515.000 ave 518 max 508 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 1 2
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 2221.00 ave 2328 max 2103 min
|
||||
Histogram: 1 0 0 0 1 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 8884
|
||||
Ave neighs/atom = 17.351562
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
# Test Tersoff/Mod/C model for Si
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:94)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
read_restart restart.equil
|
||||
Reading restart file ...
|
||||
restart file = 30 Nov 2020, LAMMPS = 30 Nov 2020
|
||||
restoring atom style atomic from restart
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (21.724000 21.724000 21.724000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
pair style sw stores no restart info
|
||||
512 atoms
|
||||
read_restart CPU = 0.001 seconds
|
||||
newton on on
|
||||
pair_style tersoff/mod/c
|
||||
pair_coeff * * Si.tersoff.modc Si Si Si Si Si Si Si Si
|
||||
Reading tersoff/mod/c potential file Si.tersoff.modc with DATE: 2016-11-09
|
||||
|
||||
thermo 10
|
||||
fix 1 all nvt temp $t $t 0.1
|
||||
fix 1 all nvt temp 1800 $t 0.1
|
||||
fix 1 all nvt temp 1800 1800 0.1
|
||||
Resetting global fix info from restart file:
|
||||
fix style: nvt, fix ID: 1
|
||||
fix_modify 1 energy yes
|
||||
timestep 1.0e-3
|
||||
neighbor 1.0 bin
|
||||
neigh_modify every 1 delay 10 check yes
|
||||
run 100
|
||||
All restart file global fix info was re-assigned
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.205694
|
||||
ghost atom cutoff = 4.205694
|
||||
binsize = 2.102847, bins = 11 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair tersoff/mod/c, perpetual
|
||||
attributes: full, newton on
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.950 | 2.950 | 2.950 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100 1112.9699 -2309.1331 0 -2247.755 20346.718
|
||||
110 831.93715 -2288.8853 0 -2247.7187 21758.195
|
||||
120 1077.6698 -2303.2846 0 -2247.7693 16036.053
|
||||
130 972.43247 -2294.1847 0 -2247.7467 16614.835
|
||||
140 815.76148 -2282.0495 0 -2247.7194 18310.116
|
||||
150 1072.7096 -2297.0491 0 -2247.7574 13896.767
|
||||
160 1061.8824 -2294.0028 0 -2247.7522 13663.179
|
||||
170 787.17244 -2273.8946 0 -2247.7175 18586.606
|
||||
180 932.5662 -2281.6828 0 -2247.7315 18154.167
|
||||
190 1205.7299 -2297.2769 0 -2247.7608 14504.136
|
||||
200 1022.5285 -2282.7039 0 -2247.7245 18710.495
|
||||
Loop time of 0.0526065 on 4 procs for 100 steps with 512 atoms
|
||||
|
||||
Performance: 164.238 ns/day, 0.146 hours/ns, 1900.906 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.044962 | 0.045875 | 0.046737 | 0.3 | 87.20
|
||||
Neigh | 0.000603 | 0.00062075 | 0.000646 | 0.0 | 1.18
|
||||
Comm | 0.003882 | 0.0047085 | 0.005598 | 1.0 | 8.95
|
||||
Output | 0.000159 | 0.0001995 | 0.000321 | 0.0 | 0.38
|
||||
Modify | 0.000767 | 0.0007775 | 0.000792 | 0.0 | 1.48
|
||||
Other | | 0.0004255 | | | 0.81
|
||||
|
||||
Nlocal: 128.000 ave 131 max 122 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 483.000 ave 485 max 479 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 2104.00 ave 2169 max 2008 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 1 1
|
||||
|
||||
Total # of neighbors = 8416
|
||||
Ave neighs/atom = 16.437500
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
|
||||
Total wall time: 0:00:00
|
||||
@ -153,7 +153,7 @@ void FixWallColloid::wall_particle(int m, int which, double coord)
|
||||
if (evflag) {
|
||||
if (side < 0) vn = -fwall*delta;
|
||||
else vn = fwall*delta;
|
||||
v_tally(dim, i, vn);
|
||||
v_tally(dim,i,vn);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -332,8 +332,7 @@ void FixShakeKokkos<DeviceType>::post_force(int vflag)
|
||||
|
||||
// virial setup
|
||||
|
||||
if (vflag) v_setup(vflag);
|
||||
else evflag = 0;
|
||||
v_init(vflag);
|
||||
|
||||
// reallocate per-atom arrays if necessary
|
||||
|
||||
|
||||
@ -31,7 +31,7 @@ FixWallLJ93Kokkos<DeviceType>::FixWallLJ93Kokkos(LAMMPS *lmp, int narg, char **a
|
||||
execution_space = ExecutionSpaceFromDevice<DeviceType>::space;
|
||||
datamask_read = EMPTY_MASK;
|
||||
datamask_modify = EMPTY_MASK;
|
||||
virial_flag = 0;
|
||||
virial_global_flag = virial_peratom_flag = 0;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
@ -350,27 +350,62 @@ void ModifyKokkos::end_of_step()
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
thermo energy call, only for relevant fixes
|
||||
called by Thermo class
|
||||
compute_scalar() is fix call to return energy
|
||||
coupling energy call, only for relevant fixes
|
||||
each thermostsat fix returns this via compute_scalar()
|
||||
ecouple = cumulative energy added to reservoir by thermostatting
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
double ModifyKokkos::thermo_energy()
|
||||
double ModifyKokkos::energy_couple()
|
||||
{
|
||||
double energy = 0.0;
|
||||
for (int i = 0; i < n_thermo_energy; i++) {
|
||||
atomKK->sync(fix[list_thermo_energy[i]]->execution_space,
|
||||
fix[list_thermo_energy[i]]->datamask_read);
|
||||
for (int i = 0; i < n_energy_couple; i++) {
|
||||
int prev_auto_sync = lmp->kokkos->auto_sync;
|
||||
if (!fix[list_thermo_energy[i]]->kokkosable) lmp->kokkos->auto_sync = 1;
|
||||
energy += fix[list_thermo_energy[i]]->compute_scalar();
|
||||
if (!fix[list_energy_couple[i]]->kokkosable) lmp->kokkos->auto_sync = 1;
|
||||
energy += fix[list_energy_couple[i]]->compute_scalar();
|
||||
lmp->kokkos->auto_sync = prev_auto_sync;
|
||||
atomKK->modified(fix[list_thermo_energy[i]]->execution_space,
|
||||
fix[list_thermo_energy[i]]->datamask_modify);
|
||||
atomKK->modified(fix[list_energy_couple[i]]->execution_space,
|
||||
fix[list_energy_couple[i]]->datamask_modify);
|
||||
}
|
||||
return energy;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
global energy call, only for relevant fixes
|
||||
they return energy via compute_scalar()
|
||||
called by compute pe
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
double ModifyKokkos::energy_global()
|
||||
{
|
||||
double energy = 0.0;
|
||||
for (int i = 0; i < n_energy_global; i++) {
|
||||
int prev_auto_sync = lmp->kokkos->auto_sync;
|
||||
if (!fix[list_energy_global[i]]->kokkosable) lmp->kokkos->auto_sync = 1;
|
||||
energy += fix[list_energy_global[i]]->compute_scalar();
|
||||
lmp->kokkos->auto_sync = prev_auto_sync;
|
||||
atomKK->modified(fix[list_energy_global[i]]->execution_space,
|
||||
fix[list_energy_global[i]]->datamask_modify);
|
||||
}
|
||||
return energy;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
peratom energy call, only for relevant fixes
|
||||
called by compute pe/atom
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void ModifyKokkos::energy_atom(int nlocal, double *energy)
|
||||
{
|
||||
int i,j;
|
||||
double *eatom;
|
||||
|
||||
for (i = 0; i < n_energy_atom; i++) {
|
||||
eatom = fix[list_energy_atom[i]]->eatom;
|
||||
if (!eatom) continue;
|
||||
for (j = 0; j < nlocal; j++) energy[j] += eatom[j];
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
post_run call
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
@ -37,7 +37,9 @@ class ModifyKokkos : public Modify {
|
||||
void post_force(int);
|
||||
void final_integrate();
|
||||
void end_of_step();
|
||||
double thermo_energy();
|
||||
double energy_couple();
|
||||
double energy_global();
|
||||
void energy_atom(int, double *);
|
||||
void post_run();
|
||||
|
||||
void setup_pre_force_respa(int, int);
|
||||
|
||||
@ -463,7 +463,7 @@ void PPPMDipole::compute(int eflag, int vflag)
|
||||
|
||||
if (evflag_atom)
|
||||
gc_dipole->forward_comm_kspace(this,18,sizeof(FFT_SCALAR),FORWARD_MU_PERATOM,
|
||||
gc_buf1,gc_buf2,MPI_FFT_SCALAR);
|
||||
gc_buf1,gc_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
// calculate the force on my particles
|
||||
|
||||
@ -1333,7 +1333,7 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
wimg = (work1[n+1]*fkx[i] + work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
energy +=
|
||||
s2 * greensfn[ii] * (wreal*wreal + wimg*wimg);
|
||||
ii++;
|
||||
ii++;
|
||||
n += 2;
|
||||
}
|
||||
}
|
||||
@ -1430,9 +1430,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fkx[i]*fkx[i]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fkx[i]*fkx[i]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1453,9 +1453,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fky[j]*fky[j]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fky[j]*fky[j]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1476,9 +1476,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fkz[k]*fkz[k]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fkz[k]*fkz[k]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1499,9 +1499,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fkx[i]*fky[j]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fkx[i]*fky[j]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1522,9 +1522,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fkx[i]*fkz[k]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fkx[i]*fkz[k]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1545,9 +1545,9 @@ void PPPMDipole::poisson_ik_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = -fky[j]*fkz[k]*(work1[n+1]*fkx[i] +
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work2[n+1]*fky[j] + work3[n+1]*fkz[k]);
|
||||
work4[n+1] = fky[j]*fkz[k]*(work1[n]*fkx[i] +
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
work2[n]*fky[j] + work3[n]*fkz[k]);
|
||||
n += 2;
|
||||
}
|
||||
|
||||
@ -1582,9 +1582,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][0]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][0]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1607,9 +1607,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][0]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][0]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1632,9 +1632,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][0]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkx[i]*work1[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][0]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkx[i]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1657,9 +1657,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][1]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][1]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1682,9 +1682,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][1]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][1]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1707,9 +1707,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][1]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work2[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][1]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1732,9 +1732,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][2]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][2]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1757,9 +1757,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][2]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][2]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1782,9 +1782,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][2]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work3[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][2]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work3[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1807,9 +1807,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][3]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][3]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1832,9 +1832,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][3]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][3]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1857,9 +1857,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][3]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fky[j]*work1[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][3]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fky[j]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1882,9 +1882,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][4]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][4]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1907,9 +1907,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][4]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][4]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1932,9 +1932,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][4]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work1[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][4]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work1[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1957,9 +1957,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkx[i]*(vg[ii][5]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work4[n+1] = fkx[i]*(vg[ii][5]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -1982,9 +1982,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fky[j]*(vg[ii][5]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work4[n+1] = fky[j]*(vg[ii][5]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
@ -2007,9 +2007,9 @@ void PPPMDipole::poisson_peratom_dipole()
|
||||
for (j = nylo_fft; j <= nyhi_fft; j++)
|
||||
for (i = nxlo_fft; i <= nxhi_fft; i++) {
|
||||
work4[n] = fkz[k]*(vg[ii][5]*(work1[n]*fkx[i] + work2[n]*fky[j] +
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work3[n]*fkz[k]) + 2.0*fkz[k]*work2[n]);
|
||||
work4[n+1] = fkz[k]*(vg[ii][5]*(work1[n+1]*fkx[i] + work2[n+1]*fky[j] +
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
work3[n+1]*fkz[k]) + 2.0*fkz[k]*work2[n+1]);
|
||||
n += 2;
|
||||
ii++;
|
||||
}
|
||||
|
||||
@ -689,9 +689,9 @@ void PPPMDisp::setup()
|
||||
vg[n][3] = 0.0;
|
||||
vg[n][4] = 0.0;
|
||||
vg[n][5] = 0.0;
|
||||
vg2[n][0] = 0.0;
|
||||
vg2[n][1] = 0.0;
|
||||
vg2[n][2] = 0.0;
|
||||
vg2[n][0] = 0.0;
|
||||
vg2[n][1] = 0.0;
|
||||
vg2[n][2] = 0.0;
|
||||
} else {
|
||||
vterm = -2.0 * (1.0/sqk + 0.25*gew2inv);
|
||||
vg[n][0] = 1.0 + vterm*fkx[i]*fkx[i];
|
||||
@ -1048,7 +1048,7 @@ void PPPMDisp::compute(int eflag, int vflag)
|
||||
make_rho_a();
|
||||
|
||||
gc6->reverse_comm_kspace(this,7,sizeof(FFT_SCALAR),REVERSE_RHO_ARITH,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
brick2fft_a();
|
||||
|
||||
@ -1143,7 +1143,7 @@ void PPPMDisp::compute(int eflag, int vflag)
|
||||
make_rho_none();
|
||||
|
||||
gc6->reverse_comm_kspace(this,nsplit_alloc,sizeof(FFT_SCALAR),REVERSE_RHO_NONE,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
brick2fft_none();
|
||||
|
||||
@ -1158,14 +1158,14 @@ void PPPMDisp::compute(int eflag, int vflag)
|
||||
}
|
||||
|
||||
gc6->forward_comm_kspace(this,1*nsplit_alloc,sizeof(FFT_SCALAR),
|
||||
FORWARD_AD_NONE,
|
||||
FORWARD_AD_NONE,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
fieldforce_none_ad();
|
||||
|
||||
if (vflag_atom)
|
||||
gc6->forward_comm_kspace(this,6*nsplit_alloc,sizeof(FFT_SCALAR),
|
||||
FORWARD_AD_PERATOM_NONE,
|
||||
FORWARD_AD_PERATOM_NONE,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
} else {
|
||||
@ -1180,14 +1180,14 @@ void PPPMDisp::compute(int eflag, int vflag)
|
||||
}
|
||||
|
||||
gc6->forward_comm_kspace(this,3*nsplit_alloc,sizeof(FFT_SCALAR),
|
||||
FORWARD_IK_NONE,
|
||||
FORWARD_IK_NONE,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
|
||||
fieldforce_none_ik();
|
||||
|
||||
if (evflag_atom)
|
||||
gc6->forward_comm_kspace(this,7*nsplit_alloc,sizeof(FFT_SCALAR),
|
||||
FORWARD_IK_PERATOM_NONE,
|
||||
FORWARD_IK_PERATOM_NONE,
|
||||
gc6_buf1,gc6_buf2,MPI_FFT_SCALAR);
|
||||
}
|
||||
|
||||
@ -1321,7 +1321,7 @@ void PPPMDisp::init_coeffs()
|
||||
converged = qr_alg(A,Q,n);
|
||||
if (function[3] && !converged) {
|
||||
error->all(FLERR,
|
||||
"Matrix factorization to split dispersion coefficients failed");
|
||||
"Matrix factorization to split dispersion coefficients failed");
|
||||
}
|
||||
|
||||
// determine number of used eigenvalues
|
||||
@ -1409,8 +1409,8 @@ void PPPMDisp::init_coeffs()
|
||||
utils::logmesg(lmp,fmt::format(" Using {} structure factors\n",
|
||||
nsplit));
|
||||
if (nsplit > 9)
|
||||
error->warning(FLERR,"Simulations might be very slow "
|
||||
"because of large number of structure factors");
|
||||
error->warning(FLERR,"Simulations might be very slow "
|
||||
"because of large number of structure factors");
|
||||
}
|
||||
|
||||
memory->destroy(A);
|
||||
@ -4564,11 +4564,11 @@ void PPPMDisp::make_rho_none()
|
||||
my = m+ny;
|
||||
x0 = y0*rho1d_6[1][m];
|
||||
for (l = nlower_6; l <= nupper_6; l++) {
|
||||
mx = l+nx;
|
||||
mx = l+nx;
|
||||
w = x0*rho1d_6[0][l];
|
||||
for (k = 0; k < nsplit; k++) {
|
||||
density_brick_none[k][mz][my][mx] += w*B[nsplit*type + k];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -4813,13 +4813,13 @@ void PPPMDisp::poisson_ad(FFT_SCALAR* wk1, FFT_SCALAR* wk2,
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void PPPMDisp::poisson_peratom(FFT_SCALAR* wk1, FFT_SCALAR* wk2, LAMMPS_NS::FFT3d* ft2,
|
||||
double** vcoeff, double** vcoeff2, int nft,
|
||||
int nxlo_i, int nylo_i, int nzlo_i,
|
||||
int nxhi_i, int nyhi_i, int nzhi_i,
|
||||
FFT_SCALAR*** v0_pa, FFT_SCALAR*** v1_pa,
|
||||
FFT_SCALAR*** v2_pa,
|
||||
FFT_SCALAR*** v3_pa, FFT_SCALAR*** v4_pa,
|
||||
FFT_SCALAR*** v5_pa)
|
||||
double** vcoeff, double** vcoeff2, int nft,
|
||||
int nxlo_i, int nylo_i, int nzlo_i,
|
||||
int nxhi_i, int nyhi_i, int nzhi_i,
|
||||
FFT_SCALAR*** v0_pa, FFT_SCALAR*** v1_pa,
|
||||
FFT_SCALAR*** v2_pa,
|
||||
FFT_SCALAR*** v3_pa, FFT_SCALAR*** v4_pa,
|
||||
FFT_SCALAR*** v5_pa)
|
||||
{
|
||||
// v0 & v1 term
|
||||
|
||||
@ -5227,8 +5227,8 @@ poisson_none_ik(int n1, int n2,FFT_SCALAR* dfft_1, FFT_SCALAR* dfft_2,
|
||||
|
||||
if (vflag_atom)
|
||||
poisson_none_peratom(n1,n2,
|
||||
v0_pa[n1],v1_pa[n1],v2_pa[n1],v3_pa[n1],v4_pa[n1],v5_pa[n1],
|
||||
v0_pa[n2],v1_pa[n2],v2_pa[n2],v3_pa[n2],v4_pa[n2],v5_pa[n2]);
|
||||
v0_pa[n1],v1_pa[n1],v2_pa[n1],v3_pa[n1],v4_pa[n1],v5_pa[n1],
|
||||
v0_pa[n2],v1_pa[n2],v2_pa[n2],v3_pa[n2],v4_pa[n2],v5_pa[n2]);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
@ -5429,8 +5429,8 @@ poisson_none_ad(int n1, int n2, FFT_SCALAR* dfft_1, FFT_SCALAR* dfft_2,
|
||||
|
||||
if (vflag_atom)
|
||||
poisson_none_peratom(n1,n2,
|
||||
v0_pa[n1],v1_pa[n1],v2_pa[n1],v3_pa[n1],v4_pa[n1],v5_pa[n1],
|
||||
v0_pa[n2],v1_pa[n2],v2_pa[n2],v3_pa[n2],v4_pa[n2],v5_pa[n2]);
|
||||
v0_pa[n1],v1_pa[n1],v2_pa[n1],v3_pa[n1],v4_pa[n1],v5_pa[n1],
|
||||
v0_pa[n2],v1_pa[n2],v2_pa[n2],v3_pa[n2],v4_pa[n2],v5_pa[n2]);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
@ -69,8 +69,9 @@ FixLatte::FixLatte(LAMMPS *lmp, int narg, char **arg) :
|
||||
scalar_flag = 1;
|
||||
global_freq = 1;
|
||||
extscalar = 1;
|
||||
virial_flag = 1;
|
||||
thermo_virial = 1;
|
||||
energy_global_flag = 1;
|
||||
virial_global_flag = 1;
|
||||
thermo_energy = thermo_virial = 1;
|
||||
|
||||
// store ID of compute pe/atom used to generate Coulomb potential for LATTE
|
||||
// null pointer means LATTE will compute Coulombic potential
|
||||
@ -116,12 +117,9 @@ FixLatte::~FixLatte()
|
||||
int FixLatte::setmask()
|
||||
{
|
||||
int mask = 0;
|
||||
//mask |= INITIAL_INTEGRATE;
|
||||
//mask |= FINAL_INTEGRATE;
|
||||
mask |= PRE_REVERSE;
|
||||
mask |= POST_FORCE;
|
||||
mask |= MIN_POST_FORCE;
|
||||
mask |= THERMO_ENERGY;
|
||||
return mask;
|
||||
}
|
||||
|
||||
@ -266,9 +264,6 @@ void FixLatte::post_force(int vflag)
|
||||
// hardwire these unsupported flags for now
|
||||
|
||||
int coulombflag = 0;
|
||||
// pe_peratom = 0;
|
||||
// virial_global = 1; // set via vflag_global at some point
|
||||
// virial_peratom = 0;
|
||||
neighflag = 0;
|
||||
|
||||
// set flags used by LATTE
|
||||
|
||||
@ -2334,9 +2334,9 @@ double FixGCMC::energy_full()
|
||||
if (modify->n_post_force) modify->post_force(vflag);
|
||||
if (modify->n_end_of_step) modify->end_of_step();
|
||||
|
||||
// NOTE: all fixes with THERMO_ENERGY mask set and which
|
||||
// NOTE: all fixes with energy_global_flag set and which
|
||||
// operate at pre_force() or post_force() or end_of_step()
|
||||
// and which user has enable via fix_modify thermo yes,
|
||||
// and which user has enabled via fix_modify energy yes,
|
||||
// will contribute to total MC energy via pe->compute_scalar()
|
||||
|
||||
update->eflag_global = update->ntimestep;
|
||||
|
||||
@ -1061,9 +1061,9 @@ double FixWidom::energy_full()
|
||||
if (modify->n_pre_force) modify->pre_force(vflag);
|
||||
if (modify->n_end_of_step) modify->end_of_step();
|
||||
|
||||
// NOTE: all fixes with THERMO_ENERGY mask set and which
|
||||
// NOTE: all fixes with energy_global_flag set and which
|
||||
// operate at pre_force() or post_force() or end_of_step()
|
||||
// and which user has enable via fix_modify thermo yes,
|
||||
// and which user has enabled via fix_modify energy yes,
|
||||
// will contribute to total MC energy via pe->compute_scalar()
|
||||
|
||||
update->eflag_global = update->ntimestep;
|
||||
|
||||
@ -42,7 +42,8 @@ FixClientMD::FixClientMD(LAMMPS *lmp, int narg, char **arg) :
|
||||
{
|
||||
if (lmp->clientserver != 1)
|
||||
error->all(FLERR,"Fix client/md requires LAMMPS be running as a client");
|
||||
if (atom->map_style == Atom::MAP_NONE) error->all(FLERR,"Fix client/md requires atom map");
|
||||
if (atom->map_style == Atom::MAP_NONE)
|
||||
error->all(FLERR,"Fix client/md requires atom map");
|
||||
|
||||
if (sizeof(tagint) != 4)
|
||||
error->all(FLERR,"Fix client/md only supports 32-bit atom IDs");
|
||||
@ -54,8 +55,8 @@ FixClientMD::FixClientMD(LAMMPS *lmp, int narg, char **arg) :
|
||||
scalar_flag = 1;
|
||||
global_freq = 1;
|
||||
extscalar = 1;
|
||||
virial_flag = 1;
|
||||
thermo_virial = 1;
|
||||
energy_global_flag = virial_global_flag = 1;
|
||||
thermo_energy = thermo_virial = 1;
|
||||
|
||||
inv_nprocs = 1.0 / comm->nprocs;
|
||||
if (domain->dimension == 2)
|
||||
@ -89,7 +90,6 @@ int FixClientMD::setmask()
|
||||
int mask = 0;
|
||||
mask |= POST_FORCE;
|
||||
mask |= MIN_POST_FORCE;
|
||||
mask |= THERMO_ENERGY;
|
||||
return mask;
|
||||
}
|
||||
|
||||
@ -158,10 +158,9 @@ void FixClientMD::min_setup(int vflag)
|
||||
|
||||
void FixClientMD::post_force(int vflag)
|
||||
{
|
||||
// energy and virial setup
|
||||
// virial setup
|
||||
|
||||
if (vflag) v_setup(vflag);
|
||||
else evflag = 0;
|
||||
v_init(vflag);
|
||||
|
||||
// STEP send every step
|
||||
// required fields: COORDS
|
||||
|
||||
@ -54,7 +54,8 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) :
|
||||
extscalar = 1;
|
||||
respa_level_support = 1;
|
||||
ilevel_respa = 0;
|
||||
virial_flag = 1;
|
||||
energy_global_flag = 1;
|
||||
virial_global_flag = virial_peratom_flag = 1;
|
||||
|
||||
qe2f = force->qe2f;
|
||||
xstr = ystr = zstr = nullptr;
|
||||
@ -128,7 +129,6 @@ FixEfield::~FixEfield()
|
||||
int FixEfield::setmask()
|
||||
{
|
||||
int mask = 0;
|
||||
mask |= THERMO_ENERGY;
|
||||
mask |= POST_FORCE;
|
||||
mask |= POST_FORCE_RESPA;
|
||||
mask |= MIN_POST_FORCE;
|
||||
@ -247,10 +247,9 @@ void FixEfield::post_force(int vflag)
|
||||
imageint *image = atom->image;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
// energy and virial setup
|
||||
// virial setup
|
||||
|
||||
if (vflag) v_setup(vflag);
|
||||
else evflag = 0;
|
||||
v_init(vflag);
|
||||
|
||||
// reallocate efield array if necessary
|
||||
|
||||
@ -309,7 +308,7 @@ void FixEfield::post_force(int vflag)
|
||||
v[3] = fx*unwrap[1];
|
||||
v[4] = fx*unwrap[2];
|
||||
v[5] = fy*unwrap[2];
|
||||
v_tally(i, v);
|
||||
v_tally(i,v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -67,7 +67,7 @@ FixOrientBCC::FixOrientBCC(LAMMPS *lmp, int narg, char **arg) :
|
||||
scalar_flag = 1;
|
||||
global_freq = 1;
|
||||
extscalar = 1;
|
||||
|
||||
energy_global_flag = 1;
|
||||
peratom_flag = 1;
|
||||
size_peratom_cols = 2;
|
||||
peratom_freq = 1;
|
||||
@ -202,7 +202,6 @@ int FixOrientBCC::setmask()
|
||||
{
|
||||
int mask = 0;
|
||||
mask |= POST_FORCE;
|
||||
mask |= THERMO_ENERGY;
|
||||
mask |= POST_FORCE_RESPA;
|
||||
return mask;
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ FixOrientFCC::FixOrientFCC(LAMMPS *lmp, int narg, char **arg) :
|
||||
scalar_flag = 1;
|
||||
global_freq = 1;
|
||||
extscalar = 1;
|
||||
|
||||
energy_global_flag = 1;
|
||||
peratom_flag = 1;
|
||||
size_peratom_cols = 2;
|
||||
peratom_freq = 1;
|
||||
@ -200,7 +200,6 @@ int FixOrientFCC::setmask()
|
||||
{
|
||||
int mask = 0;
|
||||
mask |= POST_FORCE;
|
||||
mask |= THERMO_ENERGY;
|
||||
mask |= POST_FORCE_RESPA;
|
||||
return mask;
|
||||
}
|
||||
|
||||
@ -70,10 +70,10 @@ FixCMAP::FixCMAP(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
restart_global = 1;
|
||||
restart_peratom = 1;
|
||||
peatom_flag = 1;
|
||||
virial_flag = 1;
|
||||
energy_global_flag = energy_peratom_flag = 1;
|
||||
virial_global_flag = virial_peratom_flag = 1;
|
||||
thermo_energy = thermo_virial = 1;
|
||||
centroidstressflag = CENTROID_NOTAVAIL;
|
||||
thermo_virial = 1;
|
||||
peratom_freq = 1;
|
||||
scalar_flag = 1;
|
||||
global_freq = 1;
|
||||
@ -154,7 +154,6 @@ int FixCMAP::setmask()
|
||||
mask |= PRE_NEIGHBOR;
|
||||
mask |= PRE_REVERSE;
|
||||
mask |= POST_FORCE;
|
||||
mask |= THERMO_ENERGY;
|
||||
mask |= POST_FORCE_RESPA;
|
||||
mask |= MIN_POST_FORCE;
|
||||
return mask;
|
||||
|
||||
@ -73,7 +73,7 @@ FixPOEMS::FixPOEMS(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
time_integrate = 1;
|
||||
rigid_flag = 1;
|
||||
virial_flag = 1;
|
||||
virial_global_flag = virial_peratom_flag = 1;
|
||||
centroidstressflag = CENTROID_NOTAVAIL;
|
||||
thermo_virial = 1;
|
||||
dof_flag = 1;
|
||||
@ -684,8 +684,7 @@ void FixPOEMS::setup(int vflag)
|
||||
|
||||
// virial setup before call to set_v
|
||||
|
||||
if (vflag) v_setup(vflag);
|
||||
else evflag = 0;
|
||||
v_init(vflag);
|
||||
|
||||
// set velocities from angmom & omega
|
||||
|
||||
@ -732,8 +731,7 @@ void FixPOEMS::initial_integrate(int vflag)
|
||||
|
||||
// virial setup before call to set_xv
|
||||
|
||||
if (vflag) v_setup(vflag);
|
||||
else evflag = 0;
|
||||
v_init(vflag);
|
||||
|
||||
// set coords and velocities of atoms in rigid bodies
|
||||
|
||||
|
||||
@ -50,6 +50,7 @@ FixHyperGlobal::FixHyperGlobal(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
hyperflag = 1;
|
||||
scalar_flag = 1;
|
||||
energy_global_flag = 1;
|
||||
vector_flag = 1;
|
||||
size_vector = 12;
|
||||
global_freq = 1;
|
||||
@ -104,7 +105,6 @@ int FixHyperGlobal::setmask()
|
||||
int mask = 0;
|
||||
mask |= PRE_NEIGHBOR;
|
||||
mask |= PRE_REVERSE;
|
||||
mask |= THERMO_ENERGY;
|
||||
return mask;
|
||||
}
|
||||
|
||||
|
||||
@ -31,7 +31,6 @@
|
||||
#include "memory.h"
|
||||
#include "error.h"
|
||||
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
|
||||
@ -63,6 +62,7 @@ FixHyperLocal::FixHyperLocal(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
hyperflag = 2;
|
||||
scalar_flag = 1;
|
||||
energy_global_flag = 1;
|
||||
vector_flag = 1;
|
||||
size_vector = 26;
|
||||
//size_vector = 28; // can add 2 for debugging
|
||||
@ -237,7 +237,6 @@ int FixHyperLocal::setmask()
|
||||
mask |= PRE_NEIGHBOR;
|
||||
mask |= PRE_REVERSE;
|
||||
mask |= MIN_PRE_NEIGHBOR;
|
||||
mask |= THERMO_ENERGY;
|
||||
return mask;
|
||||
}
|
||||
|
||||
|
||||
@ -309,7 +309,6 @@ double FixEHEX::compute_scalar()
|
||||
return scale;
|
||||
}
|
||||
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
memory usage of local atom-based arrays
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
@ -79,7 +79,6 @@ FixRattle::~FixRattle()
|
||||
{
|
||||
memory->destroy(vp);
|
||||
|
||||
|
||||
if (RATTLE_DEBUG) {
|
||||
|
||||
// communicate maximum distance error
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user