Skip to content

Mismatch between explicit Chern number calculation and symmetry-evaluated topology #96

@thchr

Description

@thchr

Here's an example that shows a disagreement between our symmetry-based evaluation of topology and a direct calculation of the Chern number (using an locally updated version #84):

We construct a model in plane group 10, including time-reversal broken terms:

julia> using Crystalline, SymmetricTightBinding

julia> brs = calc_bandreps(10, Val(2); timereversal=false);

julia> cbr = @composite brs[9] + brs[10]
10-irrep CompositeBandRep{2}:
 (1a|²E) + (1a|¹E) (2 bands)

julia> tbm = tb_hamiltonian(cbr, [[0,0],[1,0], [1,1]])
Tight-binding terms in tbm
julia> tbm
10-term 2×2 TightBindingModel{2} over (1a|²E)(1a|¹E):
┌─
1.10 ⎤
│  ⎢ ───┼─── ⎥
│  ⎣ 00 ⎦
└─ (1a|²E) self-term
┌─
2.𝕖(δ₁)+𝕖(δ₂)+𝕖(δ₃)+𝕖(δ₄)  │  0 ⎤
│  ⎢ ─────────────────────────┼─── ⎥
│  ⎣ 00 ⎦
└─ (1a|²E) self-term:  δ₁=[1,0], δ₂=-δ₁, δ₃=[0,1], δ₄=-δ₃
┌─
3.𝕖(δ₁)+𝕖(δ₂)+𝕖(δ₃)+𝕖(δ₄)  │  0 ⎤
│  ⎢ ─────────────────────────┼─── ⎥
│  ⎣ 00 ⎦
└─ (1a|²E) self-term:  δ₁=[1,1], δ₂=-δ₁, δ₃=[-1,1], δ₄=-δ₃
┌─
4.00 ⎤
│  ⎢ ───┼─── ⎥
│  ⎣ 01 ⎦
└─ (1a|¹E) self-term
┌─
5.00                       ⎤
│  ⎢ ───┼───────────────────────── ⎥
│  ⎣ 0𝕖(δ₁)+𝕖(δ₂)+𝕖(δ₃)+𝕖(δ₄) ⎦
└─ (1a|¹E) self-term:  δ₁=[1,0], δ₂=-δ₁, δ₃=[0,1], δ₄=-δ₃
┌─
6.00                       ⎤
│  ⎢ ───┼───────────────────────── ⎥
│  ⎣ 0𝕖(δ₁)+𝕖(δ₂)+𝕖(δ₃)+𝕖(δ₄) ⎦
└─ (1a|¹E) self-term:  δ₁=[1,1], δ₂=-δ₁, δ₃=[-1,1], δ₄=-δ₃
┌─
7.0𝕖(δ₁)+𝕖(δ₂)-𝕖(δ₃)-𝕖(δ₄) ⎤
│  ⎢ ─────────────────────────────┼───────────────────────── ⎥
│  ⎣ 𝕖(-δ₁)+𝕖(-δ₂)-𝕖(-δ₃)-𝕖(-δ₄)  │  0                       ⎦
└─ (1a|²E)(1a|¹E):  δ₁=[1,0], δ₂=-δ₁, δ₃=[0,1], δ₄=-δ₃
┌─
8.0i𝕖(δ₁)+i𝕖(δ₂)-i𝕖(δ₃)-i𝕖(δ₄) ⎤
│  ⎢ ──────────────────────────────────┼───────────────────────────── ⎥
│  ⎣ -i𝕖(-δ₁)-i𝕖(-δ₂)+i𝕖(-δ₃)+i𝕖(-δ₄)  │  0                           ⎦
└─ (1a|²E)(1a|¹E):  δ₁=[1,0], δ₂=-δ₁, δ₃=[0,1], δ₄=-δ₃
┌─
9.0𝕖(δ₁)+𝕖(δ₂)-𝕖(δ₃)-𝕖(δ₄) ⎤
│  ⎢ ─────────────────────────────┼───────────────────────── ⎥
│  ⎣ 𝕖(-δ₁)+𝕖(-δ₂)-𝕖(-δ₃)-𝕖(-δ₄)  │  0                       ⎦
└─ (1a|²E)(1a|¹E):  δ₁=[1,1], δ₂=-δ₁, δ₃=[-1,1], δ₄=-δ₃
┌─
10.0i𝕖(δ₁)+i𝕖(δ₂)-i𝕖(δ₃)-i𝕖(δ₄) ⎤
│   ⎢ ──────────────────────────────────┼───────────────────────────── ⎥
│   ⎣ -i𝕖(-δ₁)-i𝕖(-δ₂)+i𝕖(-δ₃)+i𝕖(-δ₄)  │  0                           ⎦
└─ (1a|²E)(1a|¹E):  δ₁=[1,1], δ₂=-δ₁, δ₃=[-1,1], δ₄=-δ₃

Terms 8 and 10 break TR, I believe, but the others are TR symmetric. Then we make a model with terms 8 and 10 set to zero (i.e., a time-reversal invariant model!) and calculate the symmetry indicators:

julia> ptbm = tbm([0,1,0,0,0,0,1,0,1,0]);

julia> symmetry_indicators.(collect_compatible(ptbm), Ref(brs))
2-element Vector{Vector{Int64}}:
 [2]
 [2]

This suggests that the Chern number should be nonzero. But that cannot be right, since we never broke TR - and indeed, an explicit calculation of the Chern number shows that the Chern numbers of each band are zero (in fact, the Berry curvature is zero; I suppose we didn't even break the mirrors with our chosen nonzero terms).

The spectrum of ptbm looks like this:

I.e., with two decoupled bands, with symmetry vectors [Γ₄, M₃, X₂] (valence) and [Γ₃, M₄, X₂] (conduction). Indeed, neither of these are EBRs, so if that is the symmetry vectors, they must have a nonzero symmetry indicator.
But, the conflict between these two perspectives must the imply that they cannot really be the correct symmetry vectors. This suggests we are getting the wrong symmetry eigenvalues, which, I suppose, ultimately points to #89. But I'm surprised since we didn't see issues with this plane group before?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions