Message: Re: OpBoundary process not called Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Feedback Re: OpBoundary process not called 

Forum: Processes Involving Optical Photons
Re: Question OpBoundary process not called (Athreya Shankar)
Date: 25 Jan, 2012
From: Gumplinger Peter <Gumplinger Peter>

Hello Athreya,

> But, though photons
> are clearly hitting the PMT, no hits are being registered. The main
> reason, I think, is because the statement,
> fStep->GetPostStepPoint()->GetProcessDefinedStep()
>                                          ->GetProcessName();
> gives "Transportation" even when the photon is getting reflected at a
> boundary. Shouldn't it return "OpBoundary" in such a case?

No, the method called is 'GetProcessDefinedStep' which returns the pointer to the process that actually defined the simulation step which is always "Transportation" when the step ends at a volume boundary.

> In other
> cases, like wavelength shifting, it correctly returns "OpWLS", and in
> case of absorption, it correctly returns "OpAbsorption".

Yes, in that case those processes have limited (defined) the step. G4OpBoundaryProcess never limits the step. G4OpBoundaryProcess is a 'Forced' process that executes when a photon arrives at a volume boundary.

> I am using version 4.9.4.p02. My SteppingAction code is more or less the
> same as the LXe code.

Well, you may want to follow that code even more closely. Obtain the pointer to the G4OpBoundaryProcess:

then use the pointer to get the 'boundaryStatus':

and then finally, if the metal surface of the PMT was hit and the photo efficiency resulted in 'Detection' you score a 'hit':


 Add Message Add Message
to: "Re: OpBoundary process not called"

 Subscribe Subscribe

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