8#ifndef BEANS_EXPERIMENTALCONDITIONS_H_
9#define BEANS_EXPERIMENTALCONDITIONS_H_
11#include <NumA/linear_algebra/vector/Vector3D.h>
14#include "../types/ParticleType.h"
31 static const std::string
32 EXPERIMENTAL_CONDITION_LEPTON_ENERGY;
33 static const std::string
34 EXPERIMENTAL_CONDITION_LEPTON_PARTICLE;
35 static const std::string
36 EXPERIMENTAL_CONDITION_LEPTON_HELICITY;
37 static const std::string
38 EXPERIMENTAL_CONDITION_HADRON_ENERGY;
39 static const std::string
40 EXPERIMENTAL_CONDITION_HADRON_PARTICLE;
41 static const std::string
42 EXPERIMENTAL_CONDITION_HADRON_POLARISATION;
55 int leptonHelicity,
double hadronEnergy,
57 const NumA::Vector3D &hadronPolarisation);
69 virtual std::string toString()
const;
146 double m_leptonEnergy;
148 int m_leptonHelicity;
150 double m_hadronEnergy;
152 NumA::Vector3D m_hadronPolarisation;
Container to store experimental conditions.
Definition: ExperimentalConditions.h:29
void setHadronPolarisation(const NumA::Vector3D &hadronPolarisation)
ParticleType::Type getHadronType() const
void setHadronType(ParticleType::Type hadronType)
int getLeptonHelicity() const
double getHadronEnergy() const
double getLeptonEnergy() const
static ExperimentalConditions fromTask(const MonteCarloTask &task)
virtual ~ExperimentalConditions()
double getLeptonEnergyFixedTargetEquivalent() const
ParticleType::Type getLeptonType() const
void setHadronEnergy(double hadronEnergy)
const NumA::Vector3D & getHadronPolarisation() const
ExperimentalConditions(const ExperimentalConditions &other)
void setLeptonType(ParticleType::Type leptonType)
void setLeptonEnergy(double leptonEnergy)
ExperimentalConditions(double leptonEnergy, ParticleType::Type leptonType, int leptonHelicity, double hadronEnergy, ParticleType::Type hadronType, const NumA::Vector3D &hadronPolarisation)
void setLeptonHelicity(int leptonHelicity)
Container to store information from xml scenario for a single task.
Definition: MonteCarloTask.h:23
Type
Definition: ParticleType.h:33