33 int main(
int argc,
char **argv)
49 JParser<> zap(
"Auxiliary program to manipulate MUPAGE data.");
53 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
54 zap[
'P'] =
make_field(
P,
"Keep muons in event with given probability (<= 1, 1 == all)") = 1.0;
55 zap[
'u'] =
make_field(
u,
"Reject events as a function of multiplicity (>= 0, 0 == none)") = 0.0;
56 zap[
'E'] =
make_field(
E,
"Energy scaling factor") = 1.0;
62 catch(
const exception &error) {
63 FATAL(error.what() << endl);
66 gRandom->SetSeed(seed);
82 while (inputFile.hasNext()) {
84 STATUS(
"event: " << setw(10) << inputFile.getCounter() <<
'\r');
DEBUG(endl);
86 Evt*
event = inputFile.next();
92 if (gRandom->Rndm() <
P)
108 i =
event->mc_trks.erase(i);
113 if (gRandom->Rndm() <
pow(event->mc_trks.size(),-
u)) {
Utility class to parse command line options.
int main(int argc, char *argv[])
ROOT TTree parameter settings of various packages.
Recording of objects on file according a format that follows from the file name extension.
static const double MASS_MUON
muon mass [GeV]
static const JGeaneWater gWater
Function object for energy loss of muon in sea water.
Auxiliary class for defining the range of iterations of objects.
I/O formatting auxiliaries.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
T pow(const T &x, const double y)
Power .
General purpose messaging.
Template specialisation of JMultipleFileScanner for Monte Carlo header.
Scanning of objects from multiple files according a format that follows from the extension of each fi...
const double getSpeedOfLight()
Get speed of light.
General purpose class for object reading from a list of file names.
Utility class to parse command line options.
const JLimit & getLimit() const
Get limit.
Longitudinal emission profile EM-shower.
std::vector< Trk > mc_trks
MC: list of MC truth tracks.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
#define DEBUG(A)
Message macros.