diff --git a/doc/Section_start.html b/doc/Section_start.html index 80e0fc84b9..10c092176e 100644 --- a/doc/Section_start.html +++ b/doc/Section_start.html @@ -436,8 +436,8 @@ performance.

files for doing particle dumps in XTC format. This is only necessary if your platform does have its own XDR files available. See the Restrictions section of the dump command for details.

-

Use at most one of the -DLAMMPS_SMALLBIG, -DLAMMPS_BIGBIG, -D- -DLAMMPS_SMALLSMALL settings. The default is -DLAMMPS_SMALLBIG. These +

Use at most one of the -DLAMMPS_SMALLBIG, -DLAMMPS_BIGBIG, +-DLAMMPS_SMALLSMALL settings. The default is -DLAMMPS_SMALLBIG. These settings refer to use of 4-byte (small) vs 8-byte (big) integers within LAMMPS, as specified in src/lmptype.h. The only reason to use the BIGBIG setting is to enable simulation of huge molecular systems @@ -1288,7 +1288,7 @@ use this executable to run on a single processor by typing something like: “lmp_win_mpi -in in.lj”.


-

The screen output from LAMMPS is described in the next section. As it +

The screen output from LAMMPS is described in a section below. As it runs, LAMMPS also writes a log.lammps file with the same information.

