31 #include "DetectorConstruction.hh"
32 #include "DetectorMessenger.hh"
56 fMethod(kWithDirectMatrix),
96 rmin, rmax, hz, phiMin, deltaPhi);
122 dX1/2, dX2/2, dY1/2, dY2/2, dZ/2);
148 void DetectorConstruction::PlaceWithDirectMatrix()
160 G4cout <<
"\n --> phi = " << phi/
deg <<
" deg; direct rotation matrix : ";
190 void DetectorConstruction::PlaceWithInverseMatrix()
203 G4cout <<
"\n --> phi = " << phi/deg <<
" deg; inverse rotation matrix : ";
235 void DetectorConstruction::PlaceWithAxialRotations()
245 G4cout <<
"\n --> phi = " << phi/deg <<
" deg; direct rotation matrix : ";
280 void DetectorConstruction::PlaceWithEulerAngles()
300 G4cout <<
"\n --> phi = " << phi/deg <<
" deg; direct rotation matrix : ";
317 phi_euler = phi +
pi/2;
334 void DetectorConstruction::PlaceWithReflections()
387 ->
Place(translateZ * transform1 * reflect3D,
396 ->
Place( translateZ * transform2 * reflect3D,
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
CLHEP::Hep3Vector G4ThreeVector
std::ostream & print(std::ostream &os) const
CLHEP::HepRotation G4RotationMatrix
G4VPhysicalVolume * Construct()
HepRotation & rotateY(double delta)
static G4NistManager * Instance()
static G4ReflectionFactory * Instance()
HepRotation inverse() const
virtual void DefineWorldVolume(G4VPhysicalVolume *worldVol, G4bool topologyIsChanged=true)
static G4PhysicalVolumeStore * GetInstance()
G4GLOB_DLL std::ostream G4cout
G4PhysicalVolumesPair Place(const G4Transform3D &transform3D, const G4String &name, G4LogicalVolume *LV, G4LogicalVolume *motherLV, G4bool isMany, G4int copyNo, G4bool surfCheck=false)
static constexpr double degree
static constexpr double cm
static G4LogicalVolumeStore * GetInstance()
static G4SolidStore * GetInstance()
static G4GeometryManager * GetInstance()
static G4RunManager * GetRunManager()
HepRotation & rotateZ(double delta)
void SetMethod(EMethod method)
void OpenGeometry(G4VPhysicalVolume *vol=0)
static constexpr double pi
static constexpr double deg