10 #include <arich/dbobjects/ARICHGeoCooling.h>
11 #include <framework/logging/Logger.h>
21 void ARICHGeoCooling::print(
const std::string& title)
const
24 ARICHGeoBase::print(title);
26 cout <<
"Outer radius of merger PCB assembly envelope : " << getEnvelopeOuterRadius() << endl
27 <<
"Inner radius of merger PCB assembly envelope : " << getEnvelopeInnerRadius() << endl
28 <<
"Thickness of merger PCB assembly envelope : " << getEnvelopeThickness() << endl;
29 cout <<
"X0 merger PCB assembly envelope : " << getEnvelopeCenterPosition().X() << endl
30 <<
"Y0 merger PCB assembly envelope : " << getEnvelopeCenterPosition().Y() << endl
31 <<
"Z0 merger PCB assembly envelope : " << getEnvelopeCenterPosition().Z() << endl;
32 cout <<
"material name of cooling pipe : " << getCoolingPipeMaterialName() << endl
33 <<
"Size of cooling system pipe : inner radius in mm : " << getRmin() << endl
34 <<
"Size of cooling system pipe : outer radius in mm : " << getRmax() << endl;
35 cout <<
"Material name of cooling test plates : " << getCoolingTestPlateMaterialName() << endl
36 <<
"Size of cooling test plates (x) : " << getCoolingTestPlateslengths().X() << endl
37 <<
"Size of cooling test plates (y) : " << getCoolingTestPlateslengths().Y() << endl
38 <<
"Size of cooling test plates (z) : " << getCoolingTestPlateslengths().Z() << endl
39 <<
"Radius of cold tubes : " << getColdTubeR() << endl
40 <<
"Depth of the cold tube in the cooling plate : " << getDepthColdTubeInPlate() << endl
41 <<
"Distance from center of the cold tube to edge of cooling plate : " << getColdTubeSpacing() << endl
42 <<
"number of cold tubes in one plate : " << getColdTubeNumber() << endl;
43 cout <<
"material name of cold tube : " << getColdTubeMaterialName() << endl
44 <<
"outer radius of subtracted tubes for cold tube : " << getColdTubeSubtractedR() << endl
45 <<
"cold tube wall thickness : " << getColdTubeWallThickness() << endl;
47 cout << setw(20) <<
" #" << setw(25) <<
"coolingTestPlatePosR" << setw(25) <<
"coolingTestPlatePosPhi" << setw(
48 25) <<
"coolingTestPlatePosZ0" << endl;
49 for (
unsigned i = 0; i < getCoolingTestPlatePosR().size(); i++) {
51 << setw(25) << getCoolingTestPlatePosR().at(i)
52 << setw(25) << getCoolingTestPlatePosPhi().at(i)
53 << setw(25) << getCoolingTestPlatePosZ0().at(i) << endl;
56 cout << setw(20) <<
" #" << setw(20) <<
"coolingGeometryID" << setw(20) <<
"coolingL" << setw(20) <<
"coolingPosPhi" << setw(
57 20) <<
"coolingPosR" << setw(25) <<
"coolinRotationAngle" << endl;
58 for (
unsigned i = 0; i < getCoolingGeometryID().size(); i++) {
60 << setw(20) << getCoolingGeometryID().at(i)
61 << setw(20) << getCoolingL().at(i)
62 << setw(20) << getCoolingPosPhi().at(i)
63 << setw(20) << getCoolingPosR().at(i)
64 << setw(25) << getCoolinRotationAngle().at(i) << endl;
69 void ARICHGeoCooling::checkCoolingSystemDataConsistency()
const
72 B2ASSERT(
"Data of the cooling system positions is inconsisten : getCoolingGeometryID().size() != getCoolingL().size()",
73 getCoolingGeometryID().size() == getCoolingL().size());
74 B2ASSERT(
"Data of the cooling system positions is inconsisten : getCoolingL().size() != getCoolingPosPhi().size()",
75 getCoolingL().size() == getCoolingPosPhi().size());
76 B2ASSERT(
"Data of the cooling system positions is inconsisten : getCoolingPosPhi().size() != getCoolingPosR().size()",
77 getCoolingPosPhi().size() == getCoolingPosR().size());
78 B2ASSERT(
"Data of the cooling system positions is inconsisten : getCoolingPosR().size() != getCoolinRotationAngle().size()",
79 getCoolingPosR().size() == getCoolinRotationAngle().size());
80 B2ASSERT(
"Data of the cooling system positions is inconsisten : getCoolingTestPlatePosR().size() != getCoolingTestPlatePosPhi().size()",
81 getCoolingTestPlatePosR().size() == getCoolingTestPlatePosPhi().size());
Abstract base class for different kinds of events.