Note that this sequence of commands copies the LAMMPS executable (lmp_linux) to the directory with the input files. This may not be diff --git a/doc/atom_style.txt b/doc/atom_style.txt index f25b7ee4b9..a71d27db2f 100644 --- a/doc/atom_style.txt +++ b/doc/atom_style.txt @@ -13,10 +13,10 @@ atom_style command :h3 atom_style style args :pre style = {angle} or {atomic} or {body} or {bond} or {charge} or {dipole} or \ - {electron} or {ellipsoid} or {full} or {line} or {meso} or \ + {dpd} or {electron} or {ellipsoid} or {full} or {line} or {meso} or \ {molecular} or {peri} or {smd} or {sphere} or {tri} or \ {template} or {hybrid} :ulb,l - args = none for any style except {body} and {hybrid} + args = none for any style except the following {body} args = bstyle bstyle-args bstyle = style of body particles bstyle-args = additional arguments specific to the bstyle @@ -47,6 +47,10 @@ used before a simulation is setup via a "read_data"_read_data.html, "read_restart"_read_restart.html, or "create_box"_create_box.html command. +NOTE: Many of the atom styles discussed here are only enabled if +LAMMPS was built with a specific package, as listed below in the +Restrictions section. + Once a style is assigned, it cannot be changed, so use a style general enough to encompass all attributes. E.g. with style {bond}, angular terms cannot be used or added later to the model. It is OK to use a @@ -70,6 +74,7 @@ quantities. {bond} | bonds | bead-spring polymers | {charge} | charge | atomic system with charges | {dipole} | charge and dipole moment | system with dipolar particles | +{dpd} | internal temperature and internal energies | DPD particles | {electron} | charge and spin and eradius | electronic force field | {ellipsoid} | shape, quaternion, angular momentum | aspherical particles | {full} | molecular + charge | bio-molecules | @@ -128,6 +133,10 @@ position, which is represented by the eradius = electron size. For the {peri} style, the particles are spherical and each stores a per-particle mass and volume. +The {dpd} style is for dissipative particle dynamics (DPD) particles +which store the particle internal temperature (dpdTheta), internal +conductive energy (uCond) and internal mechanical energy (uMech). + The {meso} style is for smoothed particle hydrodynamics (SPH) particles which store a density (rho), energy (e), and heat capacity (cv). @@ -247,20 +256,34 @@ more instructions on how to use the accelerated styles effectively. This command cannot be used after the simulation box is defined by a "read_data"_read_data.html or "create_box"_create_box.html command. -The {angle}, {bond}, {full}, {molecular}, and {template} styles are -part of the MOLECULE package. The {line} and {tri} styles are part -of the ASPHERE pacakge. The {body} style is part of the BODY package. -The {dipole} style is part of the DIPOLE package. The {peri} style is -part of the PERI package for Peridynamics. The {electron} style is -part of the USER-EFF package for "electronic force -fields"_pair_eff.html. The {meso} style is part of the USER-SPH -package for smoothed particle hydrodyanmics (SPH). See "this PDF -guide"_USER/sph/SPH_LAMMPS_userguide.pdf to using SPH in LAMMPS. The -{wavepacket} style is part of the USER-AWPMD package for the -"antisymmetrized wave packet MD method"_pair_awpmd.html. They are -only enabled if LAMMPS was built with that package. See the "Making +Many of the styles listed above are only enabled if LAMMPS was built +with a specific package, as listed below. See the "Making LAMMPS"_Section_start.html#start_3 section for more info. +The {angle}, {bond}, {full}, {molecular}, and {template} styles are +part of the MOLECULE package. + +The {line} and {tri} styles are part of the ASPHERE pacakge. + +The {body} style is part of the BODY package. + +The {dipole} style is part of the DIPOLE package. + +The {peri} style is part of the PERI package for Peridynamics. + +The {electron} style is part of the USER-EFF package for "electronic +force fields"_pair_eff.html. + +The {dpd} style is part of the USER-DPD package for dissipative +particle dynamics (DPD). + +The {meso} style is part of the USER-SPH package for smoothed particle +hydrodyanmics (SPH). See "this PDF +guide"_USER/sph/SPH_LAMMPS_userguide.pdf to using SPH in LAMMPS. + +The {wavepacket} style is part of the USER-AWPMD package for the +"antisymmetrized wave packet MD method"_pair_awpmd.html. + [Related commands:] "read_data"_read_data.html, "pair_style"_pair_style.html diff --git a/doc/compute_dpd.txt b/doc/compute_dpd.txt new file mode 100644 index 0000000000..d1e1d270fb --- /dev/null +++ b/doc/compute_dpd.txt @@ -0,0 +1,67 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +compute dpd command :h3 + +[Syntax:] + +compute ID group-ID dpd :pre + +ID, group-ID are documented in "compute"_compute.html command +dpd = style name of this compute command :ul + +[Examples:] + +compute 1 all dpd :pre + +[Description:] + +Define a computation that accumulates the total internal conductive +energy (U_cond), the total internal mechanical energy (U_mech), the +total internal energy (U) and the {harmonic} average of the internal +temperature (dpdTheta) for the entire system of particles. See the +"compute dpd/atom"_compute_dpd_atom.html command if you want +per-particle internal energies and internal temperatures. + +The system internal properties are computed according to the following +relations: + +:c,image(Eqs/compute_dpd.jpg) + +where N is the number of particles in the system + +:line + +[Output info:] + +This compute calculates a global vector of length 5 (U_cond, U_mech, +U, dpdTheta, N_particles), which can be accessed by indices 1-5. See +"this section"_Section_howto.html#howto_15 for an overview of LAMMPS +output options. + +The vector values will be in energy and temperature "units"_units.html. + +[Restrictions:] + +The compute {dpd} is only available if LAMMPS is built with the +USER-DPD package and requires the "atom_style dpd"_atom_style.html. + +[Related commands:] + +"compute dpd/atom"_compute_dpd_atom.html, +"thermo_style"_thermo_style.html + +[Default:] none + +:line + +:link(Larentzos) +[(Larentzos)] J.P. Larentzos, J.K. Brennan, J.D. Moore, and +W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative +Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research +Laboratory, Aberdeen Proving Ground, MD (2014). diff --git a/doc/compute_dpd_atom.txt b/doc/compute_dpd_atom.txt new file mode 100644 index 0000000000..c4be61b45f --- /dev/null +++ b/doc/compute_dpd_atom.txt @@ -0,0 +1,60 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +compute dpd/atom command :h3 + +[Syntax:] + +compute ID group-ID dpd/atom :pre + +ID, group-ID are documented in "compute"_compute.html command +dpd/atom = style name of this compute command :ul + +[Examples:] + +compute 1 all dpd/atom + +[Description:] + +Define a computation that accesses the per-particle internal +conductive energy (u_cond), internal mechanical energy (u_mech) and +internal temperatures (dpdTheta) for each particle in a group. See +the "compute dpd"_compute_dpd.html command if you want the total +internal conductive energy, the total internal mechanical energy, and +average internal temperature of the entire system or group of dpd +particles. + +[Output info:] + +This compute calculates a per-particle array with 3 columns (u_cond, +u_mech, dpdTheta), which can be accessed by indices 1-3 by any command +that uses per-particle values from a compute as input. See +"Section_howto15"_Section_howto.html#howto_15 for an overview of +LAMMPS output options. + +The per-particle array values will be in energy (u_cond, u_mech) and +temperature (dpdTheta) "units"_units.html. + +[Restrictions:] + +The compute {dpd/atom} is only available if LAMMPS is built with the +USER-DPD package. + +[Related commands:] + +"dump custom"_dump.html, "compute dpd"_compute_dpd.html + +[Default:] none + +:line + +:link(Larentzos) +[(Larentzos)] J.P. Larentzos, J.K. Brennan, J.D. Moore, and +W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative +Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research +Laboratory, Aberdeen Proving Ground, MD (2014). diff --git a/doc/compute_temp_body.txt b/doc/compute_temp_body.txt new file mode 100755 index 0000000000..04b707bcce --- /dev/null +++ b/doc/compute_temp_body.txt @@ -0,0 +1,131 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +compute temp/body command :h3 + +[Syntax:] + +compute ID group-ID temp/body keyword value ... :pre + +ID, group-ID are documented in "compute"_compute.html command :ulb,l +temp/body = style name of this compute command :l +zero or more keyword/value pairs may be appended :l +keyword = {bias} or {dof} :l + {bias} value = bias-ID + bias-ID = ID of a temperature compute that removes a velocity bias + {dof} value = {all} or {rotate} + all = compute temperature of translational and rotational degrees of freedom + rotate = compute temperature of just rotational degrees of freedom :pre +:ule + +[Examples:] + +compute 1 all temp/body +compute myTemp mobile temp/body bias tempCOM +compute myTemp mobile temp/body dof rotate :pre + +[Description:] + +Define a computation that calculates the temperature of a group of +body particles, including a contribution from both their +translational and rotational kinetic energy. This differs from the +usual "compute temp"_compute_temp.html command, which assumes point +particles with only translational kinetic energy. + +Only body particles can be included in the group. For 3d particles, +each has 6 degrees of freedom (3 translational, 3 rotational). For 2d +body particles, each has 3 degrees of freedom (2 translational, 1 +rotational). + +NOTE: This choice for degrees of freedom (dof) assumes that all body +particles in your model will freely rotate, sampling all their +rotational dof. It is possible to use a combination of interaction +potentials and fixes that induce no torque or otherwise constrain some +of all of your particles so that this is not the case. Then there are +less dof and you should use the "compute_modify +extra"_compute_modify.html command to adjust the dof accordingly. + +The translational kinetic energy is computed the same as is described +by the "compute temp"_compute_temp.html command. The rotational +kinetic energy is computed as 1/2 I w^2, where I is the inertia tensor +for the aspherical particle and w is its angular velocity, which is +computed from its angular momentum. + +A kinetic energy tensor, stored as a 6-element vector, is also +calculated by this compute. The formula for the components of the +tensor is the same as the above formula, except that v^2 and w^2 are +replaced by vx*vy and wx*wy for the xy component, and the appropriate +elements of the inertia tensor are used. The 6 components of the +vector are ordered xx, yy, zz, xy, xz, yz. + +The number of atoms contributing to the temperature is assumed to be +constant for the duration of the run; use the {dynamic} option of the +"compute_modify"_compute_modify.html command if this is not the case. + +This compute subtracts out translational degrees-of-freedom due to +fixes that constrain molecular motion, such as "fix +shake"_fix_shake.html and "fix rigid"_fix_rigid.html. This means the +temperature of groups of atoms that include these constraints will be +computed correctly. If needed, the subtracted degrees-of-freedom can +be altered using the {extra} option of the +"compute_modify"_compute_modify.html command. + +See "this howto section"_Section_howto.html#howto_16 of the manual for +a discussion of different ways to compute temperature and perform +thermostatting. + +:line + +The keyword/value option pairs are used in the following ways. + +For the {bias} keyword, {bias-ID} refers to the ID of a temperature +compute that removes a "bias" velocity from each atom. This allows +compute temp/sphere to compute its thermal temperature after the +translational kinetic energy components have been altered in a +prescribed way, e.g. to remove a flow velocity profile. Thermostats +that use this compute will work with this bias term. See the doc +pages for individual computes that calculate a temperature and the doc +pages for fixes that perform thermostatting for more details. + +For the {dof} keyword, a setting of {all} calculates a temperature +that includes both translational and rotational degrees of freedom. A +setting of {rotate} calculates a temperature that includes only +rotational degrees of freedom. + +:line + +[Output info:] + +This compute calculates a global scalar (the temperature) and a global +vector of length 6 (KE tensor), which can be accessed by indices 1-6. +These values can be used by any command that uses global scalar or +vector values from a compute as input. See "this +section"_Section_howto.html#howto_15 for an overview of LAMMPS output +options. + +The scalar value calculated by this compute is "intensive". The +vector values are "extensive". + +The scalar value will be in temperature "units"_units.html. The +vector values will be in energy "units"_units.html. + +[Restrictions:] + +This compute is part of the BODY package. It is only enabled if +LAMMPS was built with that package. See the "Making +LAMMPS"_Section_start.html#start_3 section for more info. + +This compute requires that atoms store angular momementum and a +quaternion as defined by the "atom_style body"_atom_style.html +command. + +[Related commands:] + +"compute temp"_compute_temp.html + +[Default:] none diff --git a/doc/package.html b/doc/package.html index 4d8a3b19df..f79f993d3f 100644 --- a/doc/package.html +++ b/doc/package.html @@ -695,7 +695,7 @@ support. These settings are made automatically if the “-sf intel” not used, you must invoke the package intel command in your input script or or via the “-pk intel” command-line switch.

