git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@16053 f3b2605a-c512-4ea7-a41b...
[lammps.git] / doc / src / fix_gravity.txt
blob04b0fd091e5bdf8b66e23af01fa2caa0358e8ec8
1 "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
3 :link(lws,http://lammps.sandia.gov)
4 :link(ld,Manual.html)
5 :link(lc,Section_commands.html#comm)
7 :line
9 fix gravity command :h3
10 fix gravity/omp command :h3
12 [Syntax:]
14 fix ID group gravity magnitude style args :pre
16 ID, group are documented in "fix"_fix.html command :ulb,l
17 gravity = style name of this fix command :l
18 magnitude = size of acceleration (force/mass units) :l
19 magnitude can be a variable (see below) :l
20 style = {chute} or {spherical} or {gradient} or {vector} :l
21   {chute} args = angle
22     angle = angle in +x away from -z or -y axis in 3d/2d (in degrees)
23     angle can be a variable (see below)
24   {spherical} args = phi theta
25     phi = azimuthal angle from +x axis (in degrees)
26     theta = angle from +z or +y axis in 3d/2d (in degrees)
27     phi or theta can be a variable (see below)
28   {vector} args = x y z
29     x y z = vector direction to apply the acceleration
30     x or y or z can be a variable (see below) :pre
31 :ule
33 [Examples:]
35 fix 1 all gravity 1.0 chute 24.0
36 fix 1 all gravity v_increase chute 24.0
37 fix 1 all gravity 1.0 spherical 0.0 -180.0
38 fix 1 all gravity 10.0 spherical v_phi v_theta
39 fix 1 all gravity 100.0 vector 1 1 0 :pre
41 [Description:]
43 Impose an additional acceleration on each particle in the group.  This
44 fix is typically used with granular systems to include a "gravity"
45 term acting on the macroscopic particles.  More generally, it can
46 represent any kind of driving field, e.g. a pressure gradient inducing
47 a Poiseuille flow in a fluid.  Note that this fix operates differently
48 than the "fix addforce"_fix_addforce.html command.  The addforce fix
49 adds the same force to each atom, independent of its mass.  This
50 command imparts the same acceleration to each atom (force/mass).
52 The {magnitude} of the acceleration is specified in force/mass units.
53 For granular systems (LJ units) this is typically 1.0.  See the
54 "units"_units.html command for details.
56 Style {chute} is typically used for simulations of chute flow where
57 the specified {angle} is the chute angle, with flow occurring in the +x
58 direction.  For 3d systems, the tilt is away from the z axis; for 2d
59 systems, the tilt is away from the y axis.
61 Style {spherical} allows an arbitrary 3d direction to be specified for
62 the acceleration vector.  {Phi} and {theta} are defined in the usual
63 spherical coordinates.  Thus for acceleration acting in the -z
64 direction, {theta} would be 180.0 (or -180.0).  {Theta} = 90.0 and
65 {phi} = -90.0 would mean acceleration acts in the -y direction.  For
66 2d systems, {phi} is ignored and {theta} is an angle in the xy plane
67 where {theta} = 0.0 is the y-axis.
69 Style {vector} imposes an acceleration in the vector direction given
70 by (x,y,z).  Only the direction of the vector is important; it's
71 length is ignored.  For 2d systems, the {z} component is ignored.
73 Any of the quantities {magnitude}, {angle}, {phi}, {theta}, {x}, {y},
74 {z} which define the gravitational magnitude and direction, can be
75 specified as an equal-style "variable"_variable.html.  If the value is
76 a variable, it should be specified as v_name, where name is the
77 variable name.  In this case, the variable will be evaluated each
78 timestep, and its value used to determine the quantity.  You should
79 insure that the variable calculates a result in the approriate units,
80 e.g. force/mass or degrees.
82 Equal-style variables can specify formulas with various mathematical
83 functions, and include "thermo_style"_thermo_style.html command
84 keywords for the simulation box parameters and timestep and elapsed
85 time.  Thus it is easy to specify a time-dependent gravitational
86 field.
88 :line
90 Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
91 functionally the same as the corresponding style without the suffix.
92 They have been optimized to run faster, depending on your available
93 hardware, as discussed in "Section 5"_Section_accelerate.html
94 of the manual.  The accelerated styles take the same arguments and
95 should produce the same results, except for round-off and precision
96 issues.
98 These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
99 USER-OMP and OPT packages, respectively.  They are only enabled if
100 LAMMPS was built with those packages.  See the "Making
101 LAMMPS"_Section_start.html#start_3 section for more info.
103 You can specify the accelerated styles explicitly in your input script
104 by including their suffix, or you can use the "-suffix command-line
105 switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
106 use the "suffix"_suffix.html command in your input script.
108 See "Section 5"_Section_accelerate.html of the manual for
109 more instructions on how to use the accelerated styles effectively.
111 :line
113 [Restart, fix_modify, output, run start/stop, minimize info:]
115 No information about this fix is written to "binary restart
116 files"_restart.html.
118 The "fix_modify"_fix_modify.html {energy} option is supported by this
119 fix to add the gravitational potential energy of the system to the
120 system's potential energy as part of "thermodynamic
121 output"_thermo_style.html.
123 The "fix_modify"_fix_modify.html {respa} option is supported by this
124 fix. This allows to set at which level of the "r-RESPA"_run_style.html
125 integrator the fix is adding its forces. Default is the outermost level.
127 This fix computes a global scalar which can be accessed by various
128 "output commands"_Section_howto.html#howto_15.  This scalar is the
129 gravitational potential energy of the particles in the defined field,
130 namely mass * (g dot x) for each particles, where x and mass are the
131 particles position and mass, and g is the gravitational field.  The
132 scalar value calculated by this fix is "extensive".
134 No parameter of this fix can be used with the {start/stop} keywords of
135 the "run"_run.html command.  This fix is not invoked during "energy
136 minimization"_minimize.html.
138 [Restrictions:] none
140 [Related commands:]
142 "atom_style sphere"_atom_style.html, "fix addforce"_fix_addforce.html
144 [Default:] none