Regarding IBI for non-bonded interaction not converging

119 views
Skip to first unread message

Sanjeet Singh

unread,
Nov 6, 2022, 8:47:41 PM11/6/22
to votca
Hello Christoph,

I am trying to perform IBI for non-bonded interaction. I have 3 bead types in my system.

I have already run it for more than 500 iterations, but IBI is not able to reproduce the target distribution.

Can you please suggest on how to work on this?

I am hereby attaching the rdf for two of the non-bonded interactions in my system along with the setting.xml file.

Thank you.

Sanjeet


BEAD1-BEAD3.tif
BEAD2-BEAD2.tif
settings.xml

Christoph Junghans

unread,
Nov 7, 2022, 9:34:22 AM11/7/22
to vo...@googlegroups.com
On Sun, Nov 6, 2022 at 6:47 PM Sanjeet Singh <sanje...@gmail.com> wrote:
>
> Hello Christoph,
>
> I am trying to perform IBI for non-bonded interaction. I have 3 bead types in my system.
>
> I have already run it for more than 500 iterations, but IBI is not able to reproduce the target distribution.
>
> Can you please suggest on how to work on this?
I look like you don't have enough statistics in each iteration, you
could do the following:
- more MD steps
- decrease the step size - 0.002 seems a bit too small
- using scale and potential_do will also throw out some of the stats.

