Well, I've finished adding baryons to the BES Monte Carlo system. It only took 3 times as long as I thought it would, so I'm doing pretty good.
This is a brief note on how to deal with baryons and anti-baryons in the SOBER system:
The basic layout of the XMCHTY common has not changed.
The particles and their XMCHTY codes are as listed:
C 1=GAMMA 2=ELECTRON 3=MUON 4=PION C 5=KAON 6=PROTON 7=LAMBDA 8=J/Psi C 9=NEUTRON 10=PSI-PRIME 11=ETA(549) 12=RHO(770) C 13=OMEGA(783) 14=PHI(1020) 15=K*(890) 16=K*BAR C 17=a1(1270) 18=NEUTRINO 19=TAU 20=D C 21=D BAR 22=D* 23=D* BAR 24=Ds C 25=Ds* 26=ETA'(985) 27=f2(1270) 28=f2'(1525) C 29=f2(1720) 30=X(2220) 31=ETAc(2980) 32=ETA(1440) C 33=f0(975) 34=rho1(1590) 35=K*(1410) 36=K1(1690) C 37=DELTA++ 38=DELTA+ 39=DELTA0 40=DELTA- C 41=SIGMA+ 42=SIGMA0 43=SIGMA- 44=XI0 C 45=XI- 46=OMEGA- 47=SIG+(1385) 48=SIG0(1385) C 49=SIG-(1385) 50=Lambda(1405) 51=Xi0(1530) 52=Xi-(1530)
The LambdaBar and the anti-neutron are removed, as they are no longer needed. I have searched through all the official code to determine where these are used, and perfomed the required modifications.
I have also added the J/Psi and the Psi-Prime to XMCHTY in
order to put an official mass in place. Users should modify their code
to use the official masses for these particles.
This then is the new scheme for dealing with baryons in the BES MC system:
Ex: LambdaBar is represented internally by an ID of -7. The Lambda is represented by 7.
TESTER generator is essentially unchanged, except
that it will now accept negative particle IDs in
MPARAM(2)
Ex: An "MPARAM(2)=-37" card in a tester job will select
DeltaBar-- as the decaying particle.
Negative particle IDs for non-baryons will be reset to positive.
NEUT_TRKS card.
Ex: A "NEUT_TRKS 1.1155 -1.1155" card will set up a
decay for Lambda-LambdaBar pairs.
Negative masses for non-baryonic neutral particles will be handled in one of two ways:
BAR" to the particle name.
Ex: The following is the HOWL output of a Delta++
DeltaBar-- decay.
Trk Trk_id Name------- Vtx_Go Vtx_End Chg Mass-- Width- Life-----
1 37 Delta++ 1 2 2 1.264 .111 .000E+00
2 -37 Delta++ BAR 1 3 -2 1.189 .111 .000E+00
3 6 PROTON 2 0 1 .938 .000 .100E+04
4 4 PION 2 0 1 .140 .000 .100E+04
5 -6 PROTON BAR 3 0 -1 .938 .000 .100E+04
6 4 PION 3 0 -1 .140 .000 .100E+04
I have also re-vamped the DECAY subroutine, used for
auto-decaying particles. I did this because many of the branching
ratios were hard-coded, and were based on the 1988 PDG.
Decay modes are now defined in the BLOCK DATA DECAYINI,
located in DECAY.FOR. The D, D* and Ds decays are still
handled in their Monte Carlo routines. (FFGEN, DSDGEN
etc.)
By default, all decay modes are activated. Users can change this, however,
in their SBUSIOJ routine.
Decay modes are activated/deactivated by setting a bit-pattern in the
array DK_ALLOW. This array is part of the
DKNUMS common block, located in DECAY.INC.
The order of the decay modes is given in the BLOCK DATA
DECAYINI, located in DECAY.FOR. For example, the
omega meson has the decay modes 3pi, pi0 gamma, and pi+pi- defined by:
C Omega (ID=13)
DATA DK_FRAC(1,13) / 0.888 / ! Pi+Pi-Pi0
DATA (DK_ID(I,1,13),I=1,4) / 4, 4, 4, 0 /
DATA (DK_CHARG(I,1,13),I=1,4) / 1,-1, 0, 0 /
DATA DK_FLAG(1,13) / 1 /
DATA DK_NBOD(1,13) / 3 /
DATA DK_FRAC(2,13) / 0.085 / ! Pi0 Gam
DATA (DK_ID(I,2,13),I=1,4) / 4, 1, 0, 0 /
DATA (DK_CHARG(I,2,13),I=1,4) / 0, 0, 0, 0 /
DATA DK_FLAG(2,13) / 1 /
DATA DK_NBOD(2,13) / 2 /
DATA DK_FRAC(3,13) / 0.0221 / ! Pi+Pi-
DATA (DK_ID(I,3,13),I=1,4) / 4, 4, 0, 0 /
DATA (DK_CHARG(I,3,13),I=1,4) / 1,-1, 0, 0 /
DATA DK_FLAG(3,13) / 1 /
DATA DK_NBOD(3,13) / 2 /
DATA DK_ALLOW(13) / '07'X /
DATA (DK_FRAC(I,13),I=4,30) / 27*0. /
By default, DK_ALLOW(13) is set to '07'X.
This activates all three decay modes at their PDG branching ratios.
Bit 1 corresponds to the first decay defined, bit 2 to the second,
etc.
If the user has no use for the pi+pi- gamma mode, and only
wants the 3pi and the pi0 gamma modes, he/she will include the
following line in SBUSIOJ:
DK_ALLOW(13) = '03'X ! '011'b: pi0 gamma, 3pi
As the 3rd least significant bit is now set to 0, this deactivates the pi+pi- mode.
Charged mesons act differently than neutral mesons, however. For
neutral mesons, one would set the element of the DK_ALLOW
array corresponding to the corresponding XMCHTY ID. For
charged mesons however, the element should be set to
ID+100. Example, pi+/-:
C Pi+ (ID=4) + 100 offset
DATA DK_FRAC(1,104) / 0.999877 / ! Mu Nu
DATA (DK_ID(I,1,104),I=1,4) / 3, 18, 2*0 /
DATA (DK_CHARG(I,1,104),I=1,4) / 1, 0, 2*0 /
DATA DK_FLAG(1,104) / 2 /
DATA DK_NBOD(1,104) / 2 /
DATA DK_FRAC(2,104) / 1.230E-4 / ! e Nu
DATA (DK_ID(I,2,104),I=1,4) / 2, 18, 2*0 /
DATA (DK_CHARG(I,2,104),I=1,4) / 1, 0, 2*0 /
DATA DK_FLAG(2,104) / 2 /
DATA DK_NBOD(2,104) / 2 /
DATA DK_ALLOW(104) / '03'X /
DATA (DK_FRAC(I,104),I=3,30) / 28*0. /
NOTE: The 100 offset is only used for charged mesons. As
the baryon charged state is uniquely determined by XMCHTY ID,
the offset is unneeded.
For explanation of which decay modes are activated, please examine
BLOCK DATA DECAYINI, contained in
DECAY.FOR.
If there are any questions, please contact me directly at panetta@cithe501.cithep.caltech.edu. Thank you.