Message: Re: Infinite loop in novice/exampleN04 using geant4.8.1-patch01!!! Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: Infinite loop in novice/exampleN04 using geant4.8.1-patch01!!! 

Forum: Hadronic Processes
Re: None Infinite loop in novice/exampleN04 using geant4.8.1-patch01!!! (G.F. Cao)
Date: 12 Sep, 2006
From: Vladimir IVANTCHENKO <vnivanch@mail.cern.ch>

On Mon, 11 Sep 2006, Guofu Cao wrote:

> *** Discussion title: Hadronic Processes
> Email replies to PublicHyperNews@slac.stanford.edu must include:
>   In-Reply-To: <"/hadronprocess/562"@geant4-hn.slac.stanford.edu>
>   Subject: ...change this to be about your reply.
> 
> Dear G4 Experts,
>   We encountered a dead-loop in our detector simulation using Geant4.8.1.p01 (hadronic
> package QGSP). It seems our problem is related to AntiProtonInelastic process. We find that for some low-energy anti-proton, its momentum and direction become to NAN when 
> the program goes to infinite loop. In order to check if the problem is from our side, I did a test using novice/exampleN04 provided by geant4.8.1.p01. First, I did several changes in the eaxmple for antiproton tracking.
> 
> 1) comment out StackingAction in exampleN04.cc, all scondaries will be reacked:
>   // G4UserStackingAction* stacking_action = new ExN04StackingAction; 
>   // runManager->SetUserAction(stacking_action); 
> 2) in ExN04PrimaryGeneratorAction.cc
>    #include "Randomize.hh" 
>    G4ParticleDefinition* particle = particleTable->FindParticle(particleName="anti_proton");
>    set fParticleGun->SetParticleEnergy((51+G4UniformRand()*50)*MeV); 
> 3) use exampleN04.in as macro file:
>   # /mydet/RoIangle 10 deg
>   # /mydet/reqmuon 1
>   # /mydet/isomuon 1
>    /control/verbose  1
>    /run/verbose      1
>    /tracking/verbose 0
>    /run/beamOn 1000000
> 
> As a result, the same situation was found. The program went to infinite
> loop at event 44990. See the tracking information below with
> /tracking/verbose 6
> 
> *********************************************************************************************************
> * G4Track Information:   Particle = anti_proton,   Track ID = 1,   Parent ID = 0
> *********************************************************************************************************
> 
> Step#      X         Y         Z        KineE    dEStep   StepLeng  TrakLeng     Volume     Process
>     0      0 fm      0 fm      0 fm   67.9 MeV     0 eV      0 fm      0 fm    expHall_P    initStep
> 
>  >>DefinePhysicalStepLength (List of proposed StepLengths):
>     ++ProposedStep(PostStep ) = 36918.282 : ProcName = AntiProtonInelastic (No  ForceCondition)
>     ++ProposedStep(PostStep ) = 208773.54 : ProcName = hElastic (No ForceCondition)
>     ++ProposedStep(PostStep ) = 8.8941426 : ProcName = hIoni (No ForceCondition)
>     ++ProposedStep(PostStep ) = 1.7976931e+308 : ProcName = msc (Forced)
>     ++ProposedStep(PostStep ) = 1.7976931e+308 : ProcName = Transportation (Forced)
>     ++ProposedStep(AlongStep) =  50260.06 : ProcName = hIoni (CandidateForSelection)
>     ++ProposedStep(AlongStep) =  8.894141 : ProcName = msc (NotCandidateForSelection)
>     ++ProposedStep(AlongStep) =  8.894141 : ProcName = Transportation (CandidateForSelection)
> ... ...
> ... big skip
> #Step#      X         Y         Z        KineE    dEStep   StepLeng  TrakLeng     Volume     Process
>    80  -20.4 cm   34.8 cm  -2.44 mm   2.13 MeV    12 MeV  1.26 mm   42.4 cm   trackerLayer_phys       hIoni
> 
>  >>DefinePhysicalStepLength (List of proposed StepLengths): 
>     ++ProposedStep(PostStep ) = 0.05207071664281887 : ProcName = AntiProtonInelastic (No ForceCondition)
>     ++ProposedStep(PostStep ) = 40.82619179226723 : ProcName = hElastic (No ForceCondition)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = hIoni (No ForceCondition)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = msc (Forced)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = Transportation (Forced)
>     ++ProposedStep(AlongStep) = 0.05316910600208757 : ProcName = hIoni (CandidateForSelection)
>     ++ProposedStep(AlongStep) = 0.05186068454676943 : ProcName = msc (NotCandidateForSelection)
>     ++ProposedStep(AlongStep) = 0.05186068454676943 : ProcName = Transportation (CandidateForSelection)
> 
>  >>AlongStepDoIt (process by process):    Process Name = Transportation
> 
>     ++G4Step Information 
>       Address of G4Track    : 0xa346b20
>       Step Length (mm)      : 0.05186068454676943
>       Energy Deposit (MeV)  : 0
>       -----------------------------------------------------------------------
>         StepPoint Information               PreStep            PostStep
>       -----------------------------------------------------------------------
>          Position - x (mm)   :   -204.2736407465781  -204.3178574956753
>          Position - y (mm)   :    348.4945252611842   348.5195802058862
>          Position - z (mm)   :   -2.436856962280072   -2.42652936189449
>          Global Time (ns)    :    4.329706447170537   4.332279994268195
>          Local Time (ns)     :    4.329706447170537   4.332279994268195
>          Proper Time (ns)    :    4.086523306909923   4.089091033453018
>          Momentum Direct - x :  -0.8524280729078487 -0.8527845550176441
>          Momentum Direct - y :   0.4834347442858566  0.4828056277504221
>          Momentum Direct - z :   0.1991412276146746  0.1991412276146747
> ... ...
> ... small skip
> ... the first nan appears
>  >>PostStepDoIt (process by process):    Process Name = AntiProtonInelastic
> 
>     ++G4Step Information
>       Address of G4Track    : 0xa346b20
>       Step Length (mm)      : 0.05207071664281887
>       Energy Deposit (MeV)  : 2.05859873404215
>       -----------------------------------------------------------------------
>         StepPoint Information               PreStep            PostStep
>       -----------------------------------------------------------------------
>          Position - x (mm)   :   -204.2736407465781   -204.319970104144
>          Position - y (mm)   :    348.4945252611842   348.5154997473365
>          Position - z (mm)   :   -2.436856962280072  -2.425683387001505
>          Global Time (ns)    :    4.329706447170537   4.332279994268195
>          Local Time (ns)     :    4.329706447170537   4.332279994268195
>          Proper Time (ns)    :    4.086523306909923   4.089091033453018
>          Momentum Direct - x :  -0.8524280729078487                 nan
>          Momentum Direct - y :   0.4834347442858566                 nan
>          Momentum Direct - z :   0.1991412276146746                 nan
>          Momentum - x (MeV/c):   -53.88345198779397                 nan
>          Momentum - y (MeV/c):    30.55874584714016                 nan
>          Momentum - z (MeV/c):    12.58806123120922                 nan
>          Total Energy (MeV)  :    940.3991873554132   938.3405886213711
>          Kinetic Energy (MeV):    2.126887355413274 0.06828862137112379
>          Velocity (mm/ns)    :    20.15144179563204   3.616776901458536
>          Volume Name         :    trackerLayer_phys   trackerLayer_phys
>          Safety (mm)         :   0.7969176405153779  0.8333978912969117
>          Polarization - x    :                    0                   0
>          Polarization - y    :                    0                   0
>          Polarization - Z    :                    0                   0
>          Weight              :                    1                   1
>          Step Status         :      AlongStep Proc.       PostStep Proc
>          Process defined Step:                hIoni AntiProtonInelastic
>       -----------------------------------------------------------------------
> ... ...
> ... small skip
> #Step#      X         Y         Z        KineE    dEStep   StepLeng  TrakLeng     Volume     Process
>    81  -20.4 cm   34.9 cm  -2.43 mm   68.3 keV  2.06 MeV  52.1 mum  42.4 cm    trackerLayer_phys  AntiProtonInelastic
> 
>  >>DefinePhysicalStepLength (List of proposed StepLengths):  
>     ++ProposedStep(PostStep ) = 44.52449073783492 : ProcName = AntiProtonInelastic (No  ForceCondition)   
>     ++ProposedStep(PostStep ) = 36.7761184247093 : ProcName = hElastic (No ForceCondition)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = hIoni (No ForceCondition)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = msc (Forced)
>     ++ProposedStep(PostStep ) = 1.797693134862316e+308 : ProcName = Transportation (Forced)
>     ++ProposedStep(AlongStep) = 0.000767365494101051 : ProcName = hIoni (CandidateForSelection)
>     ++ProposedStep(AlongStep) = 0.0007558743340329251 : ProcName = msc  (NotCandidateForSelection)
> 
> The program stopped here.
> 
>   How to solve this problem? Momentum is nan, why?
> 
> Thanks in advanced.
> 
> Guofu
> 

Hello,

It is a good investigation. Probably, the problem should be reported to G4
bug report system.

VI

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 None: Re: Infinite loop in novice/exampleN04 using geant4.8.1-patch01!!!   (MaTao - 22 Mar, 2007)
 Add Message Add Message
to: "Re: Infinite loop in novice/exampleN04 using geant4.8.1-patch01!!!"

 Subscribe Subscribe

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


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]