4 #ifndef __KVFAZIABLOCK_H
5 #define __KVFAZIABLOCK_H
22 double centre_cross_thick;
24 double si_holder_side;
26 double front_frame_depth;
27 double frame_depth_300;
28 double frame_depth_500;
29 double frame_edge_depth;
30 double si300_position;
31 double si500_position;
35 double full_length_quartet;
38 double dist_csi_sarco;
42 double sarco_epaisseur;
45 TGeoVolume* MakeRightCrossPieceCSI(
double front_side,
double separation,
double distPlane,
double depth);
46 TGeoVolume* MakeLeftCrossPieceCSI(
double front_side,
double separation,
double distPlane,
double depth);
47 TGeoVolume* MakeCrossPieceCSI(
double front_side,
double separation,
double distPlane,
double depth);
48 std::vector<double> GetCoordsCSI(
int tel_num,
double front_side,
double separation,
double distPlane,
double depth);
49 TGeoVolume* MakeErgalFrame(
double frame_depth,
double ergal_edge_depth);
54 Projector(
double D,
double d) : rap((D +
d) / D), depth(
d) {}
59 return {rap *
v.X(), rap *
v.Y(),
v.Z() + depth};
61 return TVector3(rap *
v.X(), rap *
v.Y(),
v.Z() + depth);
90 return dist_SI1 + 0.5 * full_length_quartet - (front_frame_depth + frame_edge_depth);
95 return front_frame_depth;
#define ClassDef(name, id)
TRObject operator()(const T1 &t1) const
Standard geometry of 16-telescope FAZIA block.
Double_t GetBrassCollimatorDepth() const
virtual void Build()
Set default dimensions for all parts of geometry.
Double_t GetNominalDistanceTargetBlockCentre(double dist_SI1=100.) const
KVFAZIABlock()
Default constructor.
Double_t GetTotalSideWithBlindage() const