The traditional PYSHOW routine described above gives a mass-ordered time-like cascade, with angular ordering by veto. It offers an alternative to the HERWIG angular-ordered shower [Mar88] and ARIADNE -ordered dipole emission [Gus88,Pet88]. For most properties, comparably good descriptions can be obtained of LEP data by all three [Kno96], although ARIADNE seems to do slightly better than the others.
Recently, the possibility to combine separately generated -parton configurations from Born-level matrix element expressions has attracted attention, see [Cat01]. This requires the implementation of vetoed parton showers, to forbid emissions that would lead to double-counting, and trial parton showers, to generate the appropriate Sudakovs lacking in the matrix elements [Lön02]. The PYSHOW algorithm is not well suited for this kind of applications, since the full evolution process cannot easily be factored into a set of evolution steps in well-defined mass ranges -- the kinematics is closely tied both to the mother and the daughter virtualities of a branching. Further, as we will see in section , the multiple-interactions scenarios are most appropriately defined in terms of transverse momenta, also for showers.
As an alternative, the new PYPTFS routine [Sjö04a] offers a shower algorithm borrowing several of the dipole ideas, combined with many of the old PYSHOW elements. It is a hybrid between the traditional parton shower and the dipole emission approaches, in the sense that the branching process is associated with the evolution of a single parton, like in a shower, but recoil effects occur inside dipoles. That is, the daughter partons of a branching are put on-shell. Instead a recoiling partner is assigned for each branching, and energy and momentum is `borrowed' from this partner to give mass to the parton about to branch. In this sense, the branching and recoiling partons form a dipole. Often the two are colour-connected, i.e. the colour of one matches the anticolour of the other, but this need not be the case. For instance, in the takes the recoil when the radiates a gluon. Furthermore, the radiation of a gluon is split into two dipoles, again normally by colour.
The evolution variable is approximately the of a branching, where is the transverse momentum for each of the two daughters with respect to the direction of the mother, in the rest frame of the dipole. (The recoiling parton does not obtain any kick in this frame; only its longitudinal momentum is affected.) For the simple case of massless radiating partons and small virtualities relative to the kinematically possible ones, and in the limit that recoil effects from further emissions can be neglected, it agrees with the -clustering distance defined in the original LUCLUS (now PYCLUS) algorithm, see section .
All emissions are ordered in a single sequence . That is, all initial partons are evolved from the input scale, and the one with the largest is chosen to undergo the first branching. Thereafter, all partons now existing are evolved downwards from , and a is chosen, and so on, until is reached. (Technically, the values for partons not directly or indirectly affected by a branching need not be reselected.) As already noted above, the evolution of a gluon is split in evolution on two separate sides, with half the branching kernel each, but with different kinematical constraints since the two dipoles have different masses. The evolution of a quark is also split, into one scale for gluon emission and one for photon one, in general corresponding to different dipoles.
With the choices above, the evolution factorizes. That is, a set of successive calls, where the of one call becomes the of the next, gives the same result (on the average) as one single call for the full range. This is the key element to allow Sudakovs to be conveniently obtained from trial showers, and to veto emissions above some scale, as required to combine different -parton configurations. (Not yet implemented as a standard facility, however.)
The formal definition is
When a has been selected, this is translated to a (the same formula as above, rewritten). From there on, the three-body kinematics of a branching is constructed as in PYSHOW [Nor01]. This includes the interpretation of and the handling of nonzero on-shell masses for branching and recoiling partons, which leads to the physical not identical to the defined here. In this sense, becomes a formal variable, while really is a well-defined mass of a parton.
Also the handling of matrix-element matching closely follows the machinery of [Nor01], once the has been converted to a mass of the branching parton. In general, the `other' parton used to define the matrix element need not be the same as the recoiling partner. To illustrate, consider a decay. In the first branching, say gluon emission off the , obviously the takes the recoil, and the new , and momenta are used to match to the matrix element. The next time branches, the recoil is now taken by the current colour-connected gluon, but the matrix element corrections are based on the newly created and momenta together with the (not the recoiling !) momentum. That way we hope to achieve the most realistic description of mass effects in the collinear and soft regions.
The shower inherits some further elements from PYSHOW, such as azimuthal anisotropies in gluon branchings from polarization effects.
The relevant parameters will have to be retuned, since the shower is quite different from the mass-ordered one of PYSHOW. In particular, it appears that the five-flavour value in PARJ(81) has to be reduced relative to the current default, roughly by a factor of two (from 0.29 to 0.14 GeV). After such a retuning, PYPTFS (combined with string fragmentation) appears to give an even better description of LEP1 data than does PYSHOW [Rud04].