============================================== Weights in KRLW03 (A.Valassi, February 2002) ============================================== This is a "simple" guide to the use of weights in KRLW03. Useful examples of reweighting can be found in subroutine XSECMON in /afs/cern.ch/aleph/reference/kin/krlw03.f where various reweighted cross-sections for a sample of events are computed. This guide will cover only the most common use cases: refer to XSECMON for other interesting cases. If you want to skip the bla-bla, look in this file for "WHAT YOU NEED TO DO". Please contact me in case of problems or doubts. ---------------------- ALEPH KRLW03 settings ---------------------- It is assumed in the following that a sample of KRLW03 4f events has been produced using the following standard ALEPH settings. For events produced under different settings (such as: CC3 only; anomalous couplings; unweighted O alpha), the recipes to reweight to a given configuration are generally different from those presented below. WARNING: Please contact me if you wish to use card YUNW to generate events which include the NL O(alpha) correction, rather than reweighting a posteriori as described below. I suspect that I left a bug somewhere. 4f matrix element ------------------ In the cards: KEY4F = XPAR(1042) = 1 In the code: m_key4f = 1 Coulomb correction with Khoze Chapovsky screening -------------------------------------------------- In the cards: KEYCUL = XPAR(1014) = 2 In the code: KeyCul = MOD(KeyRad,10000)/1000 = 2 3rd order ISR -------------- In the cards: KEYISR = XPAR(1011) = 1 XPAR(1085) = 4 In the code: m_KeyISR = 1 m_i_prwt = 4 NL O(alpha) corrections computed AFTER producing unweighted events ------------------------------------------------------------------- In the cards: Card YFSW is present Card YUNW is absent In the code: ikandy = 1 xpar(1087) = 0 xpar(1088) = 0 Single W corrections computed AFTER producing unweighted events ---------------------------------------------------------------- In the cards: XPAR(20) = 0 In the code: tangmax = xpar(20) = 0 tcosmin = 1 No anomalous couplings ----------------------- In the cards: KEYACC = 0 In the code: m_keyacc = xpar(1043) = 0 ------------------ Available weights ------------------ The following sets of weights are available in the bank KWGT, which is filled by subroutin KKWGT in krlw03.f. The weights which are used inside the program to produce unweighted events under the ALEPH settings described above are also indicated. KWGT(1) 4f 0th order ISR -> from wtset(1) KWGT(2) 4f 1st order ISR -> from wtset(2) KWGT(3) 4f 2nd order ISR -> from wtset(3) KWGT(4) 4f 3rd order ISR -> from wtset(4) <=== ALEPH settings KWGT(101) Coulomb unscreened/off -> from kwgtcoulomb(2) KWGT(102) Coulomb screened/off -> from kwgtcoulomb(3) <=== ALEPH settings KWGT(50) CC3 internal, 0th order ISR -> from wtset(9) KWGT(51) 4f Grace, 0th order ISR -> from wtset(1) <=== ALEPH settings KWGT(52) NC2 Grace, 0th order ISR -> from wtset(49) KWGT(53) CC3 Grace, 0th order ISR -> from wtset(48) KWGT(60) singleW t-ch ISR if from wtset(20) <=== ALEPH settings KWGT(62) singleW t-ch ISR any angle -> from wtset(22) KWGT(61) singleW alpha(t) if from wtset(21) <=== ALEPH settings KWGT(63) singleW alpha(t) any angle -> from wtset(23) KWGT(90) NL Oalpha for 3rd ISR CC3 -> from kwgtyfsww ------------------------------------ "Best" result including NL O(alpha) ------------------------------------ The best available prediction from KRLW03 and YFSWW is that obtained by reweighting events to include the NL O(alpha) weights. The NL O(alpha) weight is available as KWGT(90). This is normalised for CC3 only with ISR at the 3rd order. For unweighted events generated under the ALEPH settings, i.e. with no O(alpha) included, all corrections are applied equally to CC3 and 4f: in particular, ISR is applied as a multiplicative correction for both CC3 and 4f, so that wtset(1)/wtset(9) is the same as wtset(4)/wtset(6), and one can use the ratio wtset(1)/wtset(9) for 4f/CC3. Additive correction -------------------- The recommended recipe by the authors is the additive correction: in this case, the NL O(alpha) weight, which is computed in the DPA approximation for two double resonant W's, should only be applied to the CC3 "part" of the total event weight. From XSECMON: weight = wtmain * ( 1 + (kwgtyfsww-1) * & wtset(9)/wtset(1) ) ! use CC3/4f Born ratio instead of 3rd order ==> WHAT YOU NEED TO DO: ==> reweight by ( 1 + (KWGT(90)-1)*KWGT(50)/KWGT(51) ) In other words, you are doing w_4f_oa = w_4f * ( 1 + ( w_cc3_oa/w_cc3 - 1 ) * w_cc3/w_4f ) = ( w_4f + ( w_cc3_oa/w_cc3 - 1 ) * w_cc3 ) = ( w_4f + ( w_cc3_oa - w_cc3 ) ) or w_4f_oa = ( w_4f + ( w_cc3_oa/w_cc3 - 1 ) * w_cc3 ) = ( w_cc3 + delta_4f*w_cc3 + delta_oa*w_cc3 ) = w_cc3 * ( 1 + delta_4f + delta_oa ) if you define delta_4f = (w_4f - w_cc3) / w_cc3 [where O(alpha) is not applied] delta_oa = (w_cc3_oa - w_cc3) / w_cc3 [where O(alpha) is applied in _oa] Multiplicative correction -------------------------- This recipe corresponds to applying the O(alpha) NL correction also to the difference between the 4f and CC3 contributions. From XSECMON: weight = wtmain * kwgtyfsww ==> WHAT YOU NEED TO DO: ==> reweight by KWGT(90) In other words, you are doing w_4f_oa = w_4f * ( w_cc3_oa/w_cc3 ) = w_4f * ( 1 + delta_oa ) = w_cc3 * ( 1 + delta_4f ) * ( 1 + delta_oa ) ----------------------------------- Back to KRLW02: unscreened Coulomb ----------------------------------- The main difference between KRLW03 and KRLW02 ALEPH unweighted events is that the Coulomb correction is applied in KRLW03 in its "screened" version. If you want to compare KRLW03 and KRLW02 samples, you have to remove the screening of the Coulomb interaction. The Coulomb correction translates the Coulomb interaction between two slowly moving W's and only makes sense for the CC3 "part" of the total event weight. Notice that this is already included properly in both wtset(1) and wtset(9): * - wtset(1) ~ wtmod4f*wt_qcd + wtborn*(cul-1) * - wtset(9) ~ wtborn*cul i.e., the 4f weight wtset(1) already includes the Coulomb correction to its CC3 contribution, and the CC3 weight wtset(9) includes the Coulomb correction to its full size. Refer to the comments in XSECMON for more details (of course, please feel free to crosscheck that I did not introduce bugs...). The Coulomb weights are available in KWGT(101) and KWGT(102). These are normalised for a CC3 process: if you want to change the Colomb correction to the ALEPH standard 4f events, you need to apply it only to the CC3 contribution. Unscreened Coulomb ------------------- If you want to go back to KRLW02, just remove Coulomb screening. From XSECMON: weight = wtmain*( 1+wtset(9)/wtset(1) ! wt(1)'=wt(1)+wt(9)*(cul/cul3-1) & *(kwgtcoulomb(2)/kwgtcoulomb(3)-1) ) ==> WHAT YOU NEED TO DO: ==> reweight by (1 + KWGT(50)/KWGT(51)*(KWGT(101)/KWGT(102)-1) ) In other words, you are doing [cu = coul unscreened, cs = coul screened] w_4f_cu = w_4f_cs * (1 + w_cc3_cs/w_4f_cs*(w_cc3_cu/w_cc3_cs-1) ) = w_4f_cs + w_cc3_cs*(w_cc3_cu/w_cc3_cs-1) = w_4f_cs + (w_cc3_cu - w_cc3_cs) No Coulomb ----------- If you had a particular wish to study events with NO Coulomb, read here. From XSECMON: weight = wtmain*( 1+wtset(9)/wtset(1) ! wt(1)'=wt(1)+wt(9)*(cul/cul3-1) & *(kwgtcoulomb(1)/kwgtcoulomb(3)-1) ) where kwgtcoulomb(1) = 1 always. ==> WHAT YOU NEED TO DO: ==> reweight by (1 + KWGT(50)/KWGT(51)*(1/KWGT(102)-1) ) In other words, you are doing [cu = coul unscreened, nc = no coul] w_4f_nc = w_4f_cs * (1 + w_cc3_cs/w_4f_cs*(w_cc3_nc/w_cc3_cs-1) ) = w_4f_cs + w_cc3_cs*(w_cc3_nc/w_cc3_cs-1) = w_4f_cs + (w_cc3_nc - w_cc3_cs) ------------------------------ Selecting CC3 or NC2 diagrams ------------------------------ In KRLW03, weights corresponding to a few subsets of 4f diagrams are computed and recorded. Weights for CC3 diagrams only are computed using the subset of the same Grace 4f diagrams needed for the 4f weight; an independent calculation of the CC3 matrix element has been written by the KORALW authors and is also available. In addition, the NC2 subset of Grace diagrams is used to compute the NC2 contribution to the process (which could be useful to normalise to a measured NC2 cross-section). The weights for these subsets of diagrams are available in KWGT(50--53). They already include 3rd order ISR and screened Coulomb corrections. Reweight to CC3 (using the internal matrix element) ---------------------------------------------------- From XSECMON: weight = wtmain * wtset(9)/wtset(1) ==> WHAT YOU NEED TO DO: ==> reweight by KWGT(50)/KWGT(51) Reweight to CC3 (using the Grace matrix element) ------------------------------------------------- From XSECMON: weight = wtmain * wtset(48)/wtset(1) ==> WHAT YOU NEED TO DO: ==> reweight by KWGT(53)/KWGT(51) Reweight to NC2 (using the Grace matrix element) ------------------------------------------------- From XSECMON: weight = wtmain * wtset(49)/wtset(1) ==> WHAT YOU NEED TO DO: ==> reweight by KWGT(52)/KWGT(51)