8 #ifndef PARAMETRICGEO_H_ 9 #define PARAMETRICGEO_H_ 12 #include "geometry/GGSVGeometryConstruction.h" 18 class G4VPhysicalVolume;
19 class G4LogicalVolume;
500 bool IsInsideAcceptance(
const G4ThreeVector &generationPosition,
const G4ThreeVector &direction)
const;
515 int GetAcceptanceType(
const G4ThreeVector &generationPosition,
const G4ThreeVector &direction)
const;
538 std::vector<double>
InterceptX(
double Xplane,
const G4ThreeVector &generationPosition,
539 const G4ThreeVector &direction)
const;
548 std::vector<double>
InterceptY(
double Yplane,
const G4ThreeVector &generationPosition,
549 const G4ThreeVector &direction)
const;
559 std::vector<double>
InterceptZ(
double Zplane,
const G4ThreeVector &generationPosition,
560 const G4ThreeVector &direction)
const;
569 double PntDistance(std::vector<double> v,
const G4ThreeVector a)
const;
G4VPhysicalVolume * _worldPhysical
Definition: ParametricGeo.h:610
AcceptanceOptions _acceptanceOpt
Definition: ParametricGeo.h:588
FITOptions _fitOpt
Definition: ParametricGeo.h:594
struct ParametricGeo::NormalPositions stkNormalPositions
std::vector< float > sideLayerYPos
Definition: ParametricGeo.h:615
std::vector< float > sideLayerXPos
Definition: ParametricGeo.h:614
void _SetCaloCrystalDensity(double density)
Definition: ParametricGeo.cpp:610
void _SetCaloSideFitDistance(double d)
Definition: ParametricGeo.cpp:615
TRDOptions _trdOpt
Definition: ParametricGeo.h:598
Definition: DetStructs.h:107
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:1743
STKOptions _stkOpt
Definition: ParametricGeo.h:592
void _SetAnticoincidenceDetector(const std::string &ac)
Definition: ParametricGeo.cpp:577
CaloOptions _caloOpt
Definition: ParametricGeo.h:586
Definition: DetStructs.h:467
Definition: ParametricGeo.h:612
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:1723
SCDOptions _scdOpt
Definition: ParametricGeo.h:596
Definition: DetStructs.h:70
ShieldOptions _shieldOpt
Definition: ParametricGeo.h:600
std::vector< float > topLayerZPos
Definition: ParametricGeo.h:613
double PntDistance(std::vector< double > v, const G4ThreeVector a) const
Calculate the distance between 2 points.
Definition: ParametricGeo.cpp:1753
PSDOptions _psdOpt
Definition: ParametricGeo.h:590
bool ExportParameters()
Exports the geometry parameters to the output file.
Definition: ParametricGeo.cpp:48
bool IsInsideAcceptance(const G4ThreeVector &generationPosition, const G4ThreeVector &direction) const
Find if the generated trajectory is inside the defined acceptance.
Definition: ParametricGeo.cpp:394
std::vector< bool > ParseListOfWLayers(std::string str)
Translate the string with information of W layer position in a vector.
Definition: ParametricGeo.cpp:1762
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:1733
Parameterized HERD geometry.
Definition: ParametricGeo.h:476
Definition: DetStructs.h:451
Definition: DetStructs.h:411
G4VPhysicalVolume * GetVolume()
Returns the pointer to physical world.
Definition: ParametricGeo.h:521
Definition: DetStructs.h:141
const std::string GetVersion()
Returns the current version of the geometry.
Definition: ParametricGeo.h:527
void _SetPsdType(const std::string &psdType)
Definition: ParametricGeo.cpp:593
Definition: DetStructs.h:474
Definition: DetStructs.h:312
GeneralOptions _generalOpt
Definition: ParametricGeo.h:584
CSSOptions _cssOpt
Definition: ParametricGeo.h:602
Definition: DetStructs.h:10
Definition: DetStructs.h:354
G4VPhysicalVolume * Construct()
Constructs the full HERD detector.
Definition: ParametricGeo.cpp:619
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:402
struct ParametricGeo::NormalPositions psdNormalPositions