Uploaded image for project: 'Simulation'
  1. Simulation
  2. SIM-537

Fix issues with surface Normal for error propagation - related to field propagation




      Thomas Haupt (CMS), reported an issue with field propagation when using Error propagation

      "Surface Normal returned by Solid is not a Unit Vector."

      is reported also in G4Navigator. This exception is fatal and processing stops.

      This problem occurs with Geant4 9.6 patch 02 and 03, and with Geant4 release 10.0, but not with version 9.5 patch 2.

      Further details from his email (25 March 2014):

      'I now did some further studies to understand a problem we see when using the G4 error propagation package in the G4 version 4.6 and above. I discovered the problem when I tried to use the G4 version which is shipped with our new CMSSW releases 7.0 / 7.1. The G4 version here is geant4.9.6.p02-cms4. The attached log file "geant4.9.6.p02-cms4_errorprop_crash.txt" contains some lines

      -------- WWWW ------- G4Exception-START -------- WWWW ------
      "Function called when NOT at a Boundary."

      inside of G4Navigator. This seems to be considered a warning and the G4 processing continues, but
      after some time, the G4Exception

      "Surface Normal returned by Solid is not a Unit Vector."

      is reported also in G4Navigator. This exception is fatal and processing stops.

      Using the G4 9.5 p2 version, I never saw these G4Exceptions when using the error propagation in CMS.

      Lorenzo (in CC) helped me trace whether this might be a problem, which was introduced in some recent G4 releases. He had a look at G4 10 first and ran the example in examples/extended/errorpropagation and the G4Exception "Function called when NOT at a Boundary." ( the non-fatal one) shows up a couple of times when running the example code. However
      it does not crash and continues the example to the end.

      I did some further tests:

      Geant4 9.6.p03 : same as in G4.10
      Geant4 9.5.p02 : the exceptions do not show up.

      This seems to indicate, that some strange effect was introduced in
      between the 4.9.5p2 and 4.9.6p3 I added the log files from running the example in g4.9.6.p03 and g4.5.2.p02 to this mail.

      Another interesting discovery we made is, that the problem might be related to the location of the propagation target. The G4exception in for the example is always reported in the very last step before hitting the target. Furthermore,
      Lorenzo discovered that when the propagation target is moved outside of the muon detector in the example, the G4exception disappears.

      Can think of any changes g4.9.5 -> g4.9.6 which might provoke this behavior ?"




            japost John Apostolakis
            vnivanch Vladimir Ivantchenko
            0 Vote for this issue
            1 Start watching this issue



              Time Tracking

                Original Estimate - 3 weeks
                Remaining Estimate - 3 days
                Time Spent - Not Specified Time Not Required
                Not Specified