Force along axis of a dumbbell

Dear all,

I am using LAMMPS-11Aug-17 for simulation.

I am trying to model a suspension of dumbbells, with DPD interactions, and have managed to do so as of now.

However, I would like to ask two questions:

  1. Is it possible to put a propulsion force that acts along the axis of a dumbbell, irrespective of how it is oriented. I am not sure how to make that happen.

  2. I want to put an external force on each dumbbell in the suspension, but the magnitude of forces may change, from dumbbell to dumbbell, on every time step. Is this the right way to do it…? Assuming we just put random forces for now

compute 1 all property/atom x y z fx fy fz
variable posx atom ‘c_1[4]+normal(-1,1,65468)’
variable posy atom ‘c_1[5]+normal(-1,1,65468)’
variable posz atom ‘c_1[6]+normal(-1,1,65468)’
fix 5 all addforce v_posx v_posy v_posz

Regards,

Dear all,

I am using LAMMPS-11Aug-17 for simulation.

I am trying to model a suspension of dumbbells, with DPD interactions, and have managed to do so as of now.

However, I would like to ask two questions:

  1. Is it possible to put a propulsion force that acts along the axis of a dumbbell, irrespective of how it is oriented. I am not sure how to make that happen.

  2. I want to put an external force on each dumbbell in the suspension, but the magnitude of forces may change, from dumbbell to dumbbell, on every time step. Is this the right way to do it…? Assuming we just put random forces for now

compute 1 all property/atom x y z fx fy fz
variable posx atom ‘c_1[4]+normal(-1,1,65468)’
variable posy atom ‘c_1[5]+normal(-1,1,65468)’
variable posz atom ‘c_1[6]+normal(-1,1,65468)’
fix 5 all addforce v_posx v_posy v_posz

​the best way to do such kind of custom system manipulations is to write a custom fix.
there are some ways to do customizations through variables and the script interface, but there is a limit as to how complex this can become., not to mention the performance penalty.
​something more complex can be done through the python/library interface and fix python/move, but that (also) comes with a per​formance penalty.

axel.