Message: Anti-proton Annihilation in 9.4.6 ? Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Anti-proton Annihilation in 9.4.6 ? 

Forum: Physics List
Date: 07 Nov, 2013
From: Gerd J Kunde <Gerd J Kunde>

I am trying to simulate the interaction of 200 km/s anti-protons in Water, looking at the header files, there appear to be three possibilities:

#include "G4AntiProtonAnnihilationAtRest.hh" 
#include "G4QCaptureAtRest.hh" 
#include "G4AntiProtonAbsorptionFritiof.hh" 

In an attempt to compare the approaches, I went to novice example N02, changed air to H20, the particle to anti_proton and then edited the PhysicsList to say:

#include "G4AntiProtonAnnihilationAtRest.hh"

   else if( particleName == "anti_proton") {                   
      //anti_proton
      ph->RegisterProcess(new G4AntiProtonAnnihilationAtRest, particle);   
      ph->RegisterProcess(new G4hMultipleScattering, particle);
      ph->RegisterProcess(new G4hIonisation,         particle);
      ph->RegisterProcess(new G4hBremsstrahlung,     particle);
      ph->RegisterProcess(new G4hPairProduction,     particle);
     }

I manage to run the example.

When I try to switch to the CHIP code by adding:

    else if( particleName == "anti_proton") {                   //gjk
      //anti_proton
      ph->RegisterProcess(new G4QCaptureAtRest, particle);    //gjk
      ph->RegisterProcess(new G4hMultipleScattering, particle);
      ph->RegisterProcess(new G4hIonisation,         particle);
      ph->RegisterProcess(new G4hBremsstrahlung,     particle);
      ph->RegisterProcess(new G4hPairProduction,     particle);
     }

I get the error that the anti_proton has an illegal Process:

WARNING: G4QCaptureAtRest is deprecated and will be removed in GEANT4 version 10.0. G4PhysicsListHelper::RegisterProcess :CHIPSNuclearCaptureAtRest for anti_proton has illegal Process Type = 4 SubType = -1

-------- EEEE ------- G4Exception-START -------- EEEE -------
*** G4Exception : Run0108
      issued by : G4PhysicsListHelper::RegisterPorcess
No Matching process Type/SubType
*** Fatal Exception *** core dump ***
-------- EEEE -------- G4Exception-END --------- EEEE -------

Then I read the presentation:

http://geant4hadronics.wikispaces.com/file/view/ribon_26Oct2011_pbarFTFcaptureAtRest.pdf/268412340/ribon_26Oct2011_pbarFTFcaptureAtRest.pdf

but it appears that this was only available in 9.4.5 but removed later according to the release note:

Removed class G4FTFCaptureAtRest and replaced with the new classes G4HadronicAbsorptionFritiof, G4AntiProtonAbsorptionFritiof and G4AntiSigmaPlusAbsorptionFritiof. Modified initialisation of de-excitation; fixed potential cases of double deletion of objects; added registration in G4HadronicProcessStore and added sub-type definition. Included annihilation of anti_sigma+.

The 9.4.6 release note says in addition:

 Also use Fritiof/Pre-compound model for anti-proton, anti-Sigma+ and light anti-nucleus capture at rest in the same physics lists. Only LHEP- and CHIPS-based physics lists are still using the (deprecated) CHIPS model for handling nuclear capture at rest.

So I am trying:

    else if( particleName == "anti_proton") {                   
      //anti_proton
      ph->RegisterProcess(new G4AntiProtonAbsorptionFritiof, particle);    
      ph->RegisterProcess(new G4hMultipleScattering, particle);
      ph->RegisterProcess(new G4hIonisation,         particle);
      ph->RegisterProcess(new G4hBremsstrahlung,     particle);
      ph->RegisterProcess(new G4hPairProduction,     particle);
     }

but I get:

G4PhysicsListHelper::RegisterProcess : No Process Manager for N(1440)+

-------- EEEE ------- G4Exception-START -------- EEEE -------
*** G4Exception : Riun0110
      issued by : G4PhysicsListHelper::RegisterProcess
No process manager
*** Fatal Exception *** core dump ***
-------- EEEE -------- G4Exception-END --------- EEEE -------

which may come from the end of the code in ExampleN02PhysicsList.c

} else if ((!particle->IsShortLived()) &&
               (particle->GetPDGCharge() != 0.0) &&
               (particle->GetParticleName() != "chargedgeantino")) {
      //all others charged particles except geantino
      ph->RegisterProcess(new G4hMultipleScattering, particle);
      ph->RegisterProcess(new G4hIonisation,         particle);
    }

so I remove the short lived and charged cuts, then it crashes with:

G4PhysicsListHelper::RegisterProcess : No Process Manager for anti_s_quark

-------- EEEE ------- G4Exception-START -------- EEEE -------
*** G4Exception : Riun0110
      issued by : G4PhysicsListHelper::RegisterProcess
No process manager
*** Fatal Exception *** core dump ***
-------- EEEE -------- G4Exception-END --------- EEEE -------

I am getting free quarks now ?

Any advice on how to properly set up a physics list to simulate 200 km/s anti_protons interacting in water with the products producing Cherenkov light would be appreciated !!!!

Thanks Gerd

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

1 None: Re: Anti-proton Annihilation in 9.4.6 ?   (Alberto Ribon - 13 Nov, 2013)
 Add Message Add Message
to: "Anti-proton Annihilation in 9.4.6 ?"

 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 ]