fStopAndKill being registered multiple times per particle?

Geant4 Version: 11.3.0
Operating System: Mac OSX
Compiler/Version: Clang++ 16

I am attempting to do a very simple simulation of shooting a thermal neutron into a block of pure boron 10 and measuring the distance the resulting alpha particle travels. To do this, during the program I am checking in UserSteppingAction for each step if the particle definition is G4Alpha and if the track status is fStopAndKill. I then calculate and store the information I want in a histogram. My intention being that I only want to see alpha particles which are actually stopped. When doing this simulation for one single neutron, I am seeing multiple entries in my histograms. Shouldn’t the track status fStopAndKill be true for only one single step per particle track? My only conclusion is that for some reason it is being set true for multiple steps. Here is the relevant portion of the code. After running the simulation, h1 should have 1 entry but it has for instance 36 entries:

void SteppingAction::UserSteppingAction(const G4Step *step){
    auto track = step->GetTrack();
    auto particleDef = track->GetParticleDefinition();

        if (track->GetParticleDefinition() == G4Alpha::AlphaDefinition()) {
            if (track->GetTrackStatus() == fStopAndKill) {

            G4ThreeVector finalPosition = track->GetPosition();
            G4ThreeVector vertexPosition = track->GetVertexPosition();
            G4double relativeDisplacement = (finalPosition - vertexPosition).mag();
            h1->Fill(relativeDisplacement / um);
    }
}


To add a bit more contextual information, I added to my code a portion to print the Track ID, particle ID, and process ID. It appears that an individual particle is being given multiple tracks via the neutronInelastic process. Shouldn’t each particle have only 1 associated track?:

Processed Tracks, Particle IDs, and Process Names:
Track ID: 1, Particle ID: 2112, Process Name: Unknown
Track ID: 13, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 14, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 17, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 19, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 20, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 21, Particle ID: 1000030070, Process Name: neutronInelastic
Track ID: 66, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 68, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 71, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 73, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 74, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 75, Particle ID: 1000030070, Process Name: neutronInelastic
Track ID: 76, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 78, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 109, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 110, Particle ID: 1000030070, Process Name: neutronInelastic
Track ID: 123, Particle ID: 1000020040, Process Name: pi+Inelastic
Track ID: 157, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 158, Particle ID: 1000030070, Process Name: neutronInelastic
Track ID: 192, Particle ID: 1000020040, Process Name: protonInelastic
Track ID: 193, Particle ID: 1000020040, Process Name: protonInelastic
Track ID: 195, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 197, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 198, Particle ID: 1000020040, Process Name: neutronInelastic
Track ID: 199, Particle ID: 1000030070, Process Name: neutronInelastic

So those are all different tracks, and all from the same event. Most of them are alphas (He-4 nuclei, with G4 code 1000020040 (Z=2, A=4)), but I see some Li-7’s in there as well. If your material is really pure B-10, then you ought to be getting a single neutron capture and then the two nuclei travel a bit and stop.

Since this is all just one event, I think it might give you more information to set /tracking/verbose 3 so you can see every step and the secondaries.

Exactly, I expect to get out a single alpha and lithium, so I am confused why there are so many tracks. The only Physics in my PhysicsList is G4HadronPhysicsQGSP_BIC. I updated the printed output to also look at ParentID and here is the output (for a new run, so some numbers will be different from before). I am very perplexed:

Processed Tracks, Particle IDs, Parent IDs, and Process Names:
Track ID: 1, Particle ID: 2112, Parent ID: 0, Process Name: Unknown
Track ID: 8, Particle ID: 1000020040, Parent ID: 1, Process Name: neutronInelastic
Track ID: 10, Particle ID: 1000020040, Parent ID: 7, Process Name: neutronInelastic
Track ID: 11, Particle ID: 1000030070, Parent ID: 7, Process Name: neutronInelastic
Track ID: 12, Particle ID: 1000020040, Parent ID: 6, Process Name: neutronInelastic
Track ID: 15, Particle ID: 1000020040, Parent ID: 6, Process Name: neutronInelastic
Track ID: 35, Particle ID: 1000020040, Parent ID: 17, Process Name: neutronInelastic
Track ID: 37, Particle ID: 1000020040, Parent ID: 17, Process Name: neutronInelastic
Track ID: 41, Particle ID: 1000030080, Parent ID: 5, Process Name: neutronInelastic
Track ID: 127, Particle ID: 1000020040, Parent ID: 4, Process Name: neutronInelastic
Track ID: 129, Particle ID: 1000020040, Parent ID: 4, Process Name: neutronInelastic
Track ID: 140, Particle ID: 1000020040, Parent ID: 125, Process Name: neutronInelastic
Track ID: 142, Particle ID: 1000020040, Parent ID: 125, Process Name: neutronInelastic
Track ID: 145, Particle ID: 1000020040, Parent ID: 124, Process Name: neutronInelastic
Track ID: 147, Particle ID: 1000020040, Parent ID: 124, Process Name: neutronInelastic
Track ID: 148, Particle ID: 1000020040, Parent ID: 146, Process Name: neutronInelastic
Track ID: 149, Particle ID: 1000030070, Parent ID: 146, Process Name: neutronInelastic
Track ID: 176, Particle ID: 1000020040, Parent ID: 151, Process Name: neutronInelastic
Track ID: 178, Particle ID: 1000020040, Parent ID: 151, Process Name: neutronInelastic
Track ID: 179, Particle ID: 1000020040, Parent ID: 175, Process Name: neutronInelastic
Track ID: 180, Particle ID: 1000030070, Parent ID: 175, Process Name: neutronInelastic
Track ID: 239, Particle ID: 1000020040, Parent ID: 2, Process Name: pi+Inelastic
Track ID: 240, Particle ID: 1000020040, Parent ID: 2, Process Name: pi+Inelastic

What is actually setting the fStopAndKill flag in the first place? If you aren’t setting it why not just use the TrackingAction instead? PostUserTrackingAction will be called for each particle once when it is done “being tracked”. You could check that the particle is an alpha there and then be sure you aren’t catching some strange secondary registration.

I still think /tracking/verbose 3 would be useful. It’ll show you thinks like which volume you’re in. The fact that you see stuff from parent ID 2, 6, 7, etc. tells me that somewhere you have multiple neutrons in a single event getting into your B-10 target. Did you generate multiple neutron primaries? Or are you shooting your neutron through something like air where you might get secondaries that go on to enter your real target?

fStopAndKill should be set by whatever Geant4 process leaves the tracked particle at zero energy. That’s a pretty standard test in an SD for finding the “final step” of a particle. You don’t know its energy of course (by definition, the energy is zero) but it’s very useful for measuring range, as the OP is trying to do.

That is not an implementation detail I have thought about. I always assumed it was at the end of the tracking action since you can still retrieve its final position in the PostUserAction and even the step. Interesting.

Another thing to consider is that there is non-zero cross section for B10(alpha, n)N13:

IIRC there is ~2 MeV split between the Li and helium. If you have a pure slab of B10 then you might actually be generating other neutrons.

I implemented /tracking/verbose 3 but the output was far too verbose to share (perhaps not what you were implying though). I am just as confused as it is one single thermal neutron being shot into a block of B10, nothing else to it. Is it possible B10 has some rare decay process that it is trying to include? Here is the particle generation:

PrimaryGeneratorAction::PrimaryGeneratorAction()
{
	G4int n_particle = 1; //Particle per event
	fParticleGun = new G4ParticleGun(n_particle);
}
void PrimaryGeneratorAction::GeneratePrimaries(G4Event *anEvent)
{
	G4ParticleTable *particleTable = G4ParticleTable::GetParticleTable();
	G4String particleName="neutron";
	G4ParticleDefinition *particle = particleTable->FindParticle(particleName);
	fParticleGun->SetParticleDefinition(particle);
	particleEnergy = 25.e-9*MeV;
	G4ThreeVector pos(0.,0.,0.);
	G4ThreeVector mom(0.,0.,1.);
	fParticleGun->SetParticlePosition(pos);
	fParticleGun->SetParticleMomentumDirection(mom);
	fParticleGun->GeneratePrimaryVertex(anEvent);
}

And the relevant portion of the DetectorConstruction (only 1 single volume inside the larger world):

G4VPhysicalVolume *DetectorConstruction::Construct()
{
    G4NistManager *nist = G4NistManager::Instance();
    G4Material *worldMat = nist->FindOrBuildMaterial("G4_Galactic");
    G4Isotope* B10 = new G4Isotope("B10", 5, 10, 10.013*g/mole);
    G4Element* ele_enrichedB10 = new G4Element("enriched B10", "B", 1);
    ele_enrichedB10->AddIsotope(B10, 100.*perCent);
    G4Material* mat_enrichedB10 = new G4Material("NaturalB",                // name
                              2.08 * (g / cm3),                          // density
                              1);                                        // number of components

    mat_enrichedB10->AddElement(ele_enrichedB10, 1);

    G4bool Check_overlap = true;

    G4double x_length = 100.*m;
    G4double y_length = 100.*m;
    G4double z_length = 100.*m;

    G4double target_width = 100.*m;
    G4double target_height = 100.*m;
    G4double target_depth = 100.*m;

    //Build world size
    G4Box *solidWorld = new G4Box("solidWorld", x_length, y_length, z_length);
    G4LogicalVolume *logicWorld = new G4LogicalVolume(solidWorld, worldMat, "logicWorld");
    G4int physWorld_CopyNo = 0;
    G4VPhysicalVolume *physWorld = new G4PVPlacement(0, G4ThreeVector(0., 0., 0.), logicWorld, "physWorld", 0, false, physWorld_CopyNo, Check_overlap);

    /////// Target
    G4Box *solidTarget = new G4Box("solidTarget", target_width, target_height, target_depth);
    G4LogicalVolume *logicTarget = new G4LogicalVolume(solidTarget, mat_enrichedB10, "logicTarget");
    logicTarget->SetUserLimits(new G4UserLimits(0.1*micrometer));
    G4int physTarget = 1;
    G4VPhysicalVolume *Target = new G4PVPlacement(0, G4ThreeVector(0.*um, 0.*um, 0.*um), logicTarget, "Target", logicWorld, false, physTarget ,Check_overlap);

    return physWorld;
}

I’ll look through the verbose output though and try to make sense of it.

Here is the output for the first step using /tracking/verbose 3. Something seems very much not right for 9 secondaries to be produced in all.

### Run 0 starts.
--> Event 0 starts.

*********************************************************************************************************
* G4Track Information:   Particle = neutron,   Track ID = 1,   Parent ID = 0
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0        0        0        0     1e+03        0        0         0      Target initStep

 >>AlongStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation

    ++G4Step Information 
      Address of G4Track    : 0x1266b44f0
      Step Length (mm)      : 476.6042548258816
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :                    0                   0
         Position - y (mm)   :                    0                   0
         Position - z (mm)   :                    0   476.6042548258816
         Global Time (ns)    :                    0   1.817234359411515
         Local Time (ns)     :                    0   1.817234359411515
         Proper Time (ns)    :                    0  0.8803057067923967
         Momentum Direct - x :                    0                   0
         Momentum Direct - y :                    0                   0
         Momentum Direct - z :                    1                   1
         Momentum - x (MeV/c):                    0                   0
         Momentum - y (MeV/c):                    0                   0
         Momentum - z (MeV/c):     1696.80014144271    1696.80014144271
         Total Energy (MeV)  :           1939.56536          1939.56536
         Kinetic Energy (MeV):                 1000                1000
         Velocity (mm/ns)    :    262.2690091443258   262.2690091443258
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   99523.39574517412
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined    neutronInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secondaries = 0

 **PostStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation (Forced)
      2) neutronInelastic

    ++G4Step Information 
      Address of G4Track    : 0x1266b44f0
      Step Length (mm)      : 476.6042548258816
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :                    0                   0
         Position - y (mm)   :                    0                   0
         Position - z (mm)   :                    0   476.6042548258816
         Global Time (ns)    :                    0   1.817234359411515
         Local Time (ns)     :                    0   1.817234359411515
         Proper Time (ns)    :                    0  0.8803057067923967
         Momentum Direct - x :                    0                   0
         Momentum Direct - y :                    0                   0
         Momentum Direct - z :                    1                   1
         Momentum - x (MeV/c):                    0                   0
         Momentum - y (MeV/c):                    0                   0
         Momentum - z (MeV/c):     1696.80014144271                   0
         Total Energy (MeV)  :           1939.56536   939.5653600000001
         Kinetic Energy (MeV):                 1000                   0
         Velocity (mm/ns)    :    262.2690091443258                   0
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   99523.39574517412
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined    neutronInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secodaries = 9
      [Note]Secondaries from AlongStepDoIt included.
              0         0   476.604   532.223   1.81723            neutron
              0         0   476.604   109.277   1.81723                pi+
              0         0   476.604    63.602   1.81723            neutron
              0         0   476.604    44.295   1.81723            neutron
              0         0   476.604  0.184002   1.81723             proton
              0         0   476.604   19.4759   1.81723            neutron
              0         0   476.604   5.30425   1.81723            neutron
              0         0   476.604   30.4094   1.81723             proton
              0         0   476.604   17.9115   1.81723              alpha

