76 double total_thickness = thick + centre_dist;
86 const double distance = 2.27 *
KVUnits::m + 0.5 * total_thickness;
87 const double theta = 0.99;
88 const double phi = -54.07;
109 Info(
"BuildFAZIA",
"Compact geometry, %f cm from target + 2BLK around 20 degrees",
128 if (bb == 1) centre.
SetXYZ(-1 * (dx - centre_hole / 2), -dx - centre_hole / 2, distance_block_cible);
129 else if (bb == 2) centre.
SetXYZ(-1 * (dx + centre_hole / 2), dx - centre_hole / 2, distance_block_cible);
130 else if (bb == 3) centre.
SetXYZ(-1 * (-dx + centre_hole / 2), dx + centre_hole / 2, distance_block_cible);
131 else if (bb == 0) centre.
SetXYZ(-1 * (-dx - centre_hole / 2), -dx + centre_hole / 2, distance_block_cible);
132 else if (bb == 4) centre.
SetXYZ(0, -25, distance_block_cible);
133 else if (bb == 5) centre.
SetXYZ(0, 25, distance_block_cible);
135 Warning(
"BuildFAZIA",
"Block position definition is done only for %d blocks",
fNblocks);
139 printf(
"BLK #%d => theta=%1.2lf - phi=%1.2lf\n", bb, theta, phi);
160 env.
SetValue(
"RUTH_SI_1",
"SI1-RUTH");
161 env.
SetValue(
"RUTH_SI_2",
"SI2-RUTH");
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
R__EXTERN TGeoManager * gGeoManager
Extension of TEnv to allow the writing of comments in the file.
Standard geometry of 16-telescope FAZIA block.
Double_t GetNominalDistanceTargetBlockCentre(double dist_SI1=100.) const
Double_t GetTotalSideWithBlindage() const
FAZIA set-up for LNS 2017.
virtual ~KVFAZIALNS17()
Destructor.
void RutherfordTelescope()
virtual void SetNameOfDetectors(KVEnv &env)
virtual void BuildFAZIA()
virtual void GetGeometryParameters()
Defined number of blocks, the distance from the target and the minimum polar angle.
Double_t fFDist
distance of FAZIA detectors from target (in cm)
void SetGeometryImportParameters(Double_t dt=0.25, Double_t dp=1.0, Double_t tmin=2., Double_t pmin=0, Double_t tmax=20., Double_t pmax=360., Double_t xorg=0, Double_t yorg=0, Double_t zorg=0)
Double_t fFThetaMin
minimum polar angle for compact geometry (in degrees)
virtual void SetNameOfDetectors(KVEnv &env)
Int_t fNblocks
number of blocks
Description of physical materials used to construct detectors; interface to range tables.
virtual TGeoMedium * GetGeoMedium(const Char_t *="")
static TGeoHMatrix * GetVolumePositioningMatrix(Double_t distance, Double_t theta, Double_t phi, TGeoTranslation *postTrans=nullptr)
virtual void SetValue(const char *name, const char *value, EEnvLevel level=kEnvChange, const char *type=nullptr)
TGeoVolume * MakeTube(const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t dz)
TGeoVolumeAssembly * MakeVolumeAssembly(const char *name)
TGeoVolume * GetTopVolume() const
virtual void AddNode(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=0, Option_t *option="")
virtual void AddNode(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=0, Option_t *option="")
virtual void Warning(const char *method, const char *msgfmt,...) const
virtual void Info(const char *method, const char *msgfmt,...) const
void SetXYZ(Double_t x, Double_t y, Double_t z)
constexpr Double_t DegToRad()
constexpr Double_t RadToDeg()