29 const char* spectro,
Double_t particle_mass,
35 fSpectroName(spectro), fSpectro(nullptr), fBeam(nullptr)
44 const char* spectro,
const char* beam,
50 fSpectroName(spectro), fBeamName(beam), fSpectro(nullptr), fBeam(nullptr)
85 {
"Q2",
"4-momentum transfer squared (GeV^2)",
"fQ2" },
86 {
"omega",
"Energy transfer (GeV)",
"fOmega" },
87 {
"W2",
"Invariant mass of recoil system (GeV^2)",
"fW2" },
88 {
"x_bj",
"Bjorken x",
"fXbj" },
89 {
"angle",
"Scattering angle (rad)",
"fScatAngle" },
90 {
"epsilon",
"Virtual photon polarization factor",
"fEpsilon" },
91 {
"q3m",
"Magnitude of 3-momentum transfer",
"fQ3mag" },
92 {
"th_q",
"Theta of 3-momentum vector (rad)",
"fThetaQ" },
93 {
"ph_q",
"Phi of 3-momentum vector (rad)",
"fPhiQ" },
94 {
"nu",
"Energy transfer (GeV)",
"fOmega" },
95 {
"q_x",
"x-cmp of Photon vector in the lab",
"fQ.X()" },
96 {
"q_y",
"y-cmp of Photon vector in the lab",
"fQ.Y()" },
97 {
"q_z",
"z-cmp of Photon vector in the lab",
"fQ.Z()" },
130 Error(
Here(
"Init"),
"Particle mass not defined. Module "
131 "initialization failed" );
145 if( !trkifo || !trkifo->
IsOK() )
return 1;
197 if( err )
return err;
199 if (
fM > 0.0 &&
fMA > 0.0 )
209 LoadDBvalue(
f, date, tag.
Data(),
fM );
210 if(
fM <= 0.0 )
fM = 0.511e-3;
216 LoadDBvalue(
f, date, tag.
Data(),
fMA );
217 if(
fMA <= 0.0 )
fMA = 0.938;
Option_t Option_t TPoint TPoint const char mode
R__EXTERN class THaRunBase * gHaRun
static const Double_t target_mass
virtual Int_t ReadRunDatabase(const TDatime &date)
static Int_t DefineVarsFromList(const void *list, EType type, EMode mode, const char *def_prefix, const TObject *obj, const char *prefix, const char *here, const char *comment_subst="")
virtual const char * Here(const char *) const
THaAnalysisObject * FindModule(const char *name, const char *classname, bool do_error=true)
virtual FILE * OpenRunDBFile(const TDatime &date)
const TVector3 & GetPvect() const
THaBeamInfo * GetBeamInfo()
void PrintInitError(const char *here)
virtual void Clear(Option_t *opt="")
void SetSpectrometer(const char *name)
void SetTargetMass(Double_t m)
virtual Int_t DefineVariables(EMode mode=kDefine)
virtual Int_t ReadRunDatabase(const TDatime &date)
THaTrackingModule * fSpectro
virtual void Clear(Option_t *opt="")
virtual ~THaPrimaryKine()
THaPrimaryKine(const char *name, const char *description, const char *spectro="", Double_t particle_mass=0.0, Double_t target_mass=0.0)
void SetBeam(const char *name)
virtual Int_t Process(const THaEvData &)
THaRunParameters * GetParameters() const
Double_t GetBeamP() const
const TVector3 & GetPvect() const
THaTrackInfo * GetTrackInfo()
Double_t Angle(const TVector3 &v) const
void SetXYZT(Double_t x, Double_t y, Double_t z, Double_t t)
void SetVectM(const TVector3 &spatial, Double_t mass)
void SetXYZM(Double_t x, Double_t y, Double_t z, Double_t m)
virtual void Error(const char *method, const char *msgfmt,...) const
const char * Data() const
Double_t Power(Double_t x, Double_t y)