The Gaudi Framework  v36r9p1 (5c15b2bb)
TupleEx1.TupleEx1 Class Reference
Inheritance diagram for TupleEx1.TupleEx1:
Collaboration diagram for TupleEx1.TupleEx1:

Public Member Functions

def execute (self)
 

Detailed Description

Simple algorithm which implicitely book&fill N-Tuples

Definition at line 77 of file TupleEx1.py.

Member Function Documentation

◆ execute()

def TupleEx1.TupleEx1.execute (   self)
The major method 'execute', it is invoked for each event

Definition at line 84 of file TupleEx1.py.

84  def execute(self):
85  """
86  The major method 'execute', it is invoked for each event
87  """
88 
89  rSvc = self.randSvc()
90  gauss = Numbers(rSvc, Rndm.Gauss(0.0, 1.0))
91  flat = Numbers(rSvc, Rndm.Flat(-10, 10))
92  expo = Numbers(rSvc, Rndm.Exponential(1.0))
93  breit = Numbers(rSvc, Rndm.BreitWigner(0.0, 1.0))
94  poisson = Numbers(rSvc, Rndm.Poisson(2.0))
95  binom = Numbers(rSvc, Rndm.Binomial(8, 0.25))
96 
97  # =====================================================================
98  # primitive row-wise n-tuple
99  # =====================================================================
100  tuple1 = self.nTuple(1, "Trivial Row-Wise Tuple", 42)
101 
102  # fill N-Tuple with double/float numbers:
103  tuple1.column("gauss", gauss())
104  tuple1.column("flat", flat())
105  tuple1.column("expo", expo())
106  tuple1.column("breit", breit())
107 
108  # fill N-Tuple with integer numbers:
109  tuple1.column("poiss1", int(poisson()))
110  tuple1.column("binom1", int(binom()))
111 
112  # fill N-Tuple with long long numbers:
113  tuple1.column_ll("poiss2", int(poisson()))
114  tuple1.column_ll("binom2", int(binom()))
115 
116  # fill N-Tuple with unsigned long long numbers:
117  tuple1.column_ull("poiss3", int(poisson()))
118  tuple1.column_ull("binom3", int(binom()))
119 
120  # fill N-Tuple with "reduced" integer numbers:
121  tuple1.column("poiss4", int(poisson()), 0, 14)
122  tuple1.column("binom4", int(binom()), 0, 14)
123 
124  # fill N-Tuple with "boolean" numbers:
125  tuple1.column("poisb", poisson() > 1.0)
126 
127  # commit the row
128  tuple1.write()
129 
130  # =====================================================================
131  # the same n-tuple but column-wise
132  # =====================================================================
133  tuple2 = self.nTuple(2, "Trivial Column-Wise Tuple")
134 
135  # fill N-Tuple with double/float numbers:
136  tuple2.column("gauss", gauss())
137  tuple2.column("flat", flat())
138  tuple2.column("expo", expo())
139  tuple2.column("breit", breit())
140 
141  # fill N-Tuple with integer numbers:
142  tuple2.column("poiss", int(poisson()))
143  tuple2.column("binom", int(binom()))
144  # fill N-Tuple with "reduced" integer numbers:
145  tuple2.column("poiss", int(poisson()), 0, 14)
146  tuple2.column("binom", int(binom()), 0, 14)
147 
148  # fill N-Tuple with "boolean" numbers:
149  tuple2.column("poisb", poisson() > 1.0)
150 
151  # commit the row
152  tuple2.write()
153 
154  # =====================================================================
155  # book and fill Column-wise NTuple with "fixed"-size arrays/vectors
156  # =====================================================================
157  tuple3 = self.nTuple(3, "Fixed-size arrays/vectors")
158 
159  tuple3.array("arflat", vct([flat() for i in range(0, 50)]))
160  tuple3.array("arexpo", vct([expo() for i in range(0, 62)]))
161  tuple3.array("argau", vct([gauss() for i in range(0, 42)]))
162  t = tuple([gauss() for i in range(0, 42)])
163  tuple3.array("argau2", vct(t))
164 
165  tuple3.write()
166 
167  return SUCCESS
168 
169 
170 # =============================================================================
171 # job configuration
172 # @author Vanya BELYAEV ibelyaev@physics.syr.edu
173 # @date 2006-11-26

The documentation for this class was generated from the following file:
Rndm::Flat
Parameters for the flat random number generation within boundaries [minimum, maximum].
Definition: RndmGenerators.h:253
TupleEx1.vct
def vct(sequence)
Definition: TupleEx1.py:54
Rndm::Gauss
Parameters for the Gauss random number generation.
Definition: RndmGenerators.h:32
GaudiPython.Pythonizations.execute
execute
Definition: Pythonizations.py:588
Rndm::BreitWigner
Parameters for the BreitWigner distributed random number generation.
Definition: RndmGenerators.h:94
HistoUtilsEx.gauss
gauss
Definition: HistoUtilsEx.py:66
Rndm::Exponential
Parameters for the Gauss random number generation.
Definition: RndmGenerators.h:56
Rndm::Poisson
Parameters for the Poisson distributed random number generation with a given mean.
Definition: RndmGenerators.h:209
TupleEx1.Numbers
Numbers
Definition: TupleEx1.py:43
Rndm::Binomial
Parameters for the Binomial distributed random number generation.
Definition: RndmGenerators.h:230
Gaudi::Functional::details::zip::range
decltype(auto) range(Args &&... args)
Zips multiple containers together to form a single range.
Definition: FunctionalDetails.h:102