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

This commit is contained in:
sjplimp 2006-11-01 23:01:32 +00:00
parent ef46d1e957
commit c7483841e0
2 changed files with 212 additions and 150 deletions

View File

@ -25,13 +25,13 @@
</P> </P>
<PRE>pair_style eam <PRE>pair_style eam
pair_coeff * * cuu3 pair_coeff * * cuu3
pair_coeff 1*3 1*3 niu3 pair_coeff 1*3 1*3 niu3.eam
</PRE> </PRE>
<PRE>pair_style eam/alloy <PRE>pair_style eam/alloy
pair_coeff * * nialhjea 1 2 1 1 pair_coeff * * ../potentials/nialhjea.eam.alloy Ni Al Ni Ni
</PRE> </PRE>
<PRE>pair_style eam/fs <PRE>pair_style eam/fs
pair_coeff * * nial.fs 1 2 1 1 pair_coeff * * nialhjea.eam.fs Ni Al Ni Ni
</PRE> </PRE>
<P><B>Description:</B> <P><B>Description:</B>
</P> </P>
@ -58,30 +58,32 @@ the "potentials" directory of the LAMMPS distribution.
</P> </P>
<P>IMPORTANT NOTE: The <I>eam</I> style reads single-element EAM potentials in <P>IMPORTANT NOTE: The <I>eam</I> style reads single-element EAM potentials in
the DYNAMO <I>funcfl</I> format. Either single element or alloy systems the DYNAMO <I>funcfl</I> format. Either single element or alloy systems
can be modeled with <I>funcfl</I> files and style <I>eam</I>. For the alloy can be modeled using multiple <I>funcfl</I> files and style <I>eam</I>. For the
case LAMMPS mixes the single-element potentials to produce alloy alloy case LAMMPS mixes the single-element potentials to produce alloy
potentials the same way that DYNAMO does. Alternatively, DYNAMO potentials, the same way that DYNAMO does. Alternatively, a single
<I>setfl</I> files can be used by LAMMPS to model alloy systems by invoking DYNAMO <I>setfl</I> file of Finnis/Sinclair EAM file can be used by LAMMPS
the <I>eam/alloy</I> style as described below. <I>Setfl</I> files require no to model alloy systems by invoking the <I>eam/alloy</I> or <I>eam/fs</I> styles
mixing since they specify alloy interactions explicitly. as described below. These files require no mixing since they specify
alloy interactions explicitly.
</P> </P>
<P>For style <I>eam</I>, potential values are read from a file that is in the <P>For style <I>eam</I>, potential values are read from a file that is in the
DYNAMO single-element <I>funcfl</I> format. If the DYNAMO file was created DYNAMO single-element <I>funcfl</I> format. If the DYNAMO file was created
by a Fortran program, it cannot have "D" values in it for exponents. by a Fortran program, it cannot have "D" values in it for exponents.
C only recognizes "e" or "E" for scientific notation. C only recognizes "e" or "E" for scientific notation.
</P> </P>
<P>Note that unlike for other potentials, you do not set cutoffs for EAM <P>Note that unlike for other potentials, cutoffs for EAM potentials are
potentials in the pair_style or pair_coeff command; they are specified not set in the pair_style or pair_coeff command; they are specified in
in the EAM potential files. the EAM potential files themselves.
</P> </P>
<P>For style <I>eam</I> you must assign a potential file to each I,I pair of <P>For style <I>eam</I> a potential file must be assigned to each I,I pair of
atom types by using a single pair_coeff argument: atom types by using one or more pair_coeff commands, each with a
single argument:
</P> </P>
<UL><LI>filename <UL><LI>filename
</UL> </UL>
<P>Thus the following command <P>Thus the following command
</P> </P>
<PRE>pair_coeff *2 1*2 cuu3 <PRE>pair_coeff *2 1*2 cuu3.eam
</PRE> </PRE>
<P>will read the cuu3 potential file and use the tabulated Cu values for <P>will read the cuu3 potential file and use the tabulated Cu values for
F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs
@ -101,23 +103,35 @@ LAMMPS distribution, with the suffix ".eam". A DYNAMO single-element
<LI>line 3: Nrho, drho, Nr, dr, cutoff <LI>line 3: Nrho, drho, Nr, dr, cutoff
</UL> </UL>
<P>On line 2, all values but the mass are ignored by LAMMPS. The mass is <P>On line 2, all values but the mass are ignored by LAMMPS. The mass is
in atomic mass units which is converted by LAMMPS to the appropriate in atomic mass units (g/cm^3) which is converted by LAMMPS to the
internal mass <A HREF = "units.html">units</A>. On line 3, Nrho and Nr are the appropriate internal mass <A HREF = "units.html">units</A>. The cubic lattice
number of tabulated values in the subsequent arrays, drho and dr are constant is in Angstroms. On line 3, Nrho and Nr are the number of
the spacing in density and distance space for the values in those tabulated values in the subsequent arrays, drho and dr are the spacing
arrays, and the specified cutoff becomes the pairwise cutoff used by in density and distance space for the values in those arrays, and the
LAMMPS for the potential. The units of dr are Angstroms; I'm not sure specified cutoff becomes the pairwise cutoff used by LAMMPS for the
of the units for drho - some measure of electron density. potential. The units of dr are Angstroms; I'm not sure of the units
for drho - some measure of electron density.
</P> </P>
<P>Following the 3 header lines are 3 arrays of tabulated values: <P>Following the 3 header lines are 3 arrays of tabulated values:
</P> </P>
<UL><LI>embedding function F (Nrho values) <UL><LI>embedding function F(rho) (Nrho values)
<LI>pair potential function phi (Nr values) <LI>effective charge function Z(r) (Nr values)
<LI>density function rho (Nr values) <LI>density function rho(r) (Nr values)
</UL> </UL>
<P>The values for each array can be listed as multiple values per line, <P>The values for each array can be listed as multiple values per line,
so long as each array starts on a new line. The individual values are so long as each array starts on a new line. For example, the
(for example) phi(r) for r = 0,dr,2*dr, ... (Nr-1)*dr. individual Z(r) values are for r = 0,dr,2*dr, ... (Nr-1)*dr.
</P>
<P>The units for the embedding function F are eV. The units for the
density function rho are the same as for drho (see above, electron
density). The units for the effective charge Z are "atomic charge" or
sqrt(Hartree * Bohr-radii). For 2 interacting atoms i,j this is used
by LAMMPS to compute the pair potential term in the EAM energy
expression as r*phi, in units of eV-Angstroms, via the formula
</P>
<PRE>r*phi = 27.2 * 0.529 * Zi * Zj
</PRE>
<P>where 1 Hartree = 27.2 eV and 1 Bohr = 0.529 Angstroms.
</P> </P>
<HR> <HR>
@ -131,64 +145,76 @@ interactions. Thus they allow more generality than <I>funcfl</I> files for
modeling alloys. modeling alloys.
</P> </P>
<P>For style <I>eam/alloy</I>, potential values are read from a file that is <P>For style <I>eam/alloy</I>, potential values are read from a file that is
in the DYNAMO multi-element <I>setfl</I> format. If the DYNAMO file was in the DYNAMO multi-element <I>setfl</I> format, except that element names
created by a Fortran program, it cannot have "D" values in it for (Ni, Cu, etc) are added to one of the lines in the file. If the
exponents. C only recognizes "e" or "E" for scientific notation. DYNAMO file was created by a Fortran program, it cannot have "D"
values in it for exponents. C only recognizes "e" or "E" for
scientific notation.
</P> </P>
<P>Only one pair_coeff command can be used (one file). DYNAMO <I>setfl</I> <P>Only one pair_coeff command can be used which specifies a single
files contain information for M elements. These are mapped to LAMMPS <I>setfl</I> file. DYNAMO <I>setfl</I> files contain information for M
atom types by specifying N additional arguments after the filename, elements. These are mapped to LAMMPS atom types by specifying N
where N is the number of LAMMPS atom types: additional arguments after the filename, where N is the number of
LAMMPS atom types:
</P> </P>
<UL><LI>filename <UL><LI>filename
<LI>N values from 0 to M = mapping of <I>setfl</I> elements to atom types <LI>N element names = mapping of <I>setfl</I> elements to atom types
</UL> </UL>
<P>As an example, the nialhjea <I>setfl</I> file has tabulated EAM values for <P>As an example, the nialhjea <I>setfl</I> file has tabulated EAM values for
3 elements and their alloy interactions: Ni, Al, and H. If your 3 elements and their alloy interactions: Ni, Al, and H. If your
LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Ni, LAMMPS simulation had 4 atoms types and you wanted the 1st 3 to be Ni,
and the 4th to be Al, you would use the following pair_coeff command: and the 4th to be Al, you would use the following pair_coeff command:
</P> </P>
<PRE>pair_coeff * * nialhjea 1 1 1 2 <PRE>pair_coeff * * nialhjea.eam.alloy Ni Ni Ni Al
</PRE> </PRE>
<P>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. <P>The 1st 2 arguments must be * * so as to span all LAMMPS atom types.
The first three "1" values map LAMMPS atom types 1,2,3 to the 1st The first three Ni arguments map LAMMPS atom types 1,2,3 to the Ni
element (Ni) in the <I>setfl</I> file. The final "2" value maps LAMMPS element in the <I>setfl</I> file. The final Al argument maps LAMMPS atom
atom type 4 to the 2nd element = Al. If a mapping value is "0", the type 4 to the Al element in the <I>setfl</I> file. If a mapping value is
mapping is not performed. This can be used when an <I>eam/alloy</I> specified as NULL, the mapping is not performed. This can be used
potential is used as part of the <I>hybrid</I> pair style. The 0 values when an <I>eam/alloy</I> potential is used as part of the <I>hybrid</I> pair
are used as placeholders for atom types that will be used with other style. The NULL values are placeholders for atom types that will be
potentials. used with other potentials.
</P> </P>
<P><I>Setfl</I> files in the <I>potentials</I> directory of the LAMMPS distribution <P><I>Setfl</I> files in the <I>potentials</I> directory of the LAMMPS distribution
have a ".eam.alloy" suffix. A DYNAMO multi-element <I>setfl</I> file is have a ".eam.alloy" suffix. A DYNAMO multi-element <I>setfl</I> file is
formatted as follows: formatted as follows:
</P> </P>
<UL><LI>lines 1,2,3 = comments (ignored) <UL><LI>lines 1,2,3 = comments (ignored)
<LI>line 4: Nelements = # of elements in the file <LI>line 4: Nelements Element1 Element2 ... ElementN
<LI>line 5: Nrho, drho, Nr, dr, cutoff <LI>line 5: Nrho, drho, Nr, dr, cutoff
</UL> </UL>
<P>The meaning of the values in line 5 is the same as for the <I>funcfl</I> <P>In a DYNAMO <I>setfl</I> file, line 4 only lists Nelements = the # of
file described above. Note that the cutoff is a global value, valid elements in the <I>setfl</I> file. For LAMMPS, the element name (Ni, Cu,
for all pairwise interactions for all element pairings. etc) of each element must be added to the line, in the order the
elements appear in the file.
</P>
<P>The meaning and units of the values in line 5 is the same as for the
<I>funcfl</I> file described above. Note that the cutoff (in Angstroms) is
a global value, valid for all pairwise interactions for all element
pairings.
</P> </P>
<P>Following the 5 header lines are Nelements sections, one for each <P>Following the 5 header lines are Nelements sections, one for each
element, each with the following format: element, each with the following format:
</P> </P>
<UL><LI>line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC) <UL><LI>line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
<LI>embedding function F (Nrho values) <LI>embedding function F(rho) (Nrho values)
<LI>density function rho (Nr values) <LI>density function rho(r) (Nr values)
</UL> </UL>
<P>As with the <I>funcfl</I> files, only the mass is used by LAMMPS from the 1st <P>As with the <I>funcfl</I> files, only the mass (g/cm^3) is used by LAMMPS
line. The F and rho arrays are unique to a single element and are from the 1st line. The cubic lattice constant is in Angstroms. The F
formatted the same as in a <I>funcfl</I> file. and rho arrays are unique to a single element and have the same format
and units as in a <I>funcfl</I> file.
</P> </P>
<P>Following the Nelements sections, values for the pair potential phi <P>Following the Nelements sections, Nr values for each pair potential
arrays are listed for all i,j element pairs in the same format as phi(r) array are listed for all i,j element pairs in the same format
other arrays. Since these interactions are symmetric (i,j = j,i) only as other arrays. Since these interactions are symmetric (i,j = j,i)
phi arrays with i >= j are listed, in the following order: i,j = only phi arrays with i >= j are listed, in the following order: i,j =
(1,1), (2,1), (2,2), (3,1), (3,2), (3,3), (4,1), ..., (Nelements, (1,1), (2,1), (2,2), (3,1), (3,2), (3,3), (4,1), ..., (Nelements,
Nelements). The tabulated values for each phi function are listed in Nelements). Unlike the effective charge array Z(r) in <I>funcfl</I> files,
<I>setfl</I> files as r*phi, rather than as phi (in <I>funcfl</I> files). the tabulated values for each phi function are listed in <I>setfl</I> files
directly as r*phi (in units of eV-Angstroms), since they are for atom
pairs.
</P> </P>
<HR> <HR>
@ -216,32 +242,32 @@ potential is the same author's Fe-P FS potential
<A HREF = "#Ackland2">(Ackland2)</A>. Note that while FS potentials always specify <A HREF = "#Ackland2">(Ackland2)</A>. Note that while FS potentials always specify
the embedding energy with a square root dependence on the total the embedding energy with a square root dependence on the total
density, the implementation in LAMMPS does not require that; the user density, the implementation in LAMMPS does not require that; the user
can tabulate any functional form he desires in the FS potential files. can tabulate any functional form desired in the FS potential files.
</P> </P>
<P>For style <I>eam/fs</I>, the form of the pair_coeff command is exactly the <P>For style <I>eam/fs</I>, the form of the pair_coeff command is exactly the
same as for style <I>eam/alloy</I>, e.g. same as for style <I>eam/alloy</I>, e.g.
</P> </P>
<PRE>pair_coeff * * filename 1 1 1 2 <PRE>pair_coeff * * nialhjea.eam.fs Ni Ni Ni Al
</PRE> </PRE>
<P>where there are N additional arguments after the filename, where N is <P>where there are N additional arguments after the filename, where N is
the number of LAMMPS atom types. The N values determine the mapping the number of LAMMPS atom types. The N values determine the mapping
of LAMMPS atom types to EAM elements in the file, as described above of LAMMPS atom types to EAM elements in the file, as described above
for style <I>eam/alloy</I>. As with <I>eam/alloy</I>, if a mapping value is for style <I>eam/alloy</I>. As with <I>eam/alloy</I>, if a mapping value is
"0", the mapping is not performed. This can be used when an <I>eam/fs</I> NULL, the mapping is not performed. This can be used when an <I>eam/fs</I>
potential is used as part of the <I>hybrid</I> pair style. The 0 values potential is used as part of the <I>hybrid</I> pair style. The NULL values
are used as placeholders for atom types that will be used with other are used as placeholders for atom types that will be used with other
potentials. potentials.
</P> </P>
<P>FS EAM files include more information than the DYNAMO <I>setfl</I> format <P>FS EAM files include more information than the DYNAMO <I>setfl</I> format
files read by <I>eam/alloy</I>, so that the i,j density functionals for all files read by <I>eam/alloy</I>, in that i,j density functionals for all
pairs of elements are included as needed by the Finnis/Sinclair pairs of elements are included as needed by the Finnis/Sinclair
formulation of the EAM. formulation of the EAM.
</P> </P>
<P>FS EAM files in the <I>potentials</I> directory of the LAMMPS distribution <P>FS EAM files in the <I>potentials</I> directory of the LAMMPS distribution
have a ".eam.fs" suffix. Ther are formatted as follows: have an ".eam.fs" suffix. They are formatted as follows:
</P> </P>
<UL><LI>lines 1,2,3 = comments (ignored) <UL><LI>lines 1,2,3 = comments (ignored)
<LI>line 4: Nelements = # of elements in the file <LI>line 4: Nelements Element1 Element2 ... ElementN
<LI>line 5: Nrho, drho, Nr, dr, cutoff <LI>line 5: Nrho, drho, Nr, dr, cutoff
</UL> </UL>
<P>The 5-line header section is identical to an EAM <I>setfl</I> file. <P>The 5-line header section is identical to an EAM <I>setfl</I> file.
@ -250,17 +276,22 @@ have a ".eam.fs" suffix. Ther are formatted as follows:
each with the following format: each with the following format:
</P> </P>
<UL><LI>line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC) <UL><LI>line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
<LI>embedding function F (Nrho values) <LI>embedding function F(rho) (Nrho values)
<LI>density function rho for element I at element 1 (Nr values) <LI>density function rho(r) for element I at element 1 (Nr values)
<LI>density function rho for element I at element 2 <LI>density function rho(r) for element I at element 2
<LI>... <LI>...
<LI>density function rho for element I at element Nelement <LI>density function rho(r) for element I at element Nelement
</UL> </UL>
<P>Following the Nelements sections, values for the pair potential phi <P>The units of these quantities in line 1 are the same as for <I>setfl</I>
arrays are listed in the same manner (r*phi) as in EAM <I>setfl</I> files. files. Note that the rho(r) arrays in Finnis/Sinclair can be
Note that the rho arrays in Finnis/Sinclair can be asymmetric (i,j != asymmetric (i,j != j,i) so there are Nelements^2 of them listed in the
j,i) so there are Nelements^2 of them listed in the file. But the phi file.
arrays are still symmetric, so only phi arrays for i >= j are listed. </P>
<P>Following the Nelements sections, Nr values for each pair potential
phi(r) array are listed in the same manner (r*phi, units of
eV-Angstroms) as in EAM <I>setfl</I> files. Note that in Finnis/Sinclair,
the phi(r) arrays are still symmetric, so only phi arrays for i >= j
are listed.
</P> </P>
<HR> <HR>

