Message: Unexpected Ionization processes in G4_Water Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Unexpected Ionization processes in G4_Water 

Forum: DNA/Very Low Energy
Date: Nov 26, 01:15
From: M. Hahn <M. Hahn>

Dear all,

I am currently testing a modified PhysicsList from the DNA Microdosimetry example. I want to extend the example to have two different Regions ("Water" and "NanoParticle") with two different materials (G4_Water and G4_Au) and two different physics processes (DNA-Water and Livermore). But I find unexpected behavior which I am not sure if its a misunderstanding from my side or some "real" error.

The geometries are a Box with a sphere substracted (G4SubtractionSolid) from the center (Region "Water" with G4_Water) and a sphere (Region "Nanoparticle" withG4_Au) located in the center which was substracted from it.

The general ionization process was defined by:

      G4eIonisation* eion = new G4eIonisation("eIoni");
      eionL->SetEmModel(new G4MollerBhabhaModel(), 1);
      ph->RegisterProcess(eion, particle);

with the modifications for the different regions:

  mod = new G4DummyModel();
  mod->SetActivationLowEnergyLimit(0.*eV);
  em_config->SetExtraEmModel("e-",
                             "eIoni",
                             mod,
                             "World",
                             0.0,
                             1*MeV,
                             new G4UniversalFluctuation());

  mod = new G4DummyModel();
  mod->SetActivationLowEnergyLimit(0.*eV);
  em_config->SetExtraEmModel("e-",
                             "eIoni",
                             mod,
                             "Water",
                             0.0,
                             1*MeV,
                             new G4UniversalFluctuation());

  mod = new G4MollerBhabhaModel();
  mod->SetActivationLowEnergyLimit(1.*MeV);
  em_config->SetExtraEmModel("e-",
                             "eIoni",
                             mod,
                             "Water",
                             1.0*MeV,
                             100*TeV,
                             new G4UniversalFluctuation());

  mod = new G4LivermoreIonisationModel();
  mod->SetActivationLowEnergyLimit(100.*eV);
  em_config->SetExtraEmModel("e-",
                             "eIoni",
                             mod,
                             "NanoParticle",
                             0.0,
                             1*MeV,
                             new G4UniversalFluctuation());

Giving as expected:

eIoni:   for  e-    SubType= 2
      dE/dx and range tables from 100 eV  to 100 TeV in 84 bins
      Lambda tables from threshold to 100 TeV, 7 bins per decade, spline: 1
      finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
          DummyModel :  Emin=        0 eV    Emax=        1 MeV
        MollerBhabha :  Emin=        1 MeV   Emax=      100 TeV
      ===== EM models for the G4Region  Water ======
          DummyModel :  Emin=        0 eV    Emax=        1 MeV
        MollerBhabha :  Emin=        1 MeV   Emax=      100 TeV
      ===== EM models for the G4Region  NanoParticle ======
       LowEnergyIoni :  Emin=      100 eV    Emax=        1 MeV   deltaVI

The DNA Ionisation process related methods were left untouched from the microdosimetry example:
      G4DNAIonisation* dnaioni = new G4DNAIonisation("e-_G4DNAIonisation");
      dnaioni->SetEmModel(new G4DummyModel(),1);
      pmanager->AddDiscreteProcess(dnaioni);

...

        mod = new G4DNABornIonisationModel();
        em_config->SetExtraEmModel("e-","e-_G4DNAIonisation",
                             mod,"Water",11.*eV,1.*MeV);

giving:

e-_G4DNAIonisation:   for  e-    SubType= 53  BuildTable= 0
      ===== EM models for the G4Region  DefaultRegionForTheWorld ======
          DummyModel :  Emin=        0 eV    Emax=      100 TeV
      ===== EM models for the G4Region  Water ======
DNABornIonisationModel :  Emin=        0 eV    Emax=        1 MeV   deltaBorn

To test behaviour I added the following code to the stepping action:

            G4String particle = step->GetTrack()->GetDynamicParticle()->GetDefinition()->GetParticleName();
            G4String region = step->GetPreStepPoint()->GetPhysicalVolume()->GetName();
            G4String process = step->GetPostStepPoint()->GetProcessDefinedStep()->GetProcessName();
            G4double energydep  =  step->GetTotalEnergyDeposit()/eV;
            std::cout<<region<<" "<<particle<<" "<<" "<<process<<" "<<energydep<<std::endl;

When I run the example with 15keV electrons as primary particles i get the following unexpectedoutput:

... NanoParticle e- eIoni 10.46 NanoParticle e- eIoni 1367.84 NanoParticle e- eIoni 2918.73 ... Water e- e-_G4DNAIonisation 13.39 Water e- eIoni 29.23 Water e- e-_G4DNAIonisation 21.5666 Water e- e-_G4DNAIonisation 10.79 ...

In my understanding there should be no processes of the type "eIoni" occur in "Water" which Was deactivated in this region and energy range. Therefor only e-_G4DNAIonisation should be observed. Is this correct?

This happens for Geant4-10.4.2 and Geant4.10.05.b01

Is this a misunderstanding from my side or a bug?

Thanks for any help. If you need further information, please let me know.

Best regards M. Hahn

 Add Message Add Message
to: "Unexpected Ionization processes in G4_Water"

 Subscribe Subscribe

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