i don't know. *you* have read the literature, not me. what is doable
with LAMMPS is listed in the documentation. if the potential functions
offered by LAMMPS match the potential functions used in the
corresponding paper(s), you can use it.
I know the "potential" part, and LAMMPS is capable to do this. The part I am
not familiar is how to generate those arrays of spheres, maybe I asked too
stupid question, but I really cannot figure this out.
I'm really sorry this comes at a bad time. At the moment I am really
busy, and I don't have time to test this before I post it. In the
next few days, I have only a few minutes to write this reply.
I suspect you will have a mixture of sphere (or asphere, or ellipsoid)
particles, and regular point-like particles. I assume you are using
"hybrid full sphere". For more information, see:
http://lammps.sandia.gov/doc/Section_howto.html#howto_14
http://lammps.sandia.gov/doc/read_data.html
I've never tried using atom_style hybrid. Let me know if it
moltemplate gets confused with hybrid atom styles. (Hopefully not!)
I will probably embarrass myself. Here is my attempt to write a
quick and sloppy attempt to explain how to do something like this:
(I hope I don't mess up the column ordering):
--------- sphere.lt ----------
SphereThingy {
# This "SphereThingy" object contains only one atom.
# ID type x y z molid charge diameter density
write("Data Atoms") {
$atom:x @atom:X 0 0 0 $mol 0 5.0 1.0
}
# Comments:
# particle has zero charge and is located at 0 0 0
# please change the diameter and density numbers
# I did not include a "Data Mass" section.
# Perhaps I should have. Check this.
write_once("In Settings") {
pair_coeff @atom:X @atom:X ??? ???
}
}
# More comments:
# At some point, you must eventually specify the atom_style
# and pair_style. Why not do that here?
write_once("In Init") {
units real
atom_style hybrid full sphere
pair_style ???
}
# You should pick a pair style appropriate for the atom_style
---------- system.lt ------------
import "sphere.lt"
sheet = new SphereThingy
[10].move(10, 0, 0)
[10].move(5, 8.660254, 0)
# I don't know how big your sphere's are.
# In this example, I created a 10x10 array of spheres
# hexagonally spaced, with a 10.0 Angstrom spacing.
# Please scale these numbers accordingly.
write_once("Data Boundary") {
0 100.0 xlo xhi
0 86.69254 ylo yhi
0.0 80.00 zlo zhi
}
------------running moltemplate ----------
Then run moltemplate.sh using:
moltemplate.sh -atomstyle "hybrid full sphere" system.lt
(hopefully nothing too bad happens)
I am sorry I gave too much information here, my intention is to provide some
information for people trying to help, hoping they may have a better
understanding what I am trying to do. I am afraid I didn't make my question
clear. Thanks anyway.
I don't have a much good understanding. I will say that it should be
possible to use moltemplate to build systems with unusual particle
types such as spheres
I don't know if the example above makes sense at all, but it's the
best I can do today. Keep me updated if you make any progress or have
any questions.
Good luck
Andrew
P.S.
Be sure to compile LAMMPS with whatever additional packages you need
to support the atom-style you want. I don't know if "atom-style
sphere" is included by default.
(Bug: If you use the "rot()" command, it won't work on ellipsoids or
other asymetric particles. Hopefully that's not a bid deal for most
people. It does not sound like you need to rotate these sheets,
however.)