Problem 305

Summary: incompatibility between hh file and cc file
Product: Geant4 Reporter: Florence.Ranjard
Component: configAssignee: Radovan.Chytracek
Status: CLOSED INVALID    
Severity: normal CC: John.Apostolakis, Marc.Verderi, sajan.easo
Priority: P2    
Version: 3.2   
Hardware: PC   
OS: Linux   

Description Florence.Ranjard 2001-09-28 03:39:45 CEST
Dear Geant4 team,
 I was able to digitize using the ROGeometry stuff until a week
 ago using G4.3.2. From this week onwards, it does not work. It
 turns out that:

  In Geant4.3.2/source/digits+hits/detector/src/G4VReadOutGeometry.cc,

the G4Navigator class has two calls to its member function named
  LocateGlobalPointAndUpdateTouchable. The first call does not match
 arguements of any member function declarations in
 Geant4.3.2/source/geometry/volumes/include/G4Navigator.hh.


 The second call uses the track momentum information as one of the
 arguements. In my case this returns the 'world' volume instead of the
 appropriate readout geometry volume. If I replace this call with the
 version of the member function without the momentum information and set
 the last arguement as 'false' then it returns the correct readout
 geometry volume.

 So at the moment, I have to copy this .cc file and replace both the calls
 with the version of member function without the momentum info. They label
 this member function to be the old version, but it is the only one which
 works for the digitization purpose. I also explicitly
 set the last arguement as 'false' as indicated by the comments
 in this .cc file.

regards, Sajan
Comment 1 Marc.Verderi 2002-01-21 04:10:59 CET
Problem seems related to LocateGlobalPointAndUpdateTouchable method of the
G4Navigator used in RO geometry (variable ROnavigator in G4VReadOutGeometry.cc
files). The user, by changing:

LocateGlobalPointAndUpdateTouchable(
              currentStep->GetPreStepPoint()->GetPosition(),
              currentStep->GetPreStepPoint()->GetMomentumDirection(),
              touchableHistory);
with:
        LocateGlobalPointAndUpdateTouchable(
              currentStep->GetPreStepPoint()->GetPosition(),
              touchableHistory,false);

got a temporary fix. Before that, the call was returning the world volume,
instead of the RO volume.
Due to the fact that the problem looks to be fixed when the track direction is
not used anymore let me think this can be a problem with the geometry.

Marc Verderi
Comment 2 Gabriele Cosmo 2002-04-23 11:58:59 CEST
Can the user please verify if this problem still exist in the latest
release 4.0 + patch-02 ?
Point location now implicitely adopts direction in 4.0.
The problem report will be otherwise closed.
Comment 3 Radovan.Chytracek 2002-05-03 09:14:59 CEST
Closing bug as invalid