Dear Lammps users,
I just want to know whether Particle based rRESPA is possible or not in LAMMPS where I have mixture of heavy particle and light particle. The heavy particles will be integrated with longer timestep and light particle will be integrated with smaller timestep.
Yes, it is possible assuming the heavier particles have different atom types than the lighter particles and the mass difference is significant.
There is a misconception here about how r-RESPA functions. With r-RESPA the integration of the equations of motion is always done on the innermost, shortest timestep. What differs between r-RESPA levels is whether forces for a r-RESPA level are computed in a step or whether cached copies are used. The time spent on time integration to propagate atoms is very minimal in comparison to the time spent on computing (non-bonded) forces and neighbor lists.
In order to use the multi-timestep division by atom types, you have to set up your calculation to use the pair_style hybrid command — LAMMPS documentation. You can then assign different sub-styles to different r-RESPA levels with the hybrid option of the run_style command — LAMMPS documentation.
Because r-RESPA decomposes the force computation, any interactions that involve lighter atoms, must be used at the inner level and only interactions between the heavy particles can be computed at the outer level. So, unless the number of heavy/slow particles is large compared to the number of light/fast particles, the savings are likely limited.
Thanks Prof Axel.
I have followed your suggestion and prepared my input file as follows. Please check whether RESPA is correctly applied or not.
#LAMMPS Input file for lj particle
boundary p p p
#lattice none 0.86
region my_box block 0 10 0 10 0 10
create_box 2 my_box
create_atoms 1 random 40 341341 my_box
create_atoms 2 random 824 127569 my_box
mass 1 1
mass 2 100
pair_style hybrid/overlay lj/cut 3.0 lj/cut 3.0
pair_coeff 1 1 lj/cut 1 1.0 1.0 #2.628
pair_coeff 1 2 lj/cut 2 1.0 1.0
pair_coeff 2 2 lj/cut 2 1.0 1.0 #2.628
fix ensemble all nve
velocity all create 0.67 4928459 rot yes dist gaussian
fix equil all temp/rescale 10 0.67 0.67 0.01 0.1
neighbor 0.2 bin
neigh_modify every 20 delay 0 check yes
minimize 1.0e-6 1.0e-6 1000 1000
thermo_style custom step temp pe ke etotal press vol
run_style respa 2 10 hybrid 1 2
Run the simulation
dump 1 all xyz 10 HISTORY.xyz
dump_modify 1 element He Rn
dump dumpXYZ all custom 10 ljatompos.xyz id x y z
dump dumpVXYZ all custom 10 ljatm_vel.dat id vx vy vz
Please check it yourself. This is not an input file validation forum. As a scientist you should be capable of constructing different scenarios that would either produce the same or different output / forces depending on how r-RESPA is applied or not. Please note that with just one level, r-RESPA will degenerate to a velocity Verlet algorithm.