Hello,
I’m new to Wannier–TB2J workflows and I’m currently facing an issue with my calculations.
My system is LaBaMnO₃, containing 4 La, 2 Ba, 6 Mn, and 18 O atoms. I’m using Quantum ESPRESSO, and I performed wannier.x with:
num_wann = 84, derived from:
Mn–d: 6×5=30
O–p: 18×3=54
Initial projections: Mn–d and O–p
I followed a setup similar to the TB2J tutorial:
https://tb2j.readthedocs.io/en/latest/src/wannier.htmlFor the spin-up channel, the Wannierization seems well-behaved. The spreads reported in the .wout file are reasonably small
Final State
WF centre and spread 1 ( -0.000247, 3.226525, 11.253949 ) 0.69429055
WF centre and spread 2 ( -0.001291, 3.226577, 11.260101 ) 0.57827088
WF centre and spread 3 ( 0.001130, 3.226899, 11.260021 ) 0.59500688
.
WF centre and spread 83 ( 4.333130, 1.136687, 1.036874 ) 1.10594447
WF centre and spread 84 ( 4.375231, 1.183547, 1.049835 ) 1.44185816
Sum of centres and spreads ( 95.019783,164.566436,533.581487 ) 85.75676674
Spreads (Ang^2) Omega I = 81.626964895
================ Omega D = 0.002634163
Omega OD = 4.127167944
Final Spread (Ang^2) Omega Total = 85.756767003
However, I encounter difficulties with the spin-down channel.
I have performed multiple trial-and-error adjustments, particularly varying:
dis_win_min/max
dis_froz_min/max
From my tests, it seems that dis_win_max plays a critical role (I may be misunderstanding this).
Using dis_win_max as low as possible (dis_win_max = 17.1943) leads to relatively large spreads (much worse than spin-up) and TB2J exchange parameters are a bit overestimated
.wout
Final State
WF centre and spread 1 ( -0.000335, 3.227717, 11.260447 ) 1.46529551
WF centre and spread 2 ( 0.042076, 3.345488, 11.716219 ) 16.08711979
WF centre and spread 3 ( 0.153398, 3.314790, 11.165702 ) 10.74825425
.
WF centre and spread 83 ( 4.335621, 1.162613, 1.065786 ) 1.43474333
WF centre and spread 84 ( 4.374192, 1.181239, 1.046380 ) 1.32424756
Sum of centres and spreads ( 94.473945,165.999905,531.561989 ) 250.12129651
Spreads (Ang^2) Omega I = 173.906245146
================ Omega D = 8.184441997
Omega OD = 68.030609629
Final Spread (Ang^2) Omega Total = 250.121296772
tb2j
Exchange:
i j R J_iso(meV) vector distance(A)
----------------------------------------------------------------------------------------
Mn2 Mn5 ( 0, -1, 0) 7.6236 (-0.000, -3.227, 2.251) 3.934
J_iso: 7.6236
----------------------------------------------------------------------------------------
Mn1 Mn6 ( 0, 1, 0) 9.4849 ( 0.000, 3.227, -2.251) 3.934
J_iso: 9.4849
----------------------------------------------------------------------------------------
Mn5 Mn2 ( 0, 1, 0) 7.6236 ( 0.000, 3.227, -2.251) 3.934
J_iso: 7.6236
----------------------------------------------------------------------------------------
Mn6 Mn1 ( 0, -1, 0) 9.4849 (-0.000, -3.227, 2.251) 3.934
J_iso: 9.4849
----------------------------------------------------------------------------------------
Mn5 Mn2 ( -1, 0, 0) 6.8700 (-2.795, -1.613, -2.251) 3.934
J_iso: 6.8700
.
.
I'm using python to calculate the mean J and Sum J for Nearest Neighbour
Mean J: 8.5495
Sum J : 307.7824
Then I gradually increasing dis_win_max (dis_win_max = 17.2636) and it improves TB2J results (more reasonable exchange parameters). However, Wannier spreads remain significantly larger than spin-up, though this time is better than the first one
.wout
Final State
WF centre and spread 1 ( 0.001459, 3.227197, 11.250960 ) 1.38442166
WF centre and spread 2 ( -0.770473, 3.030198, 10.985088 ) 12.38055445
WF centre and spread 3 ( 0.615704, 3.204737, 11.019994 ) 12.75318612
.
WF centre and spread 83 ( 4.305172, 1.149287, 1.057095 ) 1.41044494
WF centre and spread 84 ( 4.379539, 1.193527, 1.045992 ) 1.29661989
Sum of centres and spreads ( 94.990732,164.415678,533.389254 ) 200.13562892
Spreads (Ang^2) Omega I = 168.112795815
================ Omega D = 2.952998643
Omega OD = 29.069834720
tb2j
Exchange:
i j R J_iso(meV) vector distance(A)
----------------------------------------------------------------------------------------
Mn2 Mn5 ( 0, -1, 0) 11.6162 (-0.000, -3.227, 2.251) 3.934
J_iso: 11.6162
----------------------------------------------------------------------------------------
Mn1 Mn6 ( 0, 1, 0) 11.5253 ( 0.000, 3.227, -2.251) 3.934
J_iso: 11.5253
----------------------------------------------------------------------------------------
Mn5 Mn2 ( 0, 1, 0) 11.6162 ( 0.000, 3.227, -2.251) 3.934
J_iso: 11.6162
----------------------------------------------------------------------------------------
.
.
Mean J: 7.0005
Sum J : 252.0194
I even tried without disentanglement window (dis_win/froz_win not set) and it produces spreads comparable to the spin-up case ie quite good. But TB2J exchange parameters become strongly overestimated
.wout
WF centre and spread 80 ( -1.331384, 2.307697, 10.129439 ) 0.55913450
WF centre and spread 81 ( -1.330266, 2.302123, 10.133249 ) 0.57056179
WF centre and spread 82 ( 4.328880, 1.106559, 1.041711 ) 0.56156776
WF centre and spread 83 ( 4.324885, 1.107147, 1.042591 ) 0.55062756
WF centre and spread 84 ( 4.325797, 1.112102, 1.041094 ) 0.54865900
Sum of centres and spreads ( 95.015702,164.564629,533.582186 ) 45.05457457
Spreads (Ang^2) Omega I = 44.626682974
================ Omega D = 0.000082356
Omega OD = 0.427809500
Final Spread (Ang^2) Omega Total = 45.054574830
------------------------------------------------------------------------------
tb2j
Exchange:
i j R J_iso(meV) vector distance(A)
----------------------------------------------------------------------------------------
Mn2 Mn5 ( 0, -1, 0) 50.2076 (-0.000, -3.227, 2.251) 3.934
J_iso: 50.2076
----------------------------------------------------------------------------------------
Mn1 Mn6 ( 0, 1, 0) 50.2263 ( 0.000, 3.227, -2.251) 3.934
J_iso: 50.2263
----------------------------------------------------------------------------------------
Mn5 Mn2 ( 0, 1, 0) 50.2076 ( 0.000, 3.227, -2.251) 3.934
J_iso: 50.2076
----------------------------------------------------------------------------------------
Mn6 Mn1 ( 0, -1, 0) 50.2263 (-0.000, -3.227, 2.251) 3.934
J_iso: 50.2263
.
.
Mean J: 35.2662
Sum J : 1269.5838
I do not know the exact expected values of Jij for this system. However, I attempted to validate the results by running VAMPIRE simulations to estimate the Curie temperature Tc. The second case earlier gives a Tc that is consistent with literature while the no-window case clearly overestimates Tc
So I'm wondering where could be possibly the problem here?
Is it expected that spin-down channels require significantly different disentanglement windows?
Could this indicate that my projection choice (Mn–d and O–p only) is insufficient for the spin-down channel?
More generally what is the recommended way to determine dis_win and froz_win in such systems?
For reference, I also attach the bands.x results from QE for spin-up and spin-down channels as well as PDOS
Any guidance or suggestions would be greatly appreciated
Thank you!