When TLorentzVector() is set with Pt=0 and M=0, v.Eta() and v.Phi() = 0.0 because of conversions. This is similar with negative energy, and it becomes problematic here when trying to use TLV in these cases. Default to using phimax+phimin/2 and etamax+etamin/2