Message: Problems with Beta Decay of Sr-90 Source Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Problems with Beta Decay of Sr-90 Source 

Keywords: Problems with Beta Decay of Sr-90 Source
Forum: Hadronic Processes
Date: 03 Aug, 2006
From: <>

Dear Geant4 experts,

I have encountered a problem with RadioactiveDecay similar to post# 447 in hadronic processes. I'm trying to decay a Sr-90 source and look at the effects of beta particles with their specific energy spectrum on a fiber beam monitor. I have the source defined in a macro using gps:

 /gps/particle ion
 /gps/ion 38 90
 /gps/ene/type Mono
 /gps/ene/mono 0.0 MeV
 /gps/pos/centre 0. 0. 0. cm
 /gps/direction 0. 0. 1.
 /tracking/verbose 2
 /run/beamOn 1

I also have the ion decay specifications in my physicsList:

 // Add Decay Process
 G4Decay* fDecayProcess = new G4Decay();
  while( (*theParticleIterator)() )
  G4ParticleDefinition* particle = theParticleIterator->value();
  G4ProcessManager*     pmanager = particle->GetProcessManager();
  if (fDecayProcess->IsApplicable(*particle)) 
    G4cout <<"decay happened" << G4endl;
   pmanager ->AddProcess(fDecayProcess);

   // set ordering for PostStepDoIt and AtRestDoIt
   pmanager ->SetProcessOrdering(fDecayProcess, idxPostStep);
   pmanager ->SetProcessOrdering(fDecayProcess, idxAtRest);
   pmanager ->AddProcess(&fUnknownDecay);
   pmanager ->SetProcessOrdering(&fUnknownDecay, idxPostStep);

// Declare radioactive decay to the GenericIon in the IonTable.
    const G4IonTable *theIonTable = G4ParticleTable::GetParticleTable()->GetIonTable();
   G4RadioactiveDecay*  theRadioactiveDecay = new G4RadioactiveDecay();
  for (G4int i=0; i<theIonTable->Entries(); i++)
      G4ParticleDefinition* ionparticle = theIonTable->GetParticle(i);         // added
      G4String particleName = theIonTable->GetParticle(i)->GetParticleName();
            if (particleName == "GenericIon")
	   //   G4ProcessManager* pmanager = theIonTable->GetParticle(i)->GetProcessManager(); //commented
	   G4ProcessManager* pmanager = ionparticle->GetProcessManager();      // added
          ionparticle->SetAtomicNumber(1);      //added
	  ionparticle->SetAtomicMass(1);        //added
          pmanager ->AddProcess(theRadioactiveDecay);
          pmanager ->SetProcessOrdering(theRadioactiveDecay, idxPostStep);
          pmanager ->SetProcessOrdering(theRadioactiveDecay, idxAtRest);

and also the following lines as I was suggested, in the section where all the other ionic processes are defined:

G4GenericIon* ion = G4GenericIon::GenericIon(); G4RadioactiveDecay* theRadioactiveDecay = new G4RadioactiveDecay(); ion->GetProcessManager()->AddProcess(theRadioactiveDecay, 0, -1, 3);

I didn't use to see any process name in my verbose output untill I fixed the bug mentioned in thread 447 (for Geant4.8.0.p01 users). Now I see the process name in the output but no numbers (same for all events):

Event number: 0

* G4Track Information:   Particle = Sr90[0.0],   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         0        0        0         0       HallB initStep
    1        0        0        0         0        0        0         0       HallB RadioactiveDecay

 It looks like Sr90 is being tracked instead of the decay products and because 
it's at rest (source), everything becomes zero!! 
 Could someone please help me to figure out a way to solve this. 

  Thanks a lot in advance,
  Best regards,


Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Ok: Re: Problems with Beta Decay of Sr-90 Source   ( - 04 Aug, 2006)
 Add Message Add Message
to: "Problems with Beta Decay of Sr-90 Source"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews

[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]