NEB calculation

Dear all,

I did a neb calculation to obtain the Peierls barrier for screw dislocaiton using ADP potential. But the results show double saddles, as shown below. The two saddles correspond to the two paths: initial position->final position and final position → initial position. I’m confused why it has the second path: final->initial. I also tried to use the relaxing model for both initial and final structures, as well as changing spring and tolerances, but the results are the same.

Does anyone has the same problem? Could you please tell me the reasone? Thanks very much.

Kind Regards,
Meng Zhang

image

How did you define your initial and final states? Do they perform a translation by one unit cell?

It looks like your neb algorithm has found a metastable intermediate state. Maybe your screw dislocation is rotating? Have you analyzed the molecular configuration to understand what is happening?

1 Like

Thanks very much for your reply.
The initial and final states are the neighbor easy cores of screw dislocation.
The configuration of dislcoation cores seems Okay for the first path (from initial position to final position). Please have a look on the animation and command file. The dislocation goes to final position from initial position and then return, which correspond to the two saddles in above figure.
animation.zip (235.6 KB)

# simulation of Peierls potential for screw dislocation in pure iron
#---------------------basic setting---------------------
echo                   	both
dimension		3
units                   	metal
atom_style              	atomic
boundary                	s s p
timestep                	0.001
neighbor                	1.0 bin
neigh_modify            	every 1 delay 0 check yes
atom_modify		map array sort 0 0.0
variable		u uloop 9
variable                	datafile string Fe0.dat

#------------ potential and minimize energy--------
read_data		${datafile}
pair_style		pinn_adp
pair_coeff		* * fe_adp.adp Fe Fe Fe Fe
mass		1 55.845
mass		2 55.845
mass		3 55.845
mass		4 55.845

group 		workspace type 1 2 3
group		fixed type 4
minimize		1.0e-6 1.0e-6 1000 10000
min_style		quickmin
#----------------Peierls potential simulation------------------
reset_timestep	0
thermo		20
fix 		1 fixed setforce 0.0 0.0 0.0
fix		2 workspace neb 2.0
min_style		quickmin
neb		0.0 0.005 20000 20000 20 final Fe1_xyz.dat

dump		1 all atom 1 dump.neb.$u
run		0

I notice your input script does not have a fix neb command, even though the documentation says:

In a NEB calculation each replica is connected to other replicas by inter-replica nudging forces. These forces are imposed by the fix neb command, which must be used in conjunction with the neb command.

Also please use backticks (`)

```
like this
```

when posting an input script so that special characters do not mess up the formatting.

Thanks very much for your suggestion.
In the input file, I have used the fixe neb. Please have a look at the new one. Thanks again.
fe_neb.zip (624 Bytes)

# simulation of Peierls potential for screw dislocation in pure iron
#---------------------basic setting---------------------
echo                   	both
dimension		3
units                   	metal
atom_style              	atomic
boundary                	s s p
timestep                	0.001
neighbor                	1.0 bin
neigh_modify            	every 1 delay 0 check yes
atom_modify		map array sort 0 0.0
variable		u uloop 9
variable                	datafile string Fe0.dat

#------------ potential and minimize energy--------
read_data		${datafile}
pair_style		pinn_adp
pair_coeff		* * fe_adp_potential_237_63e161.pinn Fe Fe Fe Fe
mass		1 55.845
mass		2 55.845
mass		3 55.845
mass		4 55.845

group 		workspace type 1 2 3
group		fixed type 4
minimize		1.0e-6 1.0e-6 1000 10000
min_style		quickmin
#----------------Peierls potential simulation------------------
reset_timestep	0
thermo		20
fix 		1 fixed setforce 0.0 0.0 0.0
fix		2 workspace neb 2.0
min_style		quickmin
neb		0.0 0.005 20000 20000 20 final Fe1_xyz.dat

dump		1 all atom 1 dump.neb.$u
run		0