8 #ifndef PARAMETRICGEO_H_ 9 #define PARAMETRICGEO_H_ 12 #include "geometry/GGSVGeometryConstruction.h" 18 class G4VPhysicalVolume;
19 class G4LogicalVolume;
525 bool IsInsideAcceptance(
const G4ThreeVector &generationPosition,
const G4ThreeVector &direction)
const override;
540 int GetAcceptanceType(
const G4ThreeVector &generationPosition,
const G4ThreeVector &direction)
const;
563 std::vector<double>
InterceptX(
double Xplane,
const G4ThreeVector &generationPosition,
564 const G4ThreeVector &direction)
const;
573 std::vector<double>
InterceptY(
double Yplane,
const G4ThreeVector &generationPosition,
574 const G4ThreeVector &direction)
const;
584 std::vector<double>
InterceptZ(
double Zplane,
const G4ThreeVector &generationPosition,
585 const G4ThreeVector &direction)
const;
594 double PntDistance(std::vector<double> v,
const G4ThreeVector a)
const;
G4VPhysicalVolume * _worldPhysical
Definition: ParametricGeo.h:635
bool IsInsideAcceptance(const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const override
Find if the generated trajectory is inside the defined acceptance.
Definition: ParametricGeo.cpp:409
bool ExportParameters() override
Exports the geometry parameters to the output file.
Definition: ParametricGeo.cpp:49
AcceptanceOptions _acceptanceOpt
Definition: ParametricGeo.h:613
FITOptions _fitOpt
Definition: ParametricGeo.h:619
struct ParametricGeo::NormalPositions stkNormalPositions
std::vector< float > sideLayerYPos
Definition: ParametricGeo.h:640
std::vector< float > sideLayerXPos
Definition: ParametricGeo.h:639
void _SetCaloCrystalDensity(double density)
Definition: ParametricGeo.cpp:625
void _SetCaloSideFitDistance(double d)
Definition: ParametricGeo.cpp:630
TRDOptions _trdOpt
Definition: ParametricGeo.h:623
Definition: DetStructs.h:115
std::vector< double > InterceptZ(double Zplane, const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const
Compute the intecept of a line and a plane in XY view.
Definition: ParametricGeo.cpp:1794
STKOptions _stkOpt
Definition: ParametricGeo.h:617
void _SetAnticoincidenceDetector(const std::string &ac)
Definition: ParametricGeo.cpp:592
CaloOptions _caloOpt
Definition: ParametricGeo.h:611
Definition: DetStructs.h:466
Definition: ParametricGeo.h:637
std::vector< double > InterceptX(double Xplane, const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const
Compute the intercept of a line and a plane in YZ view.
Definition: ParametricGeo.cpp:1774
SCDOptions _scdOpt
Definition: ParametricGeo.h:621
Definition: DetStructs.h:70
ShieldOptions _shieldOpt
Definition: ParametricGeo.h:625
std::vector< float > topLayerZPos
Definition: ParametricGeo.h:638
double PntDistance(std::vector< double > v, const G4ThreeVector a) const
Calculate the distance between 2 points.
Definition: ParametricGeo.cpp:1804
PSDOptions _psdOpt
Definition: ParametricGeo.h:615
std::vector< bool > ParseListOfWLayers(std::string str)
Translate the string with information of W layer position in a vector.
Definition: ParametricGeo.cpp:1813
ParametricGeo()
Constructor.
std::vector< double > InterceptY(double Yplane, const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const
Compute the intercept of a line and a plane in XZ view.
Definition: ParametricGeo.cpp:1784
const std::string GetVersion() override
Returns the current version of the geometry.
Definition: ParametricGeo.h:552
G4VPhysicalVolume * Construct() override
Constructs the full HERD detector.
Definition: ParametricGeo.cpp:634
Parameterized HERD geometry.
Definition: ParametricGeo.h:501
Definition: DetStructs.h:450
Definition: DetStructs.h:419
G4VPhysicalVolume * GetVolume() override
Returns the pointer to physical world.
Definition: ParametricGeo.h:546
Definition: DetStructs.h:149
void _SetPsdType(const std::string &psdType)
Definition: ParametricGeo.cpp:608
Definition: DetStructs.h:473
Definition: DetStructs.h:328
GeneralOptions _generalOpt
Definition: ParametricGeo.h:609
CSSOptions _cssOpt
Definition: ParametricGeo.h:627
Definition: DetStructs.h:10
Definition: DetStructs.h:362
struct ParametricGeo::NormalPositions scdNormalPositions
struct ParametricGeo::NormalPositions fitNormalPositions
int GetAcceptanceType(const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const
Find if the generated particle is inside one of the defined acceptances.
Definition: ParametricGeo.cpp:417
struct ParametricGeo::NormalPositions psdNormalPositions