Deuterium fusion to create neutrons in Geant4

I’m trying to simulate the Deuterium - Deuterium interaction D(D,n)3He to create a neutron source using the Geant4 code.

However, from 100k events, where deuterons were fired on a deuterium target, not a single neutron was produced. Could this have something to do with the definition of the deuterium material?

My definition of the deuterium material is

    G4Isotope* D  = new G4Isotope("Deuteron", 1, 2, 2.0141018* CLHEP::g / CLHEP::mole);
    G4Element* elD = new G4Element("Deuterium","elD", 1);
    elD->AddIsotope(D, 1);
    G4Material* matD = new G4Material("matD", 0.00018* CLHEP::g / CLHEP::cm3, 1);
    matD->AddElement(elD, 1);

Is this the correct way to define the deuterium?

From earlier tests with deuterons on lithium I tested the deuteron particle beam and it does produce neutrons by means of the 7Li(D,n)8Be reaction, so I think the beam part of the simulation is working correctly.

Thanks in advance,



it seems that your description of Deuteron is correct. You need to check value of cross section. For that you may take


add your extra material and check cross sections.