Geant4  10.02.p03
ExN03DetectorConstruction Class Reference

#include <ExN03DetectorConstruction.hh>

Inheritance diagram for ExN03DetectorConstruction:
Collaboration diagram for ExN03DetectorConstruction:

Public Member Functions

 ExN03DetectorConstruction ()
 
 ~ExN03DetectorConstruction ()
 
void SetAbsorberMaterial (G4String)
 
void SetAbsorberThickness (G4double)
 
void SetGapMaterial (G4String)
 
void SetGapThickness (G4double)
 
void SetCalorSizeYZ (G4double)
 
void SetNbOfLayers (G4int)
 
void SetMagField (G4double)
 
G4VPhysicalVolume * Construct ()
 
void UpdateGeometry ()
 
void PrintCalorParameters ()
 
G4double GetWorldSizeX ()
 
G4double GetWorldSizeYZ ()
 
G4double GetCalorThickness ()
 
G4double GetCalorSizeYZ ()
 
G4int GetNbOfLayers ()
 
G4Material * GetAbsorberMaterial ()
 
G4double GetAbsorberThickness ()
 
G4Material * GetGapMaterial ()
 
G4double GetGapThickness ()
 
const G4VPhysicalVolume * GetphysiWorld ()
 
const G4VPhysicalVolume * GetAbsorber ()
 
const G4VPhysicalVolume * GetGap ()
 
- Public Member Functions inherited from G4VUserDetectorConstruction
 G4VUserDetectorConstruction ()
 
virtual ~G4VUserDetectorConstruction ()
 
virtual void ConstructSDandField ()
 
virtual void CloneSD ()
 
virtual void CloneF ()
 
void RegisterParallelWorld (G4VUserParallelWorld *)
 
G4int ConstructParallelGeometries ()
 
void ConstructParallelSD ()
 
G4int GetNumberOfParallelWorld () const
 
G4VUserParallelWorld * GetParallelWorld (G4int i) const
 

Private Member Functions

void DefineMaterials ()
 
void ComputeCalorParameters ()
 
G4VPhysicalVolume * ConstructCalorimeter ()
 

Private Attributes

G4Material * AbsorberMaterial
 
G4double AbsorberThickness
 
G4Material * GapMaterial
 
G4double GapThickness
 
G4int NbOfLayers
 
G4double LayerThickness
 
G4double CalorSizeYZ
 
G4double CalorThickness
 
G4Material * defaultMaterial
 
G4double WorldSizeYZ
 
G4double WorldSizeX
 
G4Box * solidWorld
 
G4LogicalVolume * logicWorld
 
G4VPhysicalVolume * physiWorld
 
G4Box * solidCalor
 
G4LogicalVolume * logicCalor
 
G4VPhysicalVolume * physiCalor
 
G4Box * solidLayer
 
G4LogicalVolume * logicLayer
 
G4VPhysicalVolume * physiLayer
 
G4Box * solidAbsorber
 
G4LogicalVolume * logicAbsorber
 
G4VPhysicalVolume * physiAbsorber
 
G4Box * solidGap
 
G4LogicalVolume * logicGap
 
G4VPhysicalVolume * physiGap
 
G4UniformMagField * magField
 
ExN03DetectorMessenger * detectorMessenger
 

Additional Inherited Members

