How to connect atoms in different layers with independent springs?

Dear user,
Recently, I’ve been studying the sliding friction of monolayer graphene on a rigid monolayer h-BN. I want to apply a uniform pull on the mobile graphene through a harmonic spring. The scheme is as follows,
107-Robust microscale superlubricity in graphite&hexagonal boron nitride layered heterojunctions-3.jpg
I tried the fix spring and fix smd commands. It seems that they can not meet my requirements. I wonder if I used the wrong command.

your question and your subject line are inconsistent, so it is very difficult to give advice.
you need to explain in more detail what it is exactly what you want to implement, how your system is set up (and what potentials etc. you are using) and why and how the fixes you tried have failed and why you specifically need what you are asking for.

axel.

107-Robust microscale superlubricity in graphite&hexagonal boron nitride layered heterojunctions-3.jpg

Dear user,
Here is my script and running snapshots. The top layer does not move along the X-axis as planned. In fact, it tends to move toward the negative direction of the Z-axis.
Besides, the middle layer is not pulled by the top layer.

units metal
dimension 3
boundary f f f
atom_style bond
read_data bn_graphene_friction.data

pair_style hybrid/overlay rebo lj/cut 8
pair_coeff * * none
pair_coeff * * rebo CH.rebo NULL C NULL
pair_coeff 1 2 lj/cut 0.01 3.4

mass 1 12.01
mass 2 12.01
mass 3 12.01
neigh_modify every 1 delay 0 check yes one 10000

A.jpg

107-Robust microscale superlubricity in graphite&hexagonal boron nitride layered heterojunctions-3.jpg

why not use fix smd (or fix colvars or fix plumed in SMD mode) on the orange graphene layer and remove the “rigid” layer completely as it is seems to be not otherwise interacting?

that the orange layer is being pulled toward the green layer is just logical and simple physics due to vector math. you would have to put the green layer exactly on top of the orange layer to avoid this, but then using fix spring would be exactly the same as using fix smd.
you may also need to adjust the spring constant for being effective in pulling the layer as it is very heavy and your spring constant is quite weak. just look at a typical force constant for a covalent bond and keep in mind that you are now connecting many atoms at the same time with a single force constant. that should put you in the right order of magnitude.

axel.

A.jpg

107-Robust microscale superlubricity in graphite&hexagonal boron nitride layered heterojunctions-3.jpg