functions.models.diag_func

diag_func(t_val, p_val, q_val, A_UC_val, vec_group, k_val, dJ_val, J_idx_val)[source]

The diagonal function.

The function that populates the diagonals of the Harper matrix is given by

Λl,n=κijκltκeiθijeikr,

where κl denotes the subset of κ-th nearest neighbors with a net y unit cell displacement of l, θij is the Peierls phase, k is the momentum vector, and r is the displacement vector.

Parameters:
  • t_val (list) – The list of hopping amplitudes in order of ascending NN.

  • p_val (int) – The numerator of the flux density.

  • q_val (int) – The denominator of the flux density.

  • A_UC_val (float) – The unit cell area in units of a2 (possibly scaled by a periodicity factor).

  • vec_group (ndarray) – The array of relevant nearest neighbors grouped by dJ.

  • k_val (ndarray) – The momentum vector.

  • dJ_val (int) – The y-displacement in terms of unit cells.

  • J_idx_val (int) – The y-position in terms of unit cells.

Returns:

term – The diagonal term.

Return type:

complex