|Message: Optical photon tracking - fGeomBoundary||Not Logged In (login)|
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
based on N06 example, I am simulating a small stack of alternating water and scintillator crystal layers. In the end, I would like to store the optical photons that exit my scintillator. So I have implemented and UserSteppingAction and imposing the condition of
s->GetPostStepPoint()->GetStepStatus() == fGeomBoundary && ParticleName=="opticalphoton")
Contrary to my experience so far, when I try the above, which means getting the optical photons exiting a given volume (PostStep is a fGeomBoundary), I don't get any photons. That's strange because there are volume crossings, I get the info from PhysicsList verbose
Photon at Boundary! thePrePV: Scint3 thePostPV: Tank3 Old Momentum Direction: (0.168113,0.67367,-0.719658) Old Polarization: (-0.977934,0.205831,-0.0357686) New Momentum Direction: (0.168113,0.67367,-0.719658) New Polarization: (-0.977934,0.205831,-0.0357686) *** FresnelRefraction ***
In addition, when I try to see which photons enter a volume
s->GetPreStepPoint()->GetStepStatus() == fGeomBoundary && ParticleName=="opticalphoton")
the info seems ok.
So any idea why in the SteppingAction, I get the step from the boundary onwards the new volume, but not the step from the old volume to the boundary???
Thanks in advance, George
|Inline Depth:||Outline Depth:||Add message:|