That first line reports the energy at 1E+03 MeV. That is 1 GeV. You have turned your Boron slab into a neutron spallation target.

1 Like

That’s not thermal. A thermal neutron should have KinE(MeV) around 1e-5 or so. A 1 GeV neutron beam would definitely explain how you basically exploded your B-10 target nucleus into an alpha, two protons, five neutrons and pi+ meson :slight_smile:

Thank you! So apparently I had commented out the actual fParticleGun->SetParticleEnergy(particleEnergy); line and forgot to add it back in. Somehow the program defaulted to 1GeV as the energy (weird, I thought it would throw an error). I have since updated the code, however the problem persists. Here is the first line to validate the correct energy.

### Run 0 starts.
--> Event 0 starts.

*********************************************************************************************************
* G4Track Information:   Particle = neutron,   Track ID = 1,   Parent ID = 0
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0        0        0        0   2.5e-08        0        0         0      Target initStep


I have tracked down the extra alpha particles as originating from the following, which I do not understand at all. Apparently there is an alpha+B10->C12+neutron process, but I don’t know where the deuteron is coming from:

*********************************************************************************************************
* G4Track Information:   Particle = alpha,   Track ID = 2,   Parent ID = 1
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0        0        0    0.131      1.47        0        0         0      Target initStep

 >>AlongStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation

    ++G4Step Information 
      Address of G4Track    : 0x127ea2908
      Step Length (mm)      : 6584.174021568563
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :                    0   3484.683051097906
         Position - y (mm)   :                    0  -3635.842868943179
         Position - z (mm)   :   0.1308137649744434   4241.472371815252
         Global Time (ns)    :    59.81515585199254   841.4291767388418
         Local Time (ns)     :                    0   781.6140208868492
         Proper Time (ns)    :                    0   781.3054005023478
         Momentum Direct - x :   0.5292513593478415  0.5292513593478415
         Momentum Direct - y :  -0.5522094126055623 -0.5522094126055623
         Momentum Direct - z :   0.6441721534328239  0.6441721534328239
         Momentum - x (MeV/c):    55.45303339639364   55.45303339639364
         Momentum - y (MeV/c):   -57.85849475521815  -57.85849475521815
         Momentum - z (MeV/c):      67.494016418501     67.494016418501
         Total Energy (MeV)  :    3728.851337372073   3728.851337372073
         Kinetic Energy (MeV):    1.472337372073625   1.472337372073625
         Velocity (mm/ns)    :    8.423817697254083   8.423817697254083
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   93415.69516466647
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined      alphaInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secondaries = 0

 **PostStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation (Forced)
      2) alphaInelastic

    ++G4Step Information 
      Address of G4Track    : 0x127ea2908
      Step Length (mm)      : 6584.174021568563
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :                    0   3484.683051097906
         Position - y (mm)   :                    0  -3635.842868943179
         Position - z (mm)   :   0.1308137649744434   4241.472371815252
         Global Time (ns)    :    59.81515585199254   841.4291767388418
         Local Time (ns)     :                    0   781.6140208868492
         Proper Time (ns)    :                    0   781.3054005023478
         Momentum Direct - x :   0.5292513593478415  0.5292513593478415
         Momentum Direct - y :  -0.5522094126055623 -0.5522094126055623
         Momentum Direct - z :   0.6441721534328239  0.6441721534328239
         Momentum - x (MeV/c):    55.45303339639364                   0
         Momentum - y (MeV/c):   -57.85849475521815                  -0
         Momentum - z (MeV/c):      67.494016418501                   0
         Total Energy (MeV)  :    3728.851337372073            3727.379
         Kinetic Energy (MeV):    1.472337372073625                   0
         Velocity (mm/ns)    :    8.423817697254083                   0
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   93415.69516466647
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined      alphaInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secodaries = 2
      [Note]Secondaries from AlongStepDoIt included.
      3484.683051097906 -3635.842868943179 4241.472371815252 2.227979302357426 841.4291767388418           deuteron
      3484.683051097906 -3635.842868943179 4241.472371815252 0.5836217021169432 841.4291767388418                C12

