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
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π))
display(heatmap(scfres.ρ[:, :, 1, 1], c=:blues))
Iter Function value Gradient norm 0 8.410347e+01 1.624468e+01 * time: 0.003039836883544922 1 6.368490e+01 1.253134e+01 * time: 0.008939981460571289 2 5.741571e+01 1.676497e+01 * time: 0.022531986236572266 3 4.275783e+01 1.139997e+01 * time: 0.0408778190612793 4 3.487506e+01 1.017819e+01 * time: 0.05848383903503418 5 1.490009e+01 3.157736e+00 * time: 0.14609384536743164 6 1.138340e+01 3.520194e+00 * time: 0.15999794006347656 7 9.900684e+00 2.191030e+00 * time: 0.17305684089660645 8 9.126685e+00 3.320207e+00 * time: 0.18350481986999512 9 8.811054e+00 3.575682e+00 * time: 0.19388580322265625 10 8.504275e+00 3.066914e+00 * time: 0.20434999465942383 11 8.062185e+00 1.735209e+00 * time: 0.21474194526672363 12 7.559192e+00 1.312268e+00 * time: 0.22731399536132812 13 7.172199e+00 1.502411e+00 * time: 0.23790788650512695 14 6.895554e+00 1.094797e+00 * time: 0.24822092056274414 15 6.719928e+00 8.923590e-01 * time: 0.2929229736328125 16 6.607344e+00 1.118035e+00 * time: 0.3041698932647705 17 6.502045e+00 7.087406e-01 * time: 0.3154029846191406 18 6.349434e+00 7.500807e-01 * time: 0.32590389251708984 19 6.119833e+00 7.781240e-01 * time: 0.3365139961242676 20 5.941530e+00 9.128185e-01 * time: 0.3469219207763672 21 5.830842e+00 6.289483e-01 * time: 0.35698390007019043 22 5.767541e+00 5.504176e-01 * time: 0.36728882789611816 23 5.757317e+00 1.224940e+00 * time: 0.3751859664916992 24 5.724518e+00 7.870377e-01 * time: 0.3831508159637451 25 5.714197e+00 6.780425e-01 * time: 0.3911128044128418 26 5.697801e+00 7.782283e-01 * time: 0.42572784423828125 27 5.677513e+00 5.120291e-01 * time: 0.43662190437316895 28 5.661575e+00 4.481369e-01 * time: 0.4474318027496338 29 5.650541e+00 6.530572e-01 * time: 0.45535778999328613 30 5.624435e+00 5.653876e-01 * time: 0.46305394172668457 31 5.608646e+00 3.829223e-01 * time: 0.4734818935394287 32 5.600703e+00 4.283360e-01 * time: 0.4841279983520508 33 5.592613e+00 3.799936e-01 * time: 0.4950439929962158 34 5.590145e+00 3.047189e-01 * time: 0.5028908252716064 35 5.581184e+00 2.546569e-01 * time: 0.5114209651947021 36 5.575281e+00 2.352586e-01 * time: 0.5197818279266357 37 5.571052e+00 2.531070e-01 * time: 0.5276718139648438 38 5.568984e+00 2.161152e-01 * time: 0.5356478691101074 39 5.567733e+00 1.375050e-01 * time: 0.5613539218902588 40 5.566603e+00 1.622589e-01 * time: 0.569861888885498 41 5.565739e+00 1.315509e-01 * time: 0.5783689022064209 42 5.564717e+00 1.945912e-01 * time: 0.5863549709320068 43 5.564227e+00 1.554160e-01 * time: 0.5944509506225586 44 5.563492e+00 1.274773e-01 * time: 0.6049208641052246 45 5.562688e+00 9.623832e-02 * time: 0.6153128147125244 46 5.562032e+00 1.202397e-01 * time: 0.6230208873748779 47 5.561544e+00 7.628104e-02 * time: 0.6310157775878906 48 5.561288e+00 8.709403e-02 * time: 0.6388468742370605 49 5.561095e+00 5.988173e-02 * time: 0.6469218730926514 50 5.560959e+00 4.685654e-02 * time: 0.6572158336639404 51 5.560826e+00 2.624886e-02 * time: 0.6827578544616699 52 5.560742e+00 4.890421e-02 * time: 0.6913089752197266 53 5.560731e+00 5.017957e-02 * time: 0.6994597911834717 54 5.560645e+00 3.419509e-02 * time: 0.7072999477386475 55 5.560596e+00 4.020835e-02 * time: 0.7176787853240967 56 5.560555e+00 3.075647e-02 * time: 0.7279739379882812 57 5.560543e+00 4.017573e-02 * time: 0.7355008125305176 58 5.560533e+00 2.090276e-02 * time: 0.7430768013000488 59 5.560515e+00 1.533790e-02 * time: 0.7506668567657471 60 5.560502e+00 1.263486e-02 * time: 0.7585279941558838 61 5.560487e+00 1.065857e-02 * time: 0.7664659023284912 62 5.560478e+00 9.467035e-03 * time: 0.7745850086212158 63 5.560473e+00 9.109492e-03 * time: 0.7848029136657715 64 5.560471e+00 5.783410e-03 * time: 0.8103058338165283 65 5.560469e+00 7.729054e-03 * time: 0.8187828063964844 66 5.560468e+00 7.873965e-03 * time: 0.8270039558410645 67 5.560468e+00 8.328648e-03 * time: 0.8348469734191895 68 5.560467e+00 4.205446e-03 * time: 0.845383882522583 69 5.560466e+00 6.067369e-03 * time: 0.8558318614959717 70 5.560465e+00 4.957374e-03 * time: 0.863839864730835 71 5.560464e+00 3.706725e-03 * time: 0.8739898204803467 72 5.560464e+00 2.196989e-03 * time: 0.8816378116607666 73 5.560463e+00 1.953301e-03 * time: 0.891960859298706 74 5.560463e+00 2.417199e-03 * time: 0.899634838104248 75 5.560463e+00 1.450785e-03 * time: 0.90982985496521 76 5.560463e+00 1.426738e-03 * time: 0.9344789981842041 77 5.560463e+00 1.438616e-03 * time: 0.9455118179321289 78 5.560463e+00 9.532110e-04 * time: 0.9561269283294678 79 5.560463e+00 1.237838e-03 * time: 0.9640858173370361 80 5.560463e+00 7.899421e-04 * time: 0.9721689224243164 81 5.560463e+00 7.256114e-04 * time: 0.9830179214477539 82 5.560463e+00 5.471578e-04 * time: 0.9907839298248291 83 5.560463e+00 2.145598e-04 * time: 1.0010159015655518 84 5.560463e+00 4.118338e-04 * time: 1.008711814880371 85 5.560463e+00 2.278516e-04 * time: 1.016535997390747 86 5.560463e+00 1.909337e-04 * time: 1.026641845703125 87 5.560463e+00 2.276338e-04 * time: 1.036787986755371 e(1,1) / (2π)= 1.7391793874123116