2009-06-22 Kamil Sedlak

- introduced modifications done by Pavel Bakule at ISIS:
       a)  the time when the initial muon is generated can be
           set according to a gaussian or flat distribution.
           (all muons were generated at time 0 before this change).
       b)  a new volume "cylpart" has been added.
   The code can be compiled, but no tests of the newly implemented
   features have been done.  In future, the information about the
   time of the muon generation should be added to the root output
   tree.
This commit is contained in:
2009-06-22 16:39:50 +00:00
parent 46e13dc4a0
commit 464ce6f895
5 changed files with 40 additions and 0 deletions

View File

@ -216,6 +216,16 @@ G4VPhysicalVolume* musrDetectorConstruction::Construct() {
solidName+=name;
solid = new G4Para(solidName,x1*mm,x2*mm,x3*mm,x4*deg,x5*deg,x6*deg);
}
else if (strcmp(tmpString2,"cylpart")==0){ // Volume introduced by Pavel Bakule on 12 May 2009
sscanf(&line[0],"%*s %*s %*s %s %g %g %g %g %s %g %g %g %s %s",
name,&x1,&x2,&x3,&x4,material,&posx,&posy,&posz,mothersName,rotMatrix);
sscanf(&line[0],"%*s %*s %*s %*s %*g %*g %*g %*g %*s %*g %*g %*g %*s %*s %s %d %s",sensitiveDet,&volumeID,actualFieldName);
solidName+=name;
G4double roundingErr=0.01*mm; // to avoid some displaying problems of the subtracted volumes
G4Box* solidSubtractedBox = new G4Box("solidSubtractedBox",x2*mm,(x2-x4)*mm,x3*mm+roundingErr);
G4Tubs* solidCylinder = new G4Tubs("solidCylinder",0.*mm,x2*mm,x3*mm,0.*deg,180.*deg);
solid = new G4SubtractionSolid(solidName, solidCylinder, solidSubtractedBox);
}
else if (strcmp(tmpString2,"uprofile")==0){
// Create a U-profile geometry. x1, x2, x3 define the outer dimensions of the U-profile (as a box),
// x4 is the wall thickness of the U-profile. The centre of the U-profile