23 #include "G4RunManager.hh"
124 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::DefineTriggerScintillatorGeometry() " << G4endl << G4endl;
125 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::DefineTriggerScintillatorGeometry() " << G4endl << G4endl;
132 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::ConstructComponent() " << G4endl << G4endl;
146 G4cout << G4endl <<
"###### QweakSimTriggerScintillator: Define TriggerScintillatorContainer_Solid " << G4endl << G4endl;
148 G4Box* TriggerScintillatorContainer_Solid =
new G4Box(
"TriggerScintillatorContainer_Solid",
154 G4cout << G4endl <<
"###### QweakSimTriggerScintillator: Define TriggerScintillatorContainer_Logical " << G4endl << G4endl;
158 "TriggerScintillatorContainer_Logical",
165 G4Box* StraightBar_Solid =
new G4Box(
"StraightBar_Sol",
174 "TriggerScintillator_Logical",
179 G4ThreeVector Position_TriggerScintillator = G4ThreeVector(0,0,0);
182 G4cout << G4endl <<
"###### QweakSimShieldingWall: Define TriggerScintillator Physical " << G4endl << G4endl;
184 Position_TriggerScintillator,
186 "TriggerScintillator_Physical",
193 G4cout << G4endl <<
"###### QweakSimTriggerScintillator: Setting Sensitive Detectors " << G4endl << G4endl;
199 G4SDManager* SDman = G4SDManager::GetSDMpointer();
218 G4cout << G4endl <<
"###### QweakSimTriggerScintillator: Setting Attributes " << G4endl << G4endl;
220 G4Colour orange ( 255/255., 127/255., 0/255.);
221 G4Colour blue ( 0/255., 0/255., 255/255.);
223 G4Colour grey ( 127/255., 127/255., 127/255.);
224 G4Colour lightblue ( 139/255., 208/255., 255/255.);
225 G4Colour lightorange ( 255/255., 189/255., 165/255.);
230 G4VisAttributes* TriggerScintillatorContainerVisAtt =
new G4VisAttributes(blue);
232 TriggerScintillatorContainerVisAtt->SetVisibility(
true);
233 TriggerScintillatorContainerVisAtt->SetForceWireframe(
true);
247 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::ConstructComponent() " << G4endl << G4endl;
256 G4Material* pttoMaterial = G4Material::GetMaterial(materialName);
259 G4cout <<
"==== Changing TriggerScintillator Detector Material: Looking up Material " << G4endl;
261 G4cout <<
"==== Changing Scintillator detector Material: Now the TriggerScintillator is made of " << materialName << G4endl;
264 G4cerr <<
"==== ERROR: Changing TriggerScintillator Detector Material failed" << G4endl;
278 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::SetTriggerScintillatorThickness() " << G4endl << G4endl;
290 G4RunManager::GetRunManager()->GeometryHasBeenModified();
292 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorThickness() " << G4endl << G4endl;
298 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::SetScintillatorCenterPositionInX() " << G4endl << G4endl;
303 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorCenterPositionInX() " << G4endl << G4endl;
309 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::SetTriggerScintillatorCenterPositionInY() " << G4endl << G4endl;
314 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorCenterPositionInY() " << G4endl << G4endl;
320 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::SetTriggerScintillatorCenterPositionInZ() " << G4endl << G4endl;
325 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorCenterPositionInZ() " << G4endl << G4endl;
332 G4cout << G4endl <<
"###### Calling QweakSimTriggerScintillator::SetTriggerScintillatorTiltAngle() " << G4endl << G4endl;
339 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorTiltAngle() " << G4endl << G4endl;
352 G4cout << G4endl <<
"###### Leaving QweakSimTriggerScintillator::SetTriggerScintillatorPhiAngle() " << G4endl << G4endl;
358 G4cout << G4endl <<
"###### QweakSimTriggerScintillator: Define TriggerScintillatorContainer_Physical " << G4endl << G4endl;
362 G4double phi =
Phi_Angle + i * 180.0 * degree;
375 "TriggerScintillatorContainer_Physical",
G4Material * TriggerScintillatorContainer_Material
std::vector< G4double > Position_TriggerScintillatorContainer_Y
G4VSensitiveDetector * TriggerScintillatorSD
void SetTriggerScintillatorCenterPositionInZ(G4double zPos, G4int pkg=0)
G4double StraightBar_FullHeight
std::vector< G4double > Position_TriggerScintillatorContainer_Z
void TriggerScintillatorGeometryPVUpdate()
void SetTriggerScintillatorCenterPositionInY(G4double yPos, G4int pkg=0)
static QweakSimMaterial * GetInstance()
G4VPhysicalVolume * theMotherPV
QweakSimTriggerScintillator()
QweakSimTriggerScintillatorMessenger * TriggerScintillatorMessenger
G4LogicalVolume * TriggerScintillatorContainer_Logical
static const G4bool pSurfChk
G4Material * TriggerScintillator_Material
G4VPhysicalVolume * TriggerScintillator_Physical
G4double Container_FullLength_X
~QweakSimTriggerScintillator()
G4double StraightBar_FullLength
void DefineTriggerScintillatorGeometry()
G4double StraightBar_FullThickness
std::vector< G4VPhysicalVolume * > TriggerScintillatorContainer_Physical
void SetTriggerScintillatorTiltAngle(G4double tiltangle)
G4Material * GetMaterial(G4String material)
std::vector< G4RotationMatrix * > Rotation_TriggerScintillatorContainer
G4LogicalVolume * TriggerScintillator_Logical
Storing hit information of the Trigger Scintillator detector.
G4double Container_FullLength_Y
G4double Container_FullLength_Z
G4ThreeVector Position_TriggerScintillatorContainer
void PlaceTriggerScintillator_MasterContainers()
void SetTriggerScintillatorCenterPositionInX(G4double xPos, G4int pkg=0)
QweakSimMaterial * pMaterial
void SetTriggerScintillatorThickness(G4double thickness)
Scans the input file for /Scintillator/xyz commands.
void SetTriggerScintillatorMaterial(G4String materialName)
void ConstructComponent(G4VPhysicalVolume *MotherVolume)
std::vector< G4double > Position_TriggerScintillatorContainer_X
void SetTriggerScintillatorPhiAngle(G4double phiangle)