Message: Strange proton behavior Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Strange proton behavior  

Forum: Electromagnetic Processes
Date: Jun 03, 01:34
From: chen <chen>

dear all,
  In my simulation,I want to calculate the deposited energy in semiconductor by 100 MeV Proton.my simulation result is very strange.G4MultipleScattering never happened and sometime,proton lost 0.1MeV energy in one step.the step length is 0.5um.anyone can help me ?
physicslist:
  void ShieldPhysicsList::ConstructEM()
{
  theParticleIterator->reset();
  while( (*theParticleIterator)() ){
    G4ParticleDefinition* particle = theParticleIterator->value();
    G4ProcessManager* pmanager = particle->GetProcessManager();
    G4String particleName = particle->GetParticleName();

    if (particleName == "gamma") {
      // gamma         
       pmanager->AddDiscreteProcess(new G4LowEnergyPhotoElectric);
      pmanager->AddDiscreteProcess(new G4LowEnergyCompton);
      pmanager->AddDiscreteProcess(new G4LowEnergyGammaConversion);
      pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh);

    } else if (particleName == "e-") {
      //electron
   pmanager->AddProcess(new G4LowEnergyIonisation,     -1, 1, 1);
      pmanager->AddProcess(new G4LowEnergyBremsstrahlung, -1,-1, 2);    

    } else if (particleName == "e+") {
      //positron
      pmanager->AddProcess(new G4eIonisation,        -1, 1, 1);
      pmanager->AddProcess(new G4eBremsstrahlung,    -1, 2, 2);
      pmanager->AddProcess(new G4eplusAnnihilation,   0,-1, 3);

    } else if( particleName == "mu+" || 
               particleName == "mu-"    ) {
      //muon  
          pmanager->AddProcess(new G4MuIonisation,       -1, 1, 1);
      pmanager->AddProcess(new G4MuBremsstrahlung,   -1, 2, 2);
      pmanager->AddProcess(new G4MuPairProduction,   -1, 3, 3);     

    }   else if (particleName == "He3" ) {

        pmanager->AddProcess(new G4MultipleScattering,-1, 1,1);
	 G4hLowEnergyIonisation*ion= new G4hLowEnergyIonisation;
      ion->SetNuclearStoppingOn();
	  ion->SetStepFunction(0.01,1e-9*m);
      pmanager->AddProcess(ion,-1, 2,2);  

	} else if (particleName == "alpha"||particleName =="GenericIon" ) {

  pmanager->AddProcess(new G4MultipleScattering,-1, 1,1);

 G4hLowEnergyIonisation* ahadronLowEIon = new G4hLowEnergyIonisation;
 ahadronLowEIon->SetNuclearStoppingOn();
 ahadronLowEIon->SetStepFunction(0.01,1e-9*m);
    pmanager->AddProcess(ahadronLowEIon, -1, 2, 2 );

	}else if ((!particle->IsShortLived()) &&
	       (particle->GetPDGCharge() != 0.0) && 
	       (particle->GetParticleName() != "chargedgeantino")) {
      //all others charged particles except geantino
      pmanager->AddProcess(new G4MultipleScattering,-1, 1,1);
      G4hLowEnergyIonisation* ahadronLowEIon = new G4hLowEnergyIonisation;
    pmanager->AddProcess(ahadronLowEIon, -1, 2, 2 );
    }
  }
}

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

1 None: Re: Strange proton behavior   (michel maire - Jun 03, 04:43)
1 Question: Re: Strange proton behavior   (chen - Jun 03, 05:10)
(_ Idea: Re: Strange proton behavior   (Vladimir Ivanchenko - Jun 03, 10:12)
2 None: Re: Strange proton behavior   (Sebastien INCERTI - Jun 04, 00:16)
1 Ok: Re: Strange proton behavior   (chen - Jun 04, 19:37)
 Add Message Add Message
to: "Strange proton behavior "

 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 ]