|
ATLAS Offline Software
|
Go to the documentation of this file.
3 from AthenaCommon
import Logging
4 from ..powheg_V2
import PowhegV2
8 logger = Logging.logging.getLogger(
"PowhegControl")
13 Powheg configuration for Z boson production in Standard Model Effective Field Theory
15 This process is an implementation of the Drell-Yan NLO cross sections pp -> Z/y* -> l+l- by SMEFT operators
17 It includes 196 SMEFT coefficients that the user can set. For symmetry, the authors included coefficients
18 for operators involving top-quarks. These should not be used as they are only relevant when initial-state
19 tops are considered, which is never the case.
21 Publication (please cite if using this process): https://arxiv.org/abs/1804.07407
22 Brief manual (highly recommended reading if using this process): accessible on LXPlus etc. at $POWHEGPATH/POWHEG-BOX-V2/Z_smeft/Docs/manual-BOX-Z_smeft.pdf
24 @author Stefan Richter <stefan.richter@cern.ch>
29 Constructor: all process options are set here.
31 @param base_directory: path to PowhegBox code.
32 @param kwargs dictionary of arguments from Generate_tf.
34 super(Z_SMEFT, self).
__init__(base_directory,
"Z_smeft", **kwargs)
40 self.
allowed_decay_modes = [
"z > e+ e-",
"z > mu+ mu-",
"z > tau+ tau-",
"z > ve ve~",
"z > vm vm~",
"z > vt vt~"]
136 for coefficient_name
in [
"ReGEw",
"ImGEw",
"ReGEe",
"ImGEe"]:
138 for coefficient
in [
"ReGUw_{flavours}",
"ImGUw_{flavours}",
"ReGUe_{flavours}",
"ImGUe_{flavours}",
"ReLeQu3_{flavours}",
"ImLeQu3_{flavours}",
"ReLeQu_{flavours}",
"ImLeQu_{flavours}"]:
139 for flavours
in [
"{}{}".
format(*x)
for x
in itertools.product([
"u",
"c",
"t"], repeat=2)]:
140 coefficient_name = coefficient.format(flavours=flavours)
142 for coefficient
in [
"ReGDw_{flavours}",
"ImGDw_{flavours}",
"ReGDe_{flavours}",
"ImGDe_{flavours}",
"ReLedQ_{flavours}",
"ImLedQ_{flavours}"]:
143 for flavours
in [
"{}{}".
format(*x)
for x
in itertools.product([
"d",
"s",
"b"], repeat=2)]:
144 coefficient_name = coefficient.format(flavours=flavours)
146 for coefficient
in [
"QphiU_{flavours}",
"Uphi_{flavours}",
"QLu_{flavours}",
"Ceu_{flavours}",
"CLu_{flavours}"]:
147 for flavours
in [
"uu",
"uc",
"ut",
"cc",
"ct",
"tt"]:
148 coefficient_name = coefficient.format(flavours=flavours)
150 for coefficient
in [
"QphiD_{flavours}",
"Dphi_{flavours}",
"QLd_{flavours}",
"Ced_{flavours}",
"CLd_{flavours}",
"Qe_{flavours}"]:
151 for flavours
in [
"dd",
"ds",
"db",
"ss",
"sb",
"bb"]:
152 coefficient_name = coefficient.format(flavours=flavours)
158 """! Validate vdecaymode keyword."""
162 __decay_mode_lookup = {
"e+ e-": 1,
"mu+ mu-": 2,
"tau+ tau-": 3,
"ve ve~": 4,
"vm vm~": 5,
"vt vt~": 6}
def expose(self)
Add all names to the interface of this object.
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
def parameters_by_name(self, name)
Retrieve all parameters that use a given name.
allowed_decay_modes
List of allowed decay modes.
def default_scales(self)
Default scale variations for this process.
def add_keyword(self, keyword, value=None, name=None, frozen=None, hidden=None, description=None, **kwargs)
Register configurable parameter that is exposed to the user.
def parameters_by_keyword(self, keyword)
Retrieve all parameters that use a given keyword.
validation_functions
List of validation functions to run before preparing runcard.
def check_decay_mode(self, decay_mode, allowed_decay_modes=None)
Check whether a decay mode is allowed an raise an exception if it is not.
Powheg configuration for Z boson production in Standard Model Effective Field Theory.
def default_PDFs(self)
Default PDFs for this process.
Base class for PowhegBox V2 processes.
def validate_decays(self)
Validate vdecaymode keyword.