---- In SSDCone, the thickness of the carbon fiber skin has been changed from
0.6 to 0.625 mm.
---- In SDDCableTraysSideA and in SSDCableTraysSideA the radial positioning
has been changed from 410.0 a 408.3mm to eliminate a new overlap with the
external rings.
---- In SSDCableTraysSideA, minor modification to an assembly name and related variable.
AliITSv11Hybrid.cxx :
---- In CreateMaterials, the carbon fiber density has been changed from 1.63
to 1.8
M. Sitta / M. Van Leeuwen
// Updated: 11 Apr 2008 Mario Sitta
// Measures from drawings give overlaps with SPD thermal shield wings,
// so the terminal part of the SSD cone was reduced
// Updated: 11 Apr 2008 Mario Sitta
// Measures from drawings give overlaps with SPD thermal shield wings,
// so the terminal part of the SSD cone was reduced
+//
+// Updated: 30 Mar 2010 Mario Sitta
+// Following M. van Leeuwen's suggestion on material budget, the thickness
+// of the carbon fiber cylinder was increased from 0.6 to 0.625mm
// Dimensions of the Central cylinder and flanges
const Double_t kCylinderHalfLength = (1144.0/2) *fgkmm;
const Double_t kCylinderOuterRadius = ( 595.0/2) *fgkmm;
// Dimensions of the Central cylinder and flanges
const Double_t kCylinderHalfLength = (1144.0/2) *fgkmm;
const Double_t kCylinderOuterRadius = ( 595.0/2) *fgkmm;
- const Double_t kCylinderThickness = 0.6 *fgkmm;
+ const Double_t kCylinderThickness = 0.625*fgkmm;
const Double_t kFoamHalfLength = (1020.0/2) *fgkmm;
const Double_t kFoamThickness = 5.0 *fgkmm;
const Double_t kFlangeHalfLength =
const Double_t kFoamHalfLength = (1020.0/2) *fgkmm;
const Double_t kFoamThickness = 5.0 *fgkmm;
const Double_t kFlangeHalfLength =
// Overall position and rotation of the A-Side Cable Trays
// (parts of 0872/G/D)
// Overall position and rotation of the A-Side Cable Trays
// (parts of 0872/G/D)
- const Double_t kTrayARTrans = 410.00 *fgkmm;
+ const Double_t kTrayARTrans = 408.35 *fgkmm;
const Double_t kTrayAZTrans = 1011.00 *fgkmm;
const Double_t kTrayAZToSupportRing = 435.00 *fgkmm;
const Double_t kExternTrayZTrans = 853.00 *fgkmm;
const Double_t kTrayAZTrans = 1011.00 *fgkmm;
const Double_t kTrayAZToSupportRing = 435.00 *fgkmm;
const Double_t kExternTrayZTrans = 853.00 *fgkmm;
// Dimensions and positions of the A-Side Cable Trays
// (parts of 0872/G/D)
// Dimensions and positions of the A-Side Cable Trays
// (parts of 0872/G/D)
- const Double_t kTrayARTrans = 410.00 *fgkmm;
+ const Double_t kTrayARTrans = 408.35 *fgkmm;
const Double_t kTrayAZTrans = 1011.00 *fgkmm;
const Double_t kForwardSideYTrans = 12.00 *fgkmm;//!!!TO BE CHECKED!!!
const Double_t kCoversYTrans = 2.00 *fgkmm;
const Double_t kTrayAZTrans = 1011.00 *fgkmm;
const Double_t kForwardSideYTrans = 12.00 *fgkmm;//!!!TO BE CHECKED!!!
const Double_t kCoversYTrans = 2.00 *fgkmm;
// The two tray components as assemblies
// The two tray components as assemblies
- TGeoVolumeAssembly *cableTrayAFR =
- new TGeoVolumeAssembly("ITSsupportSSDTrayAForwRear");
+ TGeoVolumeAssembly *cableTrayAForw =
+ new TGeoVolumeAssembly("ITSsupportSSDTrayAForw");
TGeoVolumeAssembly *cableTrayAExt =
new TGeoVolumeAssembly("ITSsupportSSDTrayAExt");
TGeoVolumeAssembly *cableTrayAExt =
new TGeoVolumeAssembly("ITSsupportSSDTrayAExt");
- cableTrayAFR->AddNode(forwTrayFirst, 1, 0);
+ cableTrayAForw->AddNode(forwTrayFirst, 1, 0);
- cableTrayAFR->AddNode(forwTraySecond, 1,
+ cableTrayAForw->AddNode(forwTraySecond, 1,
new TGeoTranslation(0, 0, kForwardTrayFirstLen) );
xloc = kTrayWidth/2 + kForwardSideThick/2;
yloc = kForwardTrayFirstHeight + kForwardSideHeight/2 - kForwardSideYTrans;
zloc = kForwardSideLength/2;
new TGeoTranslation(0, 0, kForwardTrayFirstLen) );
xloc = kTrayWidth/2 + kForwardSideThick/2;
yloc = kForwardTrayFirstHeight + kForwardSideHeight/2 - kForwardSideYTrans;
zloc = kForwardSideLength/2;
- cableTrayAFR->AddNode(forwTraySide,1,
+ cableTrayAForw->AddNode(forwTraySide,1,
new TGeoTranslation( xloc, yloc, zloc) );
new TGeoTranslation( xloc, yloc, zloc) );
- cableTrayAFR->AddNode(forwTraySide,2,
+ cableTrayAForw->AddNode(forwTraySide,2,
new TGeoTranslation(-xloc, yloc, zloc) );
yloc = kForwardTrayFirstHeight + kForwardSideHeight - kForwardSideYTrans
- kForwardCoverHeight;
new TGeoTranslation(-xloc, yloc, zloc) );
yloc = kForwardTrayFirstHeight + kForwardSideHeight - kForwardSideYTrans
- kForwardCoverHeight;
- cableTrayAFR->AddNode(forwTraySideCover,1,
+ cableTrayAForw->AddNode(forwTraySideCover,1,
new TGeoTranslation(0, yloc, 0) );
yloc = kTrayTotalHeight - kCoversYTrans;
zloc = kForwardTrayTotalLen - kForwardCoverLen;
new TGeoTranslation(0, yloc, 0) );
yloc = kTrayTotalHeight - kCoversYTrans;
zloc = kForwardTrayTotalLen - kForwardCoverLen;
- cableTrayAFR->AddNode(forwardTrayCover,1,
+ cableTrayAForw->AddNode(forwardTrayCover,1,
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + forwCopper->GetDY();
zloc = forwCopper->GetDZ();
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + forwCopper->GetDY();
zloc = forwCopper->GetDZ();
- cableTrayAFR->AddNode(forwCableCu, 1,
+ cableTrayAForw->AddNode(forwCableCu, 1,
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + forwPlastic->GetDY();
zloc = forwPlastic->GetDZ();
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + forwPlastic->GetDY();
zloc = forwPlastic->GetDZ();
- cableTrayAFR->AddNode(forwCableFEP, 1,
+ cableTrayAForw->AddNode(forwCableFEP, 1,
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + kCablePlasticHeight + forwWater->GetDY();
zloc = forwWater->GetDZ();
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + kCablePlasticHeight + forwWater->GetDY();
zloc = forwWater->GetDZ();
- cableTrayAFR->AddNode(forwTrayWater, 1,
+ cableTrayAForw->AddNode(forwTrayWater, 1,
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + kCablePlasticHeight
+ kCoolingWaterHeight + forwPUR->GetDY();
zloc = forwPUR->GetDZ();
new TGeoTranslation(0, yloc, zloc) );
yloc = kTrayThick + kCopperHeight + kCablePlasticHeight
+ kCoolingWaterHeight + forwPUR->GetDY();
zloc = forwPUR->GetDZ();
- cableTrayAFR->AddNode(forwPolyUr, 1,
+ cableTrayAForw->AddNode(forwPolyUr, 1,
new TGeoTranslation(0, yloc, zloc) );
// To simplify following placement in MARS, origin is on top
new TGeoTranslation(0, yloc, zloc) );
// To simplify following placement in MARS, origin is on top
alpharot = kTrayAFirstRotAng;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
alpharot = kTrayAFirstRotAng;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
- moth->AddNode(cableTrayAFR,1,
+ moth->AddNode(cableTrayAForw,1,
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
alpharot += 180;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
alpharot += 180;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
- moth->AddNode(cableTrayAFR,2,
+ moth->AddNode(cableTrayAForw,2,
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
alpharot = -kTrayAFirstRotAng - 2*kTrayASecondRotAng;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
alpharot = -kTrayAFirstRotAng - 2*kTrayASecondRotAng;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
- moth->AddNode(cableTrayAFR,3,
+ moth->AddNode(cableTrayAForw,3,
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
alpharot += 180;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
alpharot += 180;
xloc = kTrayARTrans*SinD(alpharot);
yloc = kTrayARTrans*CosD(alpharot);
- moth->AddNode(cableTrayAFR,4,
+ moth->AddNode(cableTrayAForw,4,
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
new TGeoCombiTrans( xloc, yloc, zloc,
new TGeoRotation("",-alpharot,0,0) ) );
xloc = rExtTray*SinD(alpharot);
Float_t aCM55J[4]={12.0107,14.0067,15.9994,1.00794};
Float_t zCM55J[4]={6.,7.,8.,1.};
Float_t wCM55J[4]={0.908508078,0.010387573,0.055957585,0.025146765};
Float_t aCM55J[4]={12.0107,14.0067,15.9994,1.00794};
Float_t zCM55J[4]={6.,7.,8.,1.};
Float_t wCM55J[4]={0.908508078,0.010387573,0.055957585,0.025146765};