hej is hosted by Hepforge, IPPP Durham
HEJ 2.1.4
High energy resummation for hadron colliders
Loading...
Searching...
No Matches
event_types.hh
Go to the documentation of this file.
1
8#pragma once
9
10#include <string>
11
12#include "HEJ/exceptions.hh"
13
14namespace HEJ {
15
17 namespace event_type {
19 enum EventType: std::size_t {
23 FKL = 4,
36 };
37
39
42 inline
43 std::string name(EventType type) {
44 switch(type) {
45 case FKL:
46 return "FKL";
48 return "unordered backward";
50 return "unordered forward";
52 return "extremal qqbar backward";
54 return "extremal qqbar forward";
55 case central_qqbar:
56 return "central qqbar";
57 case non_resummable:
58 return "non-resummable";
59 case no_2_jets:
60 return "no 2 jets";
61 case bad_final_state:
62 return "bad final state";
63 default:
64 throw std::logic_error{"Unreachable"};
65 }
66 }
67
69 inline
70 constexpr bool is_resummable(EventType type) {
71 switch(type) {
72 case FKL:
77 case central_qqbar:
78 return true;
79 default:
80 return false;
81 }
82 }
83
85 inline
86 constexpr bool is_uno(EventType type) {
87 return type == unordered_backward || type == unordered_forward;
88 }
89
91 inline
92 constexpr bool is_ex_qqbar(EventType type) {
93 return type == extremal_qqbar_backward || type == extremal_qqbar_forward;
94 }
95
97 inline
98 constexpr bool is_mid_qqbar(EventType type) {
99 return type == central_qqbar;
100 }
101
103 inline
104 constexpr bool is_qqbar(EventType type) {
105 return is_ex_qqbar(type) || is_mid_qqbar(type);
106 }
107
108 } // namespace event_type
109} // namespace HEJ
Custom exception classes.
EventType
Possible event types.
Definition: event_types.hh:19
@ non_resummable
event configuration not covered by All Order resummation
Definition: event_types.hh:20
@ qqbar_mid
alias for central_qqbar
Definition: event_types.hh:33
@ FKL
FKL-type event.
Definition: event_types.hh:23
@ no_2_jets
event with less than two jets
Definition: event_types.hh:22
@ bad_final_state
event with an unsupported final state
Definition: event_types.hh:21
@ qqbar_exf
alias for extremal_qqbar_forward
Definition: event_types.hh:32
@ central_qqbar
event with a central qqbar
Definition: event_types.hh:28
@ qqbar_exb
alias for extremal_qqbar_backward
Definition: event_types.hh:31
@ last_type
alias for central_qqbar
Definition: event_types.hh:35
@ unob
alias for unordered_backward
Definition: event_types.hh:29
@ extremal_qqbar_backward
event with a backward extremal qqbar
Definition: event_types.hh:26
@ unordered_forward
event with unordered forward emission
Definition: event_types.hh:25
@ extremal_qqbar_forward
event with a forward extremal qqbar
Definition: event_types.hh:27
@ first_type
alias for non_resummable
Definition: event_types.hh:34
@ unordered_backward
event with unordered backward emission
Definition: event_types.hh:24
@ unof
alias for unordered_forward
Definition: event_types.hh:30
constexpr bool is_uno(EventType type)
Returns True for an unordered EventType.
Definition: event_types.hh:86
constexpr bool is_resummable(EventType type)
Returns True for a HEJ EventType.
Definition: event_types.hh:70
constexpr bool is_qqbar(EventType type)
Returns True for any qqbar event EventType.
Definition: event_types.hh:104
constexpr bool is_ex_qqbar(EventType type)
Returns True for an extremal_qqbar EventType.
Definition: event_types.hh:92
constexpr bool is_mid_qqbar(EventType type)
Returns True for an central_qqbar EventType.
Definition: event_types.hh:98
std::string name(EventType type)
Event type names.
Definition: event_types.hh:43
Main HEJ 2 Namespace.
Definition: mainpage.dox:1