IMeVPrtlFlux interface class definiton.
More...
#include <IMeVPrtlFlux.h>
|
TLorentzVector | BeamOrigin () |
|
double | EnuLab (double enucm, TLorentzVector meson_mom, TLorentzVector meson_pos) |
|
IMeVPrtlFlux interface class definiton.
Definition at line 39 of file IMeVPrtlFlux.h.
virtual evgen::ldm::IMeVPrtlFlux::~IMeVPrtlFlux |
( |
| ) |
|
|
virtualdefaultnoexcept |
evgen::ldm::IMeVPrtlFlux::IMeVPrtlFlux |
( |
const fhicl::ParameterSet & |
pset | ) |
|
|
inline |
Definition at line 49 of file IMeVPrtlFlux.h.
52 std::vector<double> rotation = pset.get<std::vector<double>>(
"Beam2DetectorRotation");
53 assert(rotation.size() == 9);
55 TVector3 beam2DetX(rotation[0], rotation[3], rotation[6]);
56 TVector3 beam2DetY(rotation[1], rotation[4], rotation[7]);
57 TVector3 beam2DetZ(rotation[2], rotation[5], rotation[8]);
59 fBeam2Det.RotateAxes(beam2DetX, beam2DetY, beam2DetZ);
62 std::vector<double>
origin = pset.get<std::vector<double>>(
"BeamOrigin");
63 assert(origin.size() == 3 || origin.size() == 6);
65 if (origin.size() == 3) {
66 fBeamOrigin.SetXYZ(origin[0], origin[1], origin[2]);
69 else if (origin.size() == 6) {
70 TVector3 userpos = TVector3(origin[0], origin[1], origin[2]);
71 TVector3 beampos = TVector3(origin[3], origin[4], origin[5]);
76 unsigned seed = art::ServiceHandle<rndm::NuRandomService>()->getSeed();
89 evgb::EvtTimeShiftFactory::Instance().Print();
std::string fSpillTimeConfig
static const Constants & Instance()
evgb::EvtTimeShiftI * fTimeShiftMethod
BEGIN_PROLOG could also be cout
constexpr Point origin()
Returns a origin position with a point of the specified type.
TLorentzVector evgen::ldm::IMeVPrtlFlux::BeamOrigin |
( |
| ) |
|
|
inlineprotected |
Definition at line 107 of file IMeVPrtlFlux.h.
evgb::EvtTimeShiftI * fTimeShiftMethod
double evgen::ldm::IMeVPrtlFlux::EnuLab |
( |
double |
enucm, |
|
|
TLorentzVector |
meson_mom, |
|
|
TLorentzVector |
meson_pos |
|
) |
| |
|
inlineprotected |
Definition at line 119 of file IMeVPrtlFlux.h.
121 double costh = meson_mom.Vect().Unit().Dot(-meson_pos.Vect().Unit());
124 double M = 1. / (meson_mom.Gamma() * (1 - meson_mom.Beta() * costh));
virtual bool evgen::ldm::IMeVPrtlFlux::MakeFlux |
( |
const simb::MCFlux & |
mcflux, |
|
|
MeVPrtlFlux & |
flux, |
|
|
double & |
weight |
|
) |
| |
|
pure virtual |
TRotation evgen::ldm::IMeVPrtlFlux::fBeam2Det |
|
protected |
TVector3 evgen::ldm::IMeVPrtlFlux::fBeamOrigin |
|
protected |
std::string evgen::ldm::IMeVPrtlFlux::fSpillTimeConfig |
|
protected |
evgb::EvtTimeShiftI* evgen::ldm::IMeVPrtlFlux::fTimeShiftMethod |
|
protected |
The documentation for this class was generated from the following file: