The Gaudi Framework  v36r16 (ea80daf8)
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 73 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 80 of file TupleEx1.py.

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