fastdla.generators.z2lgt_hva.z2lgt_u1_projection
- fastdla.generators.z2lgt_hva.z2lgt_u1_projection(num_fermions, charge, npmod=np)
Return a function that projects out the eigensubspace of the total U(1) charge for the given eigenvalue.
If \(P_{\lambda}\) is the projector to the eigensubspace for eigenvalue \(\lambda\), \(P_{\lambda} - I\) is the (negative) anti-projector. It also is a singular operator used in the SVD eigenspace extraction algorithm (for the eigenspace of \(P_{\lambda}\) with eigenvalue 1).
- Parameters:
charge (
int) – Unnormalized total charge (an eigenvalue of \(\sum_{n=0}^{N_s-1} Z_n\)).num_fermions (
int) – \(N_f\).
- Return type:
Callable[[numpy.ndarray],numpy.ndarray]- Returns:
A function that takes a basis matrix \(B\) as an argument and projects out the eigensubspace corresponding to eigenvalue \(q / N_s\), where \(q\) is the given total charge.