[lammps-users] friction lubricant simulation!

Dear support, I’ve a question about a simulation that involve:

  • 2 layer of substrate called top
  • 5 layer of lubricant
  • 2 layer of substrate called bottom

I want to perform a simulation in wich the top are pulled with a force k(x-vt) along X direction; in order to do this there is some command like addforce? Or I need to modify and create a new style?

I want also add a vertical load on the top

a command like this

fix 12 top_rigid aveforce 0.0 0.0 -0.5

is right?

Thanks.

N.

Dear support, I've a question about a simulation that involve:

there is no "support" service here, just people that also
use lammps and are willing to share their experience
and volunteer time to help.

- 2 layer of substrate called top
- 5 layer of lubricant
- 2 layer of substrate called bottom

I want to perform a simulation in wich the top are pulled with a force
k(x-vt) along X direction; in order to do this there is some command like
addforce? Or I need to modify and create a new style?

why not have a look at the documentation first?

e.g. via searching "addforce site:lammps.sandia.gov" in google.

you would be positively surprised. :wink:

I want also add a vertical load on the top

a command like this

fix 12 top_rigid aveforce 0.0 0.0 -0.5

is right?

why not use fix addforce here, too?

also, it would depend on whether the
bottom layer is mobile or not.

hard to give more detailed advice without
seeing more details about your input.

your naming implies that the top layer
is a rigid object, then aveforce and addforce
should have the same effect.

axel.

Ok Axel, sorry for the previous mail I’ve read the documentation of lammps some time ago and there were no possibility of vary the forces.
So thanks for clarify because I was think that aveforce and addforce perform a different calculation for a rigid object.

I’ve another question, I want to add the force in the following way to some atoms:

variable x equal “x[28]”
variable v equal “vx[28]”
variable forcekx equal “0.01*(v_x-v_x0-v_velapseddt)”

here v_x0 is x0 when the simulation start. However I’ve not found a way to define xcm0 because it is updated during the simulation.
Furthermore when the particles goes through the box and it is needed to update x0 by subtracting a box. How is it possible to do this?

I hope this time the question are more clear.

N.

2010/11/16 Axel Kohlmeyer <[email protected]>

I hope this time the question are more clear.

Not to me. What is 28? What is xcm0?

Steve

Sorry 28 is the atom that I’ve selected.

In pratice I want to pull a group of atoms by using a force defined by
variable forcekx equal “0.01*(v_x-v_x0-v_velapseddt)”

where x=x[28] and x0=x[28] at the initial time; of course choose 28 or another atoms is the same but I cannot use the center of the mass because I’ve a periodic system.
When the atoms selected goes through the boundary it is needed to subtract the box length.

Thanks

N.

2010/11/17 Steve Plimpton <[email protected]>