SoilConstruction.h
Go to the documentation of this file.
1 #ifndef _GroundPropagatorAG_SoilConstruction_h_
2 #define _GroundPropagatorAG_SoilConstruction_h_
3 
4 #include <G4VUserDetectorConstruction.hh>
5 
6 class G4LogicalVolume;
7 class G4VPhysicalVolume;
8 class G4Element;
9 class G4Material;
10 
11 namespace GroundPropagatorAG {
12 
13 class SoilConstruction : public G4VUserDetectorConstruction {
14 private:
15  G4double fSoilGrammage;
16  G4double fSoilDensity;
17 
18 public:
19  SoilConstruction(G4double grammage);
21 
22  G4VPhysicalVolume* Construct();
23 
24  G4double GetDepth();
25 
26 private:
27  // World
28  G4LogicalVolume* fLogicalWorld;
29  G4VPhysicalVolume* fPhysicalWorld;
30 
31  //Soil
32  G4LogicalVolume* fLogicalSoil;
33  G4VPhysicalVolume* fPhysicalSoil;
34 
35 private:
36  void CreateMaterials();
37 
38  G4Element* H;
39  G4Element* C;
40  G4Element* N;
41  G4Element* O;
42  G4Element* Na;
43  G4Element* Mg;
44  G4Element* Al;
45  G4Element* Si;
46  G4Element* Cl;
47  G4Element* K;
48  G4Element* Ti;
49  G4Element* Ca;
50  G4Element* Fe;
51 
52  G4Material* SiO2;
53  G4Material* Al2O3;
54  G4Material* Fe2O3;
55  G4Material* TiO2;
56  G4Material* CaO;
57  G4Material* MgO;
58  G4Material* K2O;
59  G4Material* Na2O;
60 
61  G4Material* fWorldMaterial;
62  G4Material* fSoilMaterial;
63 
64 private:
65  G4double fWorld_Side_X;
66  G4double fWorld_Side_Y;
67  G4double fWorld_Side_Z;
68 
69  G4double fSoil_Side_X;
70  G4double fSoil_Side_Y;
71  G4double fSoil_Side_Z;
72 };
73 
74 }
75 
76 
77 #endif
SoilConstruction(G4double grammage)
Mean soil density from samples.
G4LogicalVolume * fLogicalWorld
Volumes.

, generated on Tue Sep 26 2023.