FTIShowBasis

From diagham
Jump to navigation Jump to search

FTIShowBasis displays the n-body basis that are involved in all codes related to fractional Chern insulators or fractional topological insulators. The typical usage is

$PATHTODIAGHAM/build/FTI/src/Programs/FTI/FTIShowBasis -p 8 -x 4 -y 3 --kx 0 --ky 0 -s 2 --sz 6 --spin-conserved

   memory requested for Hilbert space = 9ko
   memory requested for lookup table = 6Mo
   792
   [(0,0,-)(0,1,-)(2,1,-)(2,2,-)(3,0,-)(3,1,-)(3,2,+)(3,2,-)]
   [(0,0,-)(0,2,-)(2,0,-)(2,2,-)(3,0,-)(3,1,-)(3,2,+)(3,2,-)]
   [(0,2,-)(1,1,-)(1,2,-)(2,2,-)(3,0,-)(3,1,-)(3,2,+)(3,2,-)]

The basis description is given in such a way only occupied orbitals are written. So [(0,0,-)(0,1,-)(2,1,-)(2,2,-)(3,0,-)(3,1,-)(3,2,+)(3,2,-)] means one electron with momentum (0,0) and spin down, one electron with momentum (0,1) and spin down, ...

Several options allows to select the system properties

  • -s or --nbr-subbands sets the number of subbands (1,2 or 4)
  • -p sets the number of particles
  • -x, -y, -z, -t sets the number of sites in the x, y, z, and t directions
  • --kx, --ky, --kz --kt sets the momenta in the x, y, z, and t directions
  • --3d and --4d allows to select a 3d or 4d lattice instead of a 2d lattice
  • --spin-conserved indicated that the spin is preserved in a 2d and two subband lattice model.
  • --sz allows to set (twice the) Sz value when using the --spin-conserved option

One can combine the description of the Hilbert space with the components of a binary vector.

$PATHTODIAGHAM/build/FTI/src/Programs/FTI/FTIShowBasis -p 4 -x 4 -y 3 --kx 2 --ky 0 --state fermions_singleband_kagomelattice_n_4_x_4_y_3_t1_1_t2_0_l1_1_l2_0_gx_0_gy_0_kx_2_ky_0.0.vec

will display the components of fermions_singleband_kagomelattice_n_4_x_4_y_3_t1_1_t2_0_l1_1_l2_0_gx_0_gy_0_kx_2_ky_0.0.vec with in front of each of them, the corresponding n-body basis state.

   memory requested for Hilbert space = 516
   memory requested for lookup table = 416ko
   [(1,0)(3,0)(3,1)(3,2)] : (0.0053276704462768,0.18867981514898)
   [(2,1)(2,2)(3,1)(3,2)] : (0.060096590070605,0.15131301227946)
   [(0,1)(0,2)(3,1)(3,2)] : (-0.15366471611706,-0.0519641550345)
   [(2,0)(2,1)(3,0)(3,2)] : (0.11899279225652,-0.042380798103326)
   [(0,0)(0,1)(3,0)(3,2)] : (-0.18149761002157,3.9857609501266e-17)
   [(0,0)(1,2)(2,2)(3,2)] : (-0.0040690944040187,-8.6811105224683e-05)
   ...

This example is for spinless fermions. For each line we first have on the left side of the semicolumn the configuration of occupied orbitals ( [(1,0)(3,0)(3,1)(3,2)] means one particle with momentum (kx,ky)=(1,0), ne particle with momentum (kx,ky)=(3,0) ...). On the right side of the semicolumn, we find the corresponding complex coefficient in the binary vector, complex numbers being displayed as (real part,imaginary part).