Problem 403 - Segfaults and Exceptions in G4PAIonisation
Summary: Segfaults and Exceptions in G4PAIonisation
Status: RESOLVED FIXED
Alias: None
Product: Geant4
Classification: Unclassified
Component: processes/electromagnetic (show other problems)
Version: 4.0
Hardware: PC Linux
: P2 major
Assignee: Vladimir.Grichine
URL:
Depends on:
Blocks:
 
Reported: 2002-08-26 23:17 CEST by totallyfake1
Modified: 2005-02-07 06:51 CET (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description totallyfake1 2002-08-26 23:17:10 CEST
Two problems, possibly related:

Something in G4PAIonisation seems to have changed dramatically since 4.3.2. I
have some very simple code which passes protons through a volume of Xenon. It
works fine in 4.3.2, 4.3.1, and 4.3.0, but crashes with a seg fault in 4.4.0p2,
and 4.4.1p1.

The physicslist setup is very simple:
} else if (particleName == "proton") {
   pmanager->AddProcess(new G4MultipleScattering(),-1,1,1);
   pmanager->AddProcess(new G4PAIonisation("Xenon"),-1,2,-1);

the seg fault is occurring in: G4PAIonisation::BuildPAIonisationTable
(this=0x8aaf5a8) at /usr/include/g++-2/stl_vector.h:142

I can make this seg fault go away if I add the following line to
source/processes/electromagnetic/standard/src/G4PAIonisation.cc:
fPAItransferBank = NULL; at line 235
---
Now, possibly related is an issue in TestEm8, which I compile with no
modifications.  Running with the input file run11.mac works perfectly.
However, if I change the particle type in run11.mac (line 39) to be a proton, I
get an exception:
G4EnergyLossTables::GetTables: table not found!
*** G4Exception: Aborting execution ***

This does NOT happen with the TestEm8 of Geant 4.3.2

Thanks much,
SPW
Comment 1 Vladimir.Grichine 2005-02-07 06:51:59 CET
Starting G4 version 7.0 users are invited to use G4PAIModel model for
desctibing of inonisation with fine details. G4PAIonisation is
not supported.