Re: LCAO coefficients in real spherical harmonics, trasform into spherical harmonics ( No.1 ) |
- Date: 2017/04/18 00:01
- Name: Artem Pulkin
- Spherical Harmonics come in the following order:
"s", "px","py","pz", "dz2","d(x2-y2)","dxy","dxz","dyz", "fz3","fxz2","fyz2","fz(x2-y2)","fxyz","fx(x2-3y2)","fy(3x2-y2)",
The corresponding expressions are here:
https://en.wikipedia.org/wiki/Table_of_spherical_harmonics#Real_spherical_harmonics
|
Re: LCAO coefficients in real spherical harmonics, trasform into spherical harmonics ( No.2 ) |
- Date: 2017/04/19 07:08
- Name: P
- Hello Artem Pulkin,
Thank you for your answer. I understand how real spherical harmonics are simply a unitary transformation of regular spherical harmonics. However the relative sings are not uniquely defined. I have seen many cases where, depending on author, real spherical harmonics will differ by a minus sing in there transformation into regular spherical harmonics. I was interested in the exact definition used by the code.
Except if I misunderstood your answer, and you mean the code uses the definition in the wiki page.
|
Re: LCAO coefficients in real spherical harmonics, trasform into spherical harmonics ( No.3 ) |
- Date: 2017/04/19 18:04
- Name: Artem Pulkin
- Well, the phase of a wavefunction is not uniquely defined so your request is a bit misleading. Let me formulate it this way: I was able to reproduce the overlap matrix exactly by using notation from the wikipedia page with two exceptions:
"dxy" comes with the minus sign; "fxyz" comes with the minus sign.
This information is sufficient to perform rotations you are looking for. If this is still not enough for you here is the corresponding code from OpenMX:
/* Angular */ siQ = sin(Q); coQ = cos(Q); siP = sin(P); coP = cos(P);
for (L0=0; L0<=Spe_MaxL_Basis[wan]; L0++){
if (L0==0){ AF[0][0] = 0.282094791773878; } else if (L0==1){ dum = 0.48860251190292*siQ; AF[1][0] = dum*coP; AF[1][1] = dum*siP; AF[1][2] = 0.48860251190292*coQ; } else if (L0==2){ dum1 = siQ*siQ; dum2 = 1.09254843059208*siQ*coQ; AF[2][0] = 0.94617469575756*coQ*coQ - 0.31539156525252; AF[2][1] = 0.54627421529604*dum1*(1.0 - 2.0*siP*siP); AF[2][2] = 1.09254843059208*dum1*siP*coP; AF[2][3] = dum2*coP; AF[2][4] = dum2*siP; }
else if (L0==3){ AF[3][0] = 0.373176332590116*(5.0*coQ*coQ*coQ - 3.0*coQ); AF[3][1] = 0.457045799464466*coP*siQ*(5.0*coQ*coQ - 1.0); AF[3][2] = 0.457045799464466*siP*siQ*(5.0*coQ*coQ - 1.0); AF[3][3] = 1.44530572132028*siQ*siQ*coQ*(coP*coP-siP*siP); AF[3][4] = 2.89061144264055*siQ*siQ*coQ*siP*coP; AF[3][5] = 0.590043589926644*siQ*siQ*siQ*(4.0*coP*coP*coP - 3.0*coP); AF[3][6] = 0.590043589926644*siQ*siQ*siQ*(3.0*siP - 4.0*siP*siP*siP); }
else if (4<=L0){
|
Re: LCAO coefficients in real spherical harmonics, trasform into spherical harmonics ( No.4 ) |
- Date: 2017/04/20 17:07
- Name: T. Ozaki
- Hi,
The transformation matrices from the complex to the real can be found in Set_Comp2Real() in SetPara_DFT.c.
Regards,
TO
|
|