- Protected Member Functions inherited from G4VUserDetectorConstruction
void SetSensitiveDetector (const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void SetSensitiveDetector (G4LogicalVolume *logVol, G4VSensitiveDetector *aSD)
 

Detailed Description

Definition at line 49 of file ExN03DetectorConstruction.hh.

Constructor & Destructor Documentation

◆ ExN03DetectorConstruction()

ExN03DetectorConstruction::ExN03DetectorConstruction ( )

Definition at line 56 of file ExN03DetectorConstruction.cc.

62  solidGap (0),logicGap (0),physiGap (0),
63  magField(0)
64 {
65  // default parameter values of the calorimeter
66  AbsorberThickness = 10.*mm;
67  GapThickness = 5.*mm;
68  NbOfLayers = 10;
69  CalorSizeYZ = 10.*cm;
71 
72  // materials
74  SetAbsorberMaterial("Lead");
75  SetGapMaterial("liquidArgon");
76 
77  // create commands for interactive definition of the calorimeter
79 }
static const double cm
Definition: G4SIunits.hh:118
ExN03DetectorMessenger * detectorMessenger
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:

◆ ~ExN03DetectorConstruction()

ExN03DetectorConstruction::~ExN03DetectorConstruction ( )

Definition at line 83 of file ExN03DetectorConstruction.cc.

84 { delete detectorMessenger;}
ExN03DetectorMessenger * detectorMessenger

Member Function Documentation

◆ ComputeCalorParameters()

void ExN03DetectorConstruction::ComputeCalorParameters ( )
inlineprivate

Definition at line 146 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ Construct()

G4VPhysicalVolume * ExN03DetectorConstruction::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 88 of file ExN03DetectorConstruction.cc.

89 {
90  return ConstructCalorimeter();
91 }
G4VPhysicalVolume * ConstructCalorimeter()
Here is the call graph for this function:

◆ ConstructCalorimeter()

G4VPhysicalVolume * ExN03DetectorConstruction::ConstructCalorimeter ( )
private

Definition at line 218 of file ExN03DetectorConstruction.cc.

219 {
220 
221  // Clean old geometry, if any
222  //
227 
228  // complete the Calor parameters definition
230 
231  //
232  // World
233  //
234  solidWorld = new G4Box("World", //its name
235  WorldSizeX/2,WorldSizeYZ/2,WorldSizeYZ/2); //its size
236 
237  logicWorld = new G4LogicalVolume(solidWorld, //its solid
238  defaultMaterial, //its material
239  "World"); //its name
240 
241  physiWorld = new G4PVPlacement(0, //no rotation
242  G4ThreeVector(), //at (0,0,0)
243  logicWorld, //its logical volume
244  "World", //its name
245  0, //its mother volume
246  false, //no boolean operation
247  0); //copy number
248 
249  //
250  // Calorimeter
251  //
254 
255  if (CalorThickness > 0.)
256  { solidCalor = new G4Box("Calorimeter", //its name
258 
259  logicCalor = new G4LogicalVolume(solidCalor, //its solid
260  defaultMaterial, //its material
261  "Calorimeter"); //its name
262 
263  physiCalor = new G4PVPlacement(0, //no rotation
264  G4ThreeVector(), //at (0,0,0)
265  logicCalor, //its logical volume
266  "Calorimeter", //its name
267  logicWorld, //its mother volume
268  false, //no boolean operation
269  0); //copy number
270 
271  //
272  // Layer
273  //
274  solidLayer = new G4Box("Layer", //its name
275  LayerThickness/2,CalorSizeYZ/2,CalorSizeYZ/2); //size
276 
277  logicLayer = new G4LogicalVolume(solidLayer, //its solid
278  defaultMaterial, //its material
279  "Layer"); //its name
280  if (NbOfLayers > 1)
281  physiLayer = new G4PVReplica("Layer", //its name
282  logicLayer, //its logical volume
283  logicCalor, //its mother
284  kXAxis, //axis of replication
285  NbOfLayers, //number of replica
286  LayerThickness); //witdth of replica
287  else
288  physiLayer = new G4PVPlacement(0, //no rotation
289  G4ThreeVector(), //at (0,0,0)
290  logicLayer, //its logical volume
291  "Layer", //its name
292  logicCalor, //its mother volume
293  false, //no boolean operation
294  0); //copy number
295  }
296 
297  //
298  // Absorber
299  //
301 
302  if (AbsorberThickness > 0.)
303  { solidAbsorber = new G4Box("Absorber", //its name
305 
306  logicAbsorber = new G4LogicalVolume(solidAbsorber, //its solid
307  AbsorberMaterial, //its material
308  AbsorberMaterial->GetName()); //name
309 
310  physiAbsorber = new G4PVPlacement(0, //no rotation
311  G4ThreeVector(-GapThickness/2,0.,0.), //its position
312  logicAbsorber, //its logical volume
313  AbsorberMaterial->GetName(), //its name
314  logicLayer, //its mother
315  false, //no boulean operat
316  0); //copy number
317 
318  }
319 
320  //
321  // Gap
322  //
323  solidGap=0; logicGap=0; physiGap=0;
324 
325  if (GapThickness > 0.)
326  { solidGap = new G4Box("Gap",
328 
329  logicGap = new G4LogicalVolume(solidGap,
330  GapMaterial,
331  GapMaterial->GetName());
332 
333  physiGap = new G4PVPlacement(0, //no rotation
334  G4ThreeVector(AbsorberThickness/2,0.,0.), //its position
335  logicGap, //its logical volume
336  GapMaterial->GetName(), //its name
337  logicLayer, //its mother
338  false, //no boulean operat
339  0); //copy number
340  }
341 
343 
344  //
345  // Visualization attributes
346  //
348 
349  G4VisAttributes* simpleBoxVisAtt= new G4VisAttributes(G4Colour(1.0,1.0,1.0));
350  simpleBoxVisAtt->SetVisibility(true);
351  logicCalor->SetVisAttributes(simpleBoxVisAtt);
352 
353  /*
354  // Below are vis attributes that permits someone to test / play
355  // with the interactive expansion / contraction geometry system of the
356  // vis/OpenInventor driver :
357  {G4VisAttributes* simpleBoxVisAtt= new G4VisAttributes(G4Colour(1.0,1.0,0.0));
358  simpleBoxVisAtt->SetVisibility(true);
359  delete logicCalor->GetVisAttributes();
360  logicCalor->SetVisAttributes(simpleBoxVisAtt);}
361 
362  {G4VisAttributes* atb= new G4VisAttributes(G4Colour(1.0,0.0,0.0));
363  logicLayer->SetVisAttributes(atb);}
364 
365  {G4VisAttributes* atb= new G4VisAttributes(G4Colour(0.0,1.0,0.0));
366  atb->SetForceSolid(true);
367  logicAbsorber->SetVisAttributes(atb);}
368 
369  {//Set opacity = 0.2 then transparency = 1 - 0.2 = 0.8
370  G4VisAttributes* atb= new G4VisAttributes(G4Colour(0.0,0.0,1.0,0.2));
371  atb->SetForceSolid(true);
372  logicGap->SetVisAttributes(atb);}
373  */
374 
375  //
376  //always return the physical World
377  //
378  return physiWorld;
379 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
void SetVisibility(G4bool)
static void Clean()
Definition: G4SolidStore.cc:79
static G4PhysicalVolumeStore * GetInstance()
static G4LogicalVolumeStore * GetInstance()
static G4SolidStore * GetInstance()
static G4GeometryManager * GetInstance()
static const G4VisAttributes Invisible
void OpenGeometry(G4VPhysicalVolume *vol=0)
const G4String & GetName() const
Definition: G4Material.hh:178
void SetVisAttributes(const G4VisAttributes *pVA)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ DefineMaterials()

void ExN03DetectorConstruction::DefineMaterials ( )
private

Definition at line 95 of file ExN03DetectorConstruction.cc.

96 {
97  //This function illustrates the possible ways to define materials
98 
99 G4String symbol; //a=mass of a mole;
100 G4double a, z, density; //z=mean number of protons;
101 G4int iz, n; //iz=number of protons in an isotope;
102  // n=number of nucleons in an isotope;
103 
104 G4int ncomponents, natoms;
105 G4double abundance, fractionmass;
106 
107 //
108 // define Elements
109 //
110 
111 G4Element* H = new G4Element("Hydrogen",symbol="H" , z= 1., a= 1.01*g/mole);
112 G4Element* C = new G4Element("Carbon" ,symbol="C" , z= 6., a= 12.01*g/mole);
113 G4Element* N = new G4Element("Nitrogen",symbol="N" , z= 7., a= 14.01*g/mole);
114 G4Element* O = new G4Element("Oxygen" ,symbol="O" , z= 8., a= 16.00*g/mole);
115 G4Element* Si = new G4Element("Silicon",symbol="Si" , z= 14., a= 28.09*g/mole);
116 
117 //
118 // define an Element from isotopes, by relative abundance
119 //
120 
121 G4Isotope* U5 = new G4Isotope("U235", iz=92, n=235, a=235.01*g/mole);
122 G4Isotope* U8 = new G4Isotope("U238", iz=92, n=238, a=238.03*g/mole);
123 
124 G4Element* U = new G4Element("enriched Uranium",symbol="U",ncomponents=2);
125 U->AddIsotope(U5, abundance= 90.*perCent);
126 U->AddIsotope(U8, abundance= 10.*perCent);
127 
128 //
129 // define simple materials
130 //
131 
132 new G4Material("Aluminium", z=13., a=26.98*g/mole, density=2.700*g/cm3);
133 new G4Material("liquidArgon", z=18., a= 39.95*g/mole, density= 1.390*g/cm3);
134 new G4Material("Lead" , z=82., a= 207.19*g/mole, density= 11.35*g/cm3);
135 
136 //
137 // define a material from elements. case 1: chemical molecule
138 //
139 
140 G4Material* H2O =
141 new G4Material("Water", density= 1.000*g/cm3, ncomponents=2);
142 H2O->AddElement(H, natoms=2);
143 H2O->AddElement(O, natoms=1);
144 // overwrite computed meanExcitationEnergy with ICRU recommended value
146 
147 G4Material* Sci =
148 new G4Material("Scintillator", density= 1.032*g/cm3, ncomponents=2);
149 Sci->AddElement(C, natoms=9);
150 Sci->AddElement(H, natoms=10);
151 
152 G4Material* Myl =
153 new G4Material("Mylar", density= 1.397*g/cm3, ncomponents=3);
154 Myl->AddElement(C, natoms=10);
155 Myl->AddElement(H, natoms= 8);
156 Myl->AddElement(O, natoms= 4);
157 
158 G4Material* SiO2 =
159 new G4Material("quartz",density= 2.200*g/cm3, ncomponents=2);
160 SiO2->AddElement(Si, natoms=1);
161 SiO2->AddElement(O , natoms=2);
162 
163 //
164 // define a material from elements. case 2: mixture by fractional mass
165 //
166 
167 G4Material* Air =
168 new G4Material("Air" , density= 1.290*mg/cm3, ncomponents=2);
169 Air->AddElement(N, fractionmass=0.7);
170 Air->AddElement(O, fractionmass=0.3);
171 
172 //
173 // define a material from elements and/or others materials (mixture of mixtures)
174 //
175 
176 G4Material* Aerog =
177 new G4Material("Aerogel", density= 0.200*g/cm3, ncomponents=3);
178 Aerog->AddMaterial(SiO2, fractionmass=62.5*perCent);
179 Aerog->AddMaterial(H2O , fractionmass=37.4*perCent);
180 Aerog->AddElement (C , fractionmass= 0.1*perCent);
181 
182 //
183 // examples of gas in non STP conditions
184 //
185 
186 G4Material* CO2 =
187 new G4Material("CarbonicGas", density= 27.*mg/cm3, ncomponents=2,
188  kStateGas, 325.*kelvin, 50.*atmosphere);
189 CO2->AddElement(C, natoms=1);
190 CO2->AddElement(O, natoms=2);
191 
192 G4Material* steam =
193 new G4Material("WaterSteam", density= 0.3*mg/cm3, ncomponents=1,
194  kStateGas, 500.*kelvin, 2.*atmosphere);
195 steam->AddMaterial(H2O, fractionmass=1.);
196 
197 //
198 // examples of vacuum
199 //
200 
201 G4Material* Vacuum =
202 new G4Material("Galactic", z=1., a=1.01*g/mole,density= universe_mean_density,
203  kStateGas, 2.73*kelvin, 3.e-18*pascal);
204 
205 G4Material* beam =
206 new G4Material("Beam", density= 1.e-5*g/cm3, ncomponents=1,
208 beam->AddMaterial(Air, fractionmass=1.);
209 
211 
212 //default materials of the World
213 defaultMaterial = Vacuum;
214 }
G4IonisParamMat * GetIonisation() const
Definition: G4Material.hh:226
G4String symbol
Definition: TRTMaterials.hh:40
G4Material * Air
Definition: TRTMaterials.hh:57
void AddMaterial(G4Material *material, G4double fraction)
Definition: G4Material.cc:469
int universe_mean_density
Definition: hepunit.py:307
void SetMeanExcitationEnergy(G4double value)
static G4MaterialTable * GetMaterialTable()
Definition: G4Material.cc:589
double C(double temp)
float STP_Temperature
Definition: hepunit.py:302
static const double mg
Definition: G4SIunits.hh:181
int G4int
Definition: G4Types.hh:78
G4double density
Definition: TRTMaterials.hh:39
function g(Y1, Y2, PT2)
Definition: hijing1.383.f:5206
Char_t n[5]
G4GLOB_DLL std::ostream G4cout
G4double iz
Definition: TRTMaterials.hh:39
void AddIsotope(G4Isotope *isotope, G4double RelativeAbundance)
Definition: G4Element.cc:151
#define pascal
G4Material * Si
Definition: TRTMaterials.hh:78
static const double cm3
Definition: G4SIunits.hh:120
static const double perCent
Definition: G4SIunits.hh:329
static const double bar
Definition: G4SIunits.hh:233
static const double kelvin
Definition: G4SIunits.hh:278
static const double eV
Definition: G4SIunits.hh:212
static const double atmosphere
Definition: G4SIunits.hh:234
static const double mole
Definition: G4SIunits.hh:283
#define G4endl
Definition: G4ios.hh:61
**D E S C R I P T I O N
void AddElement(G4Element *element, G4int nAtoms)
Definition: G4Material.cc:364
double G4double
Definition: G4Types.hh:76
G4Material * CO2
Definition: TRTMaterials.hh:81
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetAbsorber()

const G4VPhysicalVolume* ExN03DetectorConstruction::GetAbsorber ( )
inline

Definition at line 92 of file ExN03DetectorConstruction.hh.

92 {return physiAbsorber;};
Here is the caller graph for this function:

◆ GetAbsorberMaterial()

G4Material* ExN03DetectorConstruction::GetAbsorberMaterial ( )
inline

Definition at line 85 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetAbsorberThickness()

G4double ExN03DetectorConstruction::GetAbsorberThickness ( )
inline

Definition at line 86 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetCalorSizeYZ()

G4double ExN03DetectorConstruction::GetCalorSizeYZ ( )
inline

Definition at line 81 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetCalorThickness()

G4double ExN03DetectorConstruction::GetCalorThickness ( )
inline

Definition at line 80 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetGap()

const G4VPhysicalVolume* ExN03DetectorConstruction::GetGap ( )
inline

Definition at line 93 of file ExN03DetectorConstruction.hh.

93 {return physiGap;};
Here is the caller graph for this function:

◆ GetGapMaterial()

G4Material* ExN03DetectorConstruction::GetGapMaterial ( )
inline

Definition at line 88 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetGapThickness()

G4double ExN03DetectorConstruction::GetGapThickness ( )
inline

Definition at line 89 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetNbOfLayers()

G4int ExN03DetectorConstruction::GetNbOfLayers ( )
inline

Definition at line 83 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetphysiWorld()

const G4VPhysicalVolume* ExN03DetectorConstruction::GetphysiWorld ( )
inline

Definition at line 91 of file ExN03DetectorConstruction.hh.

91 {return physiWorld;};
Here is the caller graph for this function:

◆ GetWorldSizeX()

G4double ExN03DetectorConstruction::GetWorldSizeX ( )
inline

Definition at line 77 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ GetWorldSizeYZ()

G4double ExN03DetectorConstruction::GetWorldSizeYZ ( )
inline

Definition at line 78 of file ExN03DetectorConstruction.hh.

Here is the caller graph for this function:

◆ PrintCalorParameters()

void ExN03DetectorConstruction::PrintCalorParameters ( )

Definition at line 383 of file ExN03DetectorConstruction.cc.

384 {
385  G4cout << "\n------------------------------------------------------------"
386  << "\n---> The calorimeter is " << NbOfLayers << " layers of: [ "
387  << AbsorberThickness/mm << "mm of " << AbsorberMaterial->GetName()
388  << " + "
389  << GapThickness/mm << "mm of " << GapMaterial->GetName() << " ] "
390  << "\n------------------------------------------------------------\n";
391 }
G4GLOB_DLL std::ostream G4cout
const G4String & GetName() const
Definition: G4Material.hh:178
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetAbsorberMaterial()

void ExN03DetectorConstruction::SetAbsorberMaterial ( G4String  materialChoice)

Definition at line 395 of file ExN03DetectorConstruction.cc.

396 {
397  // search the material by its name
398  G4Material* pttoMaterial = G4Material::GetMaterial(materialChoice);
399  if (pttoMaterial) AbsorberMaterial = pttoMaterial;
400 }
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
Definition: G4Material.cc:604
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetAbsorberThickness()

void ExN03DetectorConstruction::SetAbsorberThickness ( G4double  val)

Definition at line 413 of file ExN03DetectorConstruction.cc.

414 {
415  // change Absorber thickness and recompute the calorimeter parameters
416  AbsorberThickness = val;
417 }
Here is the caller graph for this function:

◆ SetCalorSizeYZ()

void ExN03DetectorConstruction::SetCalorSizeYZ ( G4double  val)

Definition at line 429 of file ExN03DetectorConstruction.cc.

430 {
431  // change the transverse size and recompute the calorimeter parameters
432  CalorSizeYZ = val;
433 }
Here is the caller graph for this function:

◆ SetGapMaterial()

void ExN03DetectorConstruction::SetGapMaterial ( G4String  materialChoice)

Definition at line 404 of file ExN03DetectorConstruction.cc.

405 {
406  // search the material by its name
407  G4Material* pttoMaterial = G4Material::GetMaterial(materialChoice);
408  if (pttoMaterial) GapMaterial = pttoMaterial;
409 }
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
Definition: G4Material.cc:604
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetGapThickness()

void ExN03DetectorConstruction::SetGapThickness ( G4double  val)

Definition at line 421 of file ExN03DetectorConstruction.cc.

422 {
423  // change Gap thickness and recompute the calorimeter parameters
424  GapThickness = val;
425 }
Here is the caller graph for this function:

◆ SetMagField()

void ExN03DetectorConstruction::SetMagField ( G4double  fieldValue)

Definition at line 447 of file ExN03DetectorConstruction.cc.

448 {
449  //apply a global uniform magnetic field along Z axis
450  G4FieldManager* fieldMgr
452 
453  if(magField) delete magField; //delete the existing magn field
454 
455  if(fieldValue!=0.) // create a new one if non nul
456  { magField = new G4UniformMagField(G4ThreeVector(0.,0.,fieldValue));
457  fieldMgr->SetDetectorField(magField);
458  fieldMgr->CreateChordFinder(magField);
459  } else {
460  magField = 0;
461  fieldMgr->SetDetectorField(magField);
462  }
463 }
CLHEP::Hep3Vector G4ThreeVector
G4bool SetDetectorField(G4Field *detectorField)
G4FieldManager * GetFieldManager() const
static G4TransportationManager * GetTransportationManager()
void CreateChordFinder(G4MagneticField *detectorMagField)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetNbOfLayers()

void ExN03DetectorConstruction::SetNbOfLayers ( G4int  val)

Definition at line 437 of file ExN03DetectorConstruction.cc.

438 {
439  NbOfLayers = val;
440 }
Here is the caller graph for this function:

◆ UpdateGeometry()

void ExN03DetectorConstruction::UpdateGeometry ( )

Definition at line 469 of file ExN03DetectorConstruction.cc.

470 {
472 }
virtual void DefineWorldVolume(G4VPhysicalVolume *worldVol, G4bool topologyIsChanged=true)
static G4RunManager * GetRunManager()
Definition: G4RunManager.cc:79
G4VPhysicalVolume * ConstructCalorimeter()
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ AbsorberMaterial

G4Material* ExN03DetectorConstruction::AbsorberMaterial
private

Definition at line 93 of file ExN03DetectorConstruction.hh.

◆ AbsorberThickness

G4double ExN03DetectorConstruction::AbsorberThickness
private

Definition at line 98 of file ExN03DetectorConstruction.hh.

◆ CalorSizeYZ

G4double ExN03DetectorConstruction::CalorSizeYZ
private

Definition at line 106 of file ExN03DetectorConstruction.hh.

◆ CalorThickness

G4double ExN03DetectorConstruction::CalorThickness
private

Definition at line 107 of file ExN03DetectorConstruction.hh.

◆ defaultMaterial

G4Material* ExN03DetectorConstruction::defaultMaterial
private

Definition at line 109 of file ExN03DetectorConstruction.hh.

◆ detectorMessenger

ExN03DetectorMessenger* ExN03DetectorConstruction::detectorMessenger
private

Definition at line 135 of file ExN03DetectorConstruction.hh.

◆ GapMaterial

G4Material* ExN03DetectorConstruction::GapMaterial
private

Definition at line 100 of file ExN03DetectorConstruction.hh.

◆ GapThickness

G4double ExN03DetectorConstruction::GapThickness
private

Definition at line 101 of file ExN03DetectorConstruction.hh.

◆ LayerThickness

G4double ExN03DetectorConstruction::LayerThickness
private

Definition at line 104 of file ExN03DetectorConstruction.hh.

◆ logicAbsorber

G4LogicalVolume* ExN03DetectorConstruction::logicAbsorber
private

Definition at line 126 of file ExN03DetectorConstruction.hh.

◆ logicCalor

G4LogicalVolume* ExN03DetectorConstruction::logicCalor
private

Definition at line 118 of file ExN03DetectorConstruction.hh.

◆ logicGap

G4LogicalVolume* ExN03DetectorConstruction::logicGap
private

Definition at line 130 of file ExN03DetectorConstruction.hh.

◆ logicLayer

G4LogicalVolume* ExN03DetectorConstruction::logicLayer
private

Definition at line 122 of file ExN03DetectorConstruction.hh.

◆ logicWorld

G4LogicalVolume* ExN03DetectorConstruction::logicWorld
private

Definition at line 114 of file ExN03DetectorConstruction.hh.

◆ magField

G4UniformMagField* ExN03DetectorConstruction::magField
private

Definition at line 133 of file ExN03DetectorConstruction.hh.

◆ NbOfLayers

G4int ExN03DetectorConstruction::NbOfLayers
private

Definition at line 103 of file ExN03DetectorConstruction.hh.

◆ physiAbsorber

G4VPhysicalVolume* ExN03DetectorConstruction::physiAbsorber
private

Definition at line 127 of file ExN03DetectorConstruction.hh.

◆ physiCalor

G4VPhysicalVolume* ExN03DetectorConstruction::physiCalor
private

Definition at line 119 of file ExN03DetectorConstruction.hh.

◆ physiGap

G4VPhysicalVolume* ExN03DetectorConstruction::physiGap
private

Definition at line 131 of file ExN03DetectorConstruction.hh.

◆ physiLayer

G4VPhysicalVolume* ExN03DetectorConstruction::physiLayer
private

Definition at line 123 of file ExN03DetectorConstruction.hh.

◆ physiWorld

G4VPhysicalVolume* ExN03DetectorConstruction::physiWorld
private

Definition at line 115 of file ExN03DetectorConstruction.hh.

◆ solidAbsorber

G4Box* ExN03DetectorConstruction::solidAbsorber
private

Definition at line 125 of file ExN03DetectorConstruction.hh.

◆ solidCalor

G4Box* ExN03DetectorConstruction::solidCalor
private

Definition at line 117 of file ExN03DetectorConstruction.hh.

◆ solidGap

G4Box* ExN03DetectorConstruction::solidGap
private

Definition at line 129 of file ExN03DetectorConstruction.hh.

◆ solidLayer

G4Box* ExN03DetectorConstruction::solidLayer
private

Definition at line 121 of file ExN03DetectorConstruction.hh.

◆ solidWorld

G4Box* ExN03DetectorConstruction::solidWorld
private

Definition at line 113 of file ExN03DetectorConstruction.hh.

◆ WorldSizeX

G4double ExN03DetectorConstruction::WorldSizeX
private

Definition at line 111 of file ExN03DetectorConstruction.hh.

◆ WorldSizeYZ

G4double ExN03DetectorConstruction::WorldSizeYZ
private

Definition at line 110 of file ExN03DetectorConstruction.hh.


The documentation for this class was generated from the following files: