Hello dear all
I am studying of c60 motion on a single_element 2d substrate. the substrate will wrinkled after the simulation done completely!. I 'd like to prevent the wrinkling of substrate therefore I consider some fixes on the simulation, like “fix setforce” but it makes no reciprocal force on other atoms so the simulation is going wrongly and unnaturally.
I applied “aveforce fix” and also “spring fixe” with periodic and fixed B.Cs. Finally the fixes can not prevent the wrinkling of substrate.
can I use lammps by default commands to prevent the wrinkling? or should I change or set the intellect behind of commands in source code manually?
thanks in advance
Your description is far too vague to give any meaningful advice.
At the fundamental level, atoms go where the forces tell them to go. So there is a good chance there is a problem with how you set up your system.
But without means to reproduce what you see, it is difficult to make suggestions.
I would add a wall with a weak energy constant, just to prevent the wiggling. The key is to put the wall in a position close to the minimum of the potential. Suppose you chose the Lennard-Jones potential and your substrate is oriented perpendicular to Z and has a value of v_z0
, then you could try something like:
variable sigma equal 3.5
variable zmin equal v_z0-v_sigma*1.122 # rmin=sigma*2^(1/6)
fix wall0 substrate wall/lj126 zlo $(zmin) 2.0 v_sigma 10 pbc yes
thanks Sir.akohlmey for your reply.
the purpose of the simulation is to study the motion of c60(translational and rotational) on a 2d substrate made by single-element hexagon structure. something like the study of c60 motion on a graphene.
all potentials applied and defined well. “B.Cs” were considered p p f and “nvt fix” used for substrate atoms, But, the substrate as shown in the figures uploaded below wrinkled which is unwanted for the simulation.
how should I remove the fractures or wrinkles on the substrate?
thanks so much hothello
I stated my simulation description above so the key problem is shown on the figure. If you think your suggestion could be useful after my expression, I will try to consider a constant energy wall for the substrate.
This only helps a little bit. It still says nothing about the details of your simulation and force field and bond topology.
Here are two (or three) examples of approaching this:
- @hothello 's suggestion of using a wall potential doesn’t make that much sense in combination with the sheet, but it makes more sense as a replacement of the sheet. I’ve done this in this (interactive) simulation: https://www.youtube.com/watch?v=JGz5oFR71jA
- of course you could also just let the graphene sheet be immobile by not including its atoms in the time integration. it is doesn’t move it won’t be able to wrinkle
- finally, you can set up the sheet with proper bonds across periodic boundaries or use a potential like Tersoff or AIREBO where the bonds are implicit and then run with fixed volume after an initial relaxation. This way the periodic boundaries will keep the sheet stretched. I’ve done this a very long time ago when putting a water droplet on a sheet: https://www.youtube.com/watch?v=_iRo_UNHgrw
It has solved.
the simulation box(SB) dimensions was the cause of wrinkling. First ,I considered values for SB in two dimensions(except z-coordination) much larger than the substrate. As new dimensions assigned into the simulation box(SB), the wrinkling of substrate would not be seen consequently. the new SB dimensions are bigger than the substrate(in two dimensions(x,y)) as much as the bond length of atoms.
Have you tried to relax the box vectors in the XY plane? Something like:
fix NPT all npt temp 300 300 $(100*ts) x 0 0 $(1000*ts) y 0 0 $(1000*ts)
not exactly this one, but I tried change_box command to change the SB dimensions in x,y directions and it in some extent worked.