Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
Generator
src
Physics
BoostedDarkMatter
EventGen
DMDISOutgoingDarkGenerator.cxx
Go to the documentation of this file.
1
//____________________________________________________________________________
2
/*
3
Copyright (c) 2003-2020, The GENIE Collaboration
4
For the full text of the license visit http://copyright.genie-mc.org
5
6
7
Author: Joshua Berger <jberger \at physics.wisc.edu>
8
University of Wisconsin-Madison
9
10
Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
11
University of Liverpool & STFC Rutherford Appleton Laboratory
12
*/
13
//____________________________________________________________________________
14
15
#include <TMath.h>
16
17
#include "
Physics/BoostedDarkMatter/EventGen/DMDISOutgoingDarkGenerator.h
"
18
#include "
Framework/EventGen/EVGThreadException.h
"
19
#include "
Framework/GHEP/GHepRecord.h
"
20
#include "
Framework/GHEP/GHepParticle.h
"
21
#include "
Framework/GHEP/GHepFlags.h
"
22
#include "
Framework/Messenger/Messenger.h
"
23
24
using namespace
genie
;
25
26
//___________________________________________________________________________
27
DMDISOutgoingDarkGenerator::DMDISOutgoingDarkGenerator
() :
28
OutgoingDarkGenerator
(
"genie::DMDISOutgoingDarkGenerator"
)
29
{
30
31
}
32
//___________________________________________________________________________
33
DMDISOutgoingDarkGenerator::DMDISOutgoingDarkGenerator
(
string
config
) :
34
OutgoingDarkGenerator
(
"genie::DMDISOutgoingDarkGenerator"
, config)
35
{
36
37
}
38
//___________________________________________________________________________
39
DMDISOutgoingDarkGenerator::~DMDISOutgoingDarkGenerator
()
40
{
41
42
}
43
//___________________________________________________________________________
44
void
DMDISOutgoingDarkGenerator::ProcessEventRecord
(
GHepRecord
* evrec)
const
45
{
46
// This method generates the final state primary lepton in DIS events
47
48
// no modification is required to the std implementation
49
OutgoingDarkGenerator::ProcessEventRecord
(evrec);
50
51
if
(evrec->
FinalStatePrimaryLepton
()->
IsOffMassShell
()) {
52
LOG
(
"LeptonicVertex"
,
pERROR
)
53
<<
"*** Selected kinematics lead to off mass shell dark matter!"
;
54
evrec->
EventFlags
()->SetBitNumber(
kLeptoGenErr
,
true
);
55
genie::exceptions::EVGThreadException
exception
;
56
exception.
SetReason
(
"E<m for final state dark matter"
);
57
exception.
SwitchOnFastForward
();
58
throw
exception
;
59
}
60
}
61
//___________________________________________________________________________
EVGThreadException.h
genie
THE MAIN GENIE PROJECT NAMESPACE
Definition:
AlgCmp.h:25
pERROR
#define pERROR
Definition:
Messenger.h:59
genie::DMDISOutgoingDarkGenerator::ProcessEventRecord
void ProcessEventRecord(GHepRecord *event_rec) const
Definition:
DMDISOutgoingDarkGenerator.cxx:44
GHepRecord.h
genie::OutgoingDarkGenerator
Abstract class. Is used to pass common implementation to concrete implementations of the EventRecordV...
Definition:
OutgoingDarkGenerator.h:33
DMDISOutgoingDarkGenerator.h
genie::exceptions::EVGThreadException
An exception thrown by EventRecordVisitorI when the normal processing sequence has to be disrupted (f...
Definition:
EVGThreadException.h:35
LOG
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition:
Messenger.h:96
config
static Config * config
Definition:
config.cpp:1054
GHepParticle.h
genie::GHepRecord::FinalStatePrimaryLepton
virtual GHepParticle * FinalStatePrimaryLepton(void) const
Definition:
GHepRecord.cxx:326
GHepFlags.h
genie::OutgoingDarkGenerator::ProcessEventRecord
virtual void ProcessEventRecord(GHepRecord *evrec) const
Definition:
OutgoingDarkGenerator.cxx:59
genie::kLeptoGenErr
Definition:
GHepFlags.h:33
Messenger.h
genie::GHepParticle::IsOffMassShell
bool IsOffMassShell(void) const
Definition:
GHepParticle.cxx:303
genie::exceptions::EVGThreadException::SwitchOnFastForward
void SwitchOnFastForward(void)
Definition:
EVGThreadException.h:44
genie::exceptions::EVGThreadException::SetReason
void SetReason(string reason)
Definition:
EVGThreadException.h:43
genie::GHepRecord::EventFlags
virtual TBits * EventFlags(void) const
Definition:
GHepRecord.h:117
genie::GHepRecord
GENIE's GHEP MC event record.
Definition:
GHepRecord.h:45
genie::DMDISOutgoingDarkGenerator::DMDISOutgoingDarkGenerator
DMDISOutgoingDarkGenerator()
Definition:
DMDISOutgoingDarkGenerator.cxx:27
genie::DMDISOutgoingDarkGenerator::~DMDISOutgoingDarkGenerator
~DMDISOutgoingDarkGenerator()
Definition:
DMDISOutgoingDarkGenerator.cxx:39
fhicl::exception
cet::coded_exception< error, detail::translate > exception
Definition:
exception.h:33
Generated by
1.8.11