66 static const G4double RIN_BARREL_CAL= 2.*
m;
67 static const G4double ROUT_BARREL_CAL= 3.*
m;
68 static const G4double DZ_BARREL_CAL= 5.*
m;
70 static const G4double RIN_ENDCAP_CAL= 1.*
m;
71 static const G4double ROUT_ENDCAP_CAL= 3.*
m;
72 static const G4double DZ_ENDCAP_CAL= 0.5*
m;
75 static const G4double RIN_BARREL_MUON= 4.3*
m;
76 static const G4double ROUT_BARREL_MUON= 4.5*
m;
77 static const G4double DX_BARREL_MUON= RIN_BARREL_MUON*std::cos(67.5*
deg)-5.*
cm;
79 static const G4double DZ_BARREL_MUON= 7.*
m;
81 static const G4double RIN_ENDCAP_MUON= 1.*
m;
82 static const G4double ROUT_ENDCAP_MUON= 4.5*
m;
128 density= 1.29e-03*
g/
cm3;
134 density= 11.35*
g/
cm3;
138 density= 1.782e-03*
g/
cm3;
141 density= 1.032*
g/
cm3;
151 new G4Tubs(
"EXP_HALL", 0., R_EXPHALL, DZ_EXPHALL, 0., 360.*
deg);
160 expHallLV-> SetVisAttributes(expHallVisAtt);
163 expHallLV, 0,
FALSE, 0);
171 new G4Tubs(
"BARREL_CAL", RIN_BARREL_CAL, ROUT_BARREL_CAL,
172 DZ_BARREL_CAL, 0., 360.*
deg);
175 new G4Tubs(
"ENDCAP_CAL", RIN_ENDCAP_CAL, ROUT_ENDCAP_CAL,
176 DZ_ENDCAP_CAL, 0., 360.*
deg);
186 barrelCalLV-> SetVisAttributes(calVisAtt);
187 endcapCalLV-> SetVisAttributes(calVisAtt);
191 barrelCalLV, expHall,
FALSE, 0);
196 endcapCalLV, expHall,
FALSE, 0);
200 endcapCalLV, expHall,
FALSE, 1);
203 G4Box* barrelMuonSolid=
new G4Box(
"BARREL_MUON", DX_BARREL_MUON,
204 DY_BARREL_MUON, DZ_BARREL_MUON);
206 new G4Tubs(
"ENDCAP_MUON", RIN_ENDCAP_MUON, ROUT_ENDCAP_MUON,
207 DZ_ENDCAP_MUON, 0., 360.*
deg);
218 barrelMuonLV-> SetVisAttributes(muonVisAtt);
219 endcapMuonLV-> SetVisAttributes(muonVisAtt);
222 G4ThreeVector posM(RIN_BARREL_MUON+DY_BARREL_MUON/2., 0., 0.);
226 for (
G4int k=0; k<8; k++) {
229 barrelMuonLV, expHall,
FALSE, k);
237 endcapMuonLV, expHall,
FALSE, 0);
241 endcapMuonLV, expHall,
FALSE, 1);
249 SDman-> AddNewDetector(muonSD);
250 barrelMuonLV-> SetSensitiveDetector(muonSD);
251 endcapMuonLV-> SetSensitiveDetector(muonSD);
257 fieldMgr-> SetDetectorField(myfield);
258 fieldMgr-> CreateChordFinder(myfield);