View File

@ -20,13 +20,13 @@ style = {eam} or {eam/alloy} or {eam/fs} :ul
pair_style eam pair_style eam
pair_coeff * * cuu3 pair_coeff * * cuu3
pair_coeff 1*3 1*3 niu3 :pre pair_coeff 1*3 1*3 niu3.eam :pre
pair_style eam/alloy pair_style eam/alloy
pair_coeff * * nialhjea 1 2 1 1 :pre pair_coeff * * ../potentials/nialhjea.eam.alloy Ni Al Ni Ni :pre
pair_style eam/fs pair_style eam/fs
pair_coeff * * nial.fs 1 2 1 1 :pre pair_coeff * * nialhjea.eam.fs Ni Al Ni Ni :pre
[Description:] [Description:]
@ -53,30 +53,32 @@ the "potentials" directory of the LAMMPS distribution.
IMPORTANT NOTE: The {eam} style reads single-element EAM potentials in IMPORTANT NOTE: The {eam} style reads single-element EAM potentials in
the DYNAMO {funcfl} format. Either single element or alloy systems the DYNAMO {funcfl} format. Either single element or alloy systems
can be modeled with {funcfl} files and style {eam}. For the alloy can be modeled using multiple {funcfl} files and style {eam}. For the
case LAMMPS mixes the single-element potentials to produce alloy alloy case LAMMPS mixes the single-element potentials to produce alloy
potentials the same way that DYNAMO does. Alternatively, DYNAMO potentials, the same way that DYNAMO does. Alternatively, a single
{setfl} files can be used by LAMMPS to model alloy systems by invoking DYNAMO {setfl} file of Finnis/Sinclair EAM file can be used by LAMMPS
the {eam/alloy} style as described below. {Setfl} files require no to model alloy systems by invoking the {eam/alloy} or {eam/fs} styles
mixing since they specify alloy interactions explicitly. as described below. These files require no mixing since they specify
alloy interactions explicitly.
For style {eam}, potential values are read from a file that is in the For style {eam}, potential values are read from a file that is in the
DYNAMO single-element {funcfl} format. If the DYNAMO file was created DYNAMO single-element {funcfl} format. If the DYNAMO file was created
by a Fortran program, it cannot have "D" values in it for exponents. by a Fortran program, it cannot have "D" values in it for exponents.
C only recognizes "e" or "E" for scientific notation. C only recognizes "e" or "E" for scientific notation.
Note that unlike for other potentials, you do not set cutoffs for EAM Note that unlike for other potentials, cutoffs for EAM potentials are
potentials in the pair_style or pair_coeff command; they are specified not set in the pair_style or pair_coeff command; they are specified in
in the EAM potential files. the EAM potential files themselves.
For style {eam} you must assign a potential file to each I,I pair of For style {eam} a potential file must be assigned to each I,I pair of
atom types by using a single pair_coeff argument: atom types by using one or more pair_coeff commands, each with a
single argument:
filename :ul filename :ul
Thus the following command Thus the following command
pair_coeff *2 1*2 cuu3 :pre pair_coeff *2 1*2 cuu3.eam :pre
will read the cuu3 potential file and use the tabulated Cu values for will read the cuu3 potential file and use the tabulated Cu values for
F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs
@ -96,23 +98,35 @@ line 2: atomic number, mass, lattice constant, lattice type (e.g. FCC)
line 3: Nrho, drho, Nr, dr, cutoff :ul line 3: Nrho, drho, Nr, dr, cutoff :ul
On line 2, all values but the mass are ignored by LAMMPS. The mass is On line 2, all values but the mass are ignored by LAMMPS. The mass is
in atomic mass units which is converted by LAMMPS to the appropriate in atomic mass units (g/cm^3) which is converted by LAMMPS to the
internal mass "units"_units.html. On line 3, Nrho and Nr are the appropriate internal mass "units"_units.html. The cubic lattice
number of tabulated values in the subsequent arrays, drho and dr are constant is in Angstroms. On line 3, Nrho and Nr are the number of
the spacing in density and distance space for the values in those tabulated values in the subsequent arrays, drho and dr are the spacing
arrays, and the specified cutoff becomes the pairwise cutoff used by in density and distance space for the values in those arrays, and the
LAMMPS for the potential. The units of dr are Angstroms; I'm not sure specified cutoff becomes the pairwise cutoff used by LAMMPS for the
of the units for drho - some measure of electron density. potential. The units of dr are Angstroms; I'm not sure of the units
for drho - some measure of electron density.
Following the 3 header lines are 3 arrays of tabulated values: Following the 3 header lines are 3 arrays of tabulated values:
embedding function F (Nrho values) embedding function F(rho) (Nrho values)
pair potential function phi (Nr values) effective charge function Z(r) (Nr values)
density function rho (Nr values) :ul density function rho(r) (Nr values) :ul
The values for each array can be listed as multiple values per line, The values for each array can be listed as multiple values per line,
so long as each array starts on a new line. The individual values are so long as each array starts on a new line. For example, the
(for example) phi(r) for r = 0,dr,2*dr, ... (Nr-1)*dr. individual Z(r) values are for r = 0,dr,2*dr, ... (Nr-1)*dr.
The units for the embedding function F are eV. The units for the
density function rho are the same as for drho (see above, electron
density). The units for the effective charge Z are "atomic charge" or
sqrt(Hartree * Bohr-radii). For 2 interacting atoms i,j this is used
by LAMMPS to compute the pair potential term in the EAM energy
expression as r*phi, in units of eV-Angstroms, via the formula
r*phi = 27.2 * 0.529 * Zi * Zj :pre
where 1 Hartree = 27.2 eV and 1 Bohr = 0.529 Angstroms.
:line :line
@ -126,64 +140,76 @@ interactions. Thus they allow more generality than {funcfl} files for
modeling alloys. modeling alloys.
For style {eam/alloy}, potential values are read from a file that is For style {eam/alloy}, potential values are read from a file that is
in the DYNAMO multi-element {setfl} format. If the DYNAMO file was in the DYNAMO multi-element {setfl} format, except that element names
created by a Fortran program, it cannot have "D" values in it for (Ni, Cu, etc) are added to one of the lines in the file. If the
exponents. C only recognizes "e" or "E" for scientific notation. DYNAMO file was created by a Fortran program, it cannot have "D"
values in it for exponents. C only recognizes "e" or "E" for
scientific notation.
Only one pair_coeff command can be used (one file). DYNAMO {setfl} Only one pair_coeff command can be used which specifies a single
files contain information for M elements. These are mapped to LAMMPS {setfl} file. DYNAMO {setfl} files contain information for M
atom types by specifying N additional arguments after the filename, elements. These are mapped to LAMMPS atom types by specifying N
where N is the number of LAMMPS atom types: additional arguments after the filename, where N is the number of
LAMMPS atom types:
filename filename
N values from 0 to M = mapping of {setfl} elements to atom types :ul N element names = mapping of {setfl} elements to atom types :ul
As an example, the nialhjea {setfl} file has tabulated EAM values for As an example, the nialhjea {setfl} file has tabulated EAM values for
3 elements and their alloy interactions: Ni, Al, and H. If your 3 elements and their alloy interactions: Ni, Al, and H. If your
LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Ni, LAMMPS simulation had 4 atoms types and you wanted the 1st 3 to be Ni,
and the 4th to be Al, you would use the following pair_coeff command: and the 4th to be Al, you would use the following pair_coeff command:
pair_coeff * * nialhjea 1 1 1 2 :pre pair_coeff * * nialhjea.eam.alloy Ni Ni Ni Al :pre
The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The 1st 2 arguments must be * * so as to span all LAMMPS atom types.
The first three "1" values map LAMMPS atom types 1,2,3 to the 1st The first three Ni arguments map LAMMPS atom types 1,2,3 to the Ni
element (Ni) in the {setfl} file. The final "2" value maps LAMMPS element in the {setfl} file. The final Al argument maps LAMMPS atom
atom type 4 to the 2nd element = Al. If a mapping value is "0", the type 4 to the Al element in the {setfl} file. If a mapping value is
mapping is not performed. This can be used when an {eam/alloy} specified as NULL, the mapping is not performed. This can be used
potential is used as part of the {hybrid} pair style. The 0 values when an {eam/alloy} potential is used as part of the {hybrid} pair
are used as placeholders for atom types that will be used with other style. The NULL values are placeholders for atom types that will be
potentials. used with other potentials.
{Setfl} files in the {potentials} directory of the LAMMPS distribution {Setfl} files in the {potentials} directory of the LAMMPS distribution
have a ".eam.alloy" suffix. A DYNAMO multi-element {setfl} file is have a ".eam.alloy" suffix. A DYNAMO multi-element {setfl} file is
formatted as follows: formatted as follows:
lines 1,2,3 = comments (ignored) lines 1,2,3 = comments (ignored)
line 4: Nelements = # of elements in the file line 4: Nelements Element1 Element2 ... ElementN
line 5: Nrho, drho, Nr, dr, cutoff :ul line 5: Nrho, drho, Nr, dr, cutoff :ul
The meaning of the values in line 5 is the same as for the {funcfl} In a DYNAMO {setfl} file, line 4 only lists Nelements = the # of
file described above. Note that the cutoff is a global value, valid elements in the {setfl} file. For LAMMPS, the element name (Ni, Cu,
for all pairwise interactions for all element pairings. etc) of each element must be added to the line, in the order the
elements appear in the file.
The meaning and units of the values in line 5 is the same as for the
{funcfl} file described above. Note that the cutoff (in Angstroms) is
a global value, valid for all pairwise interactions for all element
pairings.
Following the 5 header lines are Nelements sections, one for each Following the 5 header lines are Nelements sections, one for each
element, each with the following format: element, each with the following format:
line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC) line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
embedding function F (Nrho values) embedding function F(rho) (Nrho values)
density function rho (Nr values) :ul density function rho(r) (Nr values) :ul
As with the {funcfl} files, only the mass is used by LAMMPS from the 1st As with the {funcfl} files, only the mass (g/cm^3) is used by LAMMPS
line. The F and rho arrays are unique to a single element and are from the 1st line. The cubic lattice constant is in Angstroms. The F
formatted the same as in a {funcfl} file. and rho arrays are unique to a single element and have the same format
and units as in a {funcfl} file.
Following the Nelements sections, values for the pair potential phi Following the Nelements sections, Nr values for each pair potential
arrays are listed for all i,j element pairs in the same format as phi(r) array are listed for all i,j element pairs in the same format
other arrays. Since these interactions are symmetric (i,j = j,i) only as other arrays. Since these interactions are symmetric (i,j = j,i)
phi arrays with i >= j are listed, in the following order: i,j = only phi arrays with i >= j are listed, in the following order: i,j =
(1,1), (2,1), (2,2), (3,1), (3,2), (3,3), (4,1), ..., (Nelements, (1,1), (2,1), (2,2), (3,1), (3,2), (3,3), (4,1), ..., (Nelements,
Nelements). The tabulated values for each phi function are listed in Nelements). Unlike the effective charge array Z(r) in {funcfl} files,
{setfl} files as r*phi, rather than as phi (in {funcfl} files). the tabulated values for each phi function are listed in {setfl} files
directly as r*phi (in units of eV-Angstroms), since they are for atom
pairs.
:line :line
@ -211,32 +237,32 @@ potential is the same author's Fe-P FS potential
"(Ackland2)"_#Ackland2. Note that while FS potentials always specify "(Ackland2)"_#Ackland2. Note that while FS potentials always specify
the embedding energy with a square root dependence on the total the embedding energy with a square root dependence on the total
density, the implementation in LAMMPS does not require that; the user density, the implementation in LAMMPS does not require that; the user
can tabulate any functional form he desires in the FS potential files. can tabulate any functional form desired in the FS potential files.
For style {eam/fs}, the form of the pair_coeff command is exactly the For style {eam/fs}, the form of the pair_coeff command is exactly the
same as for style {eam/alloy}, e.g. same as for style {eam/alloy}, e.g.
pair_coeff * * filename 1 1 1 2 :pre pair_coeff * * nialhjea.eam.fs Ni Ni Ni Al :pre
where there are N additional arguments after the filename, where N is where there are N additional arguments after the filename, where N is
the number of LAMMPS atom types. The N values determine the mapping the number of LAMMPS atom types. The N values determine the mapping
of LAMMPS atom types to EAM elements in the file, as described above of LAMMPS atom types to EAM elements in the file, as described above
for style {eam/alloy}. As with {eam/alloy}, if a mapping value is for style {eam/alloy}. As with {eam/alloy}, if a mapping value is
"0", the mapping is not performed. This can be used when an {eam/fs} NULL, the mapping is not performed. This can be used when an {eam/fs}
potential is used as part of the {hybrid} pair style. The 0 values potential is used as part of the {hybrid} pair style. The NULL values
are used as placeholders for atom types that will be used with other are used as placeholders for atom types that will be used with other
potentials. potentials.
FS EAM files include more information than the DYNAMO {setfl} format FS EAM files include more information than the DYNAMO {setfl} format
files read by {eam/alloy}, so that the i,j density functionals for all files read by {eam/alloy}, in that i,j density functionals for all
pairs of elements are included as needed by the Finnis/Sinclair pairs of elements are included as needed by the Finnis/Sinclair
formulation of the EAM. formulation of the EAM.
FS EAM files in the {potentials} directory of the LAMMPS distribution FS EAM files in the {potentials} directory of the LAMMPS distribution
have a ".eam.fs" suffix. Ther are formatted as follows: have an ".eam.fs" suffix. They are formatted as follows:
lines 1,2,3 = comments (ignored) lines 1,2,3 = comments (ignored)
line 4: Nelements = # of elements in the file line 4: Nelements Element1 Element2 ... ElementN
line 5: Nrho, drho, Nr, dr, cutoff :ul line 5: Nrho, drho, Nr, dr, cutoff :ul
The 5-line header section is identical to an EAM {setfl} file. The 5-line header section is identical to an EAM {setfl} file.
@ -245,17 +271,22 @@ Following the header are Nelements sections, one for each element I,
each with the following format: each with the following format:
line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC) line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
embedding function F (Nrho values) embedding function F(rho) (Nrho values)
density function rho for element I at element 1 (Nr values) density function rho(r) for element I at element 1 (Nr values)
density function rho for element I at element 2 density function rho(r) for element I at element 2
... ...
density function rho for element I at element Nelement :ul density function rho(r) for element I at element Nelement :ul
Following the Nelements sections, values for the pair potential phi The units of these quantities in line 1 are the same as for {setfl}
arrays are listed in the same manner (r*phi) as in EAM {setfl} files. files. Note that the rho(r) arrays in Finnis/Sinclair can be
Note that the rho arrays in Finnis/Sinclair can be asymmetric (i,j != asymmetric (i,j != j,i) so there are Nelements^2 of them listed in the
j,i) so there are Nelements^2 of them listed in the file. But the phi file.
arrays are still symmetric, so only phi arrays for i >= j are listed.
Following the Nelements sections, Nr values for each pair potential
phi(r) array are listed in the same manner (r*phi, units of
eV-Angstroms) as in EAM {setfl} files. Note that in Finnis/Sinclair,
the phi(r) arrays are still symmetric, so only phi arrays for i >= j
are listed.
:line :line