Even weirder, what is going on here?? The deuteron is producing 3 alphas?

*********************************************************************************************************
* G4Track Information:   Particle = deuteron,   Track ID = 5,   Parent ID = 2
*********************************************************************************************************

Step#    X(mm)    Y(mm)    Z(mm) KinE(MeV)  dE(MeV) StepLeng TrackLeng  NextVolume ProcName
    0 3.48e+03 -3.64e+03 4.24e+03      2.23        0        0         0      Target initStep

 >>AlongStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation

    ++G4Step Information 
      Address of G4Track    : 0x127ea2a20
      Step Length (mm)      : 20.41758875118108
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :    3484.683051097906   3501.398692522196
         Position - y (mm)   :   -3635.842868943179  -3642.896401152722
         Position - z (mm)   :    4241.472371815252   4232.106852846403
         Global Time (ns)    :    841.4291767388418   842.8277056142894
         Local Time (ns)     :                    0   1.398528875447546
         Proper Time (ns)    :                    0    1.39686957978695
         Momentum Direct - x :   0.8186883195657809  0.8186883195657809
         Momentum Direct - y :  -0.3454635263497995 -0.3454635263497995
         Momentum Direct - z :  -0.4586985800812107 -0.4586985800812107
         Momentum - x (MeV/c):    74.86687710424653   74.86687710424653
         Momentum - y (MeV/c):   -31.59172392363898  -31.59172392363898
         Momentum - z (MeV/c):   -41.94676948737521  -41.94676948737521
         Total Energy (MeV)  :    1877.840979302357   1877.840979302357
         Kinetic Energy (MeV):    2.227979302357426   2.227979302357426
         Velocity (mm/ns)    :    14.59933299171045   14.59933299171045
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   95738.11003943357
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined          dInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secondaries = 0

 **PostStepDoIt (after all invocations):
    ++List of invoked processes 
      1) Transportation (Forced)
      2) dInelastic

    ++G4Step Information 
      Address of G4Track    : 0x127ea2a20
      Step Length (mm)      : 20.41758875118108
      Energy Deposit (MeV)  : 0
      -----------------------------------------------------------------------
        StepPoint Information               PreStep            PostStep
      -----------------------------------------------------------------------
         Position - x (mm)   :    3484.683051097906   3501.398692522196
         Position - y (mm)   :   -3635.842868943179  -3642.896401152722
         Position - z (mm)   :    4241.472371815252   4232.106852846403
         Global Time (ns)    :    841.4291767388418   842.8277056142894
         Local Time (ns)     :                    0   1.398528875447546
         Proper Time (ns)    :                    0    1.39686957978695
         Momentum Direct - x :   0.8186883195657809  0.8186883195657809
         Momentum Direct - y :  -0.3454635263497995 -0.3454635263497995
         Momentum Direct - z :  -0.4586985800812107 -0.4586985800812107
         Momentum - x (MeV/c):    74.86687710424653                   0
         Momentum - y (MeV/c):   -31.59172392363898                  -0
         Momentum - z (MeV/c):   -41.94676948737521                  -0
         Total Energy (MeV)  :    1877.840979302357            1875.613
         Kinetic Energy (MeV):    2.227979302357426                   0
         Velocity (mm/ns)    :    14.59933299171045                   0
         Volume Name         :               Target              Target
         Safety (mm)         :                    0   95738.11003943357
         Polarization - x    :                    0                   0
         Polarization - y    :                    0                   0
         Polarization - Z    :                    0                   0
         Weight              :                    1                   1
         Step Status         :            Undefined       PostStep Proc
         Process defined Step:            Undefined          dInelastic
      -----------------------------------------------------------------------

    ++List of secondaries generated (x,y,z,kE,t,PID):  No. of secodaries = 3
      [Note]Secondaries from AlongStepDoIt included.
      3501.398692522196 -3642.896401152722 4232.106852846403 2.347390837803687 842.8277056142894              alpha
      3501.398692522196 -3642.896401152722 4232.106852846403 6.04166322149058 842.8277056142894              alpha
      3501.398692522196 -3642.896401152722 4232.106852846403 11.75157685985414 842.8277056142894              alpha

I think that’s a mistype. The process you’re showing is alpha + B10 → C12 + deuteron. That doesn’t sound wrong to me – you get a temporary Z=6 A=14 nuclear state, which then fragments.

Cool! Geant4 includes the Hoyle resonance: d + B10 → C12* → 3 alpha

Without it (run the last arrow backwards), you and I wouldn’t exist.

Very interesting! Thank you for taking the time to help, this has certainly been a learning experience :slightly_smiling_face: one quick clarification though, should the B12 be B10?

Yes. I’ve edited the typo.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.