Z2Pack icon indicating copy to clipboard operation
Z2Pack copied to clipboard

One dimensional systems

Open bfocassio opened this issue 5 years ago • 3 comments
trafficstars

How can one use z2pack for topological classification of 1D systems (e.g. SSH model) ?

bfocassio avatar Jul 23 '20 11:07 bfocassio

In some cases, the polarization / sum of Wannier charge centers is quantized to {0, 0.5} - that gives a topological classification. A single line can be calculated with z2pack.line.run.

greschd avatar Jul 23 '20 21:07 greschd

Then I would simply do:

system = z2pack.tb.System( ... )
result = z2pack.line.run(system=system,line=lambda t: [t, 0, 0])
pol = result.pol

For the SSH model: for t=1 and dt=0.2 : pol=0.0 for t=1 and dt=-0.2: pol=0.5

bfocassio avatar Jul 25 '20 16:07 bfocassio

Yes, exactly. You can also define the model directly as one-dimensional if that's more convenient.

For a full (but somewhat raw) example, see the attached notebook.

ssh_model.zip

greschd avatar Jul 27 '20 10:07 greschd