468  float aAir[4] = {12, 14, 16, 36}, zAir[4] = {6, 7, 8, 18}, wAir[4] = {0.000124, 0.755267, 0.231781, 0.012827},
 
  471  float aC6F14[2] = {12.01, 18.99}, zC6F14[2] = {6, 9}, wC6F14[2] = {6, 14}, dC6F14 = 1.68;
 
  473  float aSiO2[2] = {28.09, 15.99}, zSiO2[2] = {14, 8}, wSiO2[2] = {1, 2}, dSiO2 = 2.64;
 
  475  float aCH4[2] = {12.01, 1.01}, zCH4[2] = {6, 1}, wCH4[2] = {1, 4}, dCH4 = 7.17e-4;
 
  478  float aRoha = 12.01, zRoha = 6, dRoha = 0.10, radRoha = 18.80,
 
  479        absRoha = 86.3 / dRoha; 
 
  480  float aCu = 63.55, zCu = 29, dCu = 8.96, radCu = 1.43, absCu = 134.9 / dCu;
 
  481  float aW = 183.84, zW = 74, dW = 19.30, radW = 0.35, absW = 185.0 / dW;
 
  482  float aAl = 26.98, zAl = 13, dAl = 2.70, radAl = 8.90, absAl = 106.4 / dAl;
 
  483  float aAr = 39.94, zAr = 18, dAr = 1.396e-3, radAr = 14.0, absAr = 117.2 / dAr;
 
  486  int unsens = 0, sens = 1; 
 
  491  float tmaxfd = -10.0; 
 
  495  float stmin = -0.001; 
 
  501  float aG10[4] = {28.09, 12.01, 1.01, 16.00};
 
  502  float zG10[4] = {14., 6., 1., 8.};
 
  503  float wG10[4] = {0.129060, 0.515016, 0.061873, 0.294050};
 
  507  Mixture(++matId, 
"Air", aAir, zAir, dAir, nAir, wAir);
 
  508  Medium(kAir, 
"Air", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  510  Mixture(++matId, 
"C6F14", aC6F14, zC6F14, dC6F14, nC6F14, wC6F14);
 
  511  Medium(kC6F14, 
"C6F14", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  513  Mixture(++matId, 
"SiO2", aSiO2, zSiO2, dSiO2, nSiO2, wSiO2);
 
  514  Medium(kSiO2, 
"SiO2", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  516  Mixture(++matId, 
"CH4", aCH4, zCH4, dCH4, nCH4, wCH4);
 
  517  Medium(kCH4, 
"CH4", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  519  Mixture(++matId, 
"CsI+PCB", aG10, zG10, dG10, nG10, wG10);
 
  520  Medium(kCsI, 
"CsI", matId, sens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin); 
 
  522  Mixture(++matId, 
"Neo", aSiO2, zSiO2, dSiO2, nSiO2, wSiO2);
 
  523  Medium(kNeo, 
"Neo", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin); 
 
  525  Material(++matId, 
"Roha", aRoha, zRoha, dRoha, radRoha, absRoha);
 
  526  Medium(kRoha, 
"Roha", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin); 
 
  528  Material(++matId, 
"Cu", aCu, zCu, dCu, radCu, absCu);
 
  529  Medium(kCu, 
"Cu", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  531  Material(++matId, 
"W", aW, zW, dW, radW, absW);
 
  532  Medium(kW, 
"W", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  534  Material(++matId, 
"Al", aAl, zAl, dAl, radAl, absAl);
 
  535  Medium(kAl, 
"Al", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
  537  Material(++matId, 
"Ar", aAr, zAr, dAr, radAr, absAr);
 
  538  Medium(kAr, 
"Ar", matId, unsens, itgfld, maxfld, tmaxfd, stemax, deemax, epsil, stmin);
 
 
  555  double cm = 1, mm = 0.1 * cm, um = 0.001 * mm; 
 
  557  TGeoVolume* hmp = 
new TGeoVolumeAssembly(Form(
"Hmp%i", number));
 
  561  TGeoMedium* al = matmgr.getTGeoMedium(
"HMP_Al");
 
  562  TGeoMedium* ch4 = matmgr.getTGeoMedium(
"HMP_CH4");
 
  563  TGeoMedium* roha = matmgr.getTGeoMedium(
"HMP_Roha");
 
  564  TGeoMedium* neoc = matmgr.getTGeoMedium(
"HMP_Neo");
 
  565  TGeoMedium* c6f14 = matmgr.getTGeoMedium(
"HMP_C6F14");
 
  566  TGeoMedium* sio2 = matmgr.getTGeoMedium(
"HMP_SiO2");
 
  567  TGeoMedium* cu = matmgr.getTGeoMedium(
"HMP_Cu");
 
  568  TGeoMedium* 
w = matmgr.getTGeoMedium(
"HMP_W");
 
  569  TGeoMedium* csi = matmgr.getTGeoMedium(
"HMP_CsI");
 
  570  TGeoMedium* ar = matmgr.getTGeoMedium(
"HMP_Ar");
 
  572  TGeoRotation* rot = 
new TGeoRotation(
"HwireRot");
 
  574  TGeoVolume* sbo = gGeoManager->MakeBox(
"Hsbo", ch4, 1419 * mm / 2, 1378.00 * mm / 2, 50.5 * mm / 2); 
 
  575  TGeoVolume* cov = gGeoManager->MakeBox(
"Hcov", al, 1419 * mm / 2, 1378.00 * mm / 2, 0.5 * mm / 2);
 
  576  TGeoVolume* hon = gGeoManager->MakeBox(
"Hhon", roha, 1359 * mm / 2, 1318.00 * mm / 2, 49.5 * mm / 2);
 
  577  TGeoVolume* rad = gGeoManager->MakeBox(
"Hrad", c6f14, 1330 * mm / 2, 413.00 * mm / 2, 24.0 * mm / 2); 
 
  578  TGeoVolume* neo = gGeoManager->MakeBox(
"Hneo", neoc, 1330 * mm / 2, 413.00 * mm / 2, 4.0 * mm / 2);
 
  579  TGeoVolume* win = gGeoManager->MakeBox(
"Hwin", sio2, 1330 * mm / 2, 413.00 * mm / 2, 5.0 * mm / 2);
 
  580  TGeoVolume* si1 = gGeoManager->MakeBox(
"Hsi1", sio2, 1330 * mm / 2, 5.00 * mm / 2, 15.0 * mm / 2);
 
  581  TGeoVolume* si2 = gGeoManager->MakeBox(
"Hsi2", neoc, 10 * mm / 2, 403.00 * mm / 2, 15.0 * mm / 2);
 
  582  TGeoVolume* spa = gGeoManager->MakeTube(
"Hspa", sio2, 0 * mm, 5.00 * mm, 15.0 * mm / 2);
 
  583  TGeoVolume* fr4 = gGeoManager->MakeBox(
"Hfr4", ch4, 1407 * mm / 2, 1366.00 * mm / 2, 15.0 * mm / 2); 
 
  584  TGeoVolume* f4a = gGeoManager->MakeBox(
"Hf4a", al, 1407 * mm / 2, 1366.00 * mm / 2, 10.0 * mm / 2);
 
  585  TGeoVolume* f4i = gGeoManager->MakeBox(
"Hf4i", ch4, 1323 * mm / 2, 1296.00 * mm / 2, 10.0 * mm / 2);
 
  586  TGeoVolume* 
col = gGeoManager->MakeTube(
"Hcol", cu, 0 * mm, 100.00 * um, 1323.0 * mm / 2);
 
  587  TGeoVolume* sec = gGeoManager->MakeBox(
"Hsec", ch4, 648 * mm / 2, 411.00 * mm / 2,
 
  590  double cellx = 8.04 * mm, celly = 8.4 * mm;
 
  591  int nPadX = 80, nPadY = 48;
 
  592  TGeoVolume* gap = gGeoManager->MakeBox(
"Hgap", ch4, cellx * nPadX / 2, celly * nPadY / 2,
 
  594  TGeoVolume* 
row = gap->Divide(
"Hrow", 2, nPadY, 0, 0);                 
 
  595  TGeoVolume* cel = 
row->Divide(Form(
"Hcel%i", number), 1, nPadX, 0, 0); 
 
  596  mSensitiveVolumes.emplace_back(cel);
 
  598  TGeoVolume* cat = gGeoManager->MakeTube(
"Hcat", cu, 0.00 * mm, 50.00 * um, cellx / 2);
 
  599  TGeoVolume* ano = gGeoManager->MakeTube(
"Hano", 
w, 0.00 * mm, 20.00 * um, cellx / 2);
 
  600  TGeoVolume* pad = gGeoManager->MakeBox(Form(
"Hpad%i", number), csi, 7.54 * mm / 2, 7.90 * mm / 2,
 
  602  mSensitiveVolumes.emplace_back(pad);
 
  604  TGeoVolume* fr1 = gGeoManager->MakeBox(
"Hfr1", al, 1463 * mm / 2, 1422.00 * mm / 2,
 
  606  TGeoVolume* fr1up = gGeoManager->MakeBox(
"Hfr1up", ch4, (1426.00 - 37.00) * mm / 2, (1385.00 - 37.00) * mm / 2,
 
  609  TGeoVolume* fr1upcard = gGeoManager->MakeBox(
"Hfr1upcard", ch4, 662. * mm / 2., 425. * mm / 2.,
 
  612  TGeoVolume* fr1perUpBig = gGeoManager->MakeBox(
"Hfr1perUpBig", ch4, 1389 * mm / 2, 35 * mm / 2, 10 * mm / 2);
 
  613  TGeoVolume* fr1perUpSma =
 
  614    gGeoManager->MakeBox(
"Hfr1perUpSma", ch4, 35 * mm / 2, (1385 - 37 - 2 * 35) * mm / 2, 10 * mm / 2);
 
  615  TGeoVolume* fr1perDowBig = gGeoManager->MakeBox(
"Hfr1perDowBig", ch4, 1389 * mm / 2, 46 * mm / 2, 2.3 * mm / 2);
 
  616  TGeoVolume* fr1perDowSma =
 
  617    gGeoManager->MakeBox(
"Hfr1perDowSma", ch4, 46 * mm / 2, (1385 - 37 - 2 * 46) * mm / 2, 2.3 * mm / 2);
 
  619  TGeoVolume* ppf = gGeoManager->MakeBox(
"Hppf", al, 648 * mm / 2, 411.00 * mm / 2, 38.3 * mm / 2); 
 
  620  TGeoVolume* lar = gGeoManager->MakeBox(
"Hlar", ar, 181 * mm / 2, 89.25 * mm / 2, 38.3 * mm / 2);  
 
  621  TGeoVolume* smo = gGeoManager->MakeBox(
"Hsmo", ar, 114 * mm / 2, 89.25 * mm / 2, 38.3 * mm / 2);  
 
  623  TGeoVolume* cufoil = gGeoManager->MakeBox(
"Hcufoil", csi, 662. * mm / 2., 425. * mm / 2.,
 
  625  TGeoVolume* rect = gGeoManager->MakeBox(
"Hrect", ch4, 48 * mm / 2, 19 * mm / 2., 1 * mm / 2.);
 
  627  TGeoVolume* fr3 = gGeoManager->MakeBox(
"Hfr3", al, 1463 * mm / 2, 1422 * mm / 2, 34 * mm / 2);          
 
  628  TGeoVolume* fr3up = gGeoManager->MakeBox(
"Hfr3up", ch4, 1323 * mm / 2, 1282 * mm / 2, 20 * mm / 2);     
 
  629  TGeoVolume* fr3down = gGeoManager->MakeBox(
"Hfr3down", ch4, 1437 * mm / 2, 1370 * mm / 2, 14 * mm / 2); 
 
  631  TGeoVolume* proxgap1 = gGeoManager->MakeBox(
"Hproxgap1", ch4, 1407 * mm / 2, 1366.00 * mm / 2,
 
  632                                              (9. - 7.5) * mm / 2.); 
 
  633  TGeoVolume* proxgap2 = gGeoManager->MakeBox(
"Hproxgap2", ch4, 1407 * mm / 2, 1366.00 * mm / 2,
 
  634                                              (81.7 - 6.2 - 34. - 9. - 7.5) * mm / 2.); 
 
  669  hmp->AddNode(sbo, 1, 
new TGeoTranslation(0 * mm, 0 * mm, -73.75 * mm)); 
 
  670  sbo->AddNode(hon, 1, 
new TGeoTranslation(0 * mm, 0 * mm, 0 * mm));      
 
  671  sbo->AddNode(cov, 1, 
new TGeoTranslation(0 * mm, 0 * mm, +25 * mm));
 
  672  sbo->AddNode(cov, 2, 
new TGeoTranslation(0 * mm, 0 * mm, -25 * mm));
 
  673  hmp->AddNode(rad, 2, 
new TGeoTranslation(0 * mm, +434 * mm, -12.00 * mm));
 
  674  hmp->AddNode(rad, 1, 
new TGeoTranslation(0 * mm, 0 * mm, -12.00 * mm));
 
  675  hmp->AddNode(rad, 0, 
new TGeoTranslation(0 * mm, -434 * mm, -12.00 * mm));
 
  676  rad->AddNode(neo, 1, 
new TGeoTranslation(0 * mm, 0 * mm, -10.0 * mm));
 
  677  rad->AddNode(win, 1, 
new TGeoTranslation(0 * mm, 0 * mm, 9.5 * mm));
 
  678  rad->AddNode(si1, 1, 
new TGeoTranslation(0 * mm, -204 * mm, -0.5 * mm));
 
  679  rad->AddNode(si1, 2, 
new TGeoTranslation(0 * mm, +204 * mm, -0.5 * mm));
 
  680  rad->AddNode(si2, 1, 
new TGeoTranslation(-660 * mm, 0 * mm, -0.5 * mm));
 
  681  rad->AddNode(si2, 2, 
new TGeoTranslation(+660 * mm, 0 * mm, -0.5 * mm));
 
  682  for (Int_t 
i = 0; 
i < 3; 
i++) {
 
  683    for (Int_t 
j = 0; 
j < 10; 
j++) {
 
  684      rad->AddNode(spa, 10 * 
i + 
j,
 
  685                   new TGeoTranslation(-1330 * mm / 2 + 116 * mm + 
j * 122 * mm, (
i - 1) * 105 * mm, -0.5 * mm));
 
  688  hmp->AddNode(fr4, 1, 
new TGeoTranslation(0 * mm, 0 * mm, 9.00 * mm)); 
 
  689  for (
int i = 1; 
i <= 322; 
i++) {
 
  690    fr4->AddNode(
col, 
i, 
new TGeoCombiTrans(0 * mm, -1296 / 2 * mm + 
i * 4 * mm, -5 * mm, rot)); 
 
  692  fr4->AddNode(f4a, 1, 
new TGeoTranslation(0 * mm, 0 * mm, 2.5 * mm));
 
  693  f4a->AddNode(f4i, 1, 
new TGeoTranslation(0 * mm, 0 * mm, 0 * mm));
 
  694  hmp->AddNode(sec, 4, 
new TGeoTranslation(-335 * mm, +433 * mm, 78.6 * mm));
 
  695  hmp->AddNode(sec, 5, 
new TGeoTranslation(+335 * mm, +433 * mm, 78.6 * mm));
 
  696  hmp->AddNode(sec, 2, 
new TGeoTranslation(-335 * mm, 0 * mm, 78.6 * mm));
 
  697  hmp->AddNode(sec, 3, 
new TGeoTranslation(+335 * mm, 0 * mm, 78.6 * mm));
 
  698  hmp->AddNode(sec, 0, 
new TGeoTranslation(-335 * mm, -433 * mm, 78.6 * mm));
 
  699  hmp->AddNode(sec, 1, 
new TGeoTranslation(+335 * mm, -433 * mm, 78.6 * mm));
 
  700  sec->AddNode(gap, 1, 
new TGeoTranslation(0, 0, 0. * mm));
 
  701  cel->AddNode(cat, 1, 
new TGeoCombiTrans(0, 3.15 * mm, -2.70 * mm, rot)); 
 
  702  cel->AddNode(ano, 1, 
new TGeoCombiTrans(0, 2.00 * mm, -0.29 * mm, rot)); 
 
  703  cel->AddNode(cat, 2, 
new TGeoCombiTrans(0, 1.05 * mm, -2.70 * mm, rot));
 
  704  cel->AddNode(cat, 3, 
new TGeoCombiTrans(0, -1.05 * mm, -2.70 * mm, rot));
 
  705  cel->AddNode(ano, 2, 
new TGeoCombiTrans(0, -2.00 * mm, -0.29 * mm, rot));
 
  706  cel->AddNode(cat, 4, 
new TGeoCombiTrans(0, -3.15 * mm, -2.70 * mm, rot));
 
  707  cel->AddNode(pad, 1, 
new TGeoTranslation(0, 0.00 * mm, 2.25 * mm)); 
 
  709  hmp->AddNode(fr1, 1, 
new TGeoTranslation(0., 0., (80. + 1.7) * mm + 58.3 * mm / 2.));
 
  710  fr1->AddNode(fr1up, 1, 
new TGeoTranslation(0., 0., (58.3 * mm - 20.00 * mm) / 2.));
 
  712  fr1->AddNode(fr1perUpBig, 0,
 
  713               new TGeoTranslation(0., (1385 - 37 - 35) * mm / 2., (58.3 * mm - 20.00 * 2 * mm - 10.0 * mm) / 2.));
 
  714  fr1->AddNode(fr1perUpSma, 0,
 
  715               new TGeoTranslation((1426 - 37 - 35) * mm / 2., 0., (58.3 * mm - 20.00 * 2 * mm - 10.0 * mm) / 2.));
 
  716  fr1->AddNode(fr1perUpBig, 1,
 
  717               new TGeoTranslation(0., -(1385 - 37 - 35) * mm / 2., (58.3 * mm - 20.00 * 2 * mm - 10.0 * mm) / 2.));
 
  718  fr1->AddNode(fr1perUpSma, 1,
 
  719               new TGeoTranslation(-(1426 - 37 - 35) * mm / 2., 0., (58.3 * mm - 20.00 * 2 * mm - 10.0 * mm) / 2.));
 
  721  fr1->AddNode(fr1perDowBig, 0, 
new TGeoTranslation(0., (1385 - 37) * mm / 2., (-58.3 * mm + 2.3 * mm) / 2.));
 
  722  fr1->AddNode(fr1perDowSma, 0, 
new TGeoTranslation((1426 - 37) * mm / 2., 0., (-58.3 * mm + 2.3 * mm) / 2.));
 
  723  fr1->AddNode(fr1perDowBig, 1, 
new TGeoTranslation(0., -(1385 - 37) * mm / 2., (-58.3 * mm + 2.3 * mm) / 2.));
 
  724  fr1->AddNode(fr1perDowSma, 1, 
new TGeoTranslation(-(1426 - 37) * mm / 2., 0., (-58.3 * mm + 2.3 * mm) / 2.));
 
  726  fr1->AddNode(ppf, 4, 
new TGeoTranslation(-335 * mm, 433 * mm, (-58.3 + 38.3) * mm / 2.));
 
  727  fr1->AddNode(ppf, 5, 
new TGeoTranslation(335 * mm, 433 * mm, (-58.3 + 38.3) * mm / 2.));
 
  728  fr1->AddNode(ppf, 2, 
new TGeoTranslation(-335 * mm, 0., (-58.3 + 38.3) * mm / 2.));
 
  729  fr1->AddNode(ppf, 3, 
new TGeoTranslation(335 * mm, 0., (-58.3 + 38.3) * mm / 2.));
 
  730  fr1->AddNode(ppf, 0, 
new TGeoTranslation(-335 * mm, -433 * mm, (-58.3 + 38.3) * mm / 2.));
 
  731  fr1->AddNode(ppf, 1, 
new TGeoTranslation(335 * mm, -433 * mm, (-58.3 + 38.3) * mm / 2.));
 
  733  Double_t offsetx = 16. * mm, offsety = 34. * mm / 2., interdistx = 48 * mm + offsetx + 0.6666 * mm,
 
  734           interdisty = 19. * mm + 2. * offsety;
 
  739  TGeoVolume* gassipl2 = gGeoManager->MakeBox(
"Hgassipl2", csi, 32. * mm / 2, 3. * mm / 2., 1. * mm / 2.); 
 
  740  TGeoVolume* gassipl3 =
 
  741    gGeoManager->MakeBox(
"Hgassipl3", csi, 60. * mm / 2, 3. * mm / 2., 19. * mm / 2.); 
 
  742  TGeoVolume* gassipl4 = gGeoManager->MakeBox(
 
  743    "Hgassipl4", csi, 60. * mm / 2, 3. * mm / 2.,
 
  745  TGeoVolume* busext = gGeoManager->MakeTubs(
"Hbusext", csi, 29 * mm, 30 * mm, 40 * mm / 2., 0., 180); 
 
  746  TGeoVolume* ext = 
new TGeoVolumeAssembly(
"Hext");
 
  748  rect->AddNode(gassipl2, 1, 
new TGeoTranslation(0., 0., 0));
 
  750  for (Int_t hor = 0; hor < 10; hor++) {
 
  751    for (Int_t vert = 0; vert < 8; vert++) {
 
  752      cufoil->AddNode(rect, hor + vert * 10,
 
  753                      new TGeoTranslation(offsetx + 48. * mm / 2 + hor * interdistx - 662. * mm / 2,
 
  754                                          offsety + 19. * mm / 2 + vert * interdisty - 425. * mm / 2., 0.));
 
  755      fr1upcard->AddNode(gassipl3, hor + vert * 10,
 
  756                         new TGeoTranslation(offsetx + 48. * mm / 2 + hor * interdistx - 662. * mm / 2,
 
  757                                             offsety + 19. * mm / 2 + vert * interdisty - 425. * mm / 2., 0.));
 
  758      ext->AddNode(gassipl4, hor + vert * 10,
 
  759                   new TGeoTranslation(offsetx + 48. * mm / 2 + hor * interdistx - 662. * mm / 2,
 
  760                                       offsety + 19. * mm / 2 + vert * interdisty - 425. * mm / 2., 0));
 
  761      ext->AddNode(busext, hor + vert * 10,
 
  762                   new TGeoTranslation(offsetx + 48. * mm / 2 + hor * interdistx - 662. * mm / 2,
 
  763                                       offsety + 19. * mm / 2 + vert * interdisty - 425. * mm / 2 + 3. * mm / 2., 0));
 
  767  fr1up->AddNode(cufoil, 4, 
new TGeoTranslation(-335 * mm, 433 * mm, -20.0 * mm / 2 + 1. * mm / 2));
 
  768  fr1up->AddNode(cufoil, 5, 
new TGeoTranslation(335 * mm, 433 * mm, -20.0 * mm / 2 + 1. * mm / 2));
 
  769  fr1up->AddNode(cufoil, 2, 
new TGeoTranslation(-335 * mm, 0, -20.0 * mm / 2 + 1. * mm / 2));
 
  770  fr1up->AddNode(cufoil, 3, 
new TGeoTranslation(335 * mm, 0, -20.0 * mm / 2 + 1. * mm / 2));
 
  771  fr1up->AddNode(cufoil, 0, 
new TGeoTranslation(-335 * mm, -433 * mm, -20.0 * mm / 2 + 1. * mm / 2));
 
  772  fr1up->AddNode(cufoil, 1, 
new TGeoTranslation(335 * mm, -433 * mm, -20.0 * mm / 2 + 1. * mm / 2));
 
  774  fr1up->AddNode(fr1upcard, 4, 
new TGeoTranslation(-335 * mm, 433 * mm, 1. * mm / 2.));
 
  775  fr1up->AddNode(fr1upcard, 5, 
new TGeoTranslation(335 * mm, 433 * mm, 1. * mm / 2.));
 
  776  fr1up->AddNode(fr1upcard, 2, 
new TGeoTranslation(-335 * mm, 0, 1. * mm / 2.));
 
  777  fr1up->AddNode(fr1upcard, 3, 
new TGeoTranslation(335 * mm, 0, 1. * mm / 2.));
 
  778  fr1up->AddNode(fr1upcard, 0, 
new TGeoTranslation(-335 * mm, -433 * mm, 1. * mm / 2));
 
  779  fr1up->AddNode(fr1upcard, 1, 
new TGeoTranslation(335 * mm, -433 * mm, 1. * mm / 2.));
 
  781  hmp->AddNode(ext, 4, 
new TGeoTranslation(-335 * mm, +433 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  782  hmp->AddNode(ext, 5, 
new TGeoTranslation(+335 * mm, +433 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  783  hmp->AddNode(ext, 2, 
new TGeoTranslation(-335 * mm, 0 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  784  hmp->AddNode(ext, 3, 
new TGeoTranslation(+335 * mm, 0 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  785  hmp->AddNode(ext, 0, 
new TGeoTranslation(-335 * mm, -433 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  786  hmp->AddNode(ext, 1, 
new TGeoTranslation(+335 * mm, -433 * mm, (80. + 1.7) * mm + 58.3 * mm + 91 * mm / 2.));
 
  788  hmp->AddNode(proxgap1, 0, 
new TGeoTranslation(0., 0., (9. - 7.5) * mm / 2.)); 
 
  791  hmp->AddNode(proxgap2, 0,
 
  792               new TGeoTranslation(0., 0., (9 + 7.5 + 34) * mm + (81.7 - 6.2 - 34. - 9. - 7.5) * mm / 2.)); 
 
  831  ppf->AddNode(lar, 0, 
new TGeoTranslation(-224.5 * mm, -151.875 * mm, 0. * mm));
 
  832  ppf->AddNode(lar, 1, 
new TGeoTranslation(-224.5 * mm, -50.625 * mm, 0. * mm));
 
  833  ppf->AddNode(lar, 2, 
new TGeoTranslation(-224.5 * mm, +50.625 * mm, 0. * mm));
 
  834  ppf->AddNode(lar, 3, 
new TGeoTranslation(-224.5 * mm, +151.875 * mm, 0. * mm));
 
  835  ppf->AddNode(lar, 4, 
new TGeoTranslation(+224.5 * mm, -151.875 * mm, 0. * mm));
 
  836  ppf->AddNode(lar, 5, 
new TGeoTranslation(+224.5 * mm, -50.625 * mm, 0. * mm));
 
  837  ppf->AddNode(lar, 6, 
new TGeoTranslation(+224.5 * mm, +50.625 * mm, 0. * mm));
 
  838  ppf->AddNode(lar, 7, 
new TGeoTranslation(+224.5 * mm, +151.875 * mm, 0. * mm));
 
  839  ppf->AddNode(smo, 0, 
new TGeoTranslation(-65.0 * mm, -151.875 * mm, 0. * mm));
 
  840  ppf->AddNode(smo, 1, 
new TGeoTranslation(-65.0 * mm, -50.625 * mm, 0. * mm));
 
  841  ppf->AddNode(smo, 2, 
new TGeoTranslation(-65.0 * mm, +50.625 * mm, 0. * mm));
 
  842  ppf->AddNode(smo, 3, 
new TGeoTranslation(-65.0 * mm, +151.875 * mm, 0. * mm));
 
  843  ppf->AddNode(smo, 4, 
new TGeoTranslation(+65.0 * mm, -151.875 * mm, 0. * mm));
 
  844  ppf->AddNode(smo, 5, 
new TGeoTranslation(+65.0 * mm, -50.625 * mm, 0. * mm));
 
  845  ppf->AddNode(smo, 6, 
new TGeoTranslation(+65.0 * mm, +50.625 * mm, 0. * mm));
 
  846  ppf->AddNode(smo, 7, 
new TGeoTranslation(+65.0 * mm, +151.875 * mm, 0. * mm));
 
  849  hmp->AddNode(fr3, 1, 
new TGeoTranslation(0., 0., (9. + 7.5) * mm + 34. * mm / 2));
 
  850  fr3->AddNode(fr3up, 1, 
new TGeoTranslation(0., 0., 7 * mm));
 
  851  fr3->AddNode(fr3down, 1, 
new TGeoTranslation(0., 0., -10 * mm));
 
 
  867  Double_t 
params[10] = {0.5, 10., 24., -1, 5.2, 1.5, 3.5, 8.5, 3.8, 0.};
 
  868  TGeoMedium* med = gGeoManager->GetMedium(
"HMP_Al");
 
  869  TGeoVolume* cradle = 
new TGeoVolumeAssembly(
"Hcradle");
 
  872  Double_t baselong[7] = {
 
  873    6037 * mm - 2 * 100 * mm, 6037 * mm - 2 * 100 * mm, 60 * mm, 0., 100 * mm, 10 * mm, 10 * mm}; 
 
  875  lbase->SetLineColor(kGray);
 
  877  Double_t baseshort[7] = {
 
  878    1288. * mm + 2 * 100 * mm, 1288. * mm + 2 * 100 * mm, 60 * mm, 0., 100 * mm, 10 * mm, 10 * mm}; 
 
  880  sbase->SetLineColor(kGray);
 
  884  Double_t 
height = 30. * mm; 
 
  885  Double_t tubeh = 50. * mm;  
 
  886  Double_t heightred = 5. * mm;
 
  887  Double_t zred = 5. * mm;
 
  888  Double_t oneshift = tubeh / TMath::Tan(TMath::DegToRad() * 20.) + (1458. - 35) * mm / 2 - (1607 - 35) * mm / 2;
 
  889  Double_t linclined[7] = {
 
  890    1458. * mm - 
params[6] - 0.5, 1607. * mm - 
params[6] - 0.5, tubeh, oneshift, 
height, heightred, zred}; 
 
  892  inclin->SetLineColor(kGray);
 
  893  Double_t lhorizontal[7] = {
 
  896  horiz->SetLineColor(kGray);
 
  899  Double_t fourshift = tubeh / TMath::Tan(TMath::DegToRad() * 55.);
 
  900  Double_t lfour[7] = {592 * mm, 592 * mm, tubeh, fourshift, 
height, heightred, zred};
 
  902  four->SetLineColor(kGray);
 
  904  Double_t fiveshift = tubeh / TMath::Tan(TMath::DegToRad() * 75);
 
  905  Double_t lfive[7] = {500. * mm, 500. * mm, tubeh, fiveshift, 
height, heightred, zred};
 
  907  five->SetLineColor(kGray);
 
  909  Double_t sixshift = tubeh / TMath::Tan(TMath::DegToRad() * 55) + 459 * mm / 2 - 480 * mm / 2;
 
  910  Double_t lsix[7] = {456 * mm, 477 * mm, tubeh, sixshift, 
height, heightred, zred};
 
  912  six->SetLineColor(kGray);
 
  914  Double_t sevenshift = tubeh / TMath::Tan(TMath::DegToRad() * 50) + 472 * mm / 2 - 429. * mm / 2;
 
  915  Double_t lseven[7] = {429 * mm, 472 * mm, tubeh, sevenshift, 
height, heightred, zred};
 
  917  seven->SetLineColor(kGray);
 
  919  Double_t eightshift = tubeh / TMath::Tan(TMath::DegToRad() * 30) + 244. * mm / 2 - 200. * mm / 2 - 3;
 
  920  Double_t leight[7] = {200. * mm, 244. * mm, tubeh, eightshift, 
height, heightred, zred};
 
  922  eight->SetLineColor(kGray);
 
  924  Double_t nineshift = -tubeh / TMath::Tan(TMath::DegToRad() * 71) + 83. * mm / 2 - 66. * mm / 2;
 
  925  Double_t lnine[7] = {59.5 * mm, 76.5 * mm, tubeh, nineshift, 
height, heightred, zred};
 
  927  nine->SetLineColor(kGray);
 
  929  Double_t tenshift = (-tubeh / TMath::Tan(TMath::DegToRad() * 60) - 221. * mm / 2 + 195. * mm / 2);
 
  930  Double_t lten[7] = {195. * mm, 221. * mm, tubeh, tenshift, 
height, heightred, zred};
 
  932  ten->SetLineColor(kGray);
 
  934  Double_t elevenshift = (-tubeh / TMath::Tan(TMath::DegToRad() * 70) - 338. * mm / 2 + 315. * mm / 2);
 
  935  Double_t leleven[7] = {308. * mm, 331. * mm, tubeh, elevenshift, 
height, heightred, zred};
 
  937  eleven->SetLineColor(kGray);
 
  939  Double_t twelveshift = (-tubeh / TMath::Tan(TMath::DegToRad() * 60) - 538. * mm / 2 + 508. * mm / 2);
 
  940  Double_t ltwelve[7] = {507. * mm, 537. * mm, tubeh, twelveshift, 
height, heightred, zred};
 
  942  twelve->SetLineColor(kGray);
 
  944  Double_t thirteenshift = tubeh / TMath::Tan(TMath::DegToRad() * 43);
 
  945  Double_t lthirteen[7] = {708. * mm, 708. * mm, tubeh, thirteenshift, 
height, heightred, zred};
 
  947  thirteen->SetLineColor(kGray);
 
  950  TGeoVolume* vbox = 
new TGeoVolumeAssembly(
"Hvbox");
 
  951  vbox->SetLineColor(kViolet);
 
  952  Double_t 
width = 50. * mm;
 
  954  TGeoVolume* vboxlast = 
new TGeoVolumeAssembly(
"Hvboxlast"); 
 
  955  vboxlast->SetLineColor(kViolet);
 
  957  Double_t barheight = 100. * mm;
 
  958  Double_t lAfourteen[7] = {1488. * mm, 1488. * mm, barheight, 0, 
width, heightred, zred};
 
  960  afourteen->SetLineColor(kGray);
 
  962  Double_t lBfourteen[7] = {387 * mm, 387. * mm, barheight, 0, 
width, heightred, zred};
 
  964  bfourteen->SetLineColor(kGray);
 
  966  Double_t lCfourteen[7] = {1288. * mm, 1288. * mm, barheight, 0, 
width, heightred, zred};
 
  968  cfourteen->SetLineColor(kGray);
 
  970  Double_t oblshift = 50. * mm / TMath::Tan(TMath::DegToRad() * 35);
 
  971  Double_t lDfourteen[7] = {603. * mm, 603. * mm, 50. * mm, oblshift, 
width, heightred, zred};
 
  973  dfourteen->SetLineColor(kGray);
 
  975  Double_t lDfourteenlast[7] = {667. * mm, 667. * mm, 50. * mm, oblshift, 
width, heightred, zred};
 
  976  TGeoVolume* dfourteenlast = 
CradleBaseVolume(med, lDfourteenlast, 
"bar14incllast");
 
  977  dfourteenlast->SetLineColor(kGray);
 
  979  vbox->AddNode(afourteen, 1, 
new TGeoTranslation(0., 487. * mm / 2 - 100. * mm / 2, 0.));
 
  980  TGeoRotation* vinrot = 
new TGeoRotation(
"vertbar");
 
  982  vbox->AddNode(bfourteen, 1, 
new TGeoCombiTrans(1488 * mm / 2 - 100. * mm / 2, -100. * mm / 2, 0., vinrot));
 
  983  vbox->AddNode(bfourteen, 2, 
new TGeoCombiTrans(-1488 * mm / 2 + 100. * mm / 2, -100. * mm / 2, 0., vinrot));
 
  984  TGeoRotation* rotboxbar = 
new TGeoRotation(
"rotboxbar");
 
  985  rotboxbar->RotateZ(-35);
 
  986  TGeoRotation* arotboxbar = 
new TGeoRotation(
"arotboxbar");
 
  987  arotboxbar->RotateZ(-35);
 
  988  arotboxbar->RotateY(180);
 
  989  vbox->AddNode(dfourteen, 1, 
new TGeoCombiTrans(-1488 * mm / 4, -1, 0.4, rotboxbar));
 
  990  vbox->AddNode(dfourteen, 2, 
new TGeoCombiTrans(+1488 * mm / 4, -1, 0.4, arotboxbar));
 
  992  vboxlast->AddNode(afourteen, 1, 
new TGeoTranslation(0., 487. * mm / 2 - 100. * mm / 2, 0.));
 
  993  vboxlast->AddNode(bfourteen, 1, 
new TGeoCombiTrans(1488 * mm / 2 - 100. * mm / 2, -100. * mm / 2, 0., vinrot));
 
  994  vboxlast->AddNode(bfourteen, 2, 
new TGeoCombiTrans(-1488 * mm / 2 + 100. * mm / 2, -100. * mm / 2, 0., vinrot));
 
  995  vboxlast->AddNode(dfourteenlast, 1, 
new TGeoCombiTrans(-1488 * mm / 4 + 1.7, -3., 0., rotboxbar));
 
  996  vboxlast->AddNode(dfourteenlast, 2, 
new TGeoCombiTrans(+1488 * mm / 4 - 1.7, -3., 0., arotboxbar));
 
 1001  TGeoRotation* rotl = 
new TGeoRotation(
"Clongbase");
 
 1003  cradle->AddNode(lbase, 0, 
new TGeoCombiTrans(0 * mm, (1488 - 100) * mm / 2, -(597 - 60) * mm / 2, rotl));
 
 1004  cradle->AddNode(lbase, 1, 
new TGeoCombiTrans(0 * mm, -(1488 - 100) * mm / 2, -(597 - 60) * mm / 2, rotl));
 
 1006  TGeoRotation* rots = 
new TGeoRotation(
"Cshortbase");
 
 1009  cradle->AddNode(sbase, 1, 
new TGeoCombiTrans((6037 - 100) * mm / 2, 0., -(597 - 60) * mm / 2, rots));
 
 1010  cradle->AddNode(sbase, 2, 
new TGeoCombiTrans(-(6037 - 100) * mm / 2, 0., -(597 - 60) * mm / 2, rots));
 
 1013  Double_t origtrastruct = (6037 - 2 * 60) * mm / 2 - 2288 * mm;
 
 1015  TGeoRotation* rot1 = 
new TGeoRotation(
"inclrot");
 
 1018  TGeoRotation* rot2 = 
new TGeoRotation(
"horizrot");
 
 1020  Double_t dx = (1607 - 35) * mm * TMath::Cos(TMath::DegToRad() * 20) / 2 -
 
 1021                tubeh / 2 * TMath::Sin(TMath::DegToRad() * 20) + 
params[5];
 
 1023  cradle->AddNode(inclin, 1, 
new TGeoCombiTrans(origtrastruct + (2288 + 60) * mm - dx, 729 * mm, 
params[0] + 0.4,
 
 1025  cradle->AddNode(horiz, 1, 
new TGeoCombiTrans(origtrastruct, 729 * mm, 597 * mm / 2 - tubeh / 2,
 
 1027  TGeoRotation* rot1mirror = 
new TGeoRotation(
"inclmirrot");
 
 1028  rot1mirror->RotateX(90);
 
 1029  rot1mirror->RotateY(200);
 
 1030  rot1mirror->RotateZ(180);
 
 1031  cradle->AddNode(inclin, 2, 
new TGeoCombiTrans(origtrastruct - 2345 * mm + dx, 729 * mm, 
params[0] + 0.4,
 
 1033  cradle->AddNode(inclin, 3, 
new TGeoCombiTrans(origtrastruct + (2288 + 60) * mm - dx, -729 * mm, 
params[0] + 0.4,
 
 1035  cradle->AddNode(horiz, 2, 
new TGeoCombiTrans(origtrastruct, -729 * mm, 597 * mm / 2 - tubeh / 2,
 
 1037  cradle->AddNode(inclin, 4, 
new TGeoCombiTrans(origtrastruct - 2345 * mm + dx, -729 * mm, 
params[0] + 0.4,
 
 1040  Double_t tan1 = (2 * TMath::Tan(TMath::DegToRad() * 55));
 
 1043  TGeoRotation* rot4 = 
new TGeoRotation(
"4rot");
 
 1047  TGeoRotation* rot4a = 
new TGeoRotation(
"4arot");
 
 1048  rot4a->RotateX(-90);
 
 1049  rot4a->RotateY(-55);
 
 1050  cradle->AddNode(four, 1, 
new TGeoCombiTrans(origtrastruct - (39 + (597 - 50 - 60) / tan1) * mm - tubeh / (2 * TMath::Sin(TMath::DegToRad() * 55)), -729 * mm, 
params[3], rot4));
 
 1052  cradle->AddNode(four, 2, 
new TGeoCombiTrans(origtrastruct + (39 + (597 - 50 - 60) / tan1) * mm + tubeh / (2 * TMath::Sin(TMath::DegToRad() * 55)), -729 * mm, 
params[3], rot4a));
 
 1054  TGeoRotation* rot5 = 
new TGeoRotation(
"5rot");
 
 1058  TGeoRotation* rot5a = 
new TGeoRotation(
"5arot");
 
 1059  rot5a->RotateX(-90);
 
 1060  rot5a->RotateY(-75);
 
 1063    new TGeoCombiTrans(origtrastruct + (486 + (597 - 50 - 60) / (2 * TMath::Tan(TMath::DegToRad() * 75))) * mm +
 
 1064                         tubeh / (2 * TMath::Sin(TMath::DegToRad() * 75)),
 
 1065                       -729 * mm, 0, rot5));
 
 1068    new TGeoCombiTrans(origtrastruct - (486 + (597 - 50 - 60) / (2 * TMath::Tan(TMath::DegToRad() * 75))) * mm -
 
 1069                         tubeh / (2 * TMath::Sin(TMath::DegToRad() * 75)),
 
 1070                       -729 * mm, 0, rot5a));
 
 1071  cradle->AddNode(six, 1,
 
 1072                  new TGeoCombiTrans(origtrastruct + 808 * mm + (480 * mm / 2) * TMath::Cos(TMath::DegToRad() * 55) +
 
 1073                                       tubeh / (2 * TMath::Sin(TMath::DegToRad() * 55)) + 2.,
 
 1074                                     -729 * mm, -
params[4] - 0.5, rot4a));
 
 1075  cradle->AddNode(six, 2,
 
 1076                  new TGeoCombiTrans(origtrastruct - 808 * mm - (480 * mm / 2) * TMath::Cos(TMath::DegToRad() * 55) -
 
 1077                                       tubeh / (2 * TMath::Sin(TMath::DegToRad() * 55)) - 2.,
 
 1078                                     -729 * mm, -
params[4] - 0.5, rot4));
 
 1080  TGeoRotation* rot7 = 
new TGeoRotation(
"7rot");
 
 1084  TGeoRotation* rot7a = 
new TGeoRotation(
"7arot");
 
 1085  rot7a->RotateX(-90);
 
 1086  rot7a->RotateY(130);
 
 1089    seven, 1, 
new TGeoCombiTrans(origtrastruct + 1478 * mm - (472 * mm / 2) * TMath::Cos(TMath::DegToRad() * 50) + tubeh / (2 * TMath::Sin(TMath::DegToRad() * 50)), -729 * mm, -
params[8], rot7));
 
 1091    seven, 2, 
new TGeoCombiTrans(origtrastruct - 1478 * mm + (472 * mm / 2) * TMath::Cos(TMath::DegToRad() * 50) - tubeh / (2 * TMath::Sin(TMath::DegToRad() * 50)), -729 * mm, -
params[8], rot7a));
 
 1092  TGeoRotation* rot8 = 
new TGeoRotation(
"8rot");
 
 1095  TGeoRotation* rot8a = 
new TGeoRotation(
"8arot");
 
 1096  rot8a->RotateX(-90);
 
 1097  rot8a->RotateY(-25);
 
 1098  rot8a->RotateZ(180);
 
 1100    eight, 1, 
new TGeoCombiTrans(origtrastruct + 1640 * mm + (244 * mm / 2) * TMath::Cos(TMath::DegToRad() * 30) + tubeh / (2 * TMath::Sin(TMath::DegToRad() * 30)), -729 * mm, -20.5, rot8));
 
 1102    eight, 2, 
new TGeoCombiTrans(origtrastruct - 1640 * mm - (244 * mm / 2) * TMath::Cos(TMath::DegToRad() * 30) - tubeh / (2 * TMath::Sin(TMath::DegToRad() * 30)), -729 * mm, -20.5, rot8a));
 
 1103  TGeoRotation* rot9 = 
new TGeoRotation(
"9rot");
 
 1106  TGeoRotation* rot9a = 
new TGeoRotation(
"9arot");
 
 1107  rot9a->RotateX(-90);
 
 1108  rot9a->RotateY(-90);
 
 1109  rot9a->RotateZ(180);
 
 1110  cradle->AddNode(nine, 1, 
new TGeoCombiTrans(origtrastruct + 1960 * mm + 2.5 + 3., -729. * mm, -20., rot9));
 
 1111  cradle->AddNode(nine, 2, 
new TGeoCombiTrans(origtrastruct - 1960 * mm - 2.5 - 3., -729. * mm, -20., rot9a));
 
 1113  TGeoRotation* rot10 = 
new TGeoRotation(
"10rot");
 
 1114  rot10->RotateX(-90);
 
 1115  rot10->RotateY(-120);
 
 1116  TGeoRotation* rot10a = 
new TGeoRotation(
"10arot");
 
 1117  rot10a->RotateX(-90);
 
 1118  rot10a->RotateY(-120);
 
 1119  rot10a->RotateZ(180);
 
 1122    ten, 1, 
new TGeoCombiTrans(origtrastruct + 1738 * mm + tubeh / (2 * TMath::Sin(TMath::DegToRad() * 60)) - 2, +729. * mm, -13., rot10));
 
 1124    ten, 2, 
new TGeoCombiTrans(origtrastruct - 1738 * mm - tubeh / (2 * TMath::Sin(TMath::DegToRad() * 60)) + 2, +729. * mm, -13., rot10a));
 
 1126  TGeoRotation* rot11 = 
new TGeoRotation(
"11rot");
 
 1127  rot11->RotateX(-90);
 
 1129  TGeoRotation* rot11a = 
new TGeoRotation(
"11arot");
 
 1130  rot11a->RotateX(-90);
 
 1131  rot11a->RotateY(50);
 
 1132  rot11a->RotateZ(180);
 
 1133  cradle->AddNode(eleven, 1, 
new TGeoCombiTrans(origtrastruct - 1738 * mm - tubeh / (2 * TMath::Sin(TMath::DegToRad() * 60)) + 352. * mm, +729. * mm, -12.7, rot11));
 
 1134  cradle->AddNode(eleven, 2, 
new TGeoCombiTrans(origtrastruct + 1738 * mm + tubeh / (2 * TMath::Sin(TMath::DegToRad() * 60)) - 352. * mm, +729. * mm, -12.7, rot11a));
 
 1136  TGeoRotation* rot12 = 
new TGeoRotation(
"12rot");
 
 1137  rot12->RotateX(-90);
 
 1138  rot12->RotateY(-120);
 
 1139  TGeoRotation* rot12a = 
new TGeoRotation(
"12arot");
 
 1140  rot12a->RotateX(-90);
 
 1141  rot12a->RotateY(-120);
 
 1142  rot12a->RotateZ(180);
 
 1143  cradle->AddNode(twelve, 1, 
new TGeoCombiTrans(origtrastruct + 1065 * mm, +729. * mm, 1., rot12));
 
 1144  cradle->AddNode(twelve, 2, 
new TGeoCombiTrans(origtrastruct - 1065 * mm, +729. * mm, 1., rot12a));
 
 1146  TGeoRotation* rot13 = 
new TGeoRotation(
"13rot");
 
 1147  rot13->RotateX(-90);
 
 1148  rot13->RotateY(-43);
 
 1149  rot13->RotateZ(180);
 
 1150  TGeoRotation* rot13a = 
new TGeoRotation(
"13arot");
 
 1151  rot13a->RotateX(-90);
 
 1152  rot13a->RotateY(-43);
 
 1153  cradle->AddNode(thirteen, 1, 
new TGeoCombiTrans(origtrastruct + 572 * mm - 18., +729. * mm, -1.5, rot13));
 
 1154  cradle->AddNode(thirteen, 2, 
new TGeoCombiTrans(origtrastruct - 572 * mm + 18., +729. * mm, -1.5, rot13a));
 
 1157  TGeoRotation* vrot = 
new TGeoRotation(
"vertbox");
 
 1160  cradle->AddNode(vboxlast, 1, 
new TGeoCombiTrans(-6037 * mm / 2 + 50. * mm / 2, 0., 0.5,
 
 1163  cradle->AddNode(vbox, 2, 
new TGeoCombiTrans(-6037 * mm / 2 + 50. * mm / 2 + 990. * mm, 0., 0.5, vrot));
 
 1164  cradle->AddNode(cfourteen, 2, 
new TGeoCombiTrans(-6037 * mm / 2 + 50. * mm / 2 + 990. * mm, 0., -477. * mm / 2 - 20. * mm / 2, vrot));
 
 1167    vbox, 3, 
new TGeoCombiTrans(origtrastruct - (1641.36 * mm + 
params[7]) / 2. + 50. * mm / 2. + 3, 0., 0.5, vrot));
 
 1168  cradle->AddNode(cfourteen, 3,
 
 1169                  new TGeoCombiTrans(origtrastruct - (1641.36 * mm + 
params[7]) / 2. + 50. * mm / 2. + 3, 0.,
 
 1170                                     -477. * mm / 2 - 20. * mm / 2, vrot));
 
 1173    vbox, 4, 
new TGeoCombiTrans(origtrastruct + (1641.36 * mm + 
params[7]) / 2. - 50. * mm / 2. - 3, 0., 0.5, vrot));
 
 1174  cradle->AddNode(cfourteen, 4,
 
 1175                  new TGeoCombiTrans(origtrastruct + (1641.36 * mm + 
params[7]) / 2. - 50. * mm / 2. - 3, 0.,
 
 1176                                     -477. * mm / 2 - 20. * mm / 2, vrot));