Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 // 27 //-------------------------------------------- 28 // 29 // GEANT4 Class header file 30 // 31 // File name: G4MuonMinusBoundDecay 32 // 33 // Author: V.Ivanchenko (Vladimir.Ivant 34 // 35 // Creation date: 24 April 2012 on base of G4M 36 // 37 // Class Description: 38 // 39 // Sample probabilities of mu- nuclear capture 40 // In ApplyYourself method time of projectile 41 // into account delay of decay or capture. 42 // primary state become stopAndKill, if not 43 // 44 // Based of reviews: 45 // N.C.Mukhopadhyay Phy. Rep. 30 (1977) 1. 46 // B.B.Balashov, G.Ya.Korenman, P.A.Eramgan, 47 // 48 //-------------------------------------------- 49 // 50 // Modifications: 51 // 23/04/2013 K.Genser Made GetMuonCaptur 52 // GetMuonDecayRate p 53 // 04/30/2013 K.Genser Added GetMuonZeff 54 // 55 // 10/08/2018 K.Genser Added nother GetMu 56 // 57 //-------------------------------------------- 58 59 #ifndef G4MuonMinusBoundDecay_h 60 #define G4MuonMinusBoundDecay_h 1 61 62 #include "globals.hh" 63 #include "G4Nucleus.hh" 64 #include "G4Track.hh" 65 #include "G4HadProjectile.hh" 66 #include "G4HadSecondary.hh" 67 #include "G4HadFinalState.hh" 68 #include "G4HadronicInteraction.hh" 69 #include "G4DynamicParticle.hh" 70 71 class G4MuonMinusBoundDecay : public G4Hadroni 72 { 73 public: 74 75 G4MuonMinusBoundDecay(); 76 77 ~G4MuonMinusBoundDecay(); 78 79 G4HadFinalState* ApplyYourself(const G4HadPr 80 G4Nucleus & targetNucleus ); 81 82 void ModelDescription(std::ostream& outFile) 83 84 static G4double GetMuonCaptureRate(G4int Z, 85 86 static G4double GetMuonDecayRate(G4int Z, G4 87 G4double mu 88 G4double nu 89 90 static G4double GetMuonDecayRate(G4int Z); / 91 92 static G4double GetMuonZeff(G4int Z); 93 94 private: 95 96 inline void AddNewParticle(G4DynamicParticle 97 98 // hide assignment operator as private 99 G4MuonMinusBoundDecay& operator=(const G4Muo 100 G4MuonMinusBoundDecay(const G4MuonMinusBound 101 102 G4HadFinalState result; 103 G4double fMuMass; 104 105 }; 106 107 //....oooOO0OOooo........oooOO0OOooo........oo 108 109 inline void 110 G4MuonMinusBoundDecay::AddNewParticle(G4Dynami 111 { 112 G4HadSecondary hs(dp); 113 hs.SetTime(time); 114 result.AddSecondary(hs); 115 } 116 117 #endif 118 119 120