Bond information in data file couldn't be accessed in rerun.

Hi lammps users,

I use rerun to recalculate energy terms from a dump trajectory. But it seems that the bond information from the data file couldn’t be used in dump frames, which results in weird values.

I’m using Periodic boundary condition, so the chains might be split in a dump file (that’s the reason why bond information is needed).

Could anyone help me with that?

Best,
Mingchen.

Hi lammps users,

I use rerun to recalculate energy terms from a dump trajectory. But it seems that the bond information from the data file couldn’t be used in dump frames, which results in weird values.

I seriously doubt that. Do you have any verifiable proof for that statement?

I’m using Periodic boundary condition, so the chains might be split in a dump file (that’s the reason why bond information is needed).

That is nonsense. The neighbor list code will use the closest periodic image.

Axel

Hi,

Here is the energy.log file I produced during the rerun simulation:

Step Chain Shake Chi Rama Excluded DSSP P_AP Water Burial Helix AMH-Go Frag_Mem Vec_FM Membrane SSB Electro.
VTotal
0 102.927027 0.000000 29.022245 -488.203672 0.000000 -116.779095 -59.677937 -66.987003 -112.359241 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
-712.057676
2000 14417593.488593 0.000000 1157.966568 -448.025941 0.000000 -107.607724 -52.164353 -58.056875 -109.358281 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
14417976.241986
4000 27672937.606570 0.000000 1558.012619 -341.448642 0.000000 -76.564346 -40.245686 -56.111218 -108.377411 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
27673872.871886

Step 0, it reads from the data file with correct bond information, so the energy terms looks reasonable.
But from step 2000, bond information seems to be lost, and energy terms starts to be weird.

Best,
Mingchen.

Dear Mingchen

  Unless you are carefully using the "dump local" command, bond
topology is usually absent from a dump file. By default, it contains
atomic coordinates.

http://lammps.sandia.gov/doc/dump.html

If you want to store bond topology in the dump file, then I assume you
are doing something like this: ?

compute 1 all property/local batom1 batom2 btype
compute 2 all bond/local dist eng
dump 1 all local 1000 tmp.dump index c_1[1] c_1[2] c_1[3] c_2[1] c_2[2]

   (from the web link above). Even so, I don't see how using "rerun"
could work on a system with changing bond topology. I was not aware
that LAMMPS has a way to read the topology changes stored in a dump
file created this way. I think what you are trying to do will not be
easy. But if I'm wrong, please correct me. I posted this because I'm
curious.

  Either way, you did not provide the input scripts you used to 1) run
the original simulation, and 2) invoke "rerun" to analyze the
simulaiton, so it's impossible for people to give advice.

Andrew

Dear Andrew,

I used your way of calculating bond topology in rerun simulation.

The bond information could be properly obtained.

That’s weird. Because if the topology is accessible, why the energy term re-calculation produces weird values?

I need to think about that. Thanks a lot for your help!

Best,
Mingchen.

I took a look at your input script, and realized that I
misunderstood what you were trying to do. (And it seems like you are
misunderstanding a few things about LAMMPS.) Before you continue
trying to use the "rerun" command, I suggest you try some of the other
examples that come with LAMMPS and make sure you are familiar with
what LAMMPS does and what kind of information goes in the various
files which LAMMPS reads.

1) Bond topology should be stored in a DATA file (such as
"data.hexamer_100A" in your example). Bond information is (almost)
never stored in a dump file. (The only exception to this rule is when
you are using "fix bond/break" or "fix bond/create", to form and break
bonds during a simulation. So I assumed that this was what you did
when you ran your initial simulation, before you use the "rerun"
command.)

2) "rerun" is only used to analyze trajectory file generated during a
previous simulation. I assume you have already run a simulation and
have a "dump.lammpstrj" file. (If not, then stop reading this post.)

    If you notice strange energies when you use "rerun", AND you did
not notice anything out of the ordinary, when you ran the original
simulation (the one which generated the "dump.lammpstrj" file), then
you may have a problem in the way you are computing various kinds of
energy between various groups. (Have you taken a look at
http://lammps.sandia.gov/doc/compute.html ?)

    In any case, what happens when you add this line to your input script?

thermo_style custom step pe epair ebond eangle edihed eimp

   See http://lammps.sandia.gov/doc/thermo_style.html

   Do the energies printed to the terminal (and the "log.lammps" file)
look reasonable?

    I also noticed that your input script does not have any
"bond_coeff", "angle_coeff", "dihedral_coeff", "improper_coeff"
commands. Are these Coeffs located in your data file?

  Alternatively, if you have doubts that there are bonds (angles,
dihedrals, etc...) in your "data.hexamer_100A" file, then you can try
looking at it with a text editor, and/or visualizing it. (I attached
a file explaining how to see the bonds in your DATA file using Axel's
topotools program and VMD. You should see lines connecting the
atoms.)

Andrew

  Comment: There are a lot of strange things in your input script.
Did you test this script before posting it? It takes some effort to
look over a script. So when you post an input script please be
careful to check that it contains lines that you are actually using.
The script you posted would cause LAMMPS to crash in at least two
places:

atom_style peptide

fix 2 alpha_carbons backbone beta_atoms oxygens
fix_backbone_coeff.data hexamer.seq

...I would comment out the other "fix" commands as well. (Why do you
need them if you are using "rerun"? I'm not sure about some of those
"variable" commands as well.)

README_visualize.txt (2.42 KB)