Hi,
I am stumbling over a problem w/ 4-vectors in uproot_methods:
Consider the problem of having events with lorentz vectors and wanting to boost all of them into their rest frame. The operation works per-event, but not o the full full (batched) set of events
I'm looking into what the issue could be but perhaps someone is faster
x = [
[
[0,0,12,13],
[0,0,4,5]
],
[
[0,0,15,17],
[0,0,24,25]
],
]
mom = awkward.fromiter(x)
v = uproot_methods.TLorentzVectorArray.from_cartesian(mom[:,:,0],mom[:,:,1],mom[:,:,2],mom[:,:,3])
boost_back = (v.p3/v.p3.mag)*v.beta
print(
[vv.boost(bb) for vv,bb in zip(v,-boost_back)]
)
print(
v.boost(-boost_back)
)
the first print works as expected, the seconds does not and fails with
in boost(self, p3)
227 gamma2 = self.awkward.numpy.zeros(b2.shape, dtype=self.awkward.numpy.float64)
228 mask = (b2 != 0)
--> 229 gamma2[mask] = (gamma[mask] - 1) / b2[mask]
230 del mask
231
IndexError: too many indices for array
Hi,
I am stumbling over a problem w/ 4-vectors in uproot_methods:
Consider the problem of having events with lorentz vectors and wanting to boost all of them into their rest frame. The operation works per-event, but not o the full full (batched) set of events
I'm looking into what the issue could be but perhaps someone is faster
the first
printworks as expected, the seconds does not and fails with