65   F2LArGapID = 
new G4int[2600];
 
   66   F2LArIX     = 
new G4int[2600];
 
   67   F2LArJY     = 
new G4int[2600];
 
   68   F2LArITile  = 
new G4int[2600];
 
   75   delete [] F2LArGapPosX;
 
   76   delete [] F2LArGapPosY;
 
   85 #include "FCALHadModuleParameters.input" 
   88    (
"geom_data/FCal2Electrodes.dat");
 
   90    if(!File)  
G4cerr << 
"Failed to open file FCal2Electrode data file" << 
G4endl;
 
   94    while(!(File.eof())) {
 
   96      File >> F2LArGapID[NF2LarGap] >> F2LArGapPosX[NF2LarGap] >> F2LArGapPosY[NF2LarGap]
 
   97       >> F2LArIX[NF2LarGap] >>  F2LArJY[NF2LarGap] >> F2LArITile[NF2LarGap];
 
  100    G4cout << 
"*********" << 
" Number of Rods in FCAL2 : " << NF2LarGap-1 << 
G4endl;
 
  129     new G4Tubs(
"HadModuleSolid", HadModuleRMin, HadModuleRMax, HadModuleLenght,
 
  130            HadModuleStartPhi,HadModuleDPhi);
 
  145     new G4Tubs(
"WAbsorberSolid", WAbsorberRMin, WAbsorberRMax, WAbsorberLenght,
 
  146            WAbsorberStartPhi, WAbsorberDPhi);      
 
  152               LogicalHadModule, 0, 0);
 
  162     new G4Tubs(
"CuPlateSolid",HadModuleRMin, HadModuleRMax, CuPlateLenght, 
 
  163            HadModuleStartPhi, HadModuleDPhi);
 
  168     new G4PVPlacement(0, 
G4ThreeVector(0.,0.,CuPlateAPosZ), LogicalCuPlate, 
 
  169               "CuPlateAPhysical", LogicalHadModule, 0, 0);
 
  171     new G4PVPlacement(0, 
G4ThreeVector(0.,0.,CuPlateBPosZ), LogicalCuPlate, 
 
  172               "CuPlateBPhysical", LogicalHadModule, 0, 0);
 
  180   G4Tubs * SolidF2TroffMain = 
 
  181     new G4Tubs(
"F2TroffMainSolid", F2TroffRmin, F2TroffRmax, F2TroffMainLenght, 
 
  182            F2TroffStartPhi, F2TroffDphi);
 
  185             "F2TroffMainLogical");
 
  188     new G4Tubs(
"F2TroffABSolid", F2TroffRmin, F2TroffRmax, F2TroffABLenght, 
 
  189            F2TroffStartPhi, F2TroffDphi);
 
  198     for(i=0 ; i < NCableTroff ; i++)
 
  201     new G4PVPlacement(
G4Transform3D(F2TroffRot,F2TroffMainTrans), LogicalF2TroffMain,
 
  202               "F2TroffMainPhysical", LogicalWAbsorber,0,i+1);
 
  205     new G4PVPlacement(
G4Transform3D(F2TroffRot,F2TroffABTrans), LogicalF2TroffAB, 
 
  206               "F2TroffAPhysical", LogicalCuPlate, 0, i+1);
 
  208       F2TroffRot.
rotateZ(F2TroffRotZ);
 
  221      new G4Tubs(
"F2LArGapSolid", F2LArGapRmin, F2LArGapRmax, F2LArGapLenght, 
 
  222                  F2LArGapStartPhi, F2LArGapDphi);
 
  231       new G4Tubs(
"F2RodSolid", F2RodRmin, F2RodRmax, F2RodLenght, F2RodStartPhi, F2RodDphi);
 
  235       new G4PVPlacement(0,
G4ThreeVector(),LogicalF2Rod,
"F2RodPhysical",LogicalF2LArGap,0, 0);
 
  243     for(i=1; i < NF2LarGap; i++){ 
 
  245     new G4PVPlacement(0,
G4ThreeVector(F2LArGapPosX[i]*
cm,F2LArGapPosY[i]*cm,0.*cm),
 
  246               LogicalF2LArGap,
"F2LArGapPhysical",
 
  247               LogicalHadModule, 0, i); 
 
  265    return LogicalHadModule;
 
  271   return F2LArITile[TileID];