[lammps-users] Problems with simulations with CO2

Dear all,
i am trying to simulate some CO2 molecules. i checked the density ,pressure,temperature for the given volume.i simulate for different timesteps and runs but i keep taking "wrong results".does anybody hane an idea what am i doing wrong?
Any suggestions?
Cheers
Dimitris

#minimization file
dimension 3
boundary p p p
units real
neighbor 0.3 bin
neigh_modify delay 0.5
atom_style full
bond_style harmonic
angle_style harmonic
pair_style lj/cut/coul/cut 4 6
pair_modify mix arithmetic

read_data CO2data.data

pair_coeff 1 1 4.5512 3.014 4.5512 3.014 #OO epsilon(kcal/mol) sigma(A)
pair_coeff 1 2 2.6892 2.8995 2.6892 2.8995 #OC Lorentz-Berthelot
pair_coeff 2 2 1.5890 2.785 1.5890 2.785 #CC

bond_coeff 1 10000 1.16
angle_coeff 1 10000 180.0
fix 1 all npt 300 300 100 xyz 9.8 9.8 100

velocity all create 300 8745350 loop geom
minimize 0.0 1.0e-8 1000 100000
timestep 1.0
dump 1 all atom 1 co2min1a.lammpstrj
dump_modify 1 image yes
run 2
write_restart CO2data.minim.restart

Dear all,

i am trying to simulate some CO2 molecules. i checked the
density ,pressure,temperature for the given volume.i simulate for
different timesteps and runs but i keep taking "wrong results".does
anybody hane an idea what am i doing wrong?

have you checked your parameters?

MD simulations obey the "garbage in, garbage out" rule.

a lennard-jones cutoff of 4\AA and a coulomb cutoff
of 6\AA seems very unrealistic to me. where did you
get those numbers from?

also if i compare your epsilon values with those for
oxygens and carbons in a bio forcefield (charmm), then
yours seem to be off by a factor of about 40. did you
have to convert units on them? did you pay attention
whether the place where you got your parameters from
does include the factor of 4 in epsilon or not.
LAMMPS does not.

cheers,
   axel.

About the cut off distances i am trying several numbers to see the behaviour of the system. The parameters i found them from several papers and i had to convert them in lammps-real units obeying the "4" rule. i will check them again but i am afraid that this is not the problem.it may be the timestep or the total rum steps.. i will do the check for one more time.but the main prob is my lack of experience that i am trying to gain now. from what you've seen there is not except these two things that you've mentioned something really problematic?

Thanks again
Regards
Dimitris

Dear alex,

you were totaly right about epsilon..The thing that i want to ask is that now that the epsilon is smaller when i am trying to run the simulations i get "nan".i try to put smaller timestep the only thing that i am manage to do is to take nan in my results later on..am i doing something wrong or the problem is in the timestep?

Cheers
Dimitris

Dear alex,

you were totaly right about epsilon..The thing that i want to ask is

a-ha! so much for "i am afraid that is not the problem", eh? :wink:

however, now it looks as if the carbon-carbon epsilon is
now far too low. how do you compute these?

i had a more careful look into the CHARMM parameter files
on my desktop and found CO2 parameters in them (and they
look like the model you want to be using):

CST-OST bond: k=937.96 kcal/mole/\AA**2 r0=1.1600 \AA
OST-CST-OST angle: k=3000.00 kcal/mole/rad**2 t0=180.0 deg
CST nonbonded: eps: -0.058000 kcal/mole rmin/2=1.563000 \AA
OST nonbonded: eps: -0.165000 kcal/mole rmin/2=1.692000 \AA
since CHARMM uses a different LJ formulation,
V(r)= eps[(rmin/r)**12-2*(rmin/r)**6], the resulting
LAMMPS compatible LJ parameters would be:
CST: eps: 0.058 sigma=2.785
OST: esp: 0.165 sigma=3.015

that now that the epsilon is smaller when i am trying to run the
simulations i get "nan".i try to put smaller timestep the only thing
that i am manage to do is to take nan in my results later on..am i
doing something wrong or the problem is in the timestep?

