About NEB calculation with intermediate replica

Nice to meet you.
I want to do do a NEB calculation with one intermediate replica specified in Lammps (i.e. I want to specify one replica at reaction coordinate 0.5), but the calculation diverges. Also, I want to do the calculation with 31 replicas.
I am using the file-style of “each” in the neb command, am I using it incorrectly?
The working directory has relaxed_initial.pos, relaxed_final.pos.15, relaxed_final.pos.30, FeP_mm.eam.fs.
The execution commands and input file are as follows.

-----------------------------input file start----------------------------------
units metal
atom_style atomic

atom_modify map array
boundary p p p

neighbor 2.0 bin
neigh_modify delay 1 every 1

read_data relaxed_initial.pos
mass 1 55.845

pair_style eam/fs
pair_coeff * * FeP_mm.eam.fs Fe

compute ene all pe/atom pair
variable u uloop 1000
dump 1 all custom 500 NEB.dump.$u id type x y z c_ene
dump_modify 1 format line “%d %d %g %g %g %20.15g”

fix 1 all neb 0.1 parallel ideal

thermo 1
thermo_style custom step temp etotal ke pe press

timestep 0.002
min_style quickmin

variable i index 15 30
neb 0.0 0.001 10000 10000 10 each relaxed_final.pos.$i
------------------------------------input file end------------------------------------------

execution command :
OMPI_MCA_rmaps_base_oversubscribe=1 mpirun -np 31 /home/lammps-29Oct20/src/lmp_mpi -partition 31x1 -in in.neb

yes. “each” means one file per replica. In your input all will read the relaxed_final.pos.15 file. See the “neb” command documentation.

1 Like

Thanks for the reply.

I looked at the neb command, but I don’t know what command would accomplish what I want to do.
I want to do a neb calculation with 3 files (initial replica, one intermediate replica and an end replica).
Which command can I use to accomplish this calculation?

I apologize for the inconvenience and thank you in advance for your help.

According to the documentation, that is not supported. You would either have to forego providing the midpoint, or create all intermediate positions (e.g. from linear interpolation) and provide them.

A feature to assign explicit coordinates to selected replica and let LAMMPS do the interpolation would need some C++ programming.

1 Like

Thanks to you, I understand that to specify an intermediate replica, I need a replica of all the reaction coordinates.
I will try to solve this problem by extrapolating a program that does linear interpolation.

Thanks for your support!