| Message: Re: nuclear resonance | Not Logged In (login) |
|
Thanks for your answer,
Unfortunately this is not that what I thought. I was looking for a way to simulate 11B(g,g')11B reactions,where I can detect the secondary gammas,which came from the excited states, but I don't get them, in my Detector. Maybe i have to enable them somehow, but I do not know where. This is my PhysicsList; perhaps someone could tell me where I made a misstake. R.M.
void nrfPhysicsList::ConstructEM()
{
theParticleIterator->reset();
while( (*theParticleIterator)() ){
G4ParticleDefinition* particle = theParticleIterator->value();
G4ProcessManager* pmanager = particle->GetProcessManager();
G4String particleName = particle->GetParticleName();
if (particleName == "gamma") {
// gamma
G4LowEnergyPhotoElectric* Photo = new G4LowEnergyPhotoElectric();
Photo->ActivateAuger(true);
Photo->SetCutForLowEnSecPhotons(0.25 * keV);
Photo->SetCutForLowEnSecElectrons(0.25 * keV);
pmanager->AddDiscreteProcess(Photo);
G4GammaNuclearReaction* gammaNuclear = new G4GammaNuclearReaction();
G4PhotoNuclearProcess* photoNuclearProcess = new G4PhotoNuclearProcess();
photoNuclearProcess->RegisterMe(gammaNuclear);
pmanager->AddDiscreteProcess(photoNuclearProcess);
pmanager->AddDiscreteProcess(new G4LowEnergyCompton);
pmanager->AddDiscreteProcess(new G4LowEnergyGammaConversion);
pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh);
pmanager->AddDiscreteProcess(new G4LowEnergyPolarizedCompton);
} else if (particleName == "e-") {
//electron
G4LowEnergyIonisation* Ioprocess = new G4LowEnergyIonisation("IONI");
Ioprocess->ActivateAuger(true);
Ioprocess->ActivateFluorescence(true);
Ioprocess->SetCutForLowEnSecPhotons(0.25*keV);
Ioprocess->SetCutForLowEnSecElectrons(0.25*keV);
pmanager->AddProcess(Ioprocess, -1, 2, 2);
pmanager->AddProcess(new G4MultipleScattering, -1, 1, 1);
pmanager->AddProcess(new G4LowEnergyBremsstrahlung, -1, -1, 3);
} else if (particleName == "e+") {
//positron
pmanager->AddProcess(new G4MultipleScattering, -1, 1, 1);
pmanager->AddProcess(new G4eIonisation, -1, 2, 2);
pmanager->AddProcess(new G4eBremsstrahlung, -1,-1, 3);
pmanager->AddProcess(new G4eplusAnnihilation, 0,-1, 4);
} else if( particleName == "proton") {
//proton
pmanager->AddProcess(new G4hMultipleScattering, -1, 1, 1);
pmanager->AddProcess(new G4hIonisation, -1, 2, 2);
pmanager->AddProcess(new G4hBremsstrahlung, -1, 3, 3);
pmanager->AddProcess(new G4hPairProduction, -1, 4, 4);
} else if(particleName == "GenericIon" ) {
pmanager->AddProcess(new G4hMultipleScattering,-1, 1, 1);
pmanager->AddProcess(new G4ionIonisation, -1, 2, 2);
} else if ( particleName == "alpha" ) {
pmanager->AddProcess(new G4MultipleScattering,-1,1,1);
G4hLowEnergyIonisation* iIon = new G4hLowEnergyIonisation() ;
pmanager->AddProcess(iIon,-1,2,2);
} else if (particle->GetPDGCharge() != 0.0) {
//all others charged particles
pmanager->AddProcess(new G4hMultipleScattering,-1, 1, 1);
pmanager->AddProcess(new G4hIonisation, -1, 2, 2);
}
}
|
| Inline Depth: | Outline Depth: | Add message: |
|
to: |