| Message: Re: Spin tracking of muons at rest | Not Logged In (login) |
|
Thanks Kevin, for both of your two insightful postings.
1) yes 2) The G4Decay class itself (G4DecayWithSpin inherits from G4Decay) does not define decay modes of the particle. Geant4 provides two ways of doing this: using G4DecayChannel in G4DecayTable, and using thePreAssignedDecayProducts of G4DynamicParticle. The G4Decay class calculates the PhysicalInteractionLength and boosts decay products created by G4VDecayChannel or event generators. 3) Yes, G4DecayWithSpin retrieves or sets a particles polarization and evolves it through the remainder of a particle's lifetime. (this is crucial to your ultimate question). 4) yes > But if I attach G4DecayWithSpin to idxPostStep, do I simultaneously get BOTH > G4Mag_EqRhs BMT evolution, AND the G4DecayWithSpin evolution? The method G4DecayWithSpin::Spin_Precession takes the argument fRemainderLifeTime. For decays in flight, this will be zero, and consequently, the calculated remaining spin precession angle will also be zero. > Should I attach G4Decay to idxPostStep instead of G4DecayWithSpin? This will not work because only G4DecayWithSpin has the code: parent_polarization = aParticle->GetPolarization(); decaychannel->SetPolarization(parent_polarization); necessary to set the spin direction in the DecayChannelWithSpins. > can you point out how the code in the distribution ensures > the G4DecayWithSpin terms don't come in to play for moving muons? (see above) rotationangle = fRemainderLifeTime * omega = 0. * omega You can verify that fRemainderLifeTime has already been updated (reduced to zero) by the time the G4DecayWithSpin::DecayIt is called for a decay in flight. Peter
|
| Inline Depth: | Outline Depth: | Add message: |
|
to: |