Regarding the peak around 0.35nm in the Bead2-Bead2 plot, it seems to
me you count an intra-moleculde pair there.
If that is the case, you will need to exclude that.
You can search the mailing for more details, but in short, just add a
bond section in your topology.xml (see
https://github.com/votca/votca/blob/master/csg-tutorials/hexane/atomistic/hexane.xml#L26)
and use said topology file instead of the data file.
Inttra molecular interaction will automatically generate exclusion,
you can check that with: csg_dump --top topology.xml --excl

Christoph

>
> I am hereby attaching the rdf for two of the non-bonded interactions in my system along with the setting.xml file.
>
> Thank you.
>
> Sanjeet
>
>
> --
> Join us on Slack: https://join.slack.com/t/votca/signup
> ---
> You received this message because you are subscribed to the Google Groups "votca" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to votca+un...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/votca/560c96cd-e0f7-4bb7-a339-8e031c1bdab1n%40googlegroups.com.



--
Christoph Junghans
Web: http://www.compphys.de

Sanjeet Singh

unread,
Nov 8, 2022, 2:05:24 PM11/8/22
to votca
Hello Christoph,

I applied all your suggestions and replaced the tabulated bond stretching potential with the harmonic functional form. And now I am getting somewhat improved result.

But, again convergence problem is there. Furthermore, at some steps of the iterations, I found that two beads of my system are in direct contact with each other.

Can you please point out the reason for this, and the possible remedy?

I am also attaching snapshots of the simulation box for your reference.

Thank you.

Sanjeet 

COLLIDING-BEADS-1.png
COLLIDING-BEADS.png

Christoph Junghans

unread,
Nov 8, 2022, 2:59:36 PM11/8/22
to vo...@googlegroups.com
On Tue, Nov 8, 2022 at 12:05 PM Sanjeet Singh <sanje...@gmail.com> wrote:
>
> Hello Christoph,
>
> I applied all your suggestions and replaced the tabulated bond stretching potential with the harmonic functional form. And now I am getting somewhat improved result.
Good, I always recommend doing non-bonded only first and then throwing
the bonded interactions later.

>
> But, again convergence problem is there. Furthermore, at some steps of the iterations, I found that two beads of my system are in direct contact with each other.
>
> Can you please point out the reason for this, and the possible remedy?
That is a very system specific question. But I guess you will have to
increase the repulsive core of the non-bonded interactions.Check the
file <name>.pot (or whatever name you picked in the settings file) in
the last step_* directory to see if it is extrapolated/repulsive
enough.
Usually you can do that by increasing the repulsive core by increasing
the <min> of said interaction a bit.

Christoph
> To view this discussion on the web visit https://groups.google.com/d/msgid/votca/9b5b82f3-b37e-45e1-985d-e505c4bc9d2en%40googlegroups.com.

Sanjeet Singh

unread,
Nov 8, 2022, 9:23:28 PM11/8/22
to votca
Dear Christoph,

In the settings.xml file what should be the value of cg. inverse. kBT, if am using LAMMPS (real units) as a simulation program as shown below:

  <inverse>
    <kBT>2.49435</kBT>             
    </simulation>
    <program>lammps</program>
    <!-- lammps specific options -->

If my T = 300 K, should it be 300 * 0.00198720 = 0.5962 kcal/mol K, or 300 * 0.0083144621 = 2.49434 kJ/mol K.

Thank you.

Sanjeet

Christoph Junghans

unread,
Nov 8, 2022, 10:04:02 PM11/8/22
to vo...@googlegroups.com
On Tue, Nov 8, 2022 at 7:23 PM Sanjeet Singh <sanje...@gmail.com> wrote:
>
> Dear Christoph,
>
> In the settings.xml file what should be the value of cg. inverse. kBT, if am using LAMMPS (real units) as a simulation program as shown below:
>
> <inverse>
> <kBT>2.49435</kBT>
> </simulation>
> <program>lammps</program>
> <!-- lammps specific options -->
>
> If my T = 300 K, should it be 300 * 0.00198720 = 0.5962 kcal/mol K, or 300 * 0.0083144621 = 2.49434 kJ/mol K.
You should use 0.5962, but honestly it isn't used in my place besides
being the prefactor of the update and you already scaled down the
update with a factor 0.1 So it shouldn't matter much.

Christoph
> To view this discussion on the web visit https://groups.google.com/d/msgid/votca/b36d2e4f-8a2b-48a4-8326-2bf69151d04bn%40googlegroups.com.

Sanjeet Singh

unread,
Nov 9, 2022, 10:27:44 PM11/9/22
to votca
Dear Christoph,

Thank you for your response.

I have some doubt regarding the  post_update_options.scale. I have six types of non-bonded interaction in my system and I want to update them at the same iteration step, then shall  I use the scale factor as 1/6 (0.167) approximately for each of them? 

Similarly, for the post_update_options.pressure.simple.scale, if I want to update all of my six interaction at the same step, then what should be the value of the scale factor? 

I mean if it is related to the compressibility of the system, then if my polymer has a compressibility value of 1. Then, what should be the value of the scale factor for each of my interaction. Will it be again 1/6?

Or, how to decide upon the weightage I can give to each of the six interactions with respect to the scale factor for pressure update?

Can it be related to the fraction of each bead in my system? Or, the bead with higher fraction will have higher weightage?

Thank you.

Sanjeet

Christoph Junghans

unread,
Nov 9, 2022, 11:26:33 PM11/9/22
to vo...@googlegroups.com
On Wed, Nov 9, 2022, 20:27 Sanjeet Singh <sanje...@gmail.com> wrote:
Dear Christoph,

Thank you for your response.

I have some doubt regarding the  post_update_options.scale. I have six types of non-bonded interaction in my system and I want to update them at the same iteration step, then shall  I use the scale factor as 1/6 (0.167) approximately for each of them? 

Similarly, for the post_update_options.pressure.simple.scale, if I want to update all of my six interaction at the same step, then what should be the value of the scale factor? 

I mean if it is related to the compressibility of the system, then if my polymer has a compressibility value of 1. Then, what should be the value of the scale factor for each of my interaction. Will it be again 1/6?

Or, how to decide upon the weightage I can give to each of the six interactions with respect to the scale factor for pressure update?

Can it be related to the fraction of each bead in my system? Or, the bead with higher fraction will have higher weightage?
I could now speculate, but the short answer is, I don't know! All these things are very system-specific and you will have figure it out by try and error.

My only advice is too not try too many things at once. Get IBI to work then add pressure correction etc.

Sorry,

Christoph

Sanjeet Singh

unread,
Nov 10, 2022, 9:52:17 PM11/10/22
to votca
Hello Christoph,

Thank you for your support and guidance.

Now, IBI is working for me. And I have already started the pressure correction step. But, I am not able to stabilize the pressure in my system, which is fluctuating a lot. Can you please point out the reason why is it so?

I am hereby attaching my settings.xml file, and the lammps.pressure file after 50 iterations.

I would also like to know that is it ok to perform the potential update and pressure correction at the same step of the iteration?

Also, what is the unit of p_target in the settings.xml file?

Thank you.

Sanjeet

lammps.pressure
settings-pressure (1).xml

Christoph Junghans

unread,
Nov 11, 2022, 9:50:15 AM11/11/22
to vo...@googlegroups.com
On Thu, Nov 10, 2022 at 7:52 PM Sanjeet Singh <sanje...@gmail.com> wrote:
>
> Hello Christoph,
>
> Thank you for your support and guidance.
>
> Now, IBI is working for me. And I have already started the pressure correction step. But, I am not able to stabilize the pressure in my system, which is fluctuating a lot. Can you please point out the reason why is it so?
That is very common, I would try to scale down the update from the
pressure correction.

>
> I am hereby attaching my settings.xml file, and the lammps.pressure file after 50 iterations.
>
> I would also like to know that is it ok to perform the potential update and pressure correction at the same step of the iteration?
That depends on the system, but I wouldn't do it at the same time.

>
> Also, what is the unit of p_target in the settings.xml file?
It is the same units as whatever your MD program prints out.
> To view this discussion on the web visit https://groups.google.com/d/msgid/votca/2abd0c38-3ec0-4d20-9b77-2573aca1c4een%40googlegroups.com.

Sanjeet Singh

unread,
Nov 11, 2022, 9:28:37 PM11/11/22
to votca
Dear Christoph,

Thank you for your reply.

I have another question. After using the scaling value as low as 0.000003 for the pressure correction, there is still lots of fluctuation in pressure of my system. It does stabilizes for some iterations in the beginning, though it never reaches even close to the p_target. After initial stabilization it again fluctuates a lot.

Can you please suggest how to workaround this?

I am hereby attaching my settings.xml file for your reference.

Thank you.

Sanjeet

settings-pressure.xml

Christoph Junghans

unread,
Nov 11, 2022, 9:52:56 PM11/11/22
to vo...@googlegroups.com
On Fri, Nov 11, 2022 at 19:28 Sanjeet Singh <sanje...@gmail.com> wrote:
Dear Christoph,

Thank you for your reply.

I have another question. After using the scaling value as low as 0.000003 for the pressure correction, there is still lots of fluctuation in pressure of my system. It does stabilizes for some iterations in the beginning, though it never reaches even close to the p_target. After initial stabilization it again fluctuates a lot.

Can you please suggest how to workaround this?
Many coarse-grained systems have a high fluctuation in the pressure even without ibi and pressure correction, this is just the nature of these systems! There is not much you can do beside running longer for better stats.

Christoph 
Reply all
Reply to author
Forward
0 new messages