Changes between Version 38 and Version 39 of Reweight


Ignore:
Timestamp:
Feb 2, 2016, 10:20:56 AM (9 years ago)
Author:
Stefano Frixione
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Reweight

    v38 v39  
    44 The method consists in using a sample of events (weighted or unweighted) generated under a certain theoretical hypothesis (a model and its parameters with given values), and in associating with those events an additional weight that corresponds to a new theoretical hypothesis (a different model, and/or different parameter choices); both the original and the additional weights are thus based solely on matrix-element computations.
    55 Once computed, the additional weight can be propagated through all of the simulation chain, and saves one from performing eg a full simulation on an additional event sample.
    6  The methods works only if both the original and the new hypothesis give non-negligible contributions to the same parts of the phase-space.
    7  
    8  We support three types of reweightings, one for Leading Order (LO) samples, and two for the Next-to-Leading Order (NLO) samples (dubbed Kamikaze Reweighting and NLO Reweighting)
     6 The method works only if both the original and the new hypothesis give non-negligible contributions to the same parts of the phase-space.
     7 
     8 We support three types of reweightings, one for Leading Order (LO) samples, and two for Next-to-Leading Order (NLO) samples (dubbed Kamikaze Reweighting and NLO Reweighting).
    99
    1010 '''Leading Order'''[[BR]][[BR]]
     
    1212 $$W_{new} = |M^{new}_h|^2 /|M^{old}_h|^2 * W_{old} $$
    1313 where h is the helicity associated with the event, and $|M^{new/old}_h|^2$ is the matrix element for the corresponding helicity.
    14  If the event is not associated with a specific helicity, then the sum over the helicity is used instead.
     14 If the event is not associated with a specific helicity, then the sum over helicities is used instead.
    1515
    1616 This method is fully LO accurate and does not present any bias. Note that the statistical fluctuations of the original sample can be increased by reweighting.
    17  To have an idea of such an increase, one can use the naive formula of propagation of error:
     17 To have an idea of such an increase, one can use the naive formula of propagation of errors:
    1818  $$\Delta\mathcal{O}_{new} = \bar R\cdot \Delta\mathcal{O}_{old} + \Delta R \cdot \mathcal{O}_{old} $$
    1919 where $\bar R$ is the average of the ratio of the matrix-element, $\Delta R$ the associated variance. $\mathcal{O}_{old/new}$ is the value of the observable under consideration for the associated hypothesis and $\Delta\mathcal{O}_{old/new}$ the associated variance.
    2020
    2121 '''Kamikaze Reweighting'''[[BR]][[BR]]
    22  This corresponds to a LO-type of reweighting. Both soft and hard events are reweighted according to the tree-level matrix element associated with the suitable number of final-state particles i.e.,
     22 This corresponds to a LO-type reweighting. Both soft and hard events are reweighted according to the tree-level matrix elements associated with the suitable number of final-state particles i.e.,
    2323        $$W^S_{new} = |M^{new}_{born}|^2 /|M^{old}_{born}|^2 * W^S_{old} $$
    2424        $$W^H_{new} = |M^{new}_{real}|^2 /|M^{old}_{real}|^2 * W^H_{old} $$
    25  For obvious reason, this method is, in general, '''not NLO accurate'''.
    26  This method is available since MadGraph5_aMC@NLO v2.3.2
     25 For obvious reasons this method is, in general, '''not NLO accurate'''.
     26 It is available since MadGraph5_aMC@NLO v2.3.2.
    2727
    2828 '''NLO reweighting:'''[[BR]][[BR]]
    2929
    30  For this computation, we employ the method introduced in http://arxiv.org/pdf/1110.4738v1.pdf to decompose the matrix elements in terms of scale- and PDF-independent coefficients:
     30 For this procedure, we employ the method introduced in http://arxiv.org/pdf/1110.4738v1.pdf to decompose the matrix elements in terms of scale- and PDF-independent coefficients:
    3131    $$d\sigma^{H} = d\sigma^E - d\sigma^{MC} $$
    3232    $$ d\sigma^{S} = d\sigma^{MC} + \sum_{\alpha=S,C,SC} d\sigma^\alpha $$
    33  Each of the $d\sigma^\alpha$ can be written as
     33 where the $d\sigma^\alpha$ terms are written as
    3434    $$ d\sigma^\alpha=f_1(x_1,\mu_F)f_2(x_2,\mu_F) \left[\mathcal{W}^\alpha_0 + \mathcal{W}^\alpha_F log\left(\mu_F/Q\right)^2 + \mathcal{W}^\alpha_R log\left(\mu_R/Q\right)^2 \right] d\chi$$
    3535 
    36  Additionally, we decompose each of the $\mathcal{W^\alpha_\beta}$ in the component proportional to the born ($\mathcal{W}^\alpha_{\beta,B}$), the finite piece of virtual ($\mathcal{W}^\alpha_{\beta,V}$) and of the real ($\mathcal{W}^\alpha_{\beta,R}$).
     36 and where each of the $\mathcal{W^\alpha_\beta}$ terms is given in terms of coefficients proportional to the Born ($\mathcal{W}^\alpha_{\beta,B}$), to the finite piece of virtual ($\mathcal{W}^\alpha_{\beta,V}$), and to the real ($\mathcal{W}^\alpha_{\beta,R}$) contributions.
    3737  $\mathcal{W^\alpha_\beta} = B*\mathcal{C}^\alpha_{\beta,B} + V*\mathcal{C}^\alpha_{\beta,V} + R*\mathcal{C}^\alpha_{\beta,R} \equiv \mathcal{W}^\alpha_{\beta,B} + \mathcal{W}^\alpha_{\beta,V} + \mathcal{W}^\alpha_{\beta,R}$
    38  In our implementation, the various $\mathcal{W}^\alpha_{\beta,\delta}$ are computed by MG5_aMC@NLO at running time and kept in the final events. More details on the decomposition are available in  the appendix of  http://arxiv.org/pdf/1110.4738v1.pdf (and in a paper in preparation).
    39 
    40 
    41  In principle, the reweighting should be performed on each sub-part of the $\mathcal{W}$ according to the following formula (dropping the $\alpha$ and $\beta$ index for simplicity):
     38 The various $\mathcal{W}^\alpha_{\beta,\delta}$ terms are computed by MG5_aMC@NLO at running time, and kept in the event record. More details on the decomposition are available in  the appendix of  http://arxiv.org/pdf/1110.4738v1.pdf (and in a paper in preparation).
     39
     40
     41 The reweighting is performed on each sub-part of the $\mathcal{W}$'s according to the following formulae (dropping the $\alpha$ and $\beta$ index for simplicity):
    4242   $$\mathcal{W}_B^{new} = \frac{B^{new}}{B^{old}} * \mathcal{W}_B^{old} $$
    4343   $$\mathcal{W}_V^{new} = \frac{V^{new}}{V^{old}} * \mathcal{W}_V^{old} $$
    4444   $$\mathcal{W}_R^{new} = \frac{R^{new}}{R^{old}} * \mathcal{W}_R^{old} $$
    45  the final weight is then computed by recombining the weight according to the above formula.
    46 
    47  However in MadGraph5_aMC@NLO, we use the virt-tricks method which avoid the computation of the virtual for some of the phase-space points. This speed optimisation method forbids the simple above reweighting since the generation will have $\mathcal{W}_V^{old}=0$ even if $V_{old} \neq 0$. To avoid this problem, $\mathcal{W}_B$ is splitted in two piece :$\mathcal{W}_{BC}$, $\mathcal{W}_{BB}$. $\mathcal{W}_{BC}$ is the part, proportional to the born, related to the one of the counter-terms, while $\mathcal{W}_{BB}$ is for all the other contributions (the born itself and the approximate virtual).
    48  The reweighting is then done as
     45 with the final weight computed by recombining these weights according to the prescription given before.
     46
     47 The actual implementation in MadGraph5_aMC@NLO is slightly more complicated, owing to the procedure adopted in the computation of the virtual contribution (see sect.2.4.3 http://arxiv.org/pdf/1405.0301.pdf). This speed optimisation method prevents one from performing the reweighting as written above, since there is the possibility that $\mathcal{W}_V^{old}=0$ even if $V_{old} \neq 0$. To avoid this problem, $\mathcal{W}_B$ is split in two pieces :$\mathcal{W}_{BC}$, $\mathcal{W}_{BB}$. $\mathcal{W}_{BC}$ is the part, proportional to the Born, related to the one of the counterterms, while $\mathcal{W}_{BB}$ includes all of the other contributions (the Born itself and the approximate virtual).
     48 The reweighting is then carried out as follows:
    4949   $$\mathcal{W}_{BB}^{new} = \frac{(B^{new}+V^{new})}{(B^{old}+V^{old})} * \mathcal{W}_{BB}^{old} $$
    5050   $$\mathcal{W}_{BC}^{new} = \frac{B^{new}}{B^{old}} * \mathcal{W}_{BC}^{old} $$
    5151   $$\mathcal{W}_V^{new} = \frac{(B^{new}+V^{new})}{(B^{old}+V^{old})} * \mathcal{W}_V^{old} $$
    5252   $$\mathcal{W}_R^{new} = \frac{R^{new}}{R^{old}} * \mathcal{W}_R^{old} $$
    53  Such reweighting is fully NLO accurate. As in the LO case, the statistical uncertainty can be enhanced by the reweighting. Additionally the trick to support the virt-tricks adds an additional contribution to statistical uncertainty.
     53 Such reweighting is fully NLO accurate. As in the LO case, the statistical uncertainty can be enhanced by reweighting.
    5454 
    55  '''This method will be released in a future version of MadGraph5_aMC@NLO''' and can currently be provided on request. Since this reweighting is based on a dedicated decomposition, the NLO sample must be generated in a specific way to have the additional information in the Les Houches event file.
     55 '''This method will be released in a future version of MadGraph5_aMC@NLO''' and can currently be provided on request. Since it is based on a dedicated decomposition, the NLO sample must be generated in a specific way for the Les Houches event file to contain the necessary information (see below).
    5656
    5757[[PageOutline]]
    5858= Technical details
    5959== Limitation
    60   1. Changes of PDFs and/or of cuts are not permitted with this method of reweighting.
     60  1. Changes of PDFs and/or of cuts are not permitted with these methods of reweighting.
    6161  2. Likewise, changes are not allowed in the functional forms used to compute the hard scales, and hence alpha_S
    6262  3. In the presence of a decay chain, the order of the particles in the event file is important, and especially so with LHE events not produced by MadGraph5_aMC@NLO.
     
    6565== Installation
    6666 
    67  This module is built-in in MadGraph5_aMC@NLO.2.3.2.
    68  Since MadGraph5_aMC@NLO.2.3.2, this module relies on '''f2py''' to be installed. The easiest way to install f2py is to install numpy (if not already done).
     67 This module is built-in in MadGraph5_aMC@NLO.2.3.2 and later.
     68 It relies on '''f2py'''; the easiest way to install f2py is to install numpy (if not already done).
    6969 
    7070== Running the code
     
    9393}}}
    9494 You can also just type "5" but please avoid to use this mode in scripts.
    95  After pressing enter the question is reasked and you now should have:
     95 After hitting the <enter> key, the question is asked again and you now should have:
    9696 {{{
    9797The following switches determine which operations are executed:
     
    1331333
    134134}}}
    135  to open an editor (in most system this use vi) where you can edit the content of the reweight_card. The format/options of that file are describe below and at the beginning of the file. It allows you to specify which model/benchmark you want to use.
     135 to open an editor (in most systems this is vi) where you can edit the content of the reweight_card. The format/options of such a file are described below, and at the beginning of the file itself. The card allows you to specify which model/benchmark you want to use.
    136136 When you are done, exit the file and press <enter>.
    137137
     
    142142 In order to run the reweighting on previously-generated samples, you need to go to the relevant process directory and run either the '''./bin/madevent''' or the '''./bin/aMC@NLO''' script for LO or NLO event generation respectively. You can then type  '''reweight RUN_NAME''' (RUN_NAME is typically run_01) and you will be asked the same questions as above.
    143143
    144  Another options is to manually edit the Cards/reweight_card.dat file and then run one of the two following command:
     144 Another option is to manually edit the Cards/reweight_card.dat file and then run either of the two following commands:
    145145{{{
    146146./bin/madevent reweight RUN_NAME -f
    147147./bin/aMC@NLO reweight RUN_NAME -f
    148148}}}
    149  The first sample is available in case of LO event generation, while the second is present in the case of NLO event generation.
     149 for the LO and NLO cases respectively.
    150150
    151151 === Content of the reweight_card
     
    154154 This card is composed of two sections:
    155155 1. '''Options''': [[BR]]
    156    These are options which change the behaviour of the reweighting. Those lines need to be specified before the first 'launch' command in order to be effective.
    157    1. '''change model <XXX>''' performs the reweighting within a new model (you then need to provide a full param_card and not the difference between two cards)
     156   These are options that control the behaviour of the reweighting. The lines below must be specified before the first 'launch' command in order to be effective.
     157   1. '''change model <XXX>''' performs the reweighting with a new model (you then need to provide a full param_card and not the difference between two cards).
    158158   2. '''change process <XXX>''' change the process definition.
    159159   3. '''change process <XXX> --add''' add one process definition to the new list.
    160    4. '''change output <i>''': Three options: 'default'(i.e. lhef version3 format), '2.0' (i.e. lhef version2 format, the main weight is replace), 'unweight' (a new unweighting is applied on the events sample.)
    161    5. '''change helicity <True|False>''': perform reweighting for the given helicity (True --default--) or carry out the sum over helicity.
    162    6. '''change rwgt_dir <PATH>''': change directory where the computation is performed. This can be used to avoid to recreate/recompile the fortran executable if pointing to a previously existing directory.
     160   4. '''change output <i>''': Three options: 'default'(i.e. lhef version3 format), '2.0' (i.e. lhef version2 format, the main weight is replaced), 'unweight' (a new unweighting is applied on the events sample).
     161   5. '''change helicity <True|False>''': performs reweighting for the given helicity (True --default--) or carry out the sum over helicity (False).
     162   6. '''change rwgt_dir <PATH>''': changes directory where the computation is performed. This can be used to avoid to recreate/recompile the fortran executable if pointing to a previously existing directory.
    163163   7. '''change mode LO''': For NLO samples, this flag forces the code to perform the kamikaze reweighting (available in 2.4.0)
    164164
    165  2. '''benchmark definition''':[[BR]]
    166    Starting one benchmark starts with the line
     165 2. '''Benchmark definition''':[[BR]]
     166   A benchmark is a given set of parameters within the chosen model. You may create a new benchmark by starting with the command line:
    167167   {{{
    168168launch
    169169    }}}
    170    then you can have either a series of "set command" to specify how to edit the param_card from the original one. Are a couple of equivalent options:
     170   After this, you can issue a series of "set" commands to specify how to edit the param_card from the original one. There are a couple of equivalent options:
    171171   {{{
    172172    set mt 150
    173173    set mass 6 150
    174174    }}} 
    175    instead of using the "set command" you can also specify the path to a (valid) param_card
     175   Rather than using the "set" command, you can also specify the path to a (valid) param_card
    176176   {{{
    177177    PATH
    178178    }}}
    179    For a scan over parameter:
    180    1. You can have multiple line "launch" in the file, each of them followed by the associated "set" lines
    181    2. You can use the scan syntax of MadGraph5_aMC@NLO and use one of the following syntax:
     179   For a scan over parameters:
     180   1. You can have multiple command lines "launch" in the file, each of them followed by the associated "set" commands.
     181   2. You can use the scan syntax of MadGraph5_aMC@NLO as in the following examples:
    182182   {{{
    183183    set mt 6 scan:range(100,200,20)
     
    187187 == Output format
    188188
    189  the output format follows the Leshouches agreement version 3 http://arxiv.org/abs/arXiv:1405.1067
    190  As an example the header looks like:
     189 The output format complies with the Les Houches agreement version 3 (see http://arxiv.org/abs/arXiv:1405.1067)
     190 For example, the header looks like this:
    191191 {{{
    192192<initrwgt>
     
    201201</initrwgt>
    202202}}}
    203  and one associated events:
     203 and one associated event:
    204204 {{{
    205205<event>
     
    220220</event>
    221221}}}
    222  The reweight_card in that case was:
     222 The above stems from a reweight_card that reads as follows:
    223223 {{{
    224224launch
     
    242242}}}
    243243
    244  The cross-section of the original file and those associated with the new hyppothesis are printed at the end of the script:
     244 The cross sections of the original model and those resulting from the new hypothesis are printed at the end of the run:
    245245 {{{
    246246INFO: Original cross-section: 0.80086112072 +- 0.0025669959099 pb
     
    254254= LO Validation
    255255
    256  The comparison for the full cross-section are done like this:
     256 Comparisons of the fully-inclusive cross sections. Proceed as follows:
    257257 {{{ ./bin/madevent ./Cards/reweight_card.dat}}}
    258258
    259259 == p p > e+ e- cross-section
    260260
    261  1. The reweight_card is the following:
     261 1. The reweight_card is:
    262262{{{
    263263launch
     
    268268 set aewm1 300
    269269}}}
    270  2. The associated cross-section are
     270 2. The associated cross sections are
    271271   1. 1135.25 pb
    272272   2. 1095.28 pb
    273273   3. 1329.52 pb
    274  3. The cross-section computed with MadEvent are
     274 3. The cross sections computed directly with MG5_aMC@NLO are
    275275   1. 1130 +- 2.815 pb
    276276   2. 1098 +- 2.478 pb
     
    279279 == EWDIM6 Validation
    280280 === input
    281  1. The model use for this validation is the EWDIM6 (See: http://arxiv.org/abs/arXiv:1205.4231). 10k events where generated with the standard model (cross-section:  0.8008 ± 0.0026 pb)
     281 1. The model used for this validation is the EWDIM6 (See: http://arxiv.org/abs/arXiv:1205.4231). The 10k events to be reweighted were generated with the Standard Model (cross-section:  0.8008 ± 0.0026 pb)
    282282 2. The reweight_card was:
    283283{{{
     
    313313   set Dim6 5 0
    314314}}}
    315 The same scan was done for the three first coupling (CWWW, CW, CB)
    316 
    317 === result:
     315The same scan is performed for the three couplings (CWWW, CW, CB)
     316
     317=== Results:
    318318 1. For CWWW
    319319
    320     ||   Coupling value ($TeV^{-2}$)   ||    Reweight cross-section (pb)   ||      MG5_aMC cross-section (pb)   ||   Status   ||
     320    ||   Coupling value ($TeV^{-2}$)   ||    Reweighted cross-section (pb)   ||      MG5_aMC cross-section (pb)   ||   Status   ||
    321321    ||    0.01                ||  0.800810008029             ||  0.7973 ± 0.0023  || OK ||
    322322    ||    0.1                 ||  0.800903791291             ||  0.799 ± 0.0026   || OK ||
    323323    ||    1                   ||  0.802209013071             ||  0.7987 ± 0.0025  || OK ||
    324324    ||    10                  ||  0.85200014698              ||  0.8584 ± 0.00092  || OK ||
    325     ||    100                 ||  5.0238030968               ||  6.09 ± 0.0082    || '''FAIL (as expected)''': Require too much stats ||
    326     ||    100                 ||  5.04763                    ||  6.09 ± 0.0082    || '''FAIL (as expected)''': Require too much stats  (done with a sample of 100k events) ||
    327     The last entry fails since the expected distribution for such value of the coupling is too different from the distribution of the Standard Model. Such discrepancy are expected in this case. One hint is that the cross-section is an order of magnitude higher than the original one (Looking at the distribution confirm this).
    328     The inversed reweight (i.e. starting from the CWW=100 sample of events and reweight to find back the SM) is working properly. It returned: 0.803341120226
     325    ||    100                 ||  5.0238030968               ||  6.09 ± 0.0082    || '''FAIL (as expected)''': Requires too much stats ||
     326    ||    100                 ||  5.04763                    ||  6.09 ± 0.0082    || '''FAIL (as expected)''': Requires too much stats  (done with a sample of 100k events) ||
     327    The FAIL entries indicate that the differential results for such value of the coupling are too different from the Standard Model ones, and discrepancies between the original and reweighted results are indeed normal in this case. Note that this behaviour can be expected simply on the basis of the total cross section results (the SM one and that associated with the new coupling differ by an order of magnitude).
     328    On the other hand, the inverse reweighting (that starts from the CWW=100 sample, and reweights to find back the SM) works properly; it returns 0.803341120226 pb for the total cross section.
    329329   
    330     The various distribution for those generation are in attachment of this web page. The dashed blue curve is the one produced by reweighting. While the solid black is the curve generated by MadEvent. All sample are done with 100k events for the comparison of distributions.
     330    Various differential distributions for the reweightings above are in attachment of this web page. The dashed blue curve is the one produced by reweighting, while the solid black is the curve generated directly by MG5_aMC@NLO. All samples consist of 100k events.
    331331 
    332332
     
    340340    ||    100                 ||  4.46724081967              ||  4.519 ± 0.015    || '''FAIL (as expected) ''' ||
    341341    ||    100                 ||  4.44273                    ||  4.519 ± 0.015    || '''FAIL (as expected)'''  (done with a sample of 100k events) ||
    342     Same comment as for the previous coupling.
     342    Same comments as for the previous case.
    343343
    3443443. For CB
     
    350350    ||    100                 ||  0.790019392142             ||  0.7852 ± 0.0026    || OK ||
    351351    ||    100                 ||  0.786698206995             ||  0.7852 ± 0.0026    || OK  (done with a sample of 100k events) ||
    352    This operator has less impact on the cross-section/distributions, and therefore even a large value of the coupling is still working fine.
     352   This operator has a smaller impact on the cross section and distributions, and therefore even a large value of the coupling works fine.
    353353
    354354Note:
    355   1. The cross-section obtained for 100k events sample is 0.7989 ± 0.00087
    356   2. The statistical fluctuation of the original sample is reflected on the reweighing cross-section (as expected)
     355  1. The cross section obtained for a 100k-event sample is 0.7989 ± 0.00087
     356  2. The statistical fluctuations of the original sample are reflected on the reweighted cross-section (as expected)
    357357
    358358=NLO Validation
    359359 
    360  All validation plots are in this presentation:
     360 All validation plots can be found in the following talk:
    361361  https://indico.cern.ch/event/458670/contribution/4/attachments/1203988/1753929/EW_reweighting_mattelaer.pdf