Page 1 of 1

relativistic corrections to the shielding

Posted: 19 Nov 2013, 09:55
by michaljz
It appears that there is a bug in relativistic corrections to the shielding. The final printouts are

Paramagnetic Corrections
Second Order Singlets. Total Value : 2.95230 [ppm]
Second Order Triplets. Total Value : 37.83090[ppm]
Total Paramagnetic Corrections : 40.78320 [ppm]

Diamagnetic Corrections :
First Order Singlets. Total Value : -27.19241 [ppm]
Second Order Singlets. Total Value : 7.39426 [ppm]
Total Diamagnetic Corrections : -19.79815 [ppm]

Total Relativistic Corrections :
Sum of corrections : 41.99929 [ppm]

which is clearly NOT the sum.
I can see that when we get to the tensor averages in abalresc.F we have:

DO i=1, 3
SGP1T = SGP1T + LRFCZK(i,i) + LRSDZK(i,i)+LRFCBS(i,i)+LRSDBS(i,i)
SGP1S = SGP1S + LRLKIN(i,i) + LRPSOK(i,i)
SGD0S = SGD0S + LRFCAV(i,i) + LRDIAK(i,i) + LRANGP(i,i)
SGD1S = SGD1S + LRDIAD(i,i) + LRDIAM(i,i)
relall= relall + SGD0S + SGD1S + SGP1S + SGP1T

If I read it correctly, the four individual terms are OK - each diagonal tensor
component is fine, considered once. However, in "relall" the first tensor component of each term
will be counted three times, the second twice, and the third once
(e.g. for i=2 SGP1T becomes the sum (1.1)+(2.2) and it is added to relall which
already included the (1,1) contribution)

I have moved the line
"relall= relall + SGD0S + SGD1S + SGP1S + SGP1T"
after the ENDDO and I obtain in the above example

Sum of corrections : 20.98505 [ppm]

which is the sum of the two computed terms.

and best regards,
Michal Jaszunski

Re: relativistic corrections to the shielding

Posted: 19 Nov 2013, 10:13
by bast
dear Michal,
thank you for the report and a solution at the same time.
i am correcting it in the release branch. this will be part of the 2013.1 patch.
best regards,

Re: relativistic corrections to the shielding

Posted: 19 Nov 2013, 13:56
by jmelo
Dear Michal Jaszunski

Seems you are right.
Thank you. !
Just to be sure, did you ask for all the corrections did you ?
This is because there are a few ways to ask to all the corrections, and would like to be sure
there is no other bug in the logic part of the print.
If you can please just send us your .dal file.

Thanks again
Juan Melo