128{
129
130
131
132
133 G4double worldSizeX = 1.*m;
134 G4double worldSizeY = 1.*m;
135 G4double worldSizeZ = 100.*m;
136
138 worldSizeX/2.,worldSizeY/2.,worldSizeZ/2.);
139
142 "World");
143
145 G4ThreeVector(),
146 "World",
147 logicWorld,
148 0,
149 false,
150 0);
151
152
153
154 G4double GuideR = 35.*mm;
155 G4double GuideW = 2.*mm;
156 G4double GuideL = 6.*m;
157
159 GuideR,GuideR+GuideW,GuideL/2.,0.,twopi);
160
163 "Guide");
164
165 new G4PVPlacement(0,G4ThreeVector(),
"Guide",logicGuide,physiWorld,
false,0);
166
167
168
169 G4Tubs* solidEndPlate =
new G4Tubs(
"EndPlate",0.,GuideR,GuideW/2.,0.,twopi);
170
173 "EndPlate");
174
175 G4ThreeVector endPlatePos = G4ThreeVector(0.,0.,GuideL/2.+GuideW/2.);
176
177 new G4PVPlacement(0,endPlatePos,
"EndPlate",logicEndPlate,physiWorld,
false,0);
178
179 G4double maxStep = 1.0*mm;
180 G4double maxTime = 100.*s;
181
183
184 logicWorld->SetUserLimits(stepLimit);
185
186
187
188
189
191 guideColor->SetVisibility(true);
192 guideColor->SetForceWireframe(true);
193
195 endPlateColor->SetVisibility(true);
196 endPlateColor->SetForceSolid(true);
197
198 logicWorld->SetVisAttributes(G4VisAttributes::GetInvisible());
199 logicGuide->SetVisAttributes(guideColor);
200 logicEndPlate->SetVisAttributes(endPlateColor);
201
202
203
204
205 return physiWorld;
206}