DNA physics in only one of multiple Regions


I have several G4Regions in a geometry and want to activate the DNA physics in one of them. As an example I use the microdosimetry example. Here I have added another volume and region:

G4Box* testSolid = new G4Box("Test",worldSizeX/2, worldSizeY/2,TargetSizeZ/2);
G4LogicalVolume* logicTest = new G4LogicalVolume(testSolid, fpWaterMaterial,"Test");
new G4PVPlacement(0, G4ThreeVector(0,0,TargetSizeZ*2), "Test", logicTest, physiWorld, false, 0);

testRegion = new G4Region("Test");

If I now run the example, I would expect the DNA processes to be active in the target region, but the standard processes to be active in the test region, since the DNA models were only assigned to the target region. However, I only observe the DNA processes in the test region and no standard process. The same happens when I use the G4EmDNAPhysicsActivator instead of the PhysicsList of the example.

G4VModularPhysicsList* physicsList = new G4VModularPhysicsList();
physicsList->RegisterPhysics( new G4EmLivermorePhysics() );
physicsList->RegisterPhysics(new G4EmDNAPhysicsActivator());
G4EmParameters* param = G4EmParameters::Instance();
param->AddDNA("Target", "DNA_Opt4");

What is the reason for this? How can the DNA models be deactivated in the test region?

Geant4 Version: 10.07

Background: I am actually simulating protons in a water phantom with a gold nanoparticle, using the DNA models for water in water and the DNA models for gold in gold for electrons and the Livermore processes for protons. The above example is just to demonstrate the problem.

1 Like

I am also struggling with a similar problem. Any solution?

Dear All, please could you refer to the next public release? The activation of different EM physics lists in different regions has been improved significantly.

Hi, thanks for the suggestion. I have tried with Geant4 11.0 and unfortunately it is exactly the same problem.

Thanks for report. We are working on this issue. For Geant4-DNA examples, we have also provided another example AuNP for nanoparticle applications. Can it can help some ?

Unfortunately no. They use DNA models for water in the default world region and for gold in the NP region. What we want to have is a region with DNA water processes, a region with DNA gold processes and standard Livermore processes in the default world region. And it seems like Geant4 can not assign the different processes to the two different regions.


I am having that issue, with the difference that I am composing my PhysicsList by adding the single Processes (as opposed to using a G4VModularPhysicsList()-instance, as many dna-examples do).

Essentially I define a “default” electron physics, then deactivate it below a certain energy threshold for two different regions and then activate two different sets of DNA physics (standard option7-like ones for one region, Sakata processes for the other).

I have updated to Geant4-v11.1.1 and the problem persists: While the option7-like processes are not active within gold, as desired, the Sakata-processes (as well as the option7-like ones) are active everywhere (including in water!).
This is strange for another reason: The Sakata-process-source code contains hard-coded conditions to return zero-cross-sections for materials other than Gold and yet the processes take place.

Now I fully acknowledge the possibility that the root cause is a faulty implementation on my part, I suspect that this problem is the same that @MSchwarz has described.

@guatelli: You mentioned improvements in the next public release (v11.1.0, I assume), do you know if these changes only affect PhysicsLists that are implemented as a G4VModularPhysicsList()?

I’ve read this versions release notes and found a point on the new G4EmDNABuilder-class, do I understand correctly that this would enable me to use a modular PhysicsList that contains “standard physics” such as “G4EmDNAPhysics_option7” as well as physics that I implement with single processes? Is there any documentation on this feature or an implementation available?

Thanks for reading!

Hi, I meant in Geant4 11.1. The improvement concerned the “passage” from condensed history approach physics models to track structure physics models with respect to the kinetic energy of electrons, in liquid water only.

Thank you for your swift reply @guatelli! In that case my issue may not really belong here and I might dedicate a separate post to that.

I consulted with Hoang Tran and Dousatsu Sakata. It seems that currently the only way is to create your own physics list as done in the extended example AuNP. it is not possible at this stage to use Geant4 DNA physics constructors to build the physics for a water medium with embedded Au NPs.

Thanks for asking, I’ve implemented my physics essentially in the way AuNP did; just thought that using constructors might fix the issue of superfluous processes present.

My issue is probably separate, and I will dedicate a separate post to document it - thanks!


this case is complicate - after 11.1.1 there are extra fixes within Geant4, which are not yet public. Likely we need to update an existing example or add a new one where such configuration will be exercised.