For the KOKKOS package, the option defaults neigh = full, newton = -off, binsize = 0.0, and comm = host. These settings are made +off, binsize = 0.0, and comm = device. These settings are made automatically by the required “-k on” command-line switch. You can change them bu using the package kokkos command in your input script or via the “-pk kokkos” command-line switch.

diff --git a/doc/pair_body_rounded_polygon.txt b/doc/pair_body_rounded_polygon.txt new file mode 100644 index 0000000000..966b14fce4 --- /dev/null +++ b/doc/pair_body_rounded_polygon.txt @@ -0,0 +1,107 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +pair_style body/rounded/polygon command :h3 + +[Syntax:] + +pair_style body/rounded/polygon cutoff_global cutoff_inner delta_ua c_n :pre + +cutoff_global = global cutoff for COM interactions (distance units) +cutoff_inner = cutoff for vertex-vertex and vertex-edge interactions (distance units) +delta_ua = characteristic contact length (distance units) +c_n = normal friction coefficient (energy time/distance^2) :ul + +[Examples:] + +pair_style body/rounded/polygon 6.0 0.5 0.5 0.1 +pair_coeff 1 1 1.0 100.0 12.0 :pre + +[Description:] + +Style {body/rounded/polygon} implements the pairwise body/body +interactions between 2D convex polygons, as described +in "Fraige"_#Fraige. This pair style is designed for use with +the "rounded/polygon" body style, which is specified as +an argument to the "atom-style body/rounded/polygon" command. +See the "body"_body.html doc page for more details about the body +styles LAMMPS supports. + +The "rounded/polygon" style treats a body particle as a discrete +element model (DEM) polygon composed of N vertices. +The coordinates of a body particle are its center-of-mass (COM). +The initial position of the vertices are specified the data file. +The current implementation follows the multiple contact points model as +described in "Fraige"_#Fraige, but neglects and the contact history +the tangential contact forces for now. + +The parameters {delta_ua} and {c_n} are the characteristic contact length +and the normal friction coefficient, respectively. See Eqs. (1) and (5) +in "Fraige"_#Fraige for more details. + +For style {body/rounded/polygon}, the following coefficients +must be defined for each pair of atoms types via the "pair_coeff"_pair_coeff.html +command as in the examples above: + +sigma = vertex rounded diameter (distance units) +k_n = normal repulsion strength (energy/distance^2) +k_na = normal attraction strength (energy/distance^2) +cutoff = cutoff for COM interactions (distance units) :ul + +The last parameter is optional. If not specified, the global +cutoff specified in the pair_style command is used. + +Note that the current implementation assumes that the edge length +of the polygons (L) should be at least twice greater than +the vertex rounded radius (sigma) so as to distinguish vertex-vertex from +vertex-edge contacts. + +NOTE: Because this pair style requires the body velocities to compute +the friction component of the forces, users should specify +{comm_modify vel yes} in the input script with this pair style. + +:line + +[Mixing, shift, table, tail correction, restart, rRESPA info]: + +For atom type pairs I,J and I != J, the epsilon and sigma coefficients +and cutoff distance for all of this pair style can be mixed. The +default mix value is {geometric}. See the "pair_modify" command for +details. + +This pair style does not support the "pair_modify"_pair_modify.html +shift, table, and tail options. + +This pair style does not write its information to "binary restart +files"_restart.html. + +This pair style can only be used via the {pair} keyword of the +"run_style respa"_run_style.html command. It does not support the +{inner}, {middle}, {outer} keywords. + +:line + +[Restrictions:] + +This style is part of the BODY package. It is only enabled if LAMMPS +was built with that package. See the "Making +LAMMPS"_Section_start.html#2_3 section for more info. + +Defining particles to be bodies so they participate in body/body or +body/particle interactions requires the use of the "atom_style +body"_atom_style.html command. + +[Related commands:] + +"pair_coeff"_pair_coeff.html + +[Default:] none + +:link(Fraige) +[(Fraige)] F. Y. Fraige, P. A. Langston, A. J. Matchett, J. Dodds, +Particuology, 6, 455 (2008). diff --git a/doc/pair_dpd_conservative.txt b/doc/pair_dpd_conservative.txt new file mode 100644 index 0000000000..41e279a83d --- /dev/null +++ b/doc/pair_dpd_conservative.txt @@ -0,0 +1,72 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +pair_style dpd/conservative command :h3 + +[Syntax:] + +pair_style dpd/conservative cutoff :pre + +cutoff = global cutoff for DPD interactions (distance units) :ul + +[Examples:] + +pair_style dpd/conservative 2.5 +pair_coeff * * 3.0 2.5 +pair_coeff 1 1 3.0 :pre + +[Description:] + +Style {dpd/conservative} computes the conservative force for +dissipative particle dynamics (DPD). The conservative force on atom I +due to atom J is given by + +:c,image(Eqs/pair_dpd_conservative.jpg) + +where the weighting factor, omega_ij, varies between 0 and 1, and is +chosen to have the following functional form: + +:c,image(Eqs/pair_dpd_omega.jpg) + +where Rij is a unit vector in the direction Ri - Rj, and Rc is the +cutoff. Note that alternative definitions of the weighting function +exist, but would have to be implemented as a separate pair style +command. + +Style {dpd/conservative} differs from the other dpd styles in that the +dissipative and random forces are not computed within the pair style. + +For style {dpd/conservative}, the pairwise energy is due only to the +conservative force term Fc, and is shifted to be zero at the cutoff +distance Rc. The pairwise virial is calculated using only the +conservative term. + +Style {dpd/conservative} requires the following coefficients to be +defined for each pair of atoms types via the +"pair_coeff"_pair_coeff.html command as in the examples above, or in +the data file or restart files read by the "read_data"_read_data.html +or "read_restart"_read_restart.html commands: + +A (force units) +cutoff (distance units) :ul + +The last coefficient is optional. If not specified, the global DPD +cutoff is used. + +:line + +[Restrictions:] + +The pair style {dpd/conservative} is only available if LAMMPS is built +with the USER-DPD package. + +[Related commands:] + +"pair_coeff"_pair_coeff.html, "pair_dpd"_pair_dpd.html + +[Default:] none diff --git a/doc/pair_dpd_fdt.txt b/doc/pair_dpd_fdt.txt new file mode 100644 index 0000000000..ac31e82e30 --- /dev/null +++ b/doc/pair_dpd_fdt.txt @@ -0,0 +1,136 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +pair_style dpd/fdt command :h3 +pair_style dpd/fdt/energy command :h3 + +[Syntax:] + +pair_style style args :pre + +style = {dpd/fdt} or {dpd/fdt/energy} +args = list of arguments for a particular style :ul + {dpd/fdt} args = T cutoff seed + T = temperature (temperature units) + cutoff = global cutoff for DPD interactions (distance units) + seed = random # seed (positive integer) + {dpd/fdt/energy} args = cutoff seed + cutoff = global cutoff for DPD interactions (distance units) + seed = random # seed (positive integer) :pre + +[Examples:] + +pair_style dpd/fdt 300.0 2.5 34387 +pair_coeff * * 3.0 1.0 2.5 :pre + +pair_style dpd/fdt/energy 2.5 34387 +pair_coeff * * 3.0 1.0 0.1 2.5 :pre + +[Description:] + +Styles {dpd/fdt} and {dpd/fdt/energy} set the fluctuation-dissipation +theorem parameters and compute the conservative force for dissipative +particle dynamics (DPD). The conservative force on atom I due to atom +J is given by + +:c,image(Eqs/pair_dpd_conservative.jpg) + +where the weighting factor, omega_ij, varies between 0 and 1, and is +chosen to have the following functional form: + +:c,image(Eqs/pair_dpd_omega.jpg) + +where Rij is a unit vector in the direction Ri - Rj, and Rc is the +cutoff. Note that alternative definitions of the weighting function +exist, but would have to be implemented as a separate pair style +command. + +These pair style differ from the other dpd styles in that the +dissipative and random forces are not computed within the pair style. +This style can be combined with the "fix shardlow"_fix_shardlow.html +to perform the stochastic integration of the dissipative and random +forces through the Shardlow splitting algorithm approach. + +The pairwise energy associated with styles {dpd/fdt} and +{dpd/fdt/energy} is only due to the conservative force term Fc, and is +shifted to be zero at the cutoff distance Rc. The pairwise virial is +calculated using only the conservative term. + +For style {dpd/fdt}, the fluctuation-dissipation theorem defines gamma +to be set equal to sigma*sigma/(2 T), where T is the set point +temperature specified as a pair style parameter in the above examples. +This style can be combined with "fix shardlow"_fix_shardlow.html to +perform DPD simulations under isothermal and isobaric conditions (see +"(Lisal)"_#Lisal). The following coefficients must be defined for +each pair of atoms types via the "pair_coeff"_pair_coeff.html command +as in the examples above, or in the data file or restart files read by +the "read_data"_read_data.html or "read_restart"_read_restart.html +commands: + +A (force units) +sigma (force*time^(1/2) units) +cutoff (distance units) :ul + +The last coefficient is optional. If not specified, the global DPD +cutoff is used. + +For style {dpd/fdt/energy}, the fluctuation-dissipation theorem +defines gamma to be set equal to sigma*sigma/(2 dpdTheta), where +dpdTheta is the average internal temperature for the pair. +Furthermore, the fluctuation-dissipation defines alpha*alpha to be set +equal to 2*kB*kappa, where kappa is the mesoparticle thermal +conductivity parameter. This style can be combined with "fix +shardlow"_fix_shardlow.html to perform DPD simulations under +isoenergetic and isoenthalpic conditions (see "(Lisal)"_#Lisal). The +following coefficients must be defined for each pair of atoms types +via the "pair_coeff"_pair_coeff.html command as in the examples above, +or in the data file or restart files read by the +"read_data"_read_data.html or "read_restart"_read_restart.html +commands: + +A (force units) +sigma (force*time^(1/2) units) +kappa (1/time units) +cutoff (distance units) :ul + +The last coefficient is optional. If not specified, the global DPD +cutoff is used. + +For style {dpd/fdt/energy}, the particle internal temperature is +related to the particle internal energy through a mesoparticle +equation of state. Thus, an an additional "fix eos"_fix.html must be +specified. + +:line + +[Restrictions:] + +Pair styles {dpd/fdt} and {dpd/fdt/energy} are only available if +LAMMPS is built with the USER-DPD package. + +Pair styles {dpd/fdt} and {dpd/fdt/energy} require use of the +"communicate vel yes"_communicate.html option so that velocites are +stored by ghost atoms. + +Pair style {dpd/fdt/energy} requires "atom_style dpd"_atom_style.html +to be used in order to properly account for the particle internal +energies and temperatures. + +[Related commands:] + +"pair_coeff"_pair_coeff.html, "fix shardlow"_fix_shardlow.html + +[Default:] none + +:line + +:link(Lisal) +[(Lisal)] M. Lisal, J.K. Brennan, J. Bonet Avalos, "Dissipative +particle dynamics as isothermal, isobaric, isoenergetic, and +isoenthalpic conditions using Shardlow-like splitting algorithms.", +J. Chem. Phys., 135, 204105 (2011). diff --git a/doc/read_data.txt b/doc/read_data.txt index d15fa2b835..37c082accf 100644 --- a/doc/read_data.txt +++ b/doc/read_data.txt @@ -527,6 +527,7 @@ body: atom-ID atom-type bodyflag mass x y z bond: atom-ID molecule-ID atom-type x y z charge: atom-ID atom-type q x y z dipole: atom-ID atom-type q x y z mux muy muz +dpd: atom-ID atom-type theta x y z electron: atom-ID atom-type q spin eradius x y z ellipsoid: atom-ID atom-type ellipsoidflag density x y z full: atom-ID molecule-ID atom-type q x y z @@ -534,40 +535,41 @@ line: atom-ID molecule-ID atom-type lineflag density x y z meso: atom-ID atom-type rho e cv x y z molecular: atom-ID molecule-ID atom-type x y z peri: atom-ID atom-type volume density x y z -smd: atom-ID atom-type molecule volume mass kernel_radius contact_radius x y z +smd: atom-ID atom-type molecule volume mass kernel-radius contact-radius x y z sphere: atom-ID atom-type diameter density x y z template: atom-ID molecule-ID template-index template-atom atom-type x y z tri: atom-ID molecule-ID atom-type triangleflag density x y z wavepacket: atom-ID atom-type charge spin eradius etag cs_re cs_im x y z hybrid: atom-ID atom-type x y z sub-style1 sub-style2 ... :tb(s=:) -The keywords have these meanings: +The per-atom values have these meanings and units, listed alphabetically: atom-ID = integer ID of atom -molecule-ID = integer ID of molecule the atom belongs to atom-type = type of atom (1-Ntype) -q = charge on atom (charge units) -diameter = diameter of spherical atom (distance units) -ellipsoidflag = 1 for ellipsoidal particles, 0 for point particles -lineflag = 1 for line segment particles, 0 for point particles -triangleflag = 1 for triangular particles, 0 for point particles bodyflag = 1 for body particles, 0 for point particles -template-index = which molecule within the molecule template the atom is part of -template-atom = which atom within a template molecule the atom is -density = density of particle (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle) -mass = mass of particle (mass units) -volume = volume of particle (distance^3 units) -x,y,z = coordinates of atom -mux,muy,muz = components of dipole moment of atom (dipole units) -rho = density (need units) for SPH particles -e = energy (need units) for SPH particles +contact-radius = ??? (distance units) +cs_re,cs_im = real/imaginary parts of wavepacket coefficients cv = heat capacity (need units) for SPH particles -spin = electron spin (+1/-1), 0 = nuclei, 2 = fixed-core, 3 = pseudo-cores (i.e. ECP) +density = density of particle (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle) +diameter = diameter of spherical atom (distance units) +e = energy (need units) for SPH particles +ellipsoidflag = 1 for ellipsoidal particles, 0 for point particles eradius = electron radius (or fixed-core radius) etag = integer ID of electron that each wavepacket belongs to -cs_re,cs_im = real/imaginary parts of wavepacket coefficients -kernel_radius = ??? (distance units) -contact_radius = ??? (distance units) :ul +kernel-radius = ??? (distance units) +lineflag = 1 for line segment particles, 0 for point or spherical particles +mass = mass of particle (mass units) +molecule-ID = integer ID of molecule the atom belongs to +mux,muy,muz = components of dipole moment of atom (dipole units) +q = charge on atom (charge units) +rho = density (need units) for SPH particles +spin = electron spin (+1/-1), 0 = nuclei, 2 = fixed-core, 3 = pseudo-cores (i.e. ECP) +template-atom = which atom within a template molecule the atom is +template-index = which molecule within the molecule template the atom is part of +theta = internal temperature of a DPD particle +triangleflag = 1 for triangular particles, 0 for point or sperhical particles +volume = volume of Peridynamic particle (distance^3 units) +x,y,z = coordinates of atom (distance units) :ul The units for these quantities depend on the unit style; see the "units"_units.html command for details. diff --git a/doc/set.txt b/doc/set.txt index d5d0d973c1..184e147d11 100644 --- a/doc/set.txt +++ b/doc/set.txt @@ -23,7 +23,7 @@ keyword = {type} or {type/fraction} or {mol} or {x} or {y} or {z} or \ {mass} or {density} or {volume} or {image} or \ {bond} or {angle} or {dihedral} or {improper} or \ {meso/e} or {meso/cv} or {meso/rho} or \ - {smd/contact/radius} or {smd/mass/density} or \ + {smd/contact/radius} or {smd/mass/density} or {dpd/theta} or \ {i_name} or {d_name} :l {type} value = atom type value can be an atom-style variable (see below) @@ -92,6 +92,7 @@ keyword = {type} or {type/fraction} or {mol} or {x} or {y} or {z} or \ value can be an atom-style variable (see below) {smd/mass/density} = set particle mass based on volume by providing a mass density value can be an atom-style variable (see below) + {dpd/theta} value = internal temperature of DPD particles (temperature units) {i_name} value = value for custom integer vector with name {d_name} value = value for custom floating-point vector with name :pre :ule @@ -389,6 +390,9 @@ other. Note that the SPH smoothing kernel diameter used for computing long range, nonlocal interactions, is set using the {diameter} keyword. +Keyword {dpd/theta} sets the internal temperature of a DPD particle +as defined by the USER-DPD package. + Keywords {i_name} and {d_name} refer to custom integer and floating-point properties that have been added to each atom via the "fix property/atom"_fix_property_atom.html command. When that command