59 : steel_shell(0),logical_steel_shell(0),air_gap(0), logical_air_gap(0), physical_air_gap(0),
60 End1_steel_shell(0),logical_End1_steel_shell(0), physical_End1_steel_shell(0),
61 End2_steel_shell(0),logical_End2_steel_shell(0), physical_End2_steel_shell(0),
62 cable(0),logical_cable(0),physical_cable(0),
63 iridium_core(0),logical_iridium_core(0),physical_iridium_core(0),
64 steelAttributes(0), endAttributes(0), simpleIridiumVisAtt(0)
76 G4Material* steelMat = pMat -> GetMat(
"Stainless steel 304");
77 G4Material* iridiumMat = pMat -> GetMat(
"Iridium");
85 steel_shell =
new G4Tubs(
"steel_shell",shellr_min, shellr_max/2, shell_length/2.,0.*
deg,360.*
deg);
86 logical_steel_shell =
new G4LogicalVolume(steel_shell, steelMat,
"steel_shell_log", 0, 0, 0);
87 physical_steel_shell =
new G4PVPlacement(0,
G4ThreeVector(0,0,0),
"phys_steel_shell", logical_steel_shell, mother,
false, 0,
true);
93 air_gap =
new G4Tubs(
"air_gap", airr_min, airr_max/2, air_length/2, 0.*
deg, 360.*
deg);
94 logical_air_gap =
new G4LogicalVolume(air_gap, airMat,
"air_gap_log", 0, 0, 0);
95 physical_air_gap =
new G4PVPlacement(0,
G4ThreeVector(0,0,0),
"phys_air_gap",logical_air_gap, physical_steel_shell,
false, 0,
true);
101 End1_steel_shell =
new G4Tubs(
"End_1_steel_shell",End1r_min, End1r_max/2, End1length/2.,0.*
deg,360.*
deg);
102 logical_End1_steel_shell =
new G4LogicalVolume(End1_steel_shell, steelMat,
"End1_steel_shell_log", 0, 0, 0);
106 physical_End1_steel_shell =
new G4PVPlacement(0,
G4ThreeVector(end1offset_x,end1offset_y,end1offset_z),
"phys_End1_steel_shell", logical_End1_steel_shell,mother,
false, 0,
true);
114 End2_steel_shell =
new G4Cons(
"End_2_steel_shell",End2r_min2, End2r_max2/2, End2r_min1, End2r_max1/2, End2length/2.0, 0.0, 360.0*
deg);
115 logical_End2_steel_shell =
new G4LogicalVolume(End2_steel_shell, steelMat,
"End2_steel_shell_log", 0, 0, 0);
119 physical_End2_steel_shell =
new G4PVPlacement(0,
G4ThreeVector(end2offset_x,end2offset_y,end2offset_z),
"phys_End2_steel_shell", logical_End2_steel_shell,mother,
false, 0,
true);
125 cable =
new G4Tubs(
"cable",cable_min, cable_max/2, cablelength/2.,0.*
deg,360.*
deg);
126 logical_cable =
new G4LogicalVolume(cable, steelMat,
"cable_log", 0, 0, 0);
130 physical_cable =
new G4PVPlacement(0,
G4ThreeVector(cableoffset_x,cableoffset_y,cableoffset_z),
"phys_cable", logical_cable, mother,
false, 0,
true);
136 iridium_core =
new G4Tubs(
"iridium_core",corer_min, corer_max/2,core_length/2.,0.*
deg,360.*
deg);
137 logical_iridium_core =
new G4LogicalVolume(iridium_core, iridiumMat,
"iridium_core_log", 0, 0, 0);
138 physical_iridium_core =
new G4PVPlacement(0,
G4ThreeVector(0,0,0),
"phys_iridium_core", logical_iridium_core, physical_air_gap,
false, 0,
true);
144 steelAttributes -> SetVisibility(
true);
145 steelAttributes -> SetForceAuxEdgeVisible(
true);
148 endAttributes -> SetVisibility(
true);
149 endAttributes -> SetForceAuxEdgeVisible(
true);
150 logical_steel_shell -> SetVisAttributes(steelAttributes);
151 logical_End1_steel_shell -> SetVisAttributes(endAttributes);
152 logical_End2_steel_shell -> SetVisAttributes(endAttributes);
153 logical_cable -> SetVisAttributes(steelAttributes);
158 simpleIridiumVisAtt -> SetVisibility(
true);
159 simpleIridiumVisAtt -> SetForceWireframe(
true);
160 logical_iridium_core -> SetVisAttributes(simpleIridiumVisAtt);
165 delete simpleIridiumVisAtt;
166 simpleIridiumVisAtt = 0;
168 delete endAttributes;
171 delete steelAttributes;
174 delete physical_iridium_core;
175 physical_iridium_core = 0 ;
177 delete logical_iridium_core;
178 logical_iridium_core = 0;
183 delete physical_cable;
186 delete logical_cable;
192 delete physical_End2_steel_shell;
193 physical_End2_steel_shell = 0;
195 delete logical_End2_steel_shell;
196 logical_End2_steel_shell = 0;
198 delete End2_steel_shell;
199 End2_steel_shell = 0;
201 delete physical_End1_steel_shell;
202 physical_End1_steel_shell = 0;
204 delete logical_End1_steel_shell;
205 logical_End1_steel_shell = 0;
207 delete End1_steel_shell;
208 End1_steel_shell = 0;
210 delete physical_air_gap;
211 physical_air_gap = 0;
213 delete logical_air_gap;
219 delete physical_steel_shell;
220 physical_steel_shell = 0;
222 delete logical_steel_shell;
223 logical_steel_shell = 0;
BrachyDetectorConstructionFlexi()
void ConstructFlexi(G4VPhysicalVolume *)
static constexpr double mm
CLHEP::Hep3Vector G4ThreeVector
static G4RunManager * GetRunManager()
static constexpr double deg
~BrachyDetectorConstructionFlexi()