Hi,
I worked through the neutrino longitudinal-momentum reconstruction discussed in this thread and implemented a complete reproducible treatment of the problem.
For the decay
W \rightarrow \mu\nu,
the measured transverse missing momentum determines the transverse neutrino components,
p_x^\nu=p_T^\nu\cos\phi_\nu,
\qquad
p_y^\nu=p_T^\nu\sin\phi_\nu,
while the longitudinal component p_z^\nu remains unknown.
Imposing the fixed-W-mass constraint
(p_\mu+p_\nu)^2=M_W^2
reduces the problem to a quadratic equation for p_z^\nu.
Define
A=
\frac{M_W^2-m_\mu^2}{2}
+
\vec p_T^{\,\mu}\cdot\vec p_T^{\,\nu},
and
E_{T\mu}^2=m_\mu^2+(p_T^\mu)^2.
Then the two longitudinal solutions are
p_{z\nu}^{\pm}
=
\frac{
A\,p_{z\mu}
\pm
E_\mu
\sqrt{
A^2-E_{T\mu}^2(p_T^\nu)^2
}
}{
E_{T\mu}^2
}.
The corresponding reduced discriminant is
D=
A^2-E_{T\mu}^2(p_T^\nu)^2.
The useful part is that this discriminant can be factorized directly through the transverse mass:
D=
\frac14
\left(M_W^2-m_T^2\right)
\left[
M_W^2-m_T^2+
4E_{T\mu}p_T^\nu
\right].
For the physical domain of the reconstruction, the second factor is positive, so the complete real-solution structure follows directly from m_T:
m_T<M_W
\quad\Longrightarrow\quad
D>0
\quad\Longrightarrow\quad
2\ \text{real }p_z^\nu\text{ solutions},
m_T=M_W
\quad\Longrightarrow\quad
D=0
\quad\Longrightarrow\quad
1\ \text{tangent/repeated solution},
m_T>M_W
\quad\Longrightarrow\quad
D<0
\quad\Longrightarrow\quad
0\ \text{real solutions under the exact fixed-mass constraint}.
An important implementation detail is that I retain both real longitudinal branches rather than silently selecting one of them.
Each returned solution is also checked against the original unsquared equation,
E_\mu
\sqrt{(p_T^\nu)^2+(p_z^\nu)^2}
-
p_{z\mu}p_z^\nu
=
A,
rather than validating the roots only against the squared quadratic equation.
This also gives a precise interpretation of the negative-discriminant case: D<0 does not by itself mean that the recorded event is unphysical. It means that the measured transverse state is incompatible with the selected exact fixed-W-mass constraint for every real value of p_z^\nu.
I tested the implementation over the complete 100,000-event CMS Open Data W\rightarrow\mu\nu sample.
Using M_W=80.3625 GeV, the reconstruction classified:
- 88,243 events with two real longitudinal neutrino solutions;
- 0 events inside the numerical tangent band;
- 11,757 events with no real longitudinal solution under the exact fixed-mass constraint.
The implementation also includes regression tests, direct mass-shell checks, numerical treatment near the discriminant boundary, stable evaluation of the quadratic roots, and a separate high-precision verification.
The complete implementation and reproduction material are publicly available in my GitHub repository named:
Neutrino-Longitudinal-Momentum-Reconstruction
Independent technical review, reproduction, or criticism of the derivation and numerical treatment is welcome.