Modify code in LAMMPS

Hi ,

I am studying the wear behaviour of metal oxide surfaces using MD method. The aim of my investigation is the deformation of surface’s asperity. I was known there were a few available potentials applicable for metal oxide (e.g. Born, Buckingham, semi-ionic potential …) however, these potential describe quite brittle behaviour. EAM or EAM/alloy can adapt this expectation and, actually, there are a few available potential file for metal/metal alloy but no one for metal oxide as in metal oxide there is an additional contribution of ionic interaction between cations and anions. Zhou et al. (attached above) (2004 – A charge transfer ionic-embedded atom method potential for the O-Al-Ni-Co-Fe) investigated the oxidation of metal alloys using the combination of EAM and CTIP (charge transfer ionic potential).

I intend to use this potential with LAMMPS but there is no command/options support me on this matter. Therefore, I decide to go in an alternative approach: I used the parameters from their work to create EAM potential file for Fe and O ( similar with create the potential file for metal alloy) and add the code to add ionic potential to the model by modifying long range Coulomb interaction potential files (coul/long.cpp and coul/long.h) available in LAMMPS source.

If you are an expert in this area, Is it a right approach ?

Another matter is that the system should be charge neutral during simulation, Zhou carried out a MD process to get equilibrium charge for each atom at each step.

Can LAMMPS also do that ?

Best regards,

Ta

A_Charge_Transfer_Ionic_Embedded_Atom.pdf (686 KB)

Adding the variable charge Streitz-Mintmire potential into LAMMPS is a work under progress.

[…]

Thank Ray Shan for your prompt respond !

It is great to hear that charge Streitz-Mintmire potential into LAMMPS is under progress as it will save my time if this potential is published. But I am still wondering that , will it be updated in the next version of LAMMPS ?

“Do you mean pair hybrid/overy by “add”?”

Ans: Yes, I used hybrid/overy to combine both EAM potential and Streitz-Mintmire Coulomb interaction. But I also modified the “set.cpp” to add some parameters for each atom type such as electronegativity (X), self-Coulomb repulsion (J), electron distribution (xi) and the core charge (Z) of each atom type.

Best regards,

Ta

Thank Ray Shan for your prompt respond !

It is great to hear that charge Streitz-Mintmire potential into LAMMPS is
under progress as it will save my time if this potential is published. But
I am still wondering that , will it be updated in the next version of
LAMMPS ?

We don't have a definite timeline for releasing it.

"Do you mean pair hybrid/overy by "add"?"

Ans: Yes, I used hybrid/overy to combine both EAM potential and
Streitz-Mintmire Coulomb interaction. But I also modified the "set.cpp" to
add some parameters for each atom type such as electronegativity (X),
self-Coulomb repulsion (J), electron distribution (xi) and the core charge
(Z) of each atom type.

That is definitely not the correct way of doing it. These per-type
parameters should be read-in from a potential file.

Ray

Dear Ray Shan,

As my study is urgent and I don’t know when this expected potential was released so I decide to keep going in using my own approach. Can we discuss more about the algorithm as well as the code for describing this potential ? If you are interesting in it, I am willing to share it to you and by this way I can get some advices from you as well. How do you think about it ?

Best regards,

Ta