Making Heavy Nuclei

I’m looking to create Am-241 source.
The 2 issues I’m getting are:

  • I’m getting No detection of neutrons and lower than expected gamma energy deposits.
  • Getting an error issued by G4SeltzerBergerModel:SampleScattering. Not sure if this a symptom of my issue. An example of this error is
    ### G4SeltzerBergerModel Warning: Majoranta exceeded! 2.01355 > 1.88077 by 1.0706 Niter= 0 Egamma(MeV)= 0.240368 Ee(MeV)= 0.353835 Z= 95 e-

Some additional info:

  • I’ve tried Physics list is ‘QGSP_INCLXX_HP’ and ‘QGSP_BIC_HP’
  • The detector is an NaI detector built somewhat realistic.
  • The AmBe source is am-241 spawing inside of an AmBe material volume. The size is realistic.
  • Ive also tried a PE moderator but still no detected neutrons.

Does the code below a correct approach to creating Am-241?


void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent)
{
G4int Z = 95, A=241;
	G4double ionCharge = 0.*eplus;
	G4double exciteE = 0.*keV;
	G4double primGenHeight = 10*cm;

	//G4ParticleDefinition* particle = G4ParticleTable::GetParticleTable()->FindParticle("alpha");
	G4ParticleDefinition* Am241 = G4IonTable::GetIonTable()->GetIon(Z,A,exciteE);
	fParticleGun->SetParticleDefinition(Am241);
	fParticleGun->SetParticleCharge(ionCharge);

	fParticleGun->SetParticlePosition(G4ThreeVector(0.*cm,primGenHeight,0.*cm));
	fParticleGun->SetParticleEnergy(.0*eV);

	G4double xDir = G4UniformRand();
	G4double yDir = G4UniformRand();
	G4double zDir = G4UniformRand();
	G4ThreeVector particleDir = {xDir,yDir,zDir};
	fParticleGun->SetParticleMomentumDirection(particleDir);
	fParticleGun->GeneratePrimaryVertex(anEvent);
}

I can provide more info if needed.
Any help would be appreciated.

MJ

Here, a printout of example NeutronSource for the macro run1.mac

run1.mac.txt (508 Bytes)
james.out.txt (8.0 KB)

Hello,

How do you detect the neutrons?
I’ve modeled an AmBe-Source too some time ago and it works (also still in the benchmarking process) using the approach you are using…

How many Am241 are you simulating? The conversion rate of Am241 to neutrons is around 1e-5, so you need to simulate about 100000 Am241 the get one neutron.

Regards

we can slightly increase neutron production with a refinement of one of the electromagnetic parameters:
run1.mac.txt (631 Bytes)

Sorry for leaving this so long, I’ve been testing my code looking for the issues to find the issue and report back here.

I believe I am spawning in the Am241 correctly, However I found the neutrons to about 1 in1000. I ran a sim where 100000 neutrons were created but zero counted. On the other hand, the gammas were counted but the energies are far to low. Not sure where I am going wrong here since I’ve done this before.

I’m counting all energy deposit in a NaI detector every event. I’m also looking at the energy deposit of the neutrons and gammas to see what’s happening there as well. And also the kinetic energy of particles leaving the world. The code is below and is from Stepping.

So far what I have found is that no neutrons are entering the detectors (Not sure why even though ~100000 neutrons are created)
and
The deposits per event of gammas are small (in the 100’s of eV) compared to their kinetic energy which are in the 100 KeV and MeV.

I’m starting to think it’s the NaI detector I built.
The way I have it set up is that each component (NaI crystal, housing, PMT, ect) of the NaI detector is the daughter of NaIDetector, which itself is a daughter of the logicWorld.
Is this correct or does a boolean subtraction need to take place?

This is the result I get for all energy deposited per event in the NaI detector. Does this look correct?

I also create Am-241 source ,I think your physics list is incomplete。
I think this video will help you.
https://www.bilibili.com/video/BV1Wf4y1U7Ma/?spm_id_from=333.337.search-card.all.click&vd_source=37c4d37c4b1ca66e1da081bda101b2d0

Thanks for the response, but I’ve don’t some tests and this is not the issue.

I’m still looking into this and appreciate any ideas. I’ll report back if I work this out.

MJ