| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | nI(nel) |
function get_diag_helemen_rs_hub_transcorr_hop(nI) result(hel) ! with the hopping transcorrelation also the diagonal matrix ! elements change! integer, intent(in) :: nI(nel) HElement_t(dp) :: hel integer :: i, j, id(nel) hel = 0.0_dp id = get_spatial(nI) ! now also n_iu n_jd contribute to the diagonal elements! do i = 1, nel do j = 1, nel if (.not. same_spin(nI(i), nI(j))) then hel = hel + 0.5_dp * get_umat_rs_hub_trans(id(i), id(j), id(j), id(i)) end if end do end do end function get_diag_helemen_rs_hub_transcorr_hop