# MCEventWeight¶

This wiki page describes how to generate event weights in LArSoft for the study of beam, interaction model or other systematics.

**Table of contents**- MCEventWeight

## GENIE re-weighting¶

For the parameters that is possible to vary, check the GENIE User Manual: https://arxiv.org/abs/1510.05494 (Chapter 9).

For information on how to save or access these data, see the AnalysisTree page.

You can decide how many GENIE parameters you want to vary. This can be done defining a *function* in a fcl file.

For example, if we want to vary the Axial Mass for CC quasi elastic interactions we'll define something like this:

genie_qema: { type: Genie random_seed: 1 parameter_list: ["QEMA"] parameter_sigma: [1 ] mode: pm1sigma number_of_multisims: 0 }

where `parameter_list`

contains the string "QEMA". For a list of the possible strings that can be used see the tape below. In `parameter_sigma`

you need to specify the number of sigmas you want to change that parameter. There are currently three possibilities for `mode`

:

`mode` |
Description |
---|---|

pm1sigma | This will ignore the parameter_sigma and number_of_multisims inputs and change the specified parameters by + and - 1 sigma. This allows to understand the impact one parameter's uncertainty on the final measurement. |

multisim | If `multisim` is specified the sigma used to vary the parameter is generated according to a gaussian distribution with mean zero and standard deviation equal to one. Many weights are generated based on the number specified in `number_of_multisims` . Note that the generated gaussian number is multiplied by the values in `parameter_sigma` . So the sigma used to vary the parameter is `parameter_sigma x Gauss(0,1)` . |

Everything else you may write | In this case one weight for each parameter in `parameter_list` will be generated. The sigma used to vary the parameter is the one that you specify in `parameter_sigma` . Important is to write the right `number_of_multisims` . |

Many *functions* are already defined in `uboone/EventWeight/jobs/jobs_geniereweight/genie_eventweight_microboone.fcl`

which also defines a job that can be run in LArSoft.

If you want to evaluate the neutrino interaction systematics for your measurement, you will most likely use:

genie_all: { type: Genie random_seed: 1 parameter_list: ["QEMA", "NCELaxial", "NCELeta", "CCResAxial", "CCResVector", "NCResAxial", "NCResVector", "CohMA", "CohR0", "NonResRvp1pi", "NonResRvbarp1pi", "NonResRvp2pi", "NonResRvbarp2pi", "ResDecayGamma", "ResDecayEta", "NC", "DISAth", "DISBth", "DISCv1u", "DISCv2u", "AGKYxF", "AGKYpT", "FormZone", "FermiGasModelKf", "IntraNukeNmfp", "IntraNukeNcex", "IntraNukeNel", "IntraNukeNinel", "IntraNukeNabs", "IntraNukeNpi", "IntraNukePImfp", "IntraNukePIcex", "IntraNukePIel", "IntraNukePIinel", "IntraNukePIabs", "IntraNukePIpi"] parameter_sigma: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] mode: multisim number_of_multisims: 1000 }

which will vary all the parameters at the same time, generating a gaussian distributed sigma, 1000 times. 1000 weights will be stored in the ART event.

What follows is the list of reweighting parameters present in LArSoft.

Parameters with a (*) contain more that one reweighing parameter at the same time.

Parameter name | Description |
---|---|

NCELaxial | Axial mass for NC elastic |

NCELeta | Strange axial form factor for NC elastic |

QEMA | Axial mass for CC quasi-elastic |

QEVec | Choice of CCQE vector form factor (sigma = 0 => BBA05; sigma = 1 => Dipole) |

CCResAxial | Axial mass for CC resonance neutrino production |

CCResVector | Vector mass for CC resonance neutrino production |

ResGanged | CC Res && NC Res (NOT ACTIVE) |

NCResAxial | Axial mass for NC resonance neutrino production |

NCResVector | Vector mass for NC resonance neutrino production |

CohMA | Axial mass for CC and NC coherent pion production |

CohR0 | Nuclear size param. controlling pi absorption in Rein-Sehgal model |

NonResRvp1pi | v+p and vbar + n (1 pi) type interactions (*) |

NonResRvbarp1pi | v+n and vbar + p (1 pi) type interactions (*) |

NonResRvp2pi | v+p and vbar + n (2 pi) type interactions (*) |

NonResRvbarp2pi | v+n and vbar + p (2 pi) type interactions (*) |

ResDecayGamma | BR for radiative resonance decay |

ResDecayEta | BR for single-eta resonance decay |

ResDecayTheta | Pion angular distibution in Delta -> pi N (sigma = 0 => isotropic; sigma = 1 => RS) |

DISAth | Ath higher twist param in BY model scaling variable xi_w |

DISBth | Bth higher twist param in BY model scaling variable xi_w |

DISCv1u | Cv1u u valence GRV98 PDF correction param in BY model |

DISCv2u | Cv2u u valence GRV98 PDF correction param in BY model |

DISnucl | NOT IMPLEMENTED IN GENIE |

AGKYxF | Pion Feynman x for Npi states in AGKY |

AGKYpT | Pion transverse momentum for Npi states in AGKY |

FormZone | Hadron Formation Zone |

FermiGasModelKf | CCQE Pauli Suppression via changes in Fermi level kF |

FermiGasModelSf | Choice of model (sigma = 0 => FermiGas; sigma = 1 => SF (spectral function)) |

IntraNukeNmfp | Nucleon mean free path (total rescattering probability) |

IntraNukeNcex | Nucleon charge exchange probability |

IntraNukeNel | Nucleon elastic reaction probability |

IntraNukeNinel | Nucleon inelastic reaction probability |

IntraNukeNabs | Nucleon absorption probability |

IntraNukeNpi | Nucleon pi-production probability |

IntraNukePImfp | Pi mean free path (total rescattering probability) |

IntraNukePIcex | Pi charge exchange probability |

IntraNukePIel | Pi elastic reaction probability |

IntraNukePIinel | Pi inelastic reaction probability |

IntraNukePIabs | Pi absorption probability |

IntraNukePIpi | Pi pi-production probability |

### Example: Reweight RES parameters by +-3 sigma each¶

The GENIE function to write is this case is:

genie_all: { type: Genie random_seed: 1 parameter_list: ["CCResAxial", “CCResVector", “NCResAxial”] parameter_sigma: [-3, 3,-3, 3,-3, 3] mode: whatever number_of_multisims: 2 }