it is really difficult to say anything without
seeing the actual log file and how the particles
behave. so i have to make some educated guesses.
assuming you start from a somewhat artificial
initial set of coordinates, it is probably a
good idea to start the simulation with a fixed
volume and NVT integration, perhaps even using
fix nve/limit with a berendsen thermostat.
i would then heat the system for a while at a
higher temperature to remove "residual memory"
of the initial configuration. for efficiency
reasons, you can do this with a fraction of the
system and then use the replicate command to
increase your system. then i would switch to
npt (perhaps in combination with the drag parameter)
and bring the system with a slow temperature
gradient to the target temperature and wait
until it has equilibrated.

axel.

Dear Axel,
I tried to use fix 1 all heat 1 1.0 and after fix 2 all nvt 300.0 300.0 0.01 instead of fix 1 npt 300 300 100 xyz 9.8 9.8 100.but i am getting the following error:

ERROR on proc 0: Bond atoms 553 554 missing on proc 0 at step 3769

Cheers
Dimitris

Dear Axel,
I tried to use fix 1 all heat 1 1.0 and after fix 2 all nvt 300.0 300.0 0.01 instead of fix 1 npt 300 300 100 xyz 9.8 9.8 100.but i am getting the following error:

ERROR on proc 0: Bond atoms 553 554 missing on proc 0 at step 3769

..and deservedly so. RTFM! properly.

a.

assuming you start from a somewhat artificial
initial set of coordinates, it is probably a
good idea to start the simulation with a fixed
volume and NVT integration, perhaps even using
fix nve/limit with a berendsen thermostat.

You assume correctly. i create something artificial. let me see if i get it correctly. The volume is fixed with with the xlo,xhi,ylo.yhi if i use an nvt right?so something like fix 1 all 300 300 0.001 ?
  

i would then heat the system for a while at a
higher temperature to remove "residual memory"
of the initial configuration. for efficiency

reasons, you can do this with a fraction of the
system and then use the replicate command to
increase your system.

This can be done with a: fix 1 all heat 1 1.0 ? but i cannot understand the while term and what do you mean with the "residual memory".

then i would switch to
npt (perhaps in combination with the drag parameter)
and bring the system with a slow temperature
gradient to the target temperature and wait
until it has equilibrated.

How someone can see-check the temperature gradient?

Too many questions just for something simple...
Cheers
Dimitris

>>>assuming you start from a somewhat artificial
>>>initial set of coordinates, it is probably a
>>>good idea to start the simulation with a fixed
>>>volume and NVT integration, perhaps even using
>>>fix nve/limit with a berendsen thermostat.

You assume correctly. i create something artificial. let me see if i
get it correctly. The volume is fixed with with the xlo,xhi,ylo.yhi if
i use an nvt right?so something like fix 1 all 300 300 0.001 ?

i don't believe that you can RTFM in 10mins. go back and read again.
a look into a text book on "what is an ensemble?" would be extremely
helpful as well.

>>>i would then heat the system for a while at a
>>>higher temperature to remove "residual memory"
>>>of the initial configuration. for efficiency
reasons, you can do this with a fraction of the
system and then use the replicate command to
increase your system.

This can be done with a: fix 1 all heat 1 1.0 ? but i cannot

no. as i wrote before: RTFM!!

understand the while term and what do you mean with the "residual
memory".

the is all explained in text books on MD. they typically
give examples of proper equilibration and finite size effects.

then i would switch to
npt (perhaps in combination with the drag parameter)
and bring the system with a slow temperature
gradient to the target temperature and wait
until it has equilibrated.

How someone can see-check the temperature gradient?

i meant a gradient over time. RTFM!!!

Too many questions just for something simple...

because you don't RTFM enough. a mailing list is
no replacement for proper learning of how MD works.

remember that people answering here are all volunteers.
you have to provide something to make it worth answering,
usually you have to feed somebody's curiosity or report
real problems (in the code).

if you are new, you usually get some lenience on simple
questions, but if you use that up quickly, you will soon
be ignored. as far as i am concerned, you are just one
step away from it. quite a lot of what you ask, you could
found out yourself with a little bit common sense, proper
cross-checking of your data and some text book knowledge.

a.