git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14950 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
108
doc/html/_sources/fix_tune_kspace.txt
Normal file
108
doc/html/_sources/fix_tune_kspace.txt
Normal file
@ -0,0 +1,108 @@
|
||||
.. index:: fix tune/kspace
|
||||
|
||||
fix tune/kspace command
|
||||
=======================
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix ID group-ID tune/kspace N
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* tune/kspace = style name of this fix command
|
||||
* N = invoke this fix every N steps
|
||||
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix 2 all tune/kspace 100
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This fix tests each kspace style (Ewald, PPPM, and MSM), and
|
||||
automatically selects the fastest style to use for the remainder
|
||||
of the run. If the fastest style is Ewald or PPPM, the fix also
|
||||
adjusts the coulomb cutoff towards optimal speed. Future versions
|
||||
of this fix will automatically select other kspace parameters
|
||||
to use for maximum simulation speed. The kspace parameters may
|
||||
include the style, cutoff, grid points in each direction, order,
|
||||
Ewald parameter, MSM parallelization cut-point, MPI tasks to use, etc.
|
||||
|
||||
The rationale for this fix is to provide the user with
|
||||
as-fast-as-possible simulations that include long-range electrostatics
|
||||
(kspace) while meeting the user-prescribed accuracy requirement. A
|
||||
simple heuristic could never capture the optimal combination of
|
||||
parameters for every possible run-time scenario. But by performing
|
||||
short tests of various kspace parameter sets, this fix allows
|
||||
parameters to be tailored specifically to the user's machine, MPI
|
||||
ranks, use of threading or accelerators, the simulated system, and the
|
||||
simulation details. In addition, it is possible that parameters could
|
||||
be evolved with the simulation on-the-fly, which is useful for systems
|
||||
that are dynamically evolving (e.g. changes in box size/shape or
|
||||
number of particles).
|
||||
|
||||
When this fix is invoked, LAMMPS will perform short timed tests of
|
||||
various parameter sets to determine the optimal parameters. Tests are
|
||||
performed on-the-fly, with a new test initialized every N steps. N should
|
||||
be chosen large enough so that adequate CPU time lapses between tests,
|
||||
thereby providing statistically significant timings. But N should not be
|
||||
chosen to be so large that an unfortunate parameter set test takes an
|
||||
inordinate amount of wall time to complete. An N of 100 for most problems
|
||||
seems reasonable. Once an optimal parameter set is found, that set is
|
||||
used for the remainder of the run.
|
||||
|
||||
This fix uses heristics to guide it's selection of parameter sets to test,
|
||||
but the actual timed results will be used to decide which set to use in the
|
||||
simulation.
|
||||
|
||||
It is not necessary to discard trajectories produced using sub-optimal
|
||||
parameter sets, or a mix of various parameter sets, since the user-prescribed
|
||||
accuracy will have been maintained throughout. However, some users may prefer
|
||||
to use this fix only to discover the optimal parameter set for a given setup
|
||||
that can then be used on subsequent production runs.
|
||||
|
||||
This fix starts with kspace parameters that are set by the user with the
|
||||
:doc:`kspace_style <kspace_style>` and :doc:`kspace_modify <kspace_modify>`
|
||||
commands. The prescribed accuracy will be maintained by this fix throughout
|
||||
the simulation.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix.
|
||||
|
||||
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 KSPACE package. It is only enabled if LAMMPS was
|
||||
built with that package. See the :ref:`Making LAMMPS <start_3>` section for more info.
|
||||
|
||||
Do not set "neigh_modify once yes" or else this fix will never be
|
||||
called. Reneighboring is required.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`kspace_style <kspace_style>`, :doc:`boundary <boundary>`
|
||||
:doc:`kspace_modify <kspace_modify>`, :doc:`pair_style lj/cut/coul/long <pair_lj>`, :doc:`pair_style lj/charmm/coul/long <pair_charmm>`, :doc:`pair_style lj/long <pair_lj_long>`, :doc:`pair_style lj/long/coul/long <pair_lj_long>`,
|
||||
:doc:`pair_style buck/coul/long <pair_buck>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
|
||||
.. _lws: http://lammps.sandia.gov
|
||||
.. _ld: Manual.html
|
||||
.. _lc: Section_commands.html#comm
|
||||
Reference in New Issue
Block a user