git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@16053 f3b2605a-c512-4ea7-a41b...
[lammps.git] / doc / src / units.txt
blob87436b6307196f1d20f72411b34ca67c0fc04b55
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 units command :h3
11 [Syntax:]
13 units style :pre
15 style = {lj} or {real} or {metal} or {si} or {cgs} or {electron} or {micro} or {nano} :ul
17 [Examples:]
19 units metal
20 units lj :pre
22 [Description:]
24 This command sets the style of units used for a simulation.  It
25 determines the units of all quantities specified in the input script
26 and data file, as well as quantities output to the screen, log file,
27 and dump files.  Typically, this command is used at the very beginning
28 of an input script.
30 For all units except {lj}, LAMMPS uses physical constants from
31 www.physics.nist.gov.  For the definition of Kcal in real units,
32 LAMMPS uses the thermochemical calorie = 4.184 J.
34 The choice you make for units simply sets some internal conversion
35 factors within LAMMPS.  This means that any simulation you perform for
36 one choice of units can be duplicated with any other unit setting
37 LAMMPS supports.  In this context "duplicate" means the particles will
38 have identical trajectories and all output generated by the simulation
39 will be identical.  This will be the case for some number of timesteps
40 until round-off effects accumulate, since the conversion factors for
41 two different unit systems are not identical to infinite precision.
43 To perform the same simulation in a different set of units you must
44 change all the unit-based input parameters in your input script and
45 other input files (data file, potential files, etc) correctly to the
46 new units.  And you must correctly convert all output from the new
47 units to the old units when comparing to the original results.  That
48 is often not simple to do.
50 :line
52 For style {lj}, all quantities are unitless.  Without loss of
53 generality, LAMMPS sets the fundamental quantities mass, sigma,
54 epsilon, and the Boltzmann constant = 1.  The masses, distances,
55 energies you specify are multiples of these fundamental values.  The
56 formulas relating the reduced or unitless quantity (with an asterisk)
57 to the same quantity with units is also given.  Thus you can use the
58 mass & sigma & epsilon values for a specific material and convert the
59 results from a unitless LJ simulation into physical quantities.
61 mass = mass or m
62 distance = sigma, where x* = x / sigma
63 time = tau, where t* = t (epsilon / m / sigma^2)^1/2
64 energy = epsilon, where E* = E / epsilon
65 velocity = sigma/tau, where v* = v tau / sigma
66 force = epsilon/sigma, where f* = f sigma / epsilon
67 torque = epsilon, where t* = t / epsilon
68 temperature = reduced LJ temperature, where T* = T Kb / epsilon
69 pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon
70 dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau
71 charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2
72 dipole = reduced LJ dipole, moment where *mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2
73 electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon
74 density = mass/volume, where rho* = rho sigma^dim :ul
76 Note that for LJ units, the default mode of thermodyamic output via
77 the "thermo_style"_thermo_style.html command is to normalize all
78 extensive quantities by the number of atoms.  E.g. potential energy is
79 extensive because it is summed over atoms, so it is output as
80 energy/atom.  Temperature is intensive since it is already normalized
81 by the number of atoms, so it is output as-is.  This behavior can be
82 changed via the "thermo_modify norm"_thermo_modify.html command.
84 For style {real}, these are the units:
86 mass = grams/mole
87 distance = Angstroms
88 time = femtoseconds
89 energy = Kcal/mole
90 velocity = Angstroms/femtosecond
91 force = Kcal/mole-Angstrom
92 torque = Kcal/mole
93 temperature = Kelvin
94 pressure = atmospheres
95 dynamic viscosity = Poise
96 charge = multiple of electron charge (1.0 is a proton)
97 dipole = charge*Angstroms
98 electric field = volts/Angstrom
99 density = gram/cm^dim :ul
101 For style {metal}, these are the units:
103 mass = grams/mole
104 distance = Angstroms
105 time = picoseconds
106 energy = eV
107 velocity = Angstroms/picosecond
108 force = eV/Angstrom
109 torque = eV
110 temperature = Kelvin
111 pressure = bars
112 dynamic viscosity = Poise
113 charge = multiple of electron charge (1.0 is a proton)
114 dipole = charge*Angstroms
115 electric field = volts/Angstrom
116 density = gram/cm^dim :ul
118 For style {si}, these are the units:
120 mass = kilograms
121 distance = meters
122 time = seconds
123 energy = Joules
124 velocity = meters/second
125 force = Newtons
126 torque = Newton-meters
127 temperature = Kelvin
128 pressure = Pascals
129 dynamic viscosity = Pascal*second
130 charge = Coulombs (1.6021765e-19 is a proton)
131 dipole = Coulombs*meters
132 electric field = volts/meter
133 density = kilograms/meter^dim :ul
135 For style {cgs}, these are the units:
137 mass = grams
138 distance = centimeters
139 time = seconds
140 energy = ergs
141 velocity = centimeters/second
142 force = dynes
143 torque = dyne-centimeters
144 temperature = Kelvin
145 pressure = dyne/cm^2 or barye = 1.0e-6 bars
146 dynamic viscosity = Poise
147 charge = statcoulombs or esu (4.8032044e-10 is a proton)
148 dipole = statcoul-cm = 10^18 debye
149 electric field = statvolt/cm or dyne/esu
150 density = grams/cm^dim :ul
152 For style {electron}, these are the units:
154 mass = atomic mass units
155 distance = Bohr
156 time = femtoseconds
157 energy = Hartrees
158 velocity = Bohr/atomic time units \[1.03275e-15 seconds\]
159 force = Hartrees/Bohr
160 temperature = Kelvin
161 pressure = Pascals
162 charge = multiple of electron charge (1.0 is a proton)
163 dipole moment = Debye
164 electric field = volts/cm :ul
166 For style {micro}, these are the units:
168 mass = picograms
169 distance = micrometers
170 time = microseconds
171 energy = picogram-micrometer^2/microsecond^2
172 velocity = micrometers/microsecond
173 force = picogram-micrometer/microsecond^2
174 torque = picogram-micrometer^2/microsecond^2
175 temperature = Kelvin
176 pressure = picogram/(micrometer-microsecond^2)
177 dynamic viscosity = picogram/(micrometer-microsecond)
178 charge = picocoulombs (1.6021765e-7 is a proton)
179 dipole = picocoulomb-micrometer
180 electric field = volt/micrometer
181 density = picograms/micrometer^dim :ul
183 For style {nano}, these are the units:
185 mass = attograms
186 distance = nanometers
187 time = nanoseconds
188 energy = attogram-nanometer^2/nanosecond^2
189 velocity = nanometers/nanosecond
190 force = attogram-nanometer/nanosecond^2
191 torque = attogram-nanometer^2/nanosecond^2
192 temperature = Kelvin
193 pressure = attogram/(nanometer-nanosecond^2)
194 dynamic viscosity = attogram/(nanometer-nanosecond)
195 charge = multiple of electron charge (1.0 is a proton)
196 dipole = charge-nanometer
197 electric field = volt/nanometer
198 density = attograms/nanometer^dim :ul
200 The units command also sets the timestep size and neighbor skin
201 distance to default values for each style:
203 For style {lj} these are dt = 0.005 tau and skin = 0.3 sigma.
204 For style {real} these are dt = 1.0 fmsec and skin = 2.0 Angstroms.
205 For style {metal} these are dt = 0.001 psec and skin = 2.0 Angstroms.
206 For style {si} these are dt = 1.0e-8 sec and skin = 0.001 meters.
207 For style {cgs} these are dt = 1.0e-8 sec and skin = 0.1 cm.
208 For style {electron} these are dt = 0.001 fmsec and skin = 2.0 Bohr.
209 For style {micro} these are dt = 2.0 microsec and skin = 0.1 micrometers.
210 For style {nano} these are dt = 0.00045 nanosec and skin = 0.1 nanometers. :ul
212 [Restrictions:]
214 This command cannot be used after the simulation box is defined by a
215 "read_data"_read_data.html or "create_box"_create_box.html command.
217 [Related commands:] none
219 [Default:]
221 units lj :pre