GSI Helmholtzzentrum für Schwerionenforschung
Dear all, let's assume that we have an electron moving inside our detector in our geant simulation. It emits a bremmstrahlung electron. In this case, I am wondering what is happening in geant about the particle indexes. Option 1) It is like a decay, then we have the electron before bremsstrahlung as mother particle, the photon and the electron after bremsstrahlung as daughter particles -> in total 3 objects in our MCTrack Option 2) The electron is always the same track, it emits a bremsstrahlung photon and lose energy. Then we have a primary electron, one daughter photon with mother id of the incoming electron -> 2 mc tracks Option 3) The electron loses energy via bremmstrahlung and the photon is not produced -> 1 mc track Does somebody have an idea on what will happen in Geant, thus in our MCTrack TClonesArray? Is there a way to see if an electron has lost energy via bremsstrahlung or not?
Hi Stephano, you have to ask for the process Id . Each process in Geant4 or 3 is characterised by a number. In the TVirtualMC , TMCProcess ProdProcess(Int_t isec) const Int_t StepProcesses(TArrayI& proc) const regards ALicia.
The question is "what is geant3/4 exactly doing in case of bremsstrahlung"?
For each process, In geant4 the mother particle has a trackId = -1 the secondaries are numerated as they are created, if you have created three secondaries the y get the track id's 0, 1, 2 In geant3, is the same , the only difference is that the mother particle is numerated with a trackId = 0 instead of -1. If you want to really see what is going on, case geant4 : go to the gconfig directory and then edit the line 35 at g4Config.in, by removing the # symbol so /tracking/verbose 1, in this way you will switch on the verbosity of the tracking. Try a few events, i hope it can help you. regards, Alicia.
The point is that in our MCTrack we have no process id, this means that you will never know the process which has produced that secondary. For this reason my question cannot be answered simply looking at data, I think, without playing with physics lists (I would avoid it). Maybe we could think about adding in MCTrack a data member for the process id, in general. Then, the question is still unsolved
Hi Stefano, are you sure that the process is implemented at all in Geant? I know that in Fluka, at least for normal tracking in the magnetic field, it is not. Cheers Olaf. PS: ... question still not solved, but new question added
Olaf Hartmann wrote on Wed, 06 October 2010 15:39 PS: ... question still not solved, but new question added You are a friend...
To be more precise, this statement is only true for the synchrotron radiation part. Olaf Hartmann wrote on Wed, 06 October 2010 15:39 I know that in Fluka, at least for normal tracking in the magnetic field, it is not.
So coming back to the issue of the Bremsstrahlung processes by electrons. If i have well understood, in geant4/3 electrons are treated as mother particle(primary or secondary) losing energy according with the Bremsstrahlung process and emitting photons. So the electron in MCtrack should remain as mother particle and the photons are treated as secondaries. To check that, use the following for example the pdgcode of the mother and daughter particles in geant4 From your MC information PndEmcPoint * pop; PndMCTrack* moc=(PndMCTrack*)fMcTr->At(pop->GetTrackID()); if(moc==0)continue; MotherId= moc->GetMotherID(); if (MotherId==-1)Motherpdg = moc->GetPdgCode(); // case electron as primary mother else { PndMCTrack *mother =(PndMCTrack*)fMcTr->At(MotherId); // case electron as secondary mother Motherpdg = mother->GetPdgCode(); } See : http://geant4.cern.ch/G4UsersDocuments/UsersGuides/PhysicsReferenceManua l/html/node42.html#SECTION04422000000000000000