Hello,
I want to create a PrimitveScorer that scores the Track Length of a given ion, like C12, N14, Al27, etc.
When i create a PrimitiveScorer for protons in DetectorConstruction, it looks like this
// Declare filters on Particles and Scorer
G4String fltName,particleName;
// Proton filter
G4SDParticleFilter* protonFilter =
new G4SDParticleFilter(fltName="protonFilter", particleName="proton");
//Track Length Scorer
G4VPrimitiveScorer* PS_TrackLength = new G4PSTrackLength("TrackLength");
//apply filter to scorer
PS_TrackLength ->SetFilter(protonFilter);
However if i change the ‘particleName’ to something like “C11” , “N14” or “Al27” i get an error;
“*** G4Exception : DetPS0101 issued by : G4SDParticleFilter::G4SDParticleFilter
Particle N14 not found.”
What works is the line
G4SDParticleFilter* nitrogenFilter =
new G4SDParticleFilter(fltName="nitrogenFilter", particleName="GenericIon");
but this will give the Track Lengths of all Ions…
What’s the naming scheme of G4SDParticleFilter for specific ions?
Best Regards
Max