10 #ifndef HERD_MCGENERATIONINFO_H_ 11 #define HERD_MCGENERATIONINFO_H_ virtual ~MCGenerationInfo()=default
Destructor.
void SetPositionType(Position pos)
Sets the type of position generation.
Definition: MCGenerationInfo.cpp:35
float SpectralIndex() const
Gets the spectral index used for power-law spectrum generation.
Definition: MCGenerationInfo.cpp:230
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
A rectangle in 3D space.
Definition: Rectangle.h:26
std::pair< float, float > IsotropicAzimuthAngleRange() const
Gets the minimum and maximum azimuth angles for isotropic generation.
Definition: MCGenerationInfo.cpp:139
Herd::Rectangle Rectangle() const
Gets the generation rectangle.
Definition: MCGenerationInfo.cpp:90
float _minAzimuth
Definition: MCGenerationInfo.h:381
float _fixedShootingEnergy
Definition: MCGenerationInfo.h:386
void SetAcceptanceCheck(bool accChecked)
Sets the acceptance check flag.
Definition: MCGenerationInfo.cpp:25
void SetFixedPoint(Point genPoint)
Sets the particle generation point.
Definition: MCGenerationInfo.cpp:53
void SetIsotropicAnglesRanges(float minPolar, float maxPolar, float minAzimuth, float maxAzimuth)
Sets the minimum and maximum polar and azimuth angles for isotropic generation.
Definition: MCGenerationInfo.cpp:160
int ParticlePDGCode() const
Gets the PDG code of the generated particle.
Definition: MCGenerationInfo.cpp:31
void SetGeneratorName(std::string name)
Sets the name of the particle generator.
Definition: MCGenerationInfo.cpp:21
void SetPowerLawSpectrum(float minEnergy, float maxEnergy, float spectralIndex)
Sets the power-law spectrum generation.
Definition: MCGenerationInfo.cpp:237
Vec3D FixedDirection() const
Gets the fixed generation direction.
Definition: MCGenerationInfo.cpp:118
std::pair< float, float > UniformAzimuthAngleRange() const
Gets the minimum and maximum azimuth angles for uniform generation.
Definition: MCGenerationInfo.cpp:153
Point FixedPoint() const
Gets the particle generation point.
Definition: MCGenerationInfo.cpp:46
float _sphereCapExtension
Definition: MCGenerationInfo.h:372
std::pair< float, float > IsotropicPolarAngleRange() const
Gets the minimum and maximum polar angles for isotropic generation.
Definition: MCGenerationInfo.cpp:132
Direction
Definition: MCGenerationInfo.h:179
A class describing a vector in 3D space.
Definition: Vec3D.h:33
void SetFixedDirection(Vec3D dir)
Sets the fixed generation direction.
Definition: MCGenerationInfo.cpp:125
std::string GeneratorName() const
Gets the name of the particle generator.
Definition: MCGenerationInfo.cpp:23
float SphereCapExtension() const
Gets the extension of the generation sphere cap.
Definition: MCGenerationInfo.cpp:74
bool WasAcceptanceCheckActive() const
Checks if the acceptance check was active during particle generation.
Definition: MCGenerationInfo.cpp:27
float _minEnergy
Definition: MCGenerationInfo.h:388
bool _acceptanceCheck
Definition: MCGenerationInfo.h:362
Herd::Rectangle _rectangle
Definition: MCGenerationInfo.h:374
Position _position
Definition: MCGenerationInfo.h:366
float _minPolar
Definition: MCGenerationInfo.h:381
std::string _generatorName
Definition: MCGenerationInfo.h:361
void SetSphereCap(Point sphereCapCenter, Vec3D sphereCapPosition, float sphereCapExtension)
Sets the generation sphere cap.
Definition: MCGenerationInfo.cpp:81
Spectrum _spectrum
Definition: MCGenerationInfo.h:384
Herd::Vec3D _fixedShootingDirection
Definition: MCGenerationInfo.h:379
void SetSpectrumType(Spectrum sp)
Sets the type of spectrum generation.
Definition: MCGenerationInfo.cpp:198
Position
Enum for the kind of position generation.
Definition: MCGenerationInfo.h:74
std::pair< float, float > UniformPolarAngleRange() const
Gets the minimum and maximum polar angles for uniform generation.
Definition: MCGenerationInfo.cpp:146
int _particlePdgCode
Definition: MCGenerationInfo.h:363
float _maxAzimuth
Definition: MCGenerationInfo.h:381
void SetDirectionType(Direction dir)
Sets the type of direction generation.
void SetParticlePDGCode(int pdgCode)
Sets the PDG code of the generated particle.
Definition: MCGenerationInfo.cpp:29
Point _fixedShootingPoint
Definition: MCGenerationInfo.h:368
float FixedEnergy() const
Gets the fixed generation energy.
Definition: MCGenerationInfo.cpp:209
Position PositionType() const
Gets the type of position generation.
Definition: MCGenerationInfo.h:82
Spectrum SpectrumType() const
Gets the type of spectrum generation.
Definition: MCGenerationInfo.h:300
Point _sphereCapCenter
Definition: MCGenerationInfo.h:370
Point SphereCapCenter() const
Gets the center of the generation sphere cap.
Definition: MCGenerationInfo.cpp:60
Direction _direction
Definition: MCGenerationInfo.h:377
Information about particle generation in MC simulation.
Definition: MCGenerationInfo.h:27
void SetFixedEnergy(float energy)
Sets the fixed generation energy.
Definition: MCGenerationInfo.cpp:216
void SetUniformAnglesRanges(float minPolar, float maxPolar, float minAzimuth, float maxAzimuth)
Sets the minimum and maximum polar and azimuth angles for uniform generation.
Definition: MCGenerationInfo.cpp:178
Vec3D SphereCapPosition() const
Gets the position of the generation sphere cap.
Definition: MCGenerationInfo.cpp:67
Spectrum
Enum for the kind of spectrum generation.
Definition: MCGenerationInfo.h:292
float _spectralIndex
Definition: MCGenerationInfo.h:389
std::pair< float, float > EnergyRange() const
Gets the energy range used for power-law spectrum generation.
Definition: MCGenerationInfo.cpp:223
float _maxPolar
Definition: MCGenerationInfo.h:381
float _maxEnergy
Definition: MCGenerationInfo.h:388
Direction DirectionType() const
Gets the type of direction generation.
Definition: MCGenerationInfo.h:187
MCGenerationInfo()
Default constructor.
Definition: MCGenerationInfo.cpp:14
Vec3D _sphereCapPosition
Definition: MCGenerationInfo.h:371
void SetRectangle(std::array< Point, 3 > points)
Sets the generation rectangle.
Definition: MCGenerationInfo.cpp:97