Message: Step crosses a geometrical boundary and does not stop Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Step crosses a geometrical boundary and does not stop 

Forum: Event and Track Management
Date: 29 Mar, 2010
From: Ioannis Sechopoulos <Ioannis Sechopoulos>

I have a volume assigned to a sensitive detector. Once in a while, the sensitive detector's ProcessHits function is called for a step that I know crossed a boundary between the sensitive volume and its mother, although it appears in the tracking output that the postStepPoint is inside the sensitive volume. I placed the following code in the ProcessHits to verify this:

G4ThreeVector worldPos = aStep->GetPostStepPoint()->GetPosition();

G4TouchableHistory* theTouchable = (G4TouchableHistory*) (aStep->GetPostStepPoint()->GetTouchable());

G4ThreeVector localPos = theTouchable->GetHistory()->GetTopTransform().TransformPoint(worldPos);

G4cout << "### Local Position: " << localPos.x() << " " << localPos.y() << " " << localPos.z() << G4endl;
G4cout << "### World Position: " << worldPos.x() << " " << worldPos.y() << " " << worldPos.z() << G4endl;

G4Navigator* theNavigator = G4TransportationManager::GetTransportationManager()->GetNavigatorForTracking();

G4VPhysicalVolume* currentVolume = theNavigator->LocateGlobalPointAndSetup(worldPos, 0, false, true);

G4cout << "navigator volume: " << currentVolume->GetName() << G4endl;

and this is the output for one of the hits that is wrong:

*********************************************************************************************************
* G4Track Information:   Particle = gamma,   Track ID = 1,   Parent ID = 0
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0        0     -150      660      0.02        0        0         0       World initStep
    1     67.4     -191       67      0.02        0      598       598 physiCompression Transportation
    2     67.6     -191       65      0.02        0     2.02       600   physiSkin Transportation
    3     68.1     -191       61      0.02        0     4.04       604 physiBreast Transportation
    4     68.8     -192     54.3    0.0188 1.36e-05     6.72       611 physiBreast compt
    :----- List of 2ndaries - #SpawnInStep=  1(Rest= 0,Along= 0,Post= 1), #SpawnTotal=  1 ---------------
    :      68.8      -192      54.3    0.0012                 e-
    :----------------------------------------------------------------- EndOf2ndaries Info ---------------
### Local Position: 68.80902495440318 -41.89539546471676 14.33532473714037
### World Position: 68.80902495440318 -191.8953954647168 54.33532473714037
navigator volume: physiBreast
    5     72.9     -196     62.4    0.0184 1.42e-05     9.76       621 physiBreast compt     <-------------
    :----- List of 2ndaries - #SpawnInStep=  1(Rest= 0,Along= 0,Post= 1), #SpawnTotal=  2 ---------------
    :      72.9      -196      62.4  0.000367                 e-
    :----------------------------------------------------------------- EndOf2ndaries Info ---------------
### Local Position: 72.85229590945139 -45.71556280146035 22.35389344721722
### World Position: 72.85229590945139 -195.7155628014604 62.35389344721722
navigator volume: physiSkin     <-------------
    6     75.3     -194       65    0.0184        0     4.18       625 physiCompression Transportation
    7     77.1     -192       67    0.0184        0     3.16       628       World Transportation
    8      500      189      533    0.0184        0      736  1.36e+03  OutOfWorld Transportation

*********************************************************************************************************
* G4Track Information:   Particle = e-,   Track ID = 3,   Parent ID = 1
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0     72.9     -196     62.4  0.000367        0        0         0   physiSkin initStep     <-------------
    1     72.9     -196     62.4         0 0.000367 1.28e-05  1.28e-05   physiSkin eIoni

*********************************************************************************************************
* G4Track Information:   Particle = e-,   Track ID = 2,   Parent ID = 1
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0     68.8     -192     54.3    0.0012        0        0         0 physiBreast initStep
    1     68.8     -192     54.3         0   0.0012 6.67e-05  6.67e-05 physiBreast eIoni
### Local Position: 68.80901973269513 -41.89538981378192 14.33529135203892
### World Position: 68.80901973269513 -191.8953898137819 54.33529135203892
navigator volume: physiBreast

As you can see, (I added arrows to the appropriate lines) the regular tracking output says that the first compton scatter happened in the "physiBreast" (the sensitive volume), but the navigator volume output I added in the hit reports that that worldPos is in "physiSkin". I know that physiBreast finishes at Z=61 mm and that Z=62.4 mm is in "physiSkin", so the latter output is the correct one. Furthermore, TrackID 3 starts in the same position where the compton scatter happened, and it is reported in "physiSkin". So it seems that after the compton scatter in the physibreast, the gamma should have stopped at the border of physiBreast and physiSkin before undergoing the second compton (which might not have happened if the last portion of the step were computed correctly as being in physiSkin), and the step between the boundary and the second compton should not be registered by this sensitive detector since it would be outside the SD. Is there something I'm interpreting wrong, or is this a bug with the navigator or solid definition? Rather than keep on posting code and output, please let me know what, if anything else, would be helpful for me to post for you (anybody!) to help out with this. Thank you!

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Feedback: Re: Step crosses a geometrical boundary and does not stop   (Gumplinger Peter - 29 Mar, 2010)
(_ Feedback: Re: Step crosses a geometrical boundary and does not stop   (Ioannis Sechopoulos - 29 Mar, 2010)
 Add Message Add Message
to: "Step crosses a geometrical boundary and does not stop"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]