Simulation of water in nanochannel

Dear All,

I’m working on an input file for simulation of water molecules and I wanna add two walls at the top and bottom of the computational domain to simulate the water flow in nanochannel. My question is that I don’t know how to change the input file (especially the read_data file for creation of geometry, coordination, atom types, bond type, … ) to add the wall atoms. I have read the couette flow available in example problems. However, this example uses lattice command instead of read_data to create geometry which can’t be used for simulation of couette flow of water.

Best regards,

Hamed.

Dear All,

I'm working on an input file for simulation of water molecules and I wanna
add two walls at the top and bottom of the computational domain to simulate
the water flow in nanochannel. My question is that I don't know how to
change the input file (especially the read_data file for creation of
geometry, coordination, atom types, bond type, ... ) to add the wall atoms.
I have read the couette flow available in example problems. However, this
example uses lattice command instead of read_data to create geometry which
can't be used for simulation of couette flow of water.

three comments:

1) the data file format is described in full detail in the
documentation for the read_data command
2) your last statement is incorrect. a couette flow example with water
*can* be specified using the lattice and create_atoms command when
using the a molecule file and the "mol" option to create_atoms.
however, it is probably easier to build your input - at least the
water part - externally.
3) you can also add the walls after the fact with create_atoms, if you
edit your data file to have space for an additional atom type.

axel.

Dear Prof. Kohlmeyer,

Thanks for your comments.
I wanna add the Cu wall at the bottom of computational domain to start the simulation of water in a nanochannel. I've tried to add the create_atoms after read_data in the input file and also I've edited the read_data to have enough space for the atoms of Cu wall. However, I get the large and "Nan" values for "TotalEng" and Press in out put file as follow:
    Step Temp E_pair E_mol TotEng Press Volume
     0 398.64592 561064.31 0 589211.28 -nan 238328
and my simulation stops running. I have already tried to plot the results every time step. However, I couldn't realize what caused the "Nan" value in my simulation.
I was wondering how can I approach the problem? I also put the input file, read_data and force field at the end of this email.

Best regards,
Hamed.

Dear Prof. Kohlmeyer,

Thanks for your comments.
I wanna add the Cu wall at the bottom of computational domain to start the simulation of water in a nanochannel. I've tried to add the create_atoms after read_data in the input file and also I've edited the read_data to have enough space for the atoms of Cu wall. However, I get the large and "Nan" values for "TotalEng" and Press in out put file as follow:
    Step Temp E_pair E_mol TotEng Press Volume
     0 398.64592 561064.31 0 589211.28 -nan 238328
and my simulation stops running. I have already tried to plot the results every time step. However, I couldn't realize what caused the "Nan" value in my simulation.
I was wondering how can I approach the problem? I also put the input file, read_data and force field at the end of this email.

you really need somebody that teaches you (best in person, a mailing
list is inadequate for that) how to set up simulations in general and
for your specific system in particular. i see many things that should
be done differently.

here are the most obvious issues:

1) what is the lattice constant (for the conventional cell) of FCC
copper? most certainly not 1.0 \AA.
2) you have no interactions defined for Cu-Cu. why do you apply time
integration to them? -> that *has* to lead to a catastrophe
3) why run with fix npt? and particularly with isotropic cell
adjustment? that will mess up your Cu structure while doing cell
rescaling. given that you have no cu-cu interactions, the copper
segment should be immobile.
4) why run with fix momentum? with an immobile section, there should
be no momentum buildup, but all kinds of funky things when you employ
it to the whole system, including the immobile section.
5) for the same reason (immobile copper section), you must not assign
velocities to the cu atom unless you skip them in time integration.
but since you include them, you not only have their velocities set to
zero, but also their forces (they still interact with the water) using
fix setforce 0 0 0

in general, i'd suggest a different strategy:

a) setup and equilibrate a suitably sized bulk water system to
roughtly the desired density (at fixed volume). since you start from a
crystal (replicating a single molecule), you'll have to go through the
usual process of heating up and cooling down to break down any
long-range correlation (it would be much easier to start from a
suitably pre-equilibrated block of water).
b) expand the box (using the change_box command) to make room of the
copper atoms. keep a little extra space to avoid overlaps.
c) insert the copper atoms, and do a short minimization to remove
excess potential energy where you ripped the water box apart and
inserted the copper atoms. you have a lot of water molecules for which
the environment has massively changed and then continue equilibration
of the water. for initial equilibration, it is advisable to use a
dissipative thermostat, to accelerate the process of equipartitioning
of the kinetic energy.
d) monitor pressure and potential energy to follow the progress of
equilibration and eventually adjust the box size (either manually or
via fix npt but coupled only to the dimension perpendicular to your
copper block and excluding the copper atoms from rescaling their
positions.
e) for production, you are likely better off using a fixed volume
unless your research project requires it otherwise.

this is just my personal preference. you may want to look up what kind
of equilibration and setup protocol others have used. there are plenty
of papers with variants on this out there, and if you look
specifically for older ones, you'll likely find rather detailed
descriptions of the procedure (nowadays people often get away with
being less detailed for "common" procedures).

as i mentioned before, you should find somebody experienced to look
over your shoulder while setting up simulations and discuss your
choices, or else you will be destined to make a lot of avoidable
mistakes, and not all of them are as obvious to spot as those that
result in diverging pressure or other bad things. don't expect to get
many more e-mails as detailed as this one commenting on your input.

axel