80 "WorldLogical", 0, 0, 0);
93 G4Box *driftChamberBox
94 =
new G4Box(
"DriftChamberSolid", detectSize, detectSize, 40*
cm);
97 "DriftChamberLogical", 0, 0, 0);
101 "DriftChamberPhysical",
110 G4Box *calorimeterBox
111 =
new G4Box(
"CalorimeterSolid", detectSize, detectSize, 20*
cm);
113 "CalorimeterLogical", 0, 0, 0);
116 "CalorimeterPhysical",
128 G4Box *CrystalSolid =
new G4Box(
"CrystalSolid", CrystalX, CrystalY, CrystalZ);
130 "CrystalLogical", 0, 0, 0);
140 for (
G4int j = 0; j < fnY; j++)
142 yTlate = -detectSize + 3*CrystalY + j*2*CrystalY;
143 for (
G4int i = 0; i < fnX; i++)
145 xTlate = -detectSize + 3*CrystalX + i*2*CrystalX;
149 calorimeterPhys,
false,copyNo++);
161 =
new G4Box(
"HadCaloSolid", detectSize, detectSize, 50*
cm);
163 "HadCaloLogical", 0, 0, 0);
178 G4Box *TowerSolid =
new G4Box(
"TowerSolid", TowerX, TowerY, TowerZ);
180 "TowerLogical", 0, 0, 0);
188 for (
G4int jj = 0; jj < fnYhad; jj++)
190 yTlate = -detectSize + 3*TowerY + jj*2*TowerY;
191 for (
G4int i = 0; i < fnXhad; i++)
193 xTlate = -detectSize + 3*TowerX + i*2*TowerX;
197 hadCaloPhys,
false,copyNo++);
207 std::vector<double> cuts;
208 cuts.push_back(1.0*
mm);cuts.push_back(1.0*
mm);cuts.push_back(1.0*
mm);cuts.push_back(1.0*
mm);
216 cuts.push_back(1.0*
cm);cuts.push_back(1.0*
cm);cuts.push_back(1.0*
cm);cuts.push_back(1.0*
cm);
262 G4String calorimeterSDname =
"Par01/Calorimeter";
269 G4String hadCalorimeterSDname =
"Par01/HadronCalorimeter";
G4ProductionCuts * GetProductionCuts() const
virtual void ConstructSDandField()
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
void SetForceWireframe(G4bool)
CLHEP::Hep3Vector G4ThreeVector
void AddRootLogicalVolume(G4LogicalVolume *lv)
virtual G4VPhysicalVolume * Construct()
static G4NistManager * Instance()
static G4RegionStore * GetInstance()
G4GLOB_DLL std::ostream G4cout
void AddNewDetector(G4VSensitiveDetector *aSD)
Par01DetectorConstruction()
static G4SDManager * GetSDMpointer()
static const G4VisAttributes Invisible
void SetProductionCuts(G4ProductionCuts *cut)
virtual ~Par01DetectorConstruction()
void SetVisAttributes(const G4VisAttributes *pVA)
void SetSensitiveDetector(G4VSensitiveDetector *pSDetector)
void SetProductionCuts(std::vector< G4double > &)