git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@11997 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp 2014-05-15 21:05:40 +00:00
parent db0cac35a2
commit 65e0020948
6 changed files with 202 additions and 124 deletions

View File

@ -1,5 +1,5 @@
<HTML>
<CENTER><A HREF = "Section_tools.html">Previous Section</A> - <A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> -
<CENTER> <A HREF = "Section_tools.html">Previous Section</A> - <A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> -
<A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> - <A HREF = "Section_python.html">Next
Section</A>
</CENTER>
@ -647,6 +647,11 @@ which is the simplest way to have your contribution quickly added to
the LAMMPS distribution. You can see a list of the both standard and
user packages by typing "make package" in the LAMMPS src directory.
</P>
<P>Note that by providing us the files to release you are agreeing to
make them open-source, i.e. that we can release them under the terms
of the GPL used as a license for the rest of LAMMPS. See <A HREF = "Section_intro.html#intro_4">Section
1.4</A> for details.
</P>
<P>With user packages and files, all we are really providing (aside from
the fame and fortune that accompanies having your name in the source
code and on the <A HREF = "http://lammps.sandia.gov/authors.html">Authors page</A>
@ -684,46 +689,79 @@ the code accesses data structures, performs its operations, and is
formatted similar to other LAMMPS source files, including the use of
the error class for error and warning messages.
<LI>If your contribution is a single file (actually a *.cpp and *.h file)
it can most rapidly be added to the USER-MISC directory. Send us the
one-line entry to add to the USER-MISC/README file in that dir, along
with the 2 source files. You can do this multiple times if you wish
to contribute several individual features.
<LI>If you want your contribution to be added as a user-contributed
feature, and it's a single file (actually a *.cpp and *.h file) it can
rapidly be added to the USER-MISC directory. Send us the one-line
entry to add to the USER-MISC/README file in that dir, along with the
2 source files. You can do this multiple times if you wish to
contribute several individual features.
<LI>If your contribution is several related featues, it is probably best
to make it a user package directory with a name like USER-FOO. In
addition to your new files, the directory should contain a README, and
Install.csh file. The README text file should contain your name and
contact information and a brief description of what your new package
does. The Install.csh file enables LAMMPS to include and exclude your
package. See other README and Install.sh files in other USER
directories as examples. Send us a tarball of this USER-FOO
directory.
<LI>If you want your contribution to be added as a user-contribution and
it is several related featues, it is probably best to make it a user
package directory with a name like USER-FOO. In addition to your new
files, the directory should contain a README text file. The README
should contain your name and contact information and a brief
description of what your new package does. If your files depend on
other LAMMPS style files also being installed (e.g. because your file
is a derived class from the other LAMMPS class), then an Install.sh
file is also needed to check for those dependencies. See other README
and Install.sh files in other USER directories as examples. Send us a
tarball of this USER-FOO directory.
<LI>Your new source files need to have the LAMMPS copyright, GPL notice,
and your name at the top, like other LAMMPS source files. They need
to create a class that is inside the LAMMPS namespace. If the file is
for one of the USER packages, including USER-MISC, then we are not as
picky about the coding style (see above). I.e. they do not need to be
in the same stylistic format and syntax as other LAMMPS files, though
that would be nice.
and your name and email address at the top, like other
user-contributed LAMMPS source files. They need to create a class
that is inside the LAMMPS namespace. If the file is for one of the
USER packages, including USER-MISC, then we are not as picky about the
coding style (see above). I.e. the files do not need to be in the
same stylistic format and syntax as other LAMMPS files, though that
would be nice for developers as well as users who try to read your
code.
<LI>Finally, you must also send a documentation file for each new command
or style you are adding to LAMMPS. This will be one file for a
<LI>You must also create a documentation file for each new command or
style you are adding to LAMMPS. This will be one file for a
single-file feature. For a package, it might be several files. These
are simple text files which we will convert to HTML. They must be in
the same format as other *.txt files in the lammps/doc directory for
similar commands and styles. The "Restrictions" section of the doc
page should indicate that your command is only available if LAMMPS is
built with the appropriate USER-MISC or USER-FOO package. See other
user package doc files for an example of how to do this. The txt2html
tool we use to do the conversion can be downloaded from <A HREF = "http://www.sandia.gov/~sjplimp/download.html">this
are simple text files which we auto-convert to HTML. Thus they must
be in the same format as other *.txt files in the lammps/doc directory
for similar commands and styles. As appropriate, the text files can
includelinks to equations (see doc/Eqs/*.tex for examples, we
auto-create the associated JPG files), or figures (see doc/JPG for
examples), or even additional PDF files with further details (see
doc/PDF for examples). The doc page should also include literature
citations; see the bottom of doc/fix_nh.txt for examples and the
earlier part of the same file for examples of how to format the cite.
The "Restrictions" section of the doc page should indicate that your
command is only available if LAMMPS is built with the appropriate
USER-MISC or USER-FOO package. See other user package doc files for
an example of how to do this. The txt2html tool we use to do the
conversion can be downloaded from <A HREF = "http://www.sandia.gov/~sjplimp/download.html">this
site</A>, so you can perform
the HTML conversion yourself to proofread your doc page.
the HTML conversion yourself to proofread your doc page.
<LI>For a new package (or even a single command) you can include one or
more example scripts. These should run in no more than 1 minute, even
on a single processor, and not require large data files as input. See
directories under examples/USER for examples of user-provided input
scripts for their packages.
<LI>If there is a paper of yours describing your feature (either the
algorithm/science behind the feature itself, or its implementation in
LAMMPS), you can add the citation to the *.cpp source file. See
src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation
is stored in a variable at the top of the file and a single line of
code that references the variable is added to the constructor of the
class. This will cause LAMMPS to output the citation to a log.cite
file and issue a prompt to examine the file, whenever a user inovkes
your feature from their input script. Note that you should only use
this for a paper you or your group authored. Adding a cite in the
code for a paper by Nose and Hoover if you write a fix that implements
their integrator is not the intended usage. That kind of citation
should just be in the doc page you provide.
</UL>
<P>Note that the more clear and self-explanatory you make your doc and
README files, the more likely it is that users will try out your new
feature.
<P>Finally, as a general rule-of-thumb, the more clear and
self-explanatory you make your doc and README files, and the easier
you make it for people to get started, e.g. by providing example
scripts, the more likely it is that users will try your new feature.
</P>
<HR>

View File

@ -1,4 +1,4 @@
"Previous Section"_Section_tools.html - "LAMMPS WWW Site"_lws -
"Previous Section"_Section_tools.html - "LAMMPS WWW Site"_lws -
"LAMMPS Documentation"_ld - "LAMMPS Commands"_lc - "Next
Section"_Section_python.html :c
@ -621,6 +621,11 @@ which is the simplest way to have your contribution quickly added to
the LAMMPS distribution. You can see a list of the both standard and
user packages by typing "make package" in the LAMMPS src directory.
Note that by providing us the files to release you are agreeing to
make them open-source, i.e. that we can release them under the terms
of the GPL used as a license for the rest of LAMMPS. See "Section
1.4"_Section_intro.html#intro_4 for details.
With user packages and files, all we are really providing (aside from
the fame and fortune that accompanies having your name in the source
code and on the "Authors page"_http://lammps.sandia.gov/authors.html
@ -658,46 +663,79 @@ the code accesses data structures, performs its operations, and is
formatted similar to other LAMMPS source files, including the use of
the error class for error and warning messages. :l
If your contribution is a single file (actually a *.cpp and *.h file)
it can most rapidly be added to the USER-MISC directory. Send us the
one-line entry to add to the USER-MISC/README file in that dir, along
with the 2 source files. You can do this multiple times if you wish
to contribute several individual features. :l
If you want your contribution to be added as a user-contributed
feature, and it's a single file (actually a *.cpp and *.h file) it can
rapidly be added to the USER-MISC directory. Send us the one-line
entry to add to the USER-MISC/README file in that dir, along with the
2 source files. You can do this multiple times if you wish to
contribute several individual features. :l
If your contribution is several related featues, it is probably best
to make it a user package directory with a name like USER-FOO. In
addition to your new files, the directory should contain a README, and
Install.csh file. The README text file should contain your name and
contact information and a brief description of what your new package
does. The Install.csh file enables LAMMPS to include and exclude your
package. See other README and Install.sh files in other USER
directories as examples. Send us a tarball of this USER-FOO
directory. :l
If you want your contribution to be added as a user-contribution and
it is several related featues, it is probably best to make it a user
package directory with a name like USER-FOO. In addition to your new
files, the directory should contain a README text file. The README
should contain your name and contact information and a brief
description of what your new package does. If your files depend on
other LAMMPS style files also being installed (e.g. because your file
is a derived class from the other LAMMPS class), then an Install.sh
file is also needed to check for those dependencies. See other README
and Install.sh files in other USER directories as examples. Send us a
tarball of this USER-FOO directory. :l
Your new source files need to have the LAMMPS copyright, GPL notice,
and your name at the top, like other LAMMPS source files. They need
to create a class that is inside the LAMMPS namespace. If the file is
for one of the USER packages, including USER-MISC, then we are not as
picky about the coding style (see above). I.e. they do not need to be
in the same stylistic format and syntax as other LAMMPS files, though
that would be nice. :l
and your name and email address at the top, like other
user-contributed LAMMPS source files. They need to create a class
that is inside the LAMMPS namespace. If the file is for one of the
USER packages, including USER-MISC, then we are not as picky about the
coding style (see above). I.e. the files do not need to be in the
same stylistic format and syntax as other LAMMPS files, though that
would be nice for developers as well as users who try to read your
code. :l
Finally, you must also send a documentation file for each new command
or style you are adding to LAMMPS. This will be one file for a
You must also create a documentation file for each new command or
style you are adding to LAMMPS. This will be one file for a
single-file feature. For a package, it might be several files. These
are simple text files which we will convert to HTML. They must be in
the same format as other *.txt files in the lammps/doc directory for
similar commands and styles. The "Restrictions" section of the doc
page should indicate that your command is only available if LAMMPS is
built with the appropriate USER-MISC or USER-FOO package. See other
user package doc files for an example of how to do this. The txt2html
tool we use to do the conversion can be downloaded from "this
are simple text files which we auto-convert to HTML. Thus they must
be in the same format as other *.txt files in the lammps/doc directory
for similar commands and styles. As appropriate, the text files can
includelinks to equations (see doc/Eqs/*.tex for examples, we
auto-create the associated JPG files), or figures (see doc/JPG for
examples), or even additional PDF files with further details (see
doc/PDF for examples). The doc page should also include literature
citations; see the bottom of doc/fix_nh.txt for examples and the
earlier part of the same file for examples of how to format the cite.
The "Restrictions" section of the doc page should indicate that your
command is only available if LAMMPS is built with the appropriate
USER-MISC or USER-FOO package. See other user package doc files for
an example of how to do this. The txt2html tool we use to do the
conversion can be downloaded from "this
site"_http://www.sandia.gov/~sjplimp/download.html, so you can perform
the HTML conversion yourself to proofread your doc page. :l,ule
the HTML conversion yourself to proofread your doc page. :l
Note that the more clear and self-explanatory you make your doc and
README files, the more likely it is that users will try out your new
feature.
For a new package (or even a single command) you can include one or
more example scripts. These should run in no more than 1 minute, even
on a single processor, and not require large data files as input. See
directories under examples/USER for examples of user-provided input
scripts for their packages. :l
If there is a paper of yours describing your feature (either the
algorithm/science behind the feature itself, or its implementation in
LAMMPS), you can add the citation to the *.cpp source file. See
src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation
is stored in a variable at the top of the file and a single line of
code that references the variable is added to the constructor of the
class. This will cause LAMMPS to output the citation to a log.cite
file and issue a prompt to examine the file, whenever a user inovkes
your feature from their input script. Note that you should only use
this for a paper you or your group authored. Adding a cite in the
code for a paper by Nose and Hoover if you write a fix that implements
their integrator is not the intended usage. That kind of citation
should just be in the doc page you provide. :l,ule
Finally, as a general rule-of-thumb, the more clear and
self-explanatory you make your doc and README files, and the easier
you make it for people to get started, e.g. by providing example
scripts, the more likely it is that users will try your new feature.
:line
:line

View File

@ -89,7 +89,7 @@ dump m2 all movie 100 movie.m4v type type zoom 1.8 adiam v_value size 1280 720
<P><B>Description:</B>
</P>
<P>Dump a high-quality rendered image of the atom configuration every N
timesteps and save the images either as a sequence of JPG or PNG, or
timesteps and save the images either as a sequence of JPEG or PNG or
PPM files, or as a single movie file. The options for this command as
well as the <A HREF = "dump_modify.html">dump_modify</A> command control what is
included in the image or movie and how it appears. A series of such
@ -105,8 +105,8 @@ has been run, using the <A HREF = "rerun.html">rerun</A> command to read snapsho
from an existing dump file, and using these dump commands in the rerun
script to generate the images/movie.
</P>
<P>Here are two sample images, rendered as 1024x1024 JPG files. Click to
see the full-size images:
<P>Here are two sample images, rendered as 1024x1024 JPEG files. Click
to see the full-size images:
</P>
<DIV ALIGN=center>
@ -120,14 +120,14 @@ see the full-size images:
<A HREF = "dump_modify.html">dump_modify region and thresh</A> commands can also
alter what atoms are included in the image.</P>
<P>The filename suffix determines whether a JPEG, PNG, or PPM file is
created with the <I>image</I> dump style. If the suffix is ".jpg" or ".jpeg",
then a JPEG format file is created, if the suffix is ".png", then a PNG
format is created, else a PPM (aka NETPBM) format file is created.
The JPG and PNG files are binary; PPM has a text mode header followed
by binary data. JPG images have lossy compression; PNG has lossless
compression; and PPM files are uncompressed but can be compressed with
gzip, if LAMMPS has been compiled with -DLAMMPS_GZIP and a ".gz" suffix
is used.
created with the <I>image</I> dump style. If the suffix is ".jpg" or
".jpeg", then a JPEG format file is created, if the suffix is ".png",
then a PNG format is created, else a PPM (aka NETPBM) format file is
created. The JPEG and PNG files are binary; PPM has a text mode
header followed by binary data. JPEG images have lossy compression;
PNG has lossless compression; and PPM files are uncompressed but can
be compressed with gzip, if LAMMPS has been compiled with
-DLAMMPS_GZIP and a ".gz" suffix is used.
</P>
<P>Similarly, the format of the resulting movie is chosen with the
<I>movie</I> dump style. This is handled by the underlying FFmpeg converter
@ -405,14 +405,15 @@ shading is performed.
</P>
<HR>
<P>A series of JPG, PNG, or PPM images can be converted into a movie file
and then played as a movie using commonly available tools. Using dump
style <I>movie</I> automates this step and avoids the intermediate step of
writing (many) image snapshot file. But LAMMPS has to be compiled with
-DLAMMPS_FFMPEG and an FFmpeg executable have to be installed.
<P>A series of JPEG, PNG, or PPM images can be converted into a movie
file and then played as a movie using commonly available tools. Using
dump style <I>movie</I> automates this step and avoids the intermediate
step of writing (many) image snapshot file. But LAMMPS has to be
compiled with -DLAMMPS_FFMPEG and an FFmpeg executable have to be
installed.
</P>
<P>To manually convert JPG, PNG or PPM files into an animated GIF or MPEG
or other movie file you can use:
<P>To manually convert JPEG, PNG or PPM files into an animated GIF or
MPEG or other movie file you can use:
</P>
<UL><LI>a) Use the ImageMagick convert program.
@ -486,7 +487,7 @@ per-atom quantities which could then be output into dump files.
<P><B>Restrictions:</B>
</P>
<P>To write JPG images, you must use the -DLAMMPS_JPEG switch when
<P>To write JPEG images, you must use the -DLAMMPS_JPEG switch when
building LAMMPS and link with a JPEG library. To write PNG images, you
must use the -DLAMMPS_PNG switch when building LAMMPS and link with a
PNG library.

View File

@ -75,7 +75,7 @@ dump m2 all movie 100 movie.m4v type type zoom 1.8 adiam v_value size 1280 720 :
[Description:]
Dump a high-quality rendered image of the atom configuration every N
timesteps and save the images either as a sequence of JPG or PNG, or
timesteps and save the images either as a sequence of JPEG or PNG or
PPM files, or as a single movie file. The options for this command as
well as the "dump_modify"_dump_modify.html command control what is
included in the image or movie and how it appears. A series of such
@ -91,8 +91,8 @@ has been run, using the "rerun"_rerun.html command to read snapshots
from an existing dump file, and using these dump commands in the rerun
script to generate the images/movie.
Here are two sample images, rendered as 1024x1024 JPG files. Click to
see the full-size images:
Here are two sample images, rendered as 1024x1024 JPEG files. Click
to see the full-size images:
<DIV ALIGN=center>
@ -106,14 +106,14 @@ Only atoms in the specified group are rendered in the image. The
alter what atoms are included in the image.\
The filename suffix determines whether a JPEG, PNG, or PPM file is
created with the {image} dump style. If the suffix is ".jpg" or ".jpeg",
then a JPEG format file is created, if the suffix is ".png", then a PNG
format is created, else a PPM (aka NETPBM) format file is created.
The JPG and PNG files are binary; PPM has a text mode header followed
by binary data. JPG images have lossy compression; PNG has lossless
compression; and PPM files are uncompressed but can be compressed with
gzip, if LAMMPS has been compiled with -DLAMMPS_GZIP and a ".gz" suffix
is used.
created with the {image} dump style. If the suffix is ".jpg" or
".jpeg", then a JPEG format file is created, if the suffix is ".png",
then a PNG format is created, else a PPM (aka NETPBM) format file is
created. The JPEG and PNG files are binary; PPM has a text mode
header followed by binary data. JPEG images have lossy compression;
PNG has lossless compression; and PPM files are uncompressed but can
be compressed with gzip, if LAMMPS has been compiled with
-DLAMMPS_GZIP and a ".gz" suffix is used.
Similarly, the format of the resulting movie is chosen with the
{movie} dump style. This is handled by the underlying FFmpeg converter
@ -391,14 +391,15 @@ shading is performed.
:line
A series of JPG, PNG, or PPM images can be converted into a movie file
and then played as a movie using commonly available tools. Using dump
style {movie} automates this step and avoids the intermediate step of
writing (many) image snapshot file. But LAMMPS has to be compiled with
-DLAMMPS_FFMPEG and an FFmpeg executable have to be installed.
A series of JPEG, PNG, or PPM images can be converted into a movie
file and then played as a movie using commonly available tools. Using
dump style {movie} automates this step and avoids the intermediate
step of writing (many) image snapshot file. But LAMMPS has to be
compiled with -DLAMMPS_FFMPEG and an FFmpeg executable have to be
installed.
To manually convert JPG, PNG or PPM files into an animated GIF or MPEG
or other movie file you can use:
To manually convert JPEG, PNG or PPM files into an animated GIF or
MPEG or other movie file you can use:
a) Use the ImageMagick convert program. :ulb,l
@ -472,7 +473,7 @@ per-atom quantities which could then be output into dump files.
[Restrictions:]
To write JPG images, you must use the -DLAMMPS_JPEG switch when
To write JPEG images, you must use the -DLAMMPS_JPEG switch when
building LAMMPS and link with a JPEG library. To write PNG images, you
must use the -DLAMMPS_PNG switch when building LAMMPS and link with a
PNG library.

View File

@ -49,7 +49,7 @@
numbers = 0.0, 100, -5.4, 2.8e-4, etc
constants = PI
thermo keywords = vol, ke, press, etc from <A HREF = "thermo_style.html">thermo_style</A>
math operators = (), -x, x+y, x-y, x*y, x/y, x^y,
math operators = (), -x, x+y, x-y, x*y, x/y, x^y, x%y,
x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x
math functions = sqrt(x), exp(x), ln(x), log(x), abs(x),
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x),
@ -368,7 +368,7 @@ references to other variables.
<TR><TD >Number</TD><TD > 0.2, 100, 1.0e20, -15.4, etc</TD></TR>
<TR><TD >Constant</TD><TD > PI</TD></TR>
<TR><TD >Thermo keywords</TD><TD > vol, pe, ebond, etc</TD></TR>
<TR><TD >Math operators</TD><TD > (), -x, x+y, x-y, x*y, x/y, x^y, x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x</TD></TR>
<TR><TD >Math operators</TD><TD > (), -x, x+y, x-y, x*y, x/y, x^y, x%y, x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x</TD></TR>
<TR><TD >Math functions</TD><TD > sqrt(x), exp(x), ln(x), log(x), abs(x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ramp(x,y), stagger(x,y), logfreq(x,y,z), stride(x,y,z), vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z)</TD></TR>
<TR><TD >Group functions</TD><TD > count(ID), mass(ID), charge(ID), xcm(ID,dim), vcm(ID,dim), fcm(ID,dim), bound(ID,dir), gyration(ID), ke(ID), angmom(ID,dim), torque(ID,dim), inertia(ID,dimdim), omega(ID,dim)</TD></TR>
<TR><TD >Region functions</TD><TD > count(ID,IDR), mass(ID,IDR), charge(ID,IDR), xcm(ID,dim,IDR), vcm(ID,dim,IDR), fcm(ID,dim,IDR), bound(ID,dir,IDR), gyration(ID,IDR), ke(ID,IDR), angmom(ID,dim,IDR), torque(ID,dim,IDR), inertia(ID,dimdim,IDR), omega(ID,dim,IDR)</TD></TR>
@ -428,13 +428,13 @@ vectors of y and z velocities.
<P>Operators are evaluated left to right and have the usual C-style
precedence: unary minus and unary logical NOT operator "!" have the
highest precedence, exponentiation "^" is next; multiplication and
division are next; addition and subtraction are next; the 4 relational
operators "<", "<=", ">", and ">=" are next; the two remaining
relational operators "==" and "!=" are next; then the logical AND
operator "&&"; and finally the logical OR operator "||" has the lowest
precedence. Parenthesis can be used to group one or more portions of
a formula and/or enforce a different order of evaluation than what
would occur with the default precedence.
division and the modulo operator "%" are next; addition and
subtraction are next; the 4 relational operators "<", "<=", ">", and
">=" are next; the two remaining relational operators "==" and "!="
are next; then the logical AND operator "&&"; and finally the logical
OR operator "||" has the lowest precedence. Parenthesis can be used
to group one or more portions of a formula and/or enforce a different
order of evaluation than what would occur with the default precedence.
</P>
<P>IMPORTANT NOTE: Because a unary minus is higher precedence than
exponentiation, the formula "-2^2" will evaluate to 4, not -4. This

View File

@ -44,7 +44,7 @@ style = {delete} or {index} or {loop} or {world} or {universe} or {uloop} or {st
numbers = 0.0, 100, -5.4, 2.8e-4, etc
constants = PI
thermo keywords = vol, ke, press, etc from "thermo_style"_thermo_style.html
math operators = (), -x, x+y, x-y, x*y, x/y, x^y,
math operators = (), -x, x+y, x-y, x*y, x/y, x^y, x%y,
x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x
math functions = sqrt(x), exp(x), ln(x), log(x), abs(x),
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x),
@ -361,7 +361,7 @@ references to other variables.
Number: 0.2, 100, 1.0e20, -15.4, etc
Constant: PI
Thermo keywords: vol, pe, ebond, etc
Math operators: (), -x, x+y, x-y, x*y, x/y, x^y, x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x
Math operators: (), -x, x+y, x-y, x*y, x/y, x^y, x%y, x==y, x!=y, x<y, x<=y, x>y, x>=y, x&&y, x||y, !x
Math functions: sqrt(x), exp(x), ln(x), log(x), abs(x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ramp(x,y), stagger(x,y), logfreq(x,y,z), stride(x,y,z), vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z)
Group functions: count(ID), mass(ID), charge(ID), xcm(ID,dim), \
vcm(ID,dim), fcm(ID,dim), bound(ID,dir), \
@ -428,13 +428,13 @@ vectors of y and z velocities.
Operators are evaluated left to right and have the usual C-style
precedence: unary minus and unary logical NOT operator "!" have the
highest precedence, exponentiation "^" is next; multiplication and
division are next; addition and subtraction are next; the 4 relational
operators "<", "<=", ">", and ">=" are next; the two remaining
relational operators "==" and "!=" are next; then the logical AND
operator "&&"; and finally the logical OR operator "||" has the lowest
precedence. Parenthesis can be used to group one or more portions of
a formula and/or enforce a different order of evaluation than what
would occur with the default precedence.
division and the modulo operator "%" are next; addition and
subtraction are next; the 4 relational operators "<", "<=", ">", and
">=" are next; the two remaining relational operators "==" and "!="
are next; then the logical AND operator "&&"; and finally the logical
OR operator "||" has the lowest precedence. Parenthesis can be used
to group one or more portions of a formula and/or enforce a different
order of evaluation than what would occur with the default precedence.
IMPORTANT NOTE: Because a unary minus is higher precedence than
exponentiation, the formula "-2^2" will evaluate to 4, not -4. This