We solve the almost-bosonic anyon model of https://arxiv.org/pdf/1901.10739.pdf
using DFTK
using StaticArrays
using Plots
# Unit cell. Having one of the lattice vectors as zero means a 2D system
a = 14
lattice = a .* [[1 0 0.]; [0 1 0]; [0 0 0]];
# Confining scalar potential
pot(x, y, z) = ((x - a/2)^2 + (y - a/2)^2);
# Parameters
Ecut = 50
n_electrons = 1
β = 5;
# Collect all the terms, build and run the model
terms = [Kinetic(; scaling_factor=2),
ExternalFromReal(X -> pot(X...)),
Anyonic(1, β)
]
model = Model(lattice; n_electrons, terms, spin_polarization=:spinless) # "spinless electrons"
basis = PlaneWaveBasis(model; Ecut, kgrid=(1, 1, 1))
scfres = direct_minimization(basis, tol=1e-14) # Reduce tol for production
E = scfres.energies.total
s = 2
E11 = π/2 * (2(s+1)/s)^((s+2)/s) * (s/(s+2))^(2(s+1)/s) * E^((s+2)/s) / β
println("e(1,1) / (2π)= ", E11 / (2π))
heatmap(scfres.ρ[:, :, 1, 1], c=:blues)
Iter Function value Gradient norm 0 8.465892e+01 1.716706e+01 * time: 0.0030698776245117188 1 6.564707e+01 1.018560e+01 * time: 0.009173870086669922 2 5.855772e+01 1.117976e+01 * time: 0.0223538875579834 3 4.332336e+01 1.005994e+01 * time: 0.04030489921569824 4 3.284038e+01 9.111023e+00 * time: 0.05827593803405762 5 2.865867e+01 8.092787e+00 * time: 0.07396793365478516 6 1.425741e+01 2.245998e+00 * time: 0.08939886093139648 7 1.319442e+01 4.157865e+00 * time: 0.15542101860046387 8 1.159360e+01 3.283415e+00 * time: 0.16910600662231445 9 1.061723e+01 3.256131e+00 * time: 0.18208599090576172 10 9.941905e+00 4.446929e+00 * time: 0.19498491287231445 11 8.725013e+00 2.252228e+00 * time: 0.2078559398651123 12 7.578585e+00 1.827392e+00 * time: 0.22092700004577637 13 7.007404e+00 2.221164e+00 * time: 0.23110604286193848 14 6.568958e+00 1.793942e+00 * time: 0.24155402183532715 15 6.366024e+00 1.768311e+00 * time: 0.2521989345550537 16 6.194181e+00 1.054662e+00 * time: 0.2627260684967041 17 6.146899e+00 1.848130e+00 * time: 0.270676851272583 18 5.984643e+00 1.201720e+00 * time: 0.31085991859436035 19 5.847840e+00 1.291968e+00 * time: 0.32152891159057617 20 5.774691e+00 1.191705e+00 * time: 0.32973599433898926 21 5.769751e+00 1.187114e+00 * time: 0.337831974029541 22 5.737326e+00 9.649648e-01 * time: 0.3481559753417969 23 5.732744e+00 1.169599e+00 * time: 0.3560829162597656 24 5.687310e+00 1.049935e+00 * time: 0.36429500579833984 25 5.668944e+00 7.582185e-01 * time: 0.37228989601135254 26 5.645227e+00 6.893850e-01 * time: 0.38269901275634766 27 5.628278e+00 5.089864e-01 * time: 0.3931128978729248 28 5.612760e+00 5.401876e-01 * time: 0.40117788314819336 29 5.600424e+00 4.030253e-01 * time: 0.4115869998931885 30 5.594951e+00 5.280318e-01 * time: 0.4194190502166748 31 5.594137e+00 4.196875e-01 * time: 0.45024800300598145 32 5.584352e+00 2.181642e-01 * time: 0.45862388610839844 33 5.580412e+00 3.504218e-01 * time: 0.46901798248291016 34 5.574590e+00 2.336442e-01 * time: 0.4771120548248291 35 5.571008e+00 2.342273e-01 * time: 0.48513102531433105 36 5.568578e+00 1.322742e-01 * time: 0.49295902252197266 37 5.568511e+00 2.314762e-01 * time: 0.5009419918060303 38 5.567572e+00 1.536611e-01 * time: 0.5113060474395752 39 5.567490e+00 2.450983e-01 * time: 0.5191559791564941 40 5.565619e+00 1.869437e-01 * time: 0.5271279811859131 41 5.564192e+00 1.357510e-01 * time: 0.5350699424743652 42 5.562722e+00 9.982441e-02 * time: 0.5430610179901123 43 5.562696e+00 1.114903e-01 * time: 0.5508790016174316 44 5.562371e+00 1.259793e-01 * time: 0.5586450099945068 45 5.561942e+00 7.301107e-02 * time: 0.5819690227508545 46 5.561517e+00 8.751699e-02 * time: 0.5902938842773438 47 5.561340e+00 9.421214e-02 * time: 0.5985429286956787 48 5.560961e+00 5.570225e-02 * time: 0.606442928314209 49 5.560941e+00 7.654729e-02 * time: 0.6144099235534668 50 5.560832e+00 5.123415e-02 * time: 0.6247670650482178 51 5.560830e+00 7.739870e-02 * time: 0.6326990127563477 52 5.560722e+00 5.386054e-02 * time: 0.6404340267181396 53 5.560654e+00 3.889105e-02 * time: 0.6485168933868408 54 5.560592e+00 4.027462e-02 * time: 0.6562769412994385 55 5.560574e+00 3.126074e-02 * time: 0.6641368865966797 56 5.560548e+00 2.557753e-02 * time: 0.6744730472564697 57 5.560522e+00 1.780308e-02 * time: 0.6848578453063965 58 5.560503e+00 2.154328e-02 * time: 0.692755937576294 59 5.560489e+00 1.565576e-02 * time: 0.7159719467163086 60 5.560476e+00 9.880145e-03 * time: 0.7241270542144775 61 5.560472e+00 1.277672e-02 * time: 0.7343220710754395 62 5.560471e+00 1.186710e-02 * time: 0.7420790195465088 63 5.560469e+00 6.997567e-03 * time: 0.7525720596313477 64 5.560468e+00 7.583083e-03 * time: 0.7605910301208496 65 5.560466e+00 6.826277e-03 * time: 0.7683570384979248 66 5.560465e+00 5.535828e-03 * time: 0.7787759304046631 67 5.560464e+00 4.052430e-03 * time: 0.7864749431610107 68 5.560464e+00 3.954774e-03 * time: 0.7967419624328613 69 5.560464e+00 2.129903e-03 * time: 0.8073618412017822 70 5.560463e+00 1.554788e-03 * time: 0.8152399063110352 71 5.560463e+00 2.222399e-03 * time: 0.8229219913482666 72 5.560463e+00 1.449457e-03 * time: 0.8435440063476562 73 5.560463e+00 1.239992e-03 * time: 0.8518309593200684 74 5.560463e+00 1.009786e-03 * time: 0.8597838878631592 75 5.560463e+00 1.467127e-03 * time: 0.8677308559417725 76 5.560463e+00 1.165432e-03 * time: 0.8757069110870361 77 5.560463e+00 7.346353e-04 * time: 0.8836190700531006 78 5.560463e+00 7.531918e-04 * time: 0.8915729522705078 79 5.560463e+00 1.128620e-03 * time: 0.8994300365447998 80 5.560463e+00 8.181891e-04 * time: 0.9071450233459473 81 5.560463e+00 5.714887e-04 * time: 0.9175879955291748 82 5.560463e+00 6.330130e-04 * time: 0.9255180358886719 83 5.560463e+00 5.163145e-04 * time: 0.9334168434143066 84 5.560463e+00 3.415747e-04 * time: 0.9413769245147705 85 5.560463e+00 3.076041e-04 * time: 0.9517979621887207 86 5.560463e+00 6.823492e-04 * time: 0.9722809791564941 87 5.560463e+00 4.112421e-04 * time: 0.980604887008667 88 5.560463e+00 3.820202e-04 * time: 0.9887959957122803 89 5.560463e+00 3.173862e-04 * time: 0.9967339038848877 90 5.560463e+00 2.687744e-04 * time: 1.0045499801635742 91 5.560463e+00 1.452375e-04 * time: 1.014922857284546 92 5.560463e+00 2.460757e-04 * time: 1.0253448486328125 93 5.560463e+00 1.932301e-04 * time: 1.035735845565796 94 5.560463e+00 1.084828e-04 * time: 1.046151876449585 95 5.560463e+00 9.775272e-05 * time: 1.059061050415039 ┌ Warning: Negative ρ detected │ min_ρ = -1.9499668537205443e-18 └ @ DFTK ~/work/DFTK.jl/DFTK.jl/src/densities.jl:5 96 5.560463e+00 9.775270e-05 * time: 1.240494966506958 97 5.560463e+00 9.775270e-05 * time: 1.2812418937683105 e(1,1) / (2π)= 1.7391793934279238