Re: [ROOT] Problems with tracks in TGeoTracks

From: Andrei Gheata (Andrei.Gheata@cern.ch)
Date: Fri Jul 18 2003 - 09:30:13 MEST


  Hi Andi,

  It looks like you do not really abandon tracking after you get the 
IsOutside condition. You probably create new tracks, but just forgot to 
re-initialize their starting point to the modeler. The guy just knows 
about the last point/direction if you do not call InitTrack() at the 
beginning of each track.
  Check this and if it is not the case, send me just the full logic of 
your tracking part.

Regards,
Andrei

andi klein wrote:
> Hi Rene and Andrei
> 
> I have a weired problem with the tracking in TgeoTrack.
> After some random number of tracks having passed, all of a sudden
> I am getting garbage back.   
> 
> I have traced the problem to this part:
> 
> det->FindNextBoundary();
>     det->Safety();
>      dist=det->GetStep(); // distance to next boundary
>       TGeoNode *next=det->Step();
>       if (det->IsOutside())
>       {
>       cout <<"Outside _1 "<<endl;
>             return(Passed);
>       }
> 
> After the program has gotten one point to be outside, from then on
> all the new tracks are also outside. I have checked th input to this 
> routine and everything looks fine. I checked the position and direction
> and from there it is clear that they are inside the detector, and should 
> hit the next component. My question is, if it is possible
> that when Step has been set to 1e+30; that it does not get set back, and 
> if there is a way to set it back. I tried det->SetStep(.001), but that 
> did not help.
> I apololgize for not sending the whole code. It is rather lengthy, but 
> if you need it, I will include it.
> andi
> 
> 



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:13 MET