Hi there,
There is a problem trouble me recently.That is calculating the elastic constants and piezoelectric constants of material.
I have run the telast_1.in,using primtive cell(not the unit cell).And the parameters of that were from the Material Studio files.
In my telast_1.in file,the variable "angdeg" ,insteading of "rprim" ,were applied to calculate. For example,acell, rprim,and xred.
However, the numberical value of acell, xred, and rprim,in the telast_2.in file, were from the telast_1.out file.
Is it right or wrong, especially rprim?
In the telast_1.out file ,
...
rprim 7.7866284655E-01 4.4956120406E-01 4.3769726433E-01
-7.7866284655E-01 4.4956120406E-01 4.3769726433E-01
-2.2038842239E-16 -8.9912240813E-01 4.3769726433E-01
...
As we know, the finite-difference calculation method isused by modifying rprim to calculate elastic constants.
So,I am urgent to know the how to choose or obtain rprim. Wait for your reply! Thank you!
Best wishes!
nannan
how to determine the variable rprim?
Moderators: mverstra, joaocarloscabreu
Re: how to determine the variable rprim?
Well, first of all the primitive cell is the unit cell, just a different representation. I think you are confused about the dfference between the so-called conventional unit cell and the primitive unit cell. Again both are equally valid, but for some space groups the primitive cell is much smaller than the conventional unit cell (in other space groups they are the same). In abinit you can specify the cell geometry either through acell and angdeg, or through acell and rprim. If you use the first option, rprim will be calculated for you. rprim is just the lattice vectors of the primitive cell expressed in a cartesian basis. It more convenient to use than angdeg when you are applying strain to the cell. Note though that if you use abinit's ability to compute elastic constants through rfstrs, you are NOT doing it through finite difference calculations and so you do not have to vary rprim by hand. The tutorial on elastic constants guides you through this.
Josef W. Zwanziger
Professor, Department of Chemistry
Canada Research Chair in NMR Studies of Materials
Dalhousie University
Halifax, NS B3H 4J3 Canada
jzwanzig@gmail.com
Professor, Department of Chemistry
Canada Research Chair in NMR Studies of Materials
Dalhousie University
Halifax, NS B3H 4J3 Canada
jzwanzig@gmail.com
Re: how to determine the variable rprim?
jzwanzig wrote:Well, first of all the primitive cell is the unit cell, just a different representation. I think you are confused about the dfference between the so-called conventional unit cell and the primitive unit cell. Again both are equally valid, but for some space groups the primitive cell is much smaller than the conventional unit cell (in other space groups they are the same). In abinit you can specify the cell geometry either through acell and angdeg, or through acell and rprim. If you use the first option, rprim will be calculated for you. rprim is just the lattice vectors of the primitive cell expressed in a cartesian basis. It more convenient to use than angdeg when you are applying strain to the cell. Note though that if you use abinit's ability to compute elastic constants through rfstrs, you are NOT doing it through finite difference calculations and so you do not have to vary rprim by hand. The tutorial on elastic constants guides you through this.
Thanks for your reply. I am a beginner for abinit, the problem you mentioned has troubled me for a long time. I will take the further study seriously. Thanks again.
Best wishes!