Different J1 (and reported charge) between TB2J 0.8.0 and 0.9.17 from identical SIESTA input — CrBr3

19 views
Skip to first unread message

Jaime Garrido

unread,
Aug 9, 2026, 7:12:03 PM (5 days ago) Aug 9
to TB2J
Hi everyone,

I'm getting version-dependent exchange constants for the same system and I'd like to report the differences and ask which version I should trust.

I am working with monolayer CrBr3 (2 Cr per cell), non-collinear SIESTA with spin–orbit. Same siesta2J.py call on both machines (versions).

The SIESTA Hamiltonian passed to TB2J (aiida.HSX) and the aiida.fdf are byte-for-byte identical on both machines (md5-matched), so the DFT side is fixed. The only difference is the TB2J version: 0.9.17 on the cluster vs 0.8.0 on my workstation. I ran two basis sets (TZP, DZP), each with and without DFT+U, and each on the unrelaxed and PBEsol-relaxed geometry.


Values below are shell-averaged isotropic J in meV: J1 = nearest Cr–Cr (~3.72 Å), J2 = second shell (~6.44 Å), J3 = ~7.44 Å. w_charge is the total from the exchange.out header.

## TZP

| Case            | Version | J1     | J2     | J3      | w_charge |
|-----------------|---------|--------|--------|---------|----------|
| +U              | 0.9.17  | +3.990 | +0.749 | +0.060  | 130.00   |
| +U              | 0.8.0   | +2.722 | +0.712 | −0.005  | 41.86    |
| +U relaxed      | 0.9.17  | +4.715 | +0.745 | +0.060  | 129.98   |
| +U relaxed      | 0.8.0   | +3.688 | +0.735 | +0.054  | 41.87    |
| U=0             | 0.9.17  | +2.279 | +0.512 | −0.077  | 130.00   |
| U=0             | 0.8.0   | +1.658 | +0.485 | −0.093  | 41.86    |
| U=0 relaxed     | 0.9.17  | +3.393 | +0.544 | +0.008  | 129.93   |
| U=0 relaxed     | 0.8.0   | +2.468 | +0.426 | −0.090  | 41.87    |

## DZP

| Case            | Version | J1     | J2     | J3      | w_charge |
|-----------------|---------|--------|--------|---------|----------|
| +U              | 0.9.17  | +4.720 | +0.705 | +0.048  | 130.00   |
| +U              | 0.8.0   | +3.539 | +0.680 | −0.030  | 41.86    |
| +U relaxed      | 0.9.17  | +5.490 | +0.704 | +0.044  | 129.99   |
| +U relaxed      | 0.8.0   | +4.545 | +0.713 | +0.018  | 41.87    |
| U=0             | 0.9.17  | +2.347 | +0.476 | −0.091  | 130.00   |
| U=0             | 0.8.0   | +1.801 | +0.462 | −0.113  | 41.86    |
| U=0 relaxed     | 0.9.17  | +3.525 | +0.516 | +0.005  | 129.92   |
| U=0 relaxed     | 0.8.0   | +2.709 | +0.419 | −0.087  | 41.87    |

What differs

J1 is larger in 0.9.17 than in 0.8.0 in every case, by roughly 25–45%.
J2 is close between the two versions (typically within a few percent, up to ~20% in one U=0 relaxed case).
w_charge (header total): 0.9.17 reports ≈130.0 in every case; 0.8.0 reports ≈41.86. For reference, SIESTA reports 130.000 total valence electrons for this cell (Cr Z_val = 14, Br Z_val = 17, semicore pseudos). Per atom this is Cr ≈ 14.7 / Br ≈ 16.8 in 0.9.17 vs Cr ≈ 6.0 / Br ≈ 5.0 in 0.8.0.
Total magnetisation is essentially the same in both versions (≈6.0 μB per cell, = 2 Cr × 3 μB) in every case.

Which version is the one to trust for non-collinear SIESTA + DFT+U input, and whether the w_charge and J1 differences are expected between 0.8.0 and 0.9.17? I'm happy to share any of the exchange.out files and the HSX/fdf so you can reproduce it.


Thanks!

Xu He

unread,
Aug 11, 2026, 7:56:05 AM (4 days ago) Aug 11
to TB2J
Hello, 
There are a few improvements in the integration algorithm which leads to this difference:
- The default contour integration method now takes a CFR (Continued fraction representation), which is more efficient and accurate than the previous default, which is a semicircle from emin to the Fermi energy.
- There was a cutoff (--emin) and a autosearch of a gap below emin, which can make the integration inaccurate. It can start from a very low energy and points in the semi-circle becomes sparse.  And with CFR the emin is no more needed. It can take the full energy range. That's why now the charge is the same as the DFT result. 
So the recent version is more accurate. 
Best regards, 
HeXu
Reply all
Reply to author
Forward
0 new messages