benroberts999 / ampsci

A c++ program for high-precision atomic structure calculations of one and two valence systems. Uses Hartree-Fock + correlation potential method. Can calculate ionisation cross sections with large of energy/momentum transfer.
https://ampsci.dev
MIT License
20 stars 7 forks source link

Breit with RPA [probably no issue] #31

Closed benroberts999 closed 4 months ago

benroberts999 commented 2 years ago

For hyperfine: possibly linked to diagram method?

benroberts999 commented 10 months ago

Some of the Breit corrections to Hyperfine constants differ significantly from Derevianko 10.1103/PhysRevA.65.012106. The Breit corrections at Hartree-Fock level agree perfectly.

This is in contrast to E1, where Breit corrections at HF level match exactly, and agree very well at RPA level. Also, Breit corrections to E1 match exactly with diagram and TDHF method for RPA.

The difference is at most a factor of two for the RPA correction part; the result is only noticable when there is large cancellation between HF and RPA contributions, so in the end, doesn't seem like major issue.

HF ampsci Dzuba Derevianko
6s+ 0.011 0.010 0.011
6p- -0.680 -0.680 -0.680
6p+ -0.062 -0.062 -0.060
5d- 0.099 0.099 0.099
5d+ 0.053 0.053
HF+RPA ampsci Dzuba Derevianko
6s+ 4.383 4.010 4.111
6p- 0.012 -0.270 -0.29
6p+ 0.114 0.072 0.04
5d- 0.266 0.233 0.199
5d+ -0.169 -0.183
RPA only ampsci Dzuba Derevianko
6s+ 4.372 4.000 4.1
6p- 0.692 0.410 0.39
6p+ 0.176 0.135 0.1
5d- 0.168 0.134 0.1
5d+ -0.221 -0.236

Full code outputs: rpa-breit.txt

benroberts999 commented 10 months ago

Note: get exactly the same Breit corrections with diagram and "TDHF Basis" methods

HF+RPA RPA Only
Diagram Basis Diagram Basis
6s+ 4.383 4.383 4.372 4.372
6p- 0.012 0.015 0.692 0.694
6p+ 0.114 0.115 0.176 0.177
5d- 0.266 0.269 0.168 0.170
5d+ -0.169 -0.167 -0.221 -0.220

Full code input/output: rpa-breit-basis.txt

I'll leave this issue up for now as a note that this probably requires extra testing, comparison with other calculations etc. But essentially, it seems there is not an error in ampsci

benroberts999 commented 10 months ago

As an extra note - also less than perfect agreement for two-body Breit correction to energies at second-order compared to Derevianko. This correction is complicated, and depends strongly on Brueckner convergence, and overall correction still agrees well. Therefore, not really major issue, but something that would be good to check:

(Nb: it's not non-linear in Breit terms which make the difference, which can be easily check by scaling Breit potential by small number)

Breit corrections at Hartree-Fock and Brueckner levels, accounting for one-body (1) and two-body (2) Breit contributions. Derevianko results 10.1103/PhysRevA.65.012106 in italics.

HF BO(1) BO(2) Total
6s_1/2 3.2 3.2 -6.1 -5.0 -0.3 -0.8 -3.2 -2.6
7s_1/2 1.1 1.1 -1.0 -1.1 -0.1 -0.3 0.02 -0.26
6p_1/2 7.5 7.5 -0.2 -0.1 -0.4 -0.3 6.9 7.1
7p_1/2 2.7 2.7 -0.1 -0.1 -0.1 -0.1 2.5 2.5
6p_3/2 2.9 2.9 -2.3 -1.8 0.02 -0.25 0.59 0.84
7p_3/2 1.0 1.0 -0.6 -0.6 0.01 -0.09 0.44 0.38
5d_3/2 -10.2 -10.2 -15.8 -12 -1.2 -0.4 -27.1 -22
5d_5/2 -11.7 -11.8 -19.2 -14 0.4 -0.3 -30.6 -26

Full code output: 240125-Breit-BO2.txt

benroberts999 commented 4 months ago

Note: issue is now resolved (at least, the RPA part) - issue was with diagram method, TDHF works very well.

See commits: fefa5bcf and: 39b721e6

Updated output:

HF ampsci Dzuba Derevianko
6s+ 0.011 0.010 0.011
6p- -0.680 -0.680 -0.680
6p+ -0.062 -0.062 -0.060
5d- 0.099 0.099 0.099
5d+ 0.053 0.053
HF+RPA ampsci Dzuba Derevianko
6s+ 4.025 4.010 4.111
6p- -0.237 -0.270 -0.29
6p+ 0.075 0.072 0.04
5d- 0.233 0.233 0.199
5d+ -0.179 -0.183
RPA only ampsci Dzuba Derevianko
6s+ 4.014 4.000 4.1
6p- 0.442 0.410 0.39
6p+ 0.137 0.135 0.1
5d- 0.134 0.134 0.1
5d+ -0.232 -0.236

Full code outputs: rpa-breit-updated.txt