Changeset 890 for trunk/source/particles/management/include
- Timestamp:
- Nov 25, 2008, 5:27:50 PM (16 years ago)
- Location:
- trunk/source/particles/management/include
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/particles/management/include/G4NucleiProperties.hh
r850 r890 25 25 // 26 26 // 27 // $Id: G4NucleiProperties.hh,v 1.1 4 2006/06/29 19:23:54 gunterExp $28 // GEANT4 tag $Name: HEAD$27 // $Id: G4NucleiProperties.hh,v 1.18 2008/10/28 07:12:31 kurasige Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 // … … 54 54 // (i.e. it has static member function only) 55 55 56 57 56 public: 58 57 … … 66 65 public: // With Description 67 66 68 // Calculate Mass Excess of nucleus A,Z69 static G4double GetMassExcess(const G4int A, const G4intZ);67 // Give mass of nucleus A,Z 68 static G4double GetNuclearMass(const G4double A, const G4double Z); 70 69 71 static G4double GetAtomicMass(const G4double A, const G4double Z); 72 73 static G4double GetBindingEnergy(const G4int A, const G4int Z); 74 75 static G4double GetNuclearMass(const G4double A, const G4double Z); 70 // return 'true' if the nucleus in the stable table 71 // (i.e.in G4NucleiPropertiesTable) 72 static bool IsInStableTable(const G4double A, const G4double Z); 73 74 // Give binding energy 75 static G4double GetBindingEnergy(const G4int A, const G4int Z); 76 static G4double GetBindingEnergy(const G4double A, const G4double Z); 77 78 // Calculate Mass Excess of nucleus A,Z 79 static G4double GetMassExcess(const G4int A, const G4int Z); 80 static G4double GetMassExcess(const G4double A, const G4double Z); 76 81 77 82 private: 83 // hidie methods to enforce using GetNuclearMass 84 // Give mass of Atom A,Z 85 static G4double GetAtomicMass(const G4double A, const G4double Z); 86 87 private: 88 89 static G4double AtomicMass(G4double A, G4double Z); 90 91 static G4double BindingEnergy(G4double A, G4double Z); 92 93 static G4double MassExcess(G4double A, G4double Z); 78 94 79 // Calculate Mass Excess according to Cameron's liquid drop formula 80 // static G4double CameronMassExcess(const G4int A, const G4int Z); 95 private: 96 // table of orbit electrons mass - binding energy 97 enum {MaxZ = 120}; 98 static G4double electronMass[MaxZ]; 81 99 82 static G4double AtomicMass(G4double A, G4double Z); 83 84 static G4double BindingEnergy(G4double A, G4double Z); 85 86 static G4double MassExcess(G4double A, G4double Z); 87 88 100 private: 101 static G4bool isIntialized; 102 static G4double mass_proton; 103 static G4double mass_neutron; 104 static G4double mass_deuteron; 105 static G4double mass_triton; 106 static G4double mass_alpha; 107 static G4double mass_He3; 108 89 109 }; 90 110 -
trunk/source/particles/management/include/G4NucleiPropertiesTable.hh
r850 r890 25 25 // 26 26 // 27 // $Id: G4NucleiPropertiesTable.hh,v 1.1 3 2006/06/29 19:23:56 gunterExp $28 // GEANT4 tag $Name: HEAD$27 // $Id: G4NucleiPropertiesTable.hh,v 1.14 2008/10/22 12:35:46 kurasige Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 // ------------------------------------------------------------------- … … 67 67 // Atomic Mass 68 68 69 class G4NucleiProperties; 69 70 70 71 class G4NucleiPropertiesTable … … 83 84 84 85 // Other Operations 85 public: // With Description 86 // all methods are private and can be used only by G4NucleiProperties 87 88 friend class G4NucleiProperties; 89 90 private: 86 91 87 92 // Operation: GetMassExcess -
trunk/source/particles/management/include/G4NucleiPropertiesTheoreticalTable.hh
r850 r890 25 25 // 26 26 // 27 // $Id: G4NucleiPropertiesTheoreticalTable.hh,v 1. 7 2006/06/29 19:23:58 gunterExp $28 // GEANT4 tag $Name: HEAD$27 // $Id: G4NucleiPropertiesTheoreticalTable.hh,v 1.8 2008/10/22 12:35:46 kurasige Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 // … … 46 46 #include "globals.hh" 47 47 48 class G4NucleiProperties; 49 48 50 class G4NucleiPropertiesTheoreticalTable 49 51 { … … 61 63 62 64 // Other Operations 65 // all methods are private and can be used only by G4NucleiProperties 66 friend class G4NucleiProperties; 63 67 64 public: // With Description 68 69 private: // With Description 65 70 // Operation: GetMassExcess 66 71 static G4double GetMassExcess(G4int Z, G4int A); -
trunk/source/particles/management/include/G4ParticleDefinition.hh
r850 r890 25 25 // 26 26 // 27 // $Id: G4ParticleDefinition.hh,v 1.3 2 2008/03/22 06:03:40 kurasige Exp $28 // GEANT4 tag $Name: HEAD$27 // $Id: G4ParticleDefinition.hh,v 1.33 2008/11/14 16:26:30 kurasige Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 // … … 129 129 130 130 G4double GetPDGMagneticMoment() const { return thePDGMagneticMoment; } 131 void SetPDGMagneticMoment(G4double mageticMoment); 131 void SetPDGMagneticMoment(G4double mageticMoment); 132 G4double CalculateAnomaly() const; 133 // gives the anomaly of magnetic moment for spin 1/2 particles 132 134 133 135 const G4String& GetParticleType() const { return theParticleType; } -
trunk/source/particles/management/include/G4ParticleDefinition.icc
r850 r890 25 25 // 26 26 // 27 // $Id: G4ParticleDefinition.icc,v 1.1 2 2007/03/11 07:17:35kurasige Exp $28 // GEANT4 tag $Name: HEAD$27 // $Id: G4ParticleDefinition.icc,v 1.13 2008/11/14 16:26:30 kurasige Exp $ 28 // GEANT4 tag $Name: $ 29 29 // 30 30 … … 155 155 } 156 156 157 157 inline 158 G4double G4ParticleDefinition::CalculateAnomaly() const 159 { 160 // gives the anomaly of magnetic moment for spin 1/2 particles 161 if (thePDGiSpin==1) { 162 G4double muB = 0.5*eplus*hbar_Planck/(thePDGMass/c_squared); 163 return 0.5*fabs(thePDGMagneticMoment/muB - 2.*thePDGCharge/eplus); 164 } else { 165 return 0.0; 166 } 167 }
Note: See TracChangeset
for help on using the changeset viewer.