Cannot get atom to stay stationary using setfoce 0.0 0.0 0.0 and minimize

Hi,

I have been endeavouring to map out the potential energy surface for an interstitial within a bcc lattice. For this I have a python script that will run LAMMPS several times with interstitial positioned at different places along the surface of a unit cell (forming a mesh of the potential energy surface ).

I am having problems getting the interstitial to remain stationary when wishing to relax the system (use minimize). I have been playing about with different settings. Below is part of my script:

compute pe He pe/atom

dump events2 He custom 1 dump.he.$u id type x y z c_pe

velocity He set 0.0 0.0 0.0
fix 1 all nve
#fix 1 all nvt temp 100.0 100.0 10.0
fix 2 He setforce NULL NULL NULL #0.0 0.0 0.0
#fix_modify 2 energy no

#thermo 0

#timestep 0.01
min_style cg
minimize 1.0e-5 1.0e-4 10000 100000

different combinations of these commented/uncommented terms cannot seem to stop the He atom (interstitial) from having varying coordinates with each timestep (below is the text from the dump file).

ITEM: TIMESTEP
0
ITEM: NUMBER OF ATOMS
1
ITEM: BOX BOUNDS pp pp pp
0 51.3958
0 51.3958
0 51.3958
ITEM: ATOMS id type x y z c_pe
11665 2 24.5558 24.8413 24.2703 28.295
ITEM: TIMESTEP
1
ITEM: NUMBER OF ATOMS
1
ITEM: BOX BOUNDS pp pp pp
0 51.3958
0 51.3958
0 51.3958
ITEM: ATOMS id type x y z c_pe
11665 2 24.6056 24.941 24.2703 9.14782
ITEM: TIMESTEP

The interstitial atom remains stationary when using the run 5 say, and setforce 0.0 0.0 0.0. However in order to do it this way, I would need to add damping to the atoms using fix viscous. If I cannot get LAMMPS to do it using minimize, I will use the fix viscous method but I am hoping I can do it using the former.

If anyone can help, I would be most grateful!

Regards

Luke

Hi,

I have been endeavouring to map out the potential energy surface for an
interstitial within a bcc lattice. For this I have a python script that will
run LAMMPS several times with interstitial positioned at different places
along the surface of a unit cell (forming a mesh of the potential energy
surface ).

I am having problems getting the interstitial to remain stationary when
wishing to relax the system (use minimize). I have been playing about with
different settings. Below is part of my script:

compute pe He pe/atom

dump events2 He custom 1 dump.he.$u id type x y z c_pe

velocity He set 0.0 0.0 0.0
fix 1 all nve
#fix 1 all nvt temp 100.0 100.0 10.0
fix 2 He setforce NULL NULL NULL #0.0 0.0 0.0

that is not going to work. i just explained the very same thing in a
different e-mail today. from the fix setforce documentation:

Any of the fx,fy,fz values can be specified as NULL which means do not
alter the force component in that dimension.

#fix_modify 2 energy no

#thermo 0

#timestep 0.01
min_style cg
minimize 1.0e-5 1.0e-4 10000 100000

different combinations of these commented/uncommented terms cannot seem to
stop the He atom (interstitial) from having varying coordinates with each
timestep (below is the text from the dump file).

ITEM: TIMESTEP
0
ITEM: NUMBER OF ATOMS
1
ITEM: BOX BOUNDS pp pp pp
0 51.3958
0 51.3958
0 51.3958
ITEM: ATOMS id type x y z c_pe
11665 2 24.5558 24.8413 24.2703 28.295
ITEM: TIMESTEP
1
ITEM: NUMBER OF ATOMS
1
ITEM: BOX BOUNDS pp pp pp
0 51.3958
0 51.3958
0 51.3958
ITEM: ATOMS id type x y z c_pe
11665 2 24.6056 24.941 24.2703 9.14782
ITEM: TIMESTEP

....

The interstitial atom remains stationary when using the run 5 say, and
setforce 0.0 0.0 0.0. However in order to do it this way, I would need to
add damping to the atoms using fix viscous. If I cannot get LAMMPS to do it

why not with minimize? the documentation asserts it can be done. can
you provide proof it doesn't work?

axel.