Invariant

class Invariant : public madspace::Mapping

One-dimensional invertible mapping for a single phase-space invariant.

Samples an invariant invariant in [invariant_min, invariant_max] so as to flatten a propagator, a resonance, a threshold or a soft/collinear enhancement [1]. The power / mass / width triple selects the transformation \(s = G(r)\).

A nonzero width selects Breit-Wigner sampling around the pole \(m^2\),

\[ G_\mathrm{BW}(r) = m\Gamma\,\tan\!\big[u_1 + (u_2 - u_1)\,r\big] + m^2, \qquad u_{1/2} = \arctan\!\frac{x_{\min/\max} - m^2}{m\Gamma}. \]

For width = 0 the invariant is sampled flat when power = 0, i.e. \(G(r) = x_{\min} + (x_{\max} - x_{\min})\,r\); with the logarithmic \(\nu \to 1\) limit when power = 1; and with the power law

\[ G_\nu(r) = \Big[ r\,(x_{\max} - m^2)^{1-\nu} + (1 - r)\,(x_{\min} - m^2)^{1-\nu} \Big]^{\frac{1}{1-\nu}} + m^2 \]

otherwise. A nonzero flat_window (with a nonzero width) flattens the Breit-Wigner peak: the density is kept outside \(|\sqrt{s} - m| < w\,\Gamma\) and replaced inside by a constant, the mean of its two edge values. This is the mapping of a $-excluded propagator, whose matrix element vanishes in that window.

When mass is zero and invariant_min is zero, a small auxiliary negative \(m^2 = -a\) is used inside the mapping only. This keeps the power-law and logarithmic forms well defined at the boundary and leaves the physical integrand unchanged. The naive choice \(\nu = 2\) is rarely optimal, so power defaults to 0.8.

batch is the leading batch dimension.

Inputs

  • random – float, shape (batch,) – the unit-hypercube coordinate.

Conditions

  • invariant_min – float, shape (batch,) – lower integration bound.

  • invariant_max – float, shape (batch,) – upper integration bound.

Outputs

  • invariant – float, shape (batch,) – the sampled invariant.

In addition every mapping returns a weight (float, shape (batch,)), the Jacobian of the transformation.

References

Public Functions

Invariant(double power = 0, double mass = 0, double width = 0, double flat_window = 0)
Parameters:
  • power – Exponent \(\nu\) of the \(1/(s - m^2)^\nu\) power-law sampling: 0 is flat, 1 the logarithmic limit, any other value uses \(G_\nu\). Ignored when width is nonzero.

  • mass – Pole / resonance mass \(m\); 0 triggers the boundary regularization described above.

  • width – Resonance width \(\Gamma\); a nonzero value selects Breit-Wigner sampling around mass.

  • flat_window – Half-width \(w\), in units of width, of the window in which the Breit-Wigner density is flattened; 0 (the default) keeps the plain Breit-Wigner.