Problem 268 - Problem with energy conservation in the HP capture model
Summary: Problem with energy conservation in the HP capture model
Status: CLOSED INVALID
Alias: None
Product: Geant4
Classification: Unclassified
Component: processes/hadronic/models (show other problems)
Version: 3.0
Hardware: PC Linux
: P2 normal
Assignee: Hans-Peter.Wellisch
URL:
Depends on:
Blocks:
 
Reported: 2001-06-20 10:19 CEST by alex
Modified: 2001-06-28 12:14 CEST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description alex 2001-06-20 10:19:19 CEST
Hi,

 I've created a simple example that tried to replicate the results shown in
the "Physics Reference Manual" for the HP Capture Process using 15MeV neutrons
and U-238.
 If I plot only the individual energies of each one of the gammas, the results
are in perfect accordance with the ones of the manual. But then I tried to sum
up the energies for all the gammas that come out in each event, and in the
result I have events that have up to 40MeV of energy released in gammas and
others with practicly no energy at all! If I have 15MeV neutrons being captured
and U-239 has a binding energy of ~4.9MeV, shouldn't the sum of the energy be
arround 19.9MeV?
 Following is a copy os part of my Physics List:

  theParticleIterator->reset();
  while ( (*theParticleIterator)() ){
    G4ParticleDefinition* particle = theParticleIterator->value();
    G4ProcessManager* pmanager = particle->GetProcessManager();
    pmanager->SetVerboseLevel(2);
    G4String particleName = particle->GetParticleName();

    if (particleName == "neutron"){
      // neutron
      // construct processes for neutron
      theNeutronCapture = new G4HadronCaptureProcess("hp_capture");

      //register HP model for neutrons
      G4NeutronHPCapture* theHPCaptureModel = new G4NeutronHPCapture;
        theHPCaptureModel->SetMaxEnergy(20*MeV);
        theNeutronCapture->RegisterMe(theHPCaptureModel);

      // add processes
      pmanager->AddDiscreteProcess(theNeutronCapture);

    } //if (particleName == "neutron")
  } //while ( (*theParticleIterator)() )


 Thank you for your time. Best regards

 Alexandre Lindote
Comment 1 Hans-Peter.Wellisch 2001-06-26 14:00:59 CEST
Dear Alexandre,

  for some materials, energy conservation is only on avarage.
This in particular the case for those materials, where for capture gammas
no data on corellations are available. Here a decision was to be made.
We can either have the spectra and mean multiplicities correct, or
we can bias the spectra in an attempt of conserving the energy event
by event.

Most applications of this code at present are of dosimatric nature. They
care very much about the correct energy spectra and mean multiplicities
and not so much about particle corellations within individual events.
Hence the current implementation.

Many greetings,

Hans-Peter.