function get_offdiag_helement_tJ(nI, ex, tpar) result(hel)
! if we want to use a transcorrelated Hamiltonian in the tJ case
! it is different than in the hubbard model.. so write a one
! routine to calculate the one-body matrix element!
integer, intent(in) :: nI(nel), ex(2)
logical, intent(in) :: tpar
HElement_t(dp) :: hel
integer(n_int) :: ilut(0:niftot)
! the first part is exactly the same..
hel = GetTMatEl(ex(1), ex(2))
if (tpar) hel = -hel
if (t_trans_corr) then
call EncodeBitDet(nI, ilut)
! i am not yet sure about the order here.. to have it
! "hermitian"
hel = hel * exp(trans_corr_param) * exp(trans_corr_param * &
(get_occ_neighbors(ilut, gtid(ex(1))) - get_occ_neighbors(ilut, gtid(ex(2)))))
end if
if (t_trans_corr_2body) then
call EncodeBitDet(nI, ilut)
hel = hel * exp(trans_corr_param_2body * ( &
get_spin_opp_neighbors(ilut, ex(1)) - get_spin_opp_neighbors(ilut, ex(2))))
end if
end function get_offdiag_helement_tJ