Fitting core shell model

Hi Prof Gale,

I have gone through the manual and the examples provided and I must say it’s quite a multifaceted software. I am actually inspired by the amount of thought and discussions and foresight that must have gone behind this creation.

Now to the problem - I want to fit the parameters of a rigid framework and the core-shell model of a molecule to the DFT energies of each config. Regarding the same, I have 3 queries -

  1. The GULP manual talks of using ‘simul fit’ and taking the shell position as fitting parameters. However, can I do the following - I generate the shell positions beforehand through LAMMPS and input them as ‘atom-type’ ‘shell’ ‘x y z’ and use fit instead of simul fit?

  2. I went through Example 4 and just out of curiosity, therein simply changed simul fit to fit. However, in the output, I got the error “Cell parameter has fallen below allowed limit”. Can you please enlighten me as to why this happened?

  3. I went through the output of Example 4 and found two very ‘curious’ mentions (I could not make sense of them)-
    Observable no. Type Observable Weight Reference Config
    1 Derivative 0.000000 1.0000 1 z 1
    2 Derivative 0.000000 1.0000 3 z 1
    3 Derivative 0.000000 1.0000 4 z 1
    4 Derivative 0.000000 1.0000 6 z 1
    5 Derivative 0.000000 1.0000 a 1
    6 Derivative 0.000000 1.0000 c 1

I could not understand the mentions under the label ‘Reference’ . a, c , 'n’z ? The nature of the observables I mean.

Later on in the table of variables, I saw that 4 z and 6 z are shell positions. However, I do not understand why only the z coords of the shells are considered as parameters and optimized.

II) I also saw a table of ‘Final values of residuals’. I searched the help manual but could not understand the meaning of residuals here.

I am looking forward to your answers and ‘GULPing’ onwards. Thanks in advance. :slight_smile:

Deepest regards,

Hi Nandana,

Here are replies to your points:

  1. The shell coordinates depend on the force field and by fitting you change the force field. So the only way you could the shell coordinates from LAMMPS would be if you weren’t going to fit the force field at all.
  2. The only way the cell parameter can collapse is if the structure is optimised with a poor set of force field parameters. If you have “fit” then the structure shouldn’t be optimised though. My guess is that you’ve got the “relax” keyword present as well (which you shouldn’t with simul since it will override it). The bottom line is still that the initial guess of the force field is not good enough to allow the structure to be relaxed and so you need a better trial model before starting to fit with “relax” present.
  3. The observables are the derivatives (forces) acting on the structure. a and c are cell parameters; n z means atom number “n” and z coordinate (fractional in c for periodic systems).
    If you want to understand why shells have to be parameters and optimised, then read about the “simul” fit method as described in the manual and Phil. Mag. B paper where the method was proposed.
    The residuals are the individual errors squared on the observables when trying to minimise the sum of the squares during fitting.

Thanks so much, Prof Gale.