In LAMMPS I am depositing H on Si surface. I want to calculate the dipole moment of the bonds created after deposition. However, I can see that LAMMPS calculate the overall dipole moments of Si and H chunks. Is there any way to see Dipole Moment of a specific bond? Also, I want to see how electric field affects the dipole moment and bond energy of the Si-H bond. How can I do that?
I have used:
boundary p p f
atom_style hybrid sphere dipole
pair_style reax/c NULL
pair_coeff * * ffield2.txt Si H
compute cc1 all chunk/atom type
compute myChunk all dipole/chunk cc1
compute moment all dipole
variable dm equal c_moment
fix 6 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector
fix parameter all qeq/reax 1 0.0 12.0 1e-6 param.qeq16
thermo_style custom step atoms vol press temp c_eatoms v_eb v_dm
When using compute dipole/chunk, dipoles are computed per chunk, so you need to define the chunks so that they divide the system the want to you want. There are some limitations to that, since a) bond topology information is implicit with ReaxFF and thus only known internally to the ReaxFF calculation and b) an atom cannot be part of multiple chunks. So at the moment, if you want a more detailed analysis, it is probably best you just write out a dump file with atom positions and charges and then do the analysis after the fact with a custom, self-written program.
To see the impact of an external electrical field, you need at least LAMMPS version 27 October 2021, since that is where support for fix efield was added for fix qeq/reaxff (see: Latest features & bug fixes for 2021). However, this only solves the issue of incorporating the electric field into the ReaxFF calculation, the limitations of the calculation of the dipoles remain the same as mentioned above.