Fitting for electromechanical properties from DFT Structure

Hello everyone,

at first I have to say, that I´m not much experienced with GULP, but I hope you’ll help me anyway=).
I´m interested in the piezoelectric properties of a HfO2 structure created by DFT. So lattice parameters and dielectric tensor main elements are available as well as the youngs modul (z). My idea was to fit the known buckingham potentials by Lewis and Catlow with the DFT calc. observables and afterwards calculate the piezoelektric tensor. If this is not possible, pls tell me before I put too much time in this task. I allready tried to solve this problem, but I don´t get the square sum below ca. 100. Also it seems like the spring variables are not fitted properly. It would be nice if you could have a look on my input file and give me some hints on improvements, because the amount of settings is just overwhelming.

Thank you very much in advance.

BR Sven

fit relax prop conp
temperature 298
pressure 1 atm
HfO2 Pca21
5.04 5.23 5.06 90.000000 90.000000 90.000000 0 0 0 0 0 0
Hf core 0.267000 0.032000 0.243000
Hf shel 0.267000 0.032000 0.243000
O_1 core 0.068000 0.389000 0.388000
O_1 shel 0.068000 0.389000 0.388000
O_2 core 0.537000 0.267000 0.492000
O_2 shel 0.537000 0.267000 0.492000
bulk_bodulus voigt 250 0.1
young 1
z 250 0.1
sdlc 1
1 1 28.8 0.1
sdlc 1
2 2 24.2 0.1
sdlc 1
3 3 28.0 0.1
#poisson 1
#xz 0.2 1
#poisson 1
#yz 0.2 1
Hf core 4.0
O core 0.86902
O shel -2.86902
Hf core O shel 1454.6 0.35000 0.00000 0.0 10.0 1 1 0
O shel O shel 22764.0 0.14900 27.87900 0.0 12.0 1 1 0
O 75 K2 1
Hf 300.00 K2 1

Hi BR Sven,
There are a few issues in your input, most of which are not so important, but the last one is:

  1. You don’t want to put “K2” in the spring input (when it says K2 in the help it means put the value which you’ve done)
  2. You don’t need the “start” command - the code starts when it finds the end of the input - this is just for if you are typing interactively
  3. You haven’t given a charge for the Hf shell & so it will be zero which means there is no polarisation of this ion. As a result it looks like you can only get a cubic structure rather than the orthorhombic you’re inputing.

I should also comment on the aim of trying to get a sum of squares less than a 100. There is no magic figure for the sum of squares to be converged - it depends on the weights applied to the observables. For example, if you get a sum of squares of 900, if you decrease all weights by 10 it would make the sum of squares less than 100, but the quality of the fit would be the same.

Hope that helps,

Hi Julian,

thanks for the quick reply and thanks for the hints.
Acc. pt. 3., I don´t know the charge distribution of Hf4+ and so I decided to stick on the just core definition. Isn´t that possible? Or is there any rule of thumb I can use for the c-s model?
Or do I always need a c-s modell for all elements if it´s about a non cubic system?
Well, I don´t need 100% acurate results, a rough estimation of the PE tensor would be fine.

Thank you very much,
best regards,


PS: Is there maybe a possibility in GULP to calculate just with simple electrostatic potentials, with point charges instead of core and shel? For a first try it should be sufficient.

Hi Sven,
The polarisability of an isolated ion is given by the shell charge squared divided by the spring constant. So if you don’t give a shell charge (i.e. zero) then you may as well not have a shell model. Cation polarisability is usually small & so you could get rid of it - otherwise you have to fit the shell charge.

PS Point charges are fine in GULP - only add shells if you want them.