ColorOrderedMapping

class madspace.ColorOrderedMapping(self: madspace._madspace_py.ColorOrderedMapping, color_order: collections.abc.Sequence[SupportsInt], t_invariant_power: SupportsFloat = 0.8, s_invariant_power: SupportsFloat = 0.8, pt_min: collections.abc.Sequence[SupportsFloat] = [], m_inv_min: collections.abc.Sequence[collections.abc.Sequence[SupportsFloat]] = [], dr_min: collections.abc.Sequence[collections.abc.Sequence[SupportsFloat]] = [], arcsine_s23: bool = True, y_max: collections.abc.Sequence[SupportsFloat] = [])

Bases: Mapping

Leading-color phase-space mapping following a color-ordered particle chain.

Generates the full final state as a chain of \((\tilde s, t)\) two-particle blocks (TwoToThreeParticleScattering) laid out along a color-ordered permutation of the particles, peeling one on-shell momentum off at a time from each beam, with a TwoToTwoParticleScattering or DoubleT central block joining the two sides [1]. It encodes no specific diagram topology. The discrete_i inputs select, per \(2 \to 3\) peel, which of the two branches to take. See Sec. 2.2.5 of [1], following [2].

batch is the leading batch dimension. n_out is the number of outgoing particles and n = n_out + 2 the total.

Inputs

  • random_i – float, shape (batch,) – the continuous random numbers (random_dim() of them).

  • discrete_i – int, shape (batch,) – the two-solution choices (discrete_dim() of them).

Conditions

  • com_energy – float, shape (batch,) – total collision energy.

  • mass_i – float, shape (batch,) – the n_out outgoing masses.

  • x1, x2 – float, shape (batch,) – beam momentum fractions. Present only when a rapidity bound is used (see the constructor).

Outputs

  • momentum_i – float, shape (batch, 4) – the n momenta (incoming beams first, then outgoing).

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

References

Parameters:
  • color_order – 0-based permutation of {0, ..., n-1} (n = n_out + 2) giving the chain order; particles 0 and 1 are the incoming beams. See Topology.

  • t_invariant_power – Exponent of the 1/|t|^p sampling of every momentum transfer; see Invariant.

  • s_invariant_power – Exponent of the 1/s^p sampling of every time-like invariant; see Invariant.

  • pt_min – Per-outgoing-particle minimum transverse momentum; empty disables the cut. See Cuts.

  • m_inv_min – Symmetric matrix of minimum pair invariant masses; empty disables the cut. See Cuts.

  • dr_min – Symmetric matrix of minimum pair delta_r separations; empty disables the cut. See Cuts.

  • arcsine_s23 – Remap the random number of every 2->3 invariant with the arcsine map in the azimuth, removing the 1/|sin(phi)| edge peak of the weight; see TwoToThreeParticleScattering.

  • y_max – Per-outgoing-particle bound on the absolute lab rapidity, negative (or empty) for none. Used where a block scatters the two beams in the partonic centre-of-mass frame, so that its momentum transfers fix the light-cone components of what it emits: the central 2->2 (bounds of the two sides), the double-t central block (|t2| at fixed |t1|) and the first peel of a single chain. A side or rest system is bounded when each of its particles is. The mapping then takes the beam momentum fractions x1, x2 (float, shape (batch,)) as two further conditions.

discrete_dim(self: madspace._madspace_py.ColorOrderedMapping) → int

Number of discrete two-solution choices (one per 2->3 peel).

random_dim(self: madspace._madspace_py.ColorOrderedMapping) → int

Number of continuous unit-hypercube inputs consumed by the forward map.