74 : aNavigator(0), detectorType(0),sampleGranularity(false), phaseSpaceFlag(false),
75 DeviceSizeX(0), DeviceSizeY(0),DeviceThickness(0),
76 solidWorld(0),logicWorld(0),physiWorld(0),
77 solidHPGe(0),logicHPGe(0),physiHPGe(0),
78 solidSample (0),logicSample(0),physiSample (0),
79 solidDia1(0),logicDia1(0),physiDia1(0),
80 solidDia3(0),logicDia3(0),physiDia3(0),
81 solidOhmicPos(0),logicOhmicPos(0), physiOhmicPos(0),
82 solidWindow(0), logicWindow(0), physiWindow(0),
83 solidOhmicNeg(0),logicOhmicNeg(0), physiOhmicNeg(0),
84 solidPixel(0),logicPixel(0), physiPixel(0),
85 OhmicPosMaterial(0), OhmicNegMaterial(0),
86 pixelMaterial(0),sampleMaterial(0),
87 Dia1Material(0),Dia3Material(0),
88 defaultMaterial(0), windowMaterial (0)
142 G4String defaultDetectorType =
"sili";
154 G4cout <<
"XrayFluoDetectorConstruction created" <<
G4endl;
179 else if (type==
"hpge")
190 execp << type +
"detector type unknown";
191 G4Exception(
"XrayFluoDataSet::LoadData()",
"example-xray_fluorescence06",
210 G4cout <<
"XrayFluoDetectorConstruction deleted" <<
G4endl;
256 G4cout <<
"Not available in this configuration" <<
G4endl;
477 G4double b = 2. * (std::sqrt(3.) - std::sqrt(2.))/std::sqrt(3.);
497 for (
G4int k=0; k < nbOfGrainsZ ; k++ ) {
498 for (
G4int j=0; j < nbOfGrainsY ; j++ ) {
499 for (
G4int i=0; i < nbOfGrainsX ; i++ ) {
511 else if ( ((j+1) % 2) == 0 ) {
516 else if ( ((k+2) % 3) == 0 ) {
524 else if ( (j+1)%2 == 0 ) {
530 else if ( (k+1)%3 == 0 ) {
538 else if ( (j+1)%2 == 0 ) {
546 grainInitPositionY + j*grainStepY,
547 grainInitPositionZ + k*grainStepZ),
725 G4cout <<
"-----------------------------------------------------------------------"
727 <<
"The sample is a box whose size is: "
744 G4cout <<
"-------------------------------------------------------------------------"
797 G4cout <<
"Material Change in Progress " << newMaterial <<
G4endl;
G4LogicalVolume * logicOhmicNeg
G4VPhysicalVolume * physiWindow
XrayFluoDetectorMessenger * detectorMessenger
G4VPhysicalVolume * physiDia1
G4double OhmicPosThickness
std::ostringstream G4ExceptionDescription
CLHEP::Hep3Vector G4ThreeVector
G4Material * OhmicNegMaterial
XrayFluoDetectorConstruction()
G4VPhysicalVolume * physiOhmicPos
G4Material * GetMaterial() const
G4ThreeVector GetDetectorPosition() const
void DefineDefaultMaterials()
G4Material * Dia3Material
const G4String & GetName() const
void SetVisibility(G4bool)
G4Material * defaultMaterial
G4double OhmicNegThickness
void SetForceSolid(G4bool)
G4VPhysicalVolume * physiHPGe
static XrayFluoDetectorConstruction * GetInstance()
G4Material * OhmicPosMaterial
static XrayFluoNistMaterials * GetInstance()
void SetOhmicPosThickness(G4double)
G4LogicalVolume * logicPixel
XrayFluoVDetectorType * GetDetectorType() const
G4RotationMatrix zRotPhiHPGe
void ComputeApparateParameters()
static XrayFluoSiLiDetectorType * GetInstance()
G4Cache< XrayFluoSD * > HPGeSD
G4VPhysicalVolume * physiSample
void SetDetectorType(G4String type)
void SetSampleMaterial(G4String newMaterial)
G4Material * pixelMaterial
G4VPhysicalVolume * physiOhmicNeg
G4LogicalVolume * logicDia3
G4GLOB_DLL std::ostream G4cout
XrayFluoVDetectorType * detectorType
G4LogicalVolume * logicDia1
G4LogicalVolume * logicSample
XrayFluoNistMaterials * materials
static const double twopi
G4VPhysicalVolume * physiGrain
void ConstructSDandField()
G4RotationMatrix zRotPhiDia1
G4LogicalVolume * logicOhmicPos
G4VPhysicalVolume * Construct()
G4VPhysicalVolume * physiPixel
static G4GeometryManager * GetInstance()
G4Material * GetMaterial(G4String)
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
void ReinitializeGeometry(G4bool destroyFirst=false, G4bool prop=true)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4LogicalVolume * logicWindow
static G4RunManager * GetRunManager()
G4LogicalVolume * logicHPGe
void DeleteGrainObjects()
G4Material * Dia1Material
const G4double x[NPOINTSGL]
~XrayFluoDetectorConstruction()
void SetWorldVolume(G4VPhysicalVolume *pWorld)
static const G4VisAttributes Invisible
static XrayFluoHPGeDetectorType * GetInstance()
static XrayFluoDetectorConstruction * instance
G4RotationMatrix zRotPhiDia3
void OpenGeometry(G4VPhysicalVolume *vol=0)
G4Material * windowMaterial
G4VPhysicalVolume * physiWorld
G4Material * sampleMaterial
G4LogicalVolume * logicGrain
void SetMaterial(G4Material *pMaterial)
G4VPhysicalVolume * physiDia3
void RemoveRootLogicalVolume(G4LogicalVolume *lv, G4bool scan=true)
void Put(const value_type &val) const
G4VPhysicalVolume * ConstructApparate()
void SetVisAttributes(const G4VisAttributes *pVA)
void PrintApparateParameters()
G4LogicalVolume * logicWorld