The Pymatgen python library allows to setup
solid-state calculations using a flexible set of classes as well as an API
to an online data base of structures. Its Structure
and Lattice
objects are directly supported by the DFTK load_atoms
and load_lattice
functions, such that DFTK may be readily used to run calculation on systems
defined in pymatgen. Using the pymatgen_structure
function a conversion
from DFTK to pymatgen structures is also possible. In the following we
use this to create a silicon supercell and find its LDA ground state
using direct minimisation. To run this example Julia's PyCall
package
needs to be able to find an installation of pymatgen
.
First we setup the silicon lattice in DFTK.
using DFTK
a = 10.263141334305942 # Lattice constant in Bohr
lattice = a / 2 .* [[0 1 1.]; [1 0 1.]; [1 1 0.]]
Si = ElementPsp(:Si, psp=load_psp("hgh/lda/Si-q4"))
atoms = [Si, Si]
positions = [ones(3)/8, -ones(3)/8];
Next we make a [2, 2, 2]
supercell using pymatgen
pystruct = pymatgen_structure(lattice, atoms, positions)
pystruct.make_supercell([2, 2, 2])
lattice = load_lattice(pystruct)
positions = load_positions(pystruct)
atoms = fill(Si, length(positions));
Setup an LDA model and discretize using
a single k-point and a small Ecut
of 5 Hartree.
model = model_LDA(lattice, atoms, positions)
basis = PlaneWaveBasis(model; Ecut=5, kgrid=(1, 1, 1))
PlaneWaveBasis discretization: Ecut : 5.0 Ha fft_size : (32, 32, 32), 32768 total points kgrid type : Monkhorst-Pack kgrid : [1, 1, 1] num. irred. kpoints : 1 Discretized Model(lda_x+lda_c_pw, 3D): lattice (in Bohr) : [0 , 10.2631 , 10.2631 ] [10.2631 , 0 , 10.2631 ] [10.2631 , 10.2631 , 0 ] unit cell volume : 2162.1 Bohr³ atoms : Si₁₆ atom potentials : ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") ElementPsp(Si, psp="hgh/lda/si-q4") num. electrons : 64 spin polarization : none temperature : 0 Ha terms : Kinetic() AtomicLocal() AtomicNonlocal() Ewald() PspCorrection() Hartree() Xc([:lda_x, :lda_c_pw])
Find the ground state using direct minimisation and newton (always using SCF is boring ...)
scfres = direct_minimization(basis; tol=1e-3);
ψ, _ = DFTK.select_occupied_orbitals(basis, scfres.ψ, scfres.occupation)
scfres_newton = newton(basis, ψ; tol=1e-12)
Iter Function value Gradient norm 0 1.115480e+02 1.648384e+00 * time: 0.4560549259185791 1 1.033974e+01 9.337055e-01 * time: 1.6404478549957275 2 -1.218225e+01 1.109738e+00 * time: 1.7235298156738281 3 -3.424780e+01 7.768676e-01 * time: 1.8548870086669922 4 -4.777336e+01 6.060431e-01 * time: 1.9529500007629395 5 -5.695782e+01 2.043999e-01 * time: 2.05118989944458 6 -5.976664e+01 1.348343e-01 * time: 2.1376819610595703 7 -6.086619e+01 4.852430e-02 * time: 2.2069008350372314 8 -6.130445e+01 5.582419e-02 * time: 2.277488946914673 9 -6.157710e+01 3.654689e-02 * time: 2.3565659523010254 10 -6.180289e+01 2.769922e-02 * time: 2.428191900253296 11 -6.198779e+01 2.550709e-02 * time: 2.5007998943328857 12 -6.207154e+01 2.096336e-02 * time: 2.5791308879852295 13 -6.214596e+01 1.674041e-02 * time: 2.6509158611297607 14 -6.217854e+01 1.279099e-02 * time: 2.721281051635742 15 -6.220182e+01 1.129454e-02 * time: 2.791949987411499 16 -6.221280e+01 1.004003e-02 * time: 2.8718509674072266 17 -6.222064e+01 6.207561e-03 * time: 2.9439468383789062 18 -6.222662e+01 5.489387e-03 * time: 3.0288548469543457 19 -6.223078e+01 6.555963e-03 * time: 3.115600824356079 20 -6.223537e+01 6.900936e-03 * time: 3.1903958320617676 21 -6.224016e+01 6.747108e-03 * time: 3.2663509845733643 22 -6.224583e+01 6.128698e-03 * time: 3.344388961791992 23 -6.225231e+01 5.027032e-03 * time: 3.415555000305176 24 -6.225888e+01 4.501415e-03 * time: 3.4870638847351074 25 -6.226432e+01 4.366202e-03 * time: 3.5598349571228027 26 -6.226852e+01 3.827326e-03 * time: 3.637650966644287 27 -6.227148e+01 3.641912e-03 * time: 3.7082598209381104 28 -6.227355e+01 3.021250e-03 * time: 3.7792649269104004 29 -6.227506e+01 2.347580e-03 * time: 3.8578100204467773 30 -6.227612e+01 1.545456e-03 * time: 3.9273200035095215 31 -6.227679e+01 1.295080e-03 * time: 3.9968819618225098 32 -6.227718e+01 1.070995e-03 * time: 4.074959993362427 33 -6.227745e+01 7.477087e-04 * time: 4.145500898361206 34 -6.227759e+01 5.997353e-04 * time: 4.214606046676636 35 -6.227766e+01 4.244949e-04 * time: 4.2857818603515625 36 -6.227769e+01 2.936709e-04 * time: 4.362637042999268 n Energy log10(ΔE) log10(Δρ) --- --------------- --------- --------- 1 -62.27771586106 -3.13 2 -62.27771586137 -9.52 -5.33 3 -62.27771586137 + -Inf -15.20
(ham = Hamiltonian(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), HamiltonianBlock[DFTK.DftHamiltonianBlock(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), Any[DFTK.FourierMultiplication{Float64, Vector{Float64}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [0.0, 0.14054984958423578, 0.5621993983369431, 1.264948646258122, 2.2487975933477724, 3.513746239605895, 3.513746239605895, 2.2487975933477724, 1.264948646258122, 0.5621993983369431 … 1.1243987966738864, 2.014547844040713, 3.185796590576011, 4.638145036279781, 4.12279558780425, 2.7641470418233043, 1.6865981950108295, 0.8901490473668268, 0.37479959889129544, 0.14054984958423578]), DFTK.RealSpaceMultiplication{Float64, Array{Float64, 3}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [-0.3000838204844498 -0.38651676076138597 … -0.6442304016759319 -0.38651676076138597; -0.3865167607613855 -0.7681321217768902 … -0.25003406483655016 -0.24218268965121845; … ; -0.6442304016759325 -0.25003406483655144 … -3.021154286108645 -1.4664153489045082; -0.38651676076138664 -0.24218268965121906 … -1.4664153489045082 -0.7681321217768909;;; -0.38651676076138636 -0.768132121776891 … -0.2500340648365508 -0.24218268965121917; -0.768132121776891 -1.8161936706060129 … -0.13699557143111532 -0.3129884204939666; … ; -0.2500340648365512 -0.13699557143111618 … -0.9870510298301413 -0.5277759153846143; -0.2421826896512194 -0.31298842049396663 … -0.527775915384614 -0.31298842049396625;;; -0.6442304016759328 -1.4664153489045084 … -0.08831357031439235 -0.25003406483655155; -1.4664153489045086 -4.114878101698636 … -0.14040892324046153 -0.5277759153846154; … ; -0.08831357031439296 -0.14040892324046184 … -0.2698375024260708 -0.14040892324046036; -0.25003406483655166 -0.5277759153846152 … -0.14040892324046036 -0.13699557143111532;;; … ;;; -0.9859863776629753 -0.35824744851610085 … -4.090627806711935 -2.29024663594558; -0.35824744851610074 -0.08635610801077623 … -1.4293432742461858 -0.8160371791715014; … ; -4.090627806711936 -1.4293432742461873 … -8.358403967979378 -8.33163370910521; -2.290246635945581 -0.8160371791715015 … -8.33163370910521 -5.770468454471793;;; -0.6442304016759323 -0.250034064836551 … -3.0211542861086462 -1.4664153489045084; -0.25003406483655094 -0.13699557143111532 … -0.9870510298301413 -0.5277759153846147; … ; -3.0211542861086467 -0.9870510298301428 … -12.395558685839042 -8.358412346516134; -1.4664153489045086 -0.5277759153846152 … -8.358412346516134 -4.114878101698635;;; -0.3865167607613861 -0.24218268965121875 … -1.4664153489045078 -0.7681321217768909; -0.24218268965121853 -0.31298842049396564 … -0.5277759153846142 -0.31298842049396597; … ; -1.4664153489045084 -0.5277759153846157 … -8.358412346516134 -4.114878101698635; -0.7681321217768915 -0.3129884204939667 … -4.114878101698635 -1.8161936706060136]), DFTK.NonlocalOperator{Float64, Matrix{ComplexF64}, Matrix{Float64}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), ComplexF64[0.039452912441695784 + 0.0im 0.061120189138426866 + 0.0im … 0.0 + 0.0im 0.0 + 0.0im; 0.035545620743758055 - 0.014723478195035007im 0.05414494805835375 - 0.0224275718197569im … 0.0037550740153000813 - 0.00906555061545225im -0.0037550740153000813 + 0.00906555061545225im; … ; 0.0 + 0.036896930431453305im 0.0 + 0.054608091620134955im … -0.018575895426229238 + 0.0im 0.0 + 0.0im; 0.014723478195035009 + 0.035545620743758055im 0.022427571819756905 + 0.05414494805835375im … 0.00906555061545225 + 0.0037550740153000813im 0.00906555061545225 + 0.0037550740153000813im], [5.90692831 -1.26189397 … 0.0 0.0; -1.26189397 3.25819622 … 0.0 0.0; … ; 0.0 0.0 … 2.72701346 0.0; 0.0 0.0 … 0.0 2.72701346]), DFTK.NoopOperator{Float64}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139)), DFTK.NoopOperator{Float64}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139)), DFTK.RealSpaceMultiplication{Float64, Array{Float64, 3}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [0.41475374316578917 0.3966771734017981 … 0.35153735662300506 0.3966771733939192; 0.3966771733964438 0.3789391676673251 … 0.32946849922944 0.3773084908078361; … ; 0.35153735663586316 0.32946849924619415 … 0.30553228031478336 0.3369272441476873; 0.39667717340010944 0.3773084908187973 … 0.3369272441407624 0.37893916766408353;;; 0.39667717340066644 0.3789391676711906 … 0.3294684992339875 0.377308490812278; 0.3789391676663494 0.3562927712424169 … 0.30816723397675705 0.3613386510229168; … ; 0.3294684992456167 0.3081672339918196 … 0.2925295693567477 0.32135530620680314; 0.37730849081782314 0.361338651032818 … 0.32135530620031616 0.3613386510262432;;; 0.3515373566358716 0.3369272441521431 … 0.27624730570021977 0.32946849924079724; 0.33692724414819986 0.31709362589888407 … 0.265341875314015 0.3213553062034892; … ; 0.27624730571014405 0.26534187532687703 … 0.2378257613369823 0.265341875321813; 0.32946849924551946 0.32135530621184955 … 0.2653418753162117 0.30816723398606083;;; … ;;; 0.30430508253216687 0.2747728361101996 … 0.2897747264581082 0.30205476270347037; 0.2747728361049049 0.24249812764115294 … 0.26708985526543283 0.2793703352655011; … ; 0.2897747264688288 0.2670898552810296 … 0.2926353972849334 0.29263539728422344; 0.30205476270924775 0.27937033527634025 … 0.29263539727923 0.2981166266480565;;; 0.35153735662504704 0.32946849923734295 … 0.30553228030291785 0.33692724413564806; 0.32946849923178534 0.30816723398021867 … 0.29252956934065094 0.3213553061911853; … ; 0.3055322803152051 0.29252956935785823 … 0.28354300367539165 0.2926353972841445; 0.3369272441420372 0.32135530620276165 … 0.2926353972782565 0.3170936258892936;;; 0.39667717339503156 0.37730849081456375 … 0.3369272441348335 0.37893916765832913; 0.3773084908089961 0.36133865102507845 … 0.3213553061901086 0.36133865101648255; … ; 0.3369272441479718 0.3213553062077104 … 0.29263539728405974 0.31709362589556667; 0.3789391676648565 0.3613386510280484 … 0.31709362588889023 0.35629277123535347]), DFTK.RealSpaceMultiplication{Float64, SubArray{Float64, 3, Array{Float64, 4}, Tuple{Base.Slice{Base.OneTo{Int64}}, Base.Slice{Base.OneTo{Int64}}, Base.Slice{Base.OneTo{Int64}}, Int64}, true}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [-0.511314964190753 -0.5025077544803142 … -0.4766324832536688 -0.5025077544787038; -0.5025077544790557 -0.4858848714581615 … -0.4764704240119329 -0.4966568013360019; … ; -0.47663248325783963 -0.4764704240162323 … -0.3891035353055406 -0.4452769190843955; -0.5025077544802865 -0.4966568013384489 … -0.4452769190813835 -0.4858848714581214;;; -0.5025077544800292 -0.48588487145927056 … -0.47647042401308376 -0.49665680133696305; -0.48588487145788867 -0.4476808861442909 … -0.4691108988229337 -0.48896245601479604; … ; -0.47647042401623574 -0.46911089882646095 … -0.4361387873510033 -0.4661303640503871; -0.4966568013382526 -0.48896245601713406 … -0.4661303640481548 -0.4889624560158544;;; -0.47663248325703345 -0.44527691908442846 … -0.45620369190993676 -0.4764704240147219; -0.4452769190831376 -0.3805736265913706 … -0.4513650797543724 -0.46613036404876307; … ; -0.4562036919123961 -0.4513650797574187 … -0.43634911905209167 -0.4513650797563993; -0.4764704240158604 -0.466130364050983 … -0.45136507975475526 -0.4691108988250791;;; … ;;; -0.44219177355482553 -0.44991004399161544 … -0.3545229619920001 -0.4023490353906442; -0.4499100439900833 -0.4416961440235978 … -0.40410681005105925 -0.4355541400314257; … ; -0.3545229619984305 -0.404106810057755 … -0.2948006187941815 -0.29480061879265745; -0.4023490353934253 -0.4355541400352902 … -0.2948006187884805 -0.33757346153263473;;; -0.4766324832541298 -0.4764704240138756 … -0.3891035352980011 -0.44527691907881223; -0.47647042401251816 -0.4691108988237946 … -0.436138787343793 -0.46613036404497993; … ; -0.3891035353046465 -0.43613878735031303 … -0.21186524618966937 -0.2948006187924047; -0.4452769190814053 -0.4661303640484689 … -0.2948006187870315 -0.38057362658749316;;; -0.5025077544789409 -0.49665680133749135 … -0.44527691907863426 -0.4858848714561255; -0.4966568013362701 -0.48896245601532384 … -0.46613036404470476 -0.48896245601328636; … ; -0.4452769190840746 -0.4661303640501312 … -0.29480061879317737 -0.3805736265916495; -0.4858848714581856 -0.4889624560161455 … -0.380573626587617 -0.447680886143036])], DFTK.FourierMultiplication{Float64, Vector{Float64}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [0.0, 0.14054984958423578, 0.5621993983369431, 1.264948646258122, 2.2487975933477724, 3.513746239605895, 3.513746239605895, 2.2487975933477724, 1.264948646258122, 0.5621993983369431 … 1.1243987966738864, 2.014547844040713, 3.185796590576011, 4.638145036279781, 4.12279558780425, 2.7641470418233043, 1.6865981950108295, 0.8901490473668268, 0.37479959889129544, 0.14054984958423578]), DFTK.RealSpaceMultiplication{Float64, Array{Float64, 3}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), [-0.3966450415094136 -0.49234734183990203 … -0.7693255283065956 -0.4923473418461705; -0.4923473418439974 -0.8750778255677265 … -0.3970359896190431 -0.3615310001793842; … ; -0.769325528297909 -0.3970359896065896 … -3.1047255410994024 -1.5747650238412163; -0.4923473418415637 -0.3615310001708707 … -1.5747650238451292 -0.8750778255709288;;; -0.4923473418407491 -0.8750778255649709 … -0.397035989615647 -0.3615310001759042; -0.8750778255684304 -1.907581785507887 … -0.297939236277292 -0.44061222548584583; … ; -0.39703598960717024 -0.2979392362657575 … -1.1306602478243968 -0.6725509732281982; -0.36153100017164885 -0.4406122254782827 … -0.6725509732324526 -0.4406122254835775;;; -0.7693255282970947 -1.5747650238367936 … -0.26826995652410934 -0.3970359896104762; -1.5747650238394464 -4.1783581023911225 … -0.326432127680819 -0.6725509732298893; … ; -0.26826995651664504 -0.3264321276710035 … -0.46836086014118017 -0.3264321276750466; -0.3970359896068926 -0.6725509732237487 … -0.326432127679004 -0.29793923627013363;;; … ;;; -1.123873068685634 -0.5333846563975166 … -4.155376042245827 -2.3905409086327536; -0.5333846564012792 -0.2855541243932211 … -1.5663602290318122 -0.972220983937426; … ; -4.155376042241538 -1.5663602290229128 … -8.360569189488626 -8.333798930613643; -2.390540908629758 -0.9722209839304514 … -8.33379893061446 -5.8099252893563715;;; -0.7693255283050151 -0.3970359896130837 … -3.1047255411037296 -1.5747650238476725; -0.39703598961728376 -0.2979392362746912 … -1.1306602478332832 -0.6725509732384093; … ; -3.104725541098088 -1.1306602478225976 … -12.323880928353319 -8.360577568024395; -1.5747650238438768 -0.6725509732303225 … -8.360577568024908 -4.178358102396835;;; -0.49234734184529544 -0.36153100017414636 … -1.5747650238483086 -0.8750778255746874; -0.36153100017849255 -0.44061222548421103 … -0.6725509732392103 -0.4406122254907698; … ; -1.5747650238406112 -0.6725509732270365 … -8.360577568025251 -4.178358102394718; -0.8750778255702205 -0.4406122254820638 … -4.178358102397362 -1.9075817855136963]), DFTK.NonlocalOperator{Float64, Matrix{ComplexF64}, Matrix{Float64}}(PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), KPoint([ 0, 0, 0], spin = 1, num. G vectors = 1139), ComplexF64[0.039452912441695784 + 0.0im 0.061120189138426866 + 0.0im … 0.0 + 0.0im 0.0 + 0.0im; 0.035545620743758055 - 0.014723478195035007im 0.05414494805835375 - 0.0224275718197569im … 0.0037550740153000813 - 0.00906555061545225im -0.0037550740153000813 + 0.00906555061545225im; … ; 0.0 + 0.036896930431453305im 0.0 + 0.054608091620134955im … -0.018575895426229238 + 0.0im 0.0 + 0.0im; 0.014723478195035009 + 0.035545620743758055im 0.022427571819756905 + 0.05414494805835375im … 0.00906555061545225 + 0.0037550740153000813im 0.00906555061545225 + 0.0037550740153000813im], [5.90692831 -1.26189397 … 0.0 0.0; -1.26189397 3.25819622 … 0.0 0.0; … ; 0.0 0.0 … 2.72701346 0.0; 0.0 0.0 … 0.0 2.72701346]), nothing, (ψ_reals = Array{ComplexF64, 3}[[-3.7322239794176926e-7 + 1.4254101642378544e-7im 5.959192850763783e-7 - 9.85027575837392e-7im … -0.04171831227512483 + 0.032392939590555794im 1.639916144400979e-8 - 2.1894623645968425e-6im; -4.9412883128197995e-6 - 4.748154643589263e-6im -1.1662469800627333e-5 - 1.1229389627053074e-5im … 2.4374441994384205e-6 - 1.200738969051151e-5im -5.892401247560582e-6 - 9.620714954848869e-7im; … ; -0.05535402434463979 + 0.07688393321621217im 9.490053713638908e-6 - 1.4164091493173294e-5im … -0.1133809115200286 + 0.12763621646694207im 2.049602569487534e-5 - 3.165063423102134e-5im; 1.6218579510403566e-6 - 1.5555111466596328e-6im 1.9118842156108395e-5 + 1.0592250660555983e-5im … 1.3662498683211193e-5 - 2.0902831276765993e-5im 2.379554575631554e-5 + 2.006352485572961e-5im;;; -1.1998927418468423e-6 - 4.749098168405336e-7im -2.509638503641617e-5 + 1.1706058363464353e-5im … 1.4667986692706688e-6 - 1.7412054119942352e-6im -3.6881340630367643e-5 + 5.937144638502556e-6im; 1.3766849969009696e-5 + 1.1234418928916488e-5im 9.285010453661106e-6 + 8.609443592608804e-6im … 9.791389674897073e-6 + 3.24647166779719e-6im -4.193303404110333e-6 + 1.3574301669961896e-5im; … ; -6.153589093164979e-6 + 3.363020983719171e-6im -2.068126170099703e-5 + 7.673069471535606e-6im … -5.3240400507530474e-6 + 3.2950987928312475e-6im -5.078596576242877e-5 + 1.8599893185936063e-5im; -1.2700057219318002e-5 + 1.6855477075434578e-6im -2.331769612046504e-5 + 8.32719763986857e-6im … 7.17707733952241e-6 - 1.1002720453003849e-5im -3.8384630617847706e-5 + 1.3122085395902656e-5im;;; -0.09012616203860861 - 0.04277771743974377im 4.172809438569482e-5 + 1.298834814942746e-5im … -0.03812188879395565 - 0.0030026762172762535im 1.8399532605943853e-5 + 4.5800610829101586e-6im; 4.16433349424914e-5 + 5.8693297178764055e-6im -3.909343668794999e-5 - 1.9992134141523838e-5im … 1.529173377003711e-5 + 2.965895307922783e-6im -2.427228548633522e-5 - 9.540410301817394e-6im; … ; -0.04206455578789367 + 0.009861571071175211im 1.5099980675586304e-5 + 6.57558354329258e-6im … -0.030583577863221245 + 0.06071161485953796im 5.5865769476831206e-6 - 1.3426654606139503e-5im; 2.077604460225358e-5 + 2.759488043028253e-6im -8.802589310221435e-6 - 2.393949936137738e-6im … 2.259308762466007e-6 - 9.294968163483851e-6im 8.997931321550684e-6 + 8.514483536523474e-6im;;; … ;;; 1.5772256220097624e-6 - 9.682186796705634e-7im -1.7775374154622037e-6 - 3.857823001254949e-6im … 3.2526043135478472e-6 - 2.1604195605239482e-6im -9.009651202795143e-6 - 4.540864567107502e-6im; 1.6570263779083434e-5 - 4.48936964983344e-6im 4.212622947908224e-5 - 1.8594465597318233e-5im … 1.2115630419392167e-5 - 9.141108090174682e-6im 1.8623026520142345e-5 - 8.819991641954266e-6im; … ; -8.145568375339521e-6 + 5.474204657328287e-6im -2.52681477356729e-5 + 1.0904503955867606e-5im … -4.5208485605078275e-6 + 3.1271179862900363e-6im -3.317559233021357e-5 + 1.6556854155702045e-5im; -3.0695346924270495e-6 - 6.94333459569025e-6im 1.1162253923233227e-5 - 1.0866986765523537e-5im … 1.7179073364874192e-6 - 1.1182210450372324e-5im -1.89938681498709e-5 + 1.7355067765514716e-6im;;; -0.09012616206026054 - 0.042777717437432826im 1.861311744356675e-5 + 5.0239625854371814e-6im … -0.15399508993899114 - 0.01212969810971993im 4.103423311885473e-5 + 1.1546278572671142e-5im; 1.835703993583927e-5 + 1.5827543304128968e-6im -4.328099844349673e-6 - 3.2461777198906133e-6im … 3.8514944398998786e-5 - 8.181296292203163e-6im -1.1163841474360723e-5 + 2.028255663383149e-6im; … ; -0.16992172773329914 + 0.0398361938907508im 4.1121606748924115e-5 - 1.1960360541209312e-5im … -0.18719768470248477 + 0.06649884450182349im 6.155318052992303e-5 - 1.7703598103901902e-5im; 4.950130893319275e-5 + 9.691835931877154e-6im 4.305853923557045e-6 + 9.174713938963406e-6im … 6.0991245381946525e-5 - 9.78677819166079e-6im -4.401272310127085e-7 + 1.4120744457006753e-5im;;; 1.6170849667812262e-6 - 1.5336038141586079e-6im -1.504691277727026e-5 + 8.715000197188728e-8im … 5.965763997068392e-6 - 4.071137154252713e-6im -2.2539186557551365e-5 - 6.179784262578514e-6im; 2.879767228866567e-5 - 1.1560846045753576e-6im 5.6429634648612415e-5 - 1.883501297945479e-5im … 3.284382317588654e-5 - 1.2760297093247018e-5im 4.136269963670077e-5 - 1.4040115543708349e-5im; … ; -1.1189579515609793e-5 + 7.419712380044618e-6im -3.728116194306597e-5 + 1.4981613955390953e-5im … -7.130929383681849e-6 + 5.045123623449946e-6im -5.6327308261303376e-5 + 2.109199893071441e-5im; 1.0000438272018806e-6 - 1.074867789263207e-5im 2.2238312074805277e-5 - 1.9287223283474555e-5im … 2.479631470285197e-5 - 2.476728243393237e-5im 5.786591244399084e-6 - 1.3381029831207641e-5im]],))]), basis = PlaneWaveBasis(model = Model(lda_x+lda_c_pw, spin_polarization = :none), Ecut = 5.0 Ha, kgrid = [1, 1, 1]), energies = Energies(total = -62.27771586136886), converged = true, ρ = [0.09610720131480378 0.09085401337802235 … 0.07655587366677419 0.09085401337708011; 0.09085401337728602 0.08147776990828039 … 0.07647151840565913 0.08747433053127347; … ; 0.07655587366894602 0.07647151840789622 … 0.03956580495564417 0.06138424717774831; 0.09085401337800618 0.08747433053266881 … 0.061384247176399065 0.08147776990825863;;; 0.0908540133778556 0.0814777699088829 … 0.07647151840625796 0.08747433053182156; 0.08147776990813217 0.06246757364655649 … 0.07270707893100664 0.08316148815095836; … ; 0.07647151840789802 0.07270707893277996 … 0.05738308452678425 0.0712191419710777; 0.08747433053255688 0.08316148815224643 … 0.07121914196997113 0.08316148815154145;;; 0.07655587366852624 0.06138424717776309 … 0.06641329348209565 0.07647151840711032; 0.061384247177184846 0.036803198325619096 … 0.0641530052849659 0.07121914197027264; … ; 0.06641329348325808 0.06415300528637215 … 0.05747311921189519 0.06415300528590157; 0.07647151840770272 0.0712191419713731 … 0.06415300528514264 0.07270707893208522;;; … ;;; 0.06001281548088947 0.0634837046222909 … 0.02918601139770483 0.04413141881454795; 0.06348370462158864 0.05979446095408265 … 0.04476312021223264 0.05713332556370848; … ; 0.029186011399438126 0.0447631202146506 … 0.01592508414557653 0.01592508414530539; 0.04413141881554256 0.05713332556535691 … 0.01592508414456229 0.02485744320580975;;; 0.07655587366701429 0.07647151840667002 … 0.03956580495314166 0.061384247175247264; 0.07647151840596367 0.07270707893143946 … 0.057383084523699446 0.07121914196839738; … ; 0.03956580495534739 0.05738308452648894 … 0.005337878764982648 0.015925084145260428; 0.06138424717640884 0.07121914197012684 … 0.015925084144304495 0.03680319832439423;;; 0.09085401337721888 0.0874743305321228 … 0.06138424717516753 0.08147776990717426; 0.08747433053142645 0.08316148815124913 … 0.0712191419682609 0.08316148815012667; … ; 0.061384247177604566 0.07121914197095086 … 0.015925084145397884 0.03680319832570719; 0.08147776990829349 0.08316148815170181 … 0.03680319832443336 0.06246757364598759;;;;], eigenvalues = Any[[-0.16217594588452094, -0.07512573394947453, -0.07512573394763113, -0.07512573394555164, -0.07512573394361538, -0.010168114059573744, -0.010168114058287575, -0.01016811405743323, -0.010168114056856487, -0.010168114056453379 … 0.22436299900876172, 0.22436299900919204, 0.22436299900970857, 0.2243629990109363, 0.2243629990113937, 0.22436299901179108, 0.22436299901385603, 0.2705989718844712, 0.27059897188478355, 0.27059897188513804]], occupation = [[2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0 … 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]], εF = nothing, n_iter = 3, ψ = Matrix{ComplexF64}[[-0.8940130448316601 + 0.3414406718699923im -3.764719452522582e-12 + 9.771087476455331e-15im … 7.638354156935451e-13 + 1.0497968281863325e-12im 7.94054423079495e-13 + 2.252433805902187e-12im; 2.5309413442933587e-11 - 1.0495459244806802e-11im -0.07299443334563824 + 0.00021564508336393423im … 1.2506069923677761e-11 - 1.3539789576251949e-12im -7.515838575584716e-13 - 3.5025947952156385e-12im; … ; 2.3066096965394453e-12 + 3.4234293360425454e-12im -2.6134432519731813e-12 - 1.0528003490696547e-11im … -1.526039201688728e-11 + 3.236984355418134e-11im -5.29098723926584e-11 - 2.7936935130843743e-11im; 5.743261691111134e-12 + 3.160091351548275e-12im 0.0013262480304363192 + 0.4346341769336254im … 1.38038296004806e-11 + 5.937696179192529e-12im 2.060017881054813e-12 + 7.0076840734735935e-12im]], stage = :finalize, algorithm = "Newton")
scfres_newton.energies
Energy breakdown (in Ha): Kinetic 25.7697876 AtomicLocal -18.8616201 AtomicNonlocal 14.8540134 Ewald -67.1831486 PspCorrection -2.3569765 Hartree 4.8508714 Xc -19.3506430 total -62.277715861369