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 // GEANT 4 class implementation file 28 // 29 // History: 30 // December 2016, K.L.Genser - first impl 31 // based on G4GenericIon 32 // ------------------------------------------- 33 34 #include "G4GenericMuonicAtom.hh" 35 36 #include "G4ParticleTable.hh" 37 #include "G4String.hh" 38 #include "G4SystemOfUnits.hh" 39 40 G4GenericMuonicAtom* G4GenericMuonicAtom::theI 41 42 G4GenericMuonicAtom* G4GenericMuonicAtom::Defi 43 { 44 if (theInstance != nullptr) return theInstan 45 const G4String name = "GenericMuonicAtom"; 46 // search in particle table] 47 G4ParticleTable* pTable = G4ParticleTable::G 48 auto anInstance = static_cast<G4MuonicAtom*> 49 if (anInstance == nullptr) { 50 // create particle 51 // 52 // Arguments for constructor are as fol 53 // name mass 54 // 2*spin parity C- 55 // 2*Isospin 2*Isospin3 56 // type lepton number ba 57 // stable lifetime 58 // shortlived subType 59 // excitation 60 //!!!! 61 //!!!! this particle should not be used fo 62 //!!!! all properties except the name and 63 //!!!! 64 // clang-format off 65 anInstance = new G4MuonicAtom( 66 name, 0.9382723*GeV, 67 1, +1, 68 1, +1, 69 "MuonicAtom", 0, + 70 true, -1.0, nullptr, 71 false, "generic", 72 0.0 73 ); 74 // clang-format on 75 } 76 77 theInstance = static_cast<G4GenericMuonicAto 78 // static const int tmpVerbosityFlag = 2; 79 // if ( tmpVerbosityFlag > 1 ) { 80 // G4cout << __func__ 81 // << " theInstance " 82 // << theInstance 83 // << G4endl; 84 // if (theInstance!=nullptr) { 85 // G4cout << __func__ << G4endl; 86 // theInstance->DumpTable(); 87 // } 88 // } 89 pTable->SetGenericMuonicAtom(theInstance); 90 return theInstance; 91 } 92 93 // do not inline to avoid undefined reference 94 G4GenericMuonicAtom* G4GenericMuonicAtom::Gene 95 { 96 return Definition(); 97 } 98 99 G4GenericMuonicAtom* G4GenericMuonicAtom::Gene 100 { 101 return Definition(); 102 } 103