- Timestamp:
- Apr 6, 2009, 12:30:29 PM (15 years ago)
- Location:
- trunk/source/processes/hadronic/models/de_excitation/evaporation/include
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4AlphaEvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4AlphaEvaporationChannel.hh,v 1. 3 2006/06/29 20:09:43 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4AlphaEvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4AlphaEvaporationChannel_h … … 62 61 private: 63 62 64 G4AlphaCoulombBarrier theCoulombBarrier; 65 63 G4AlphaCoulombBarrier theCoulombBarrier; 64 66 65 G4AlphaEvaporationProbability theEvaporationProbability; 67 66 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4AlphaEvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4AlphaEvaporationProbability.hh,v 1.3 2006/06/29 20:09:45 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 36 31 #ifndef G4AlphaEvaporationProbability_h 37 32 #define G4AlphaEvaporationProbability_h 1 … … 39 34 40 35 #include "G4EvaporationProbability.hh" 41 36 #include "G4AlphaCoulombBarrier.hh" 42 37 43 38 class G4AlphaEvaporationProbability : public G4EvaporationProbability … … 55 50 G4bool operator==(const G4AlphaEvaporationProbability &right) const; 56 51 G4bool operator!=(const G4AlphaEvaporationProbability &right) const; 57 52 58 53 59 54 private: 60 55 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 1.0 + CCoeficient(static_cast<G4double>(fragment.GetZ()-GetZ()));} 63 64 virtual G4double CalcBetaParam(const G4Fragment & ) const 65 { return 0.0; } 56 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 66 57 67 68 G4double CCoeficient(const G4double ) const; 58 G4double GetOpt0(const G4double K); 59 G4double GetOpt12(const G4double K); 60 G4double GetOpt34(const G4double K); 69 61 70 // Excitation energy levels 71 std::vector<G4double> ExcitEnergies; 72 // Spin of excitation energy levels 73 std::vector<G4int> ExcitSpins; 62 63 virtual G4double CalcAlphaParam(const G4Fragment & fragment) ; 64 65 virtual G4double CalcBetaParam(const G4Fragment & fragment) ; 66 67 G4double CCoeficient(const G4double aZ) ; 68 69 //data members 70 71 G4AlphaCoulombBarrier theCoulombBarrier; 72 73 G4double ResidualA; 74 G4double ResidualZ; 75 G4double theA; 76 G4double theZ; 77 G4double ResidualAthrd; 78 G4double FragmentA; 79 G4double FragmentAthrd; 80 81 74 82 }; 75 83 76 84 77 85 #endif 86 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4DeuteronEvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4DeuteronEvaporationChannel.hh,v 1. 3 2006/06/29 20:09:47 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4DeuteronEvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4DeuteronEvaporationChannel_h -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4DeuteronEvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4DeuteronEvaporationProbability.hh,v 1.3 2006/06/29 20:09:49 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 31 36 32 #ifndef G4DeuteronEvaporationProbability_h … … 39 35 40 36 #include "G4EvaporationProbability.hh" 41 37 #include "G4DeuteronCoulombBarrier.hh" 42 38 43 39 class G4DeuteronEvaporationProbability : public G4EvaporationProbability … … 55 51 G4bool operator==(const G4DeuteronEvaporationProbability &right) const; 56 52 G4bool operator!=(const G4DeuteronEvaporationProbability &right) const; 57 53 58 54 59 55 private: 60 56 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 1.0 + CCoeficient(static_cast<G4double>(fragment.GetZ()-GetZ()));} 63 64 virtual G4double CalcBetaParam(const G4Fragment & ) const 65 { return 0.0; } 57 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 66 58 67 68 G4double CCoeficient(const G4double aZ) const; 59 G4double GetOpt0(const G4double K); 60 G4double GetOpt12(const G4double K); 61 G4double GetOpt34(const G4double K); 69 62 70 // Excitation energy levels 71 std::vector<G4double> ExcitEnergies; 72 // Spin of excitation energy levels 73 std::vector<G4int> ExcitSpins; 63 64 virtual G4double CalcAlphaParam(const G4Fragment & fragment) ; 65 66 virtual G4double CalcBetaParam(const G4Fragment & fragment) ; 67 68 G4double CCoeficient(const G4double aZ) ; 69 70 //data members 71 72 G4DeuteronCoulombBarrier theCoulombBarrier; 73 74 G4double ResidualA; 75 G4double ResidualZ; 76 G4double theA; 77 G4double theZ; 78 G4double ResidualAthrd; 79 G4double FragmentA; 80 G4double FragmentAthrd; 81 74 82 75 83 }; 84 85 76 86 #endif 87 88 89 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4Evaporation.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4Evaporation.hh,v 1. 4 2007/02/14 13:37:49ahoward Exp $28 // GEANT4 tag $Name: $27 // $Id: G4Evaporation.hh,v 1.5 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations … … 69 69 void SetDefaultChannel(); 70 70 void SetGEMChannel(); 71 72 private:73 71 74 72 #ifdef debug -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationChannel.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4EvaporationChannel.hh,v 1.3 2006/06/29 20:09:53 gunter Exp $ 28 // GEANT4 tag $Name: $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations … … 39 37 #include "G4VEmissionProbability.hh" 40 38 #include "G4EvaporationProbability.hh" 39 #include "G4NeutronEvaporationProbability.hh" 40 #include "G4ProtonEvaporationProbability.hh" 41 #include "G4DeuteronEvaporationProbability.hh" 42 #include "G4TritonEvaporationProbability.hh" 43 #include "G4He3EvaporationProbability.hh" 44 #include "G4AlphaEvaporationProbability.hh" 41 45 #include "G4VLevelDensityParameter.hh" 42 46 #include "G4VCoulombBarrier.hh" … … 51 55 { 52 56 public: 53 // Available constructors 54 G4EvaporationChannel(const G4int theA, const G4int theZ, 55 G4VEmissionProbability * aEmissionStrategy, 56 G4VCoulombBarrier * aCoulombBarrier); 57 // constructor 58 57 59 58 60 G4EvaporationChannel(const G4int theA, const G4int theZ, const G4String & aName, 59 61 G4VEmissionProbability * aEmissionStrategy, 60 G4VCoulombBarrier * aCoulombBarrier); 61 62 G4EvaporationChannel(const G4int theA, const G4int theZ, const G4String * aName, 63 G4VEmissionProbability * aEmissionStrategy, 64 G4VCoulombBarrier * aCoulombBarrier); 65 62 G4VCoulombBarrier * aCoulombBarrier); 66 63 public: 67 64 // destructor … … 70 67 void SetEmissionStrategy(G4VEmissionProbability * aEmissionStrategy) 71 68 {theEvaporationProbabilityPtr = aEmissionStrategy;} 72 69 73 70 void SetCoulombBarrierStrategy(G4VCoulombBarrier * aCoulombBarrier) 74 71 {theCoulombBarrierPtr = aCoulombBarrier;} 72 73 75 74 76 75 protected: … … 93 92 94 93 G4FragmentVector * BreakUp(const G4Fragment & theNucleus); 95 96 // inline void SetEmissionStrategy(G4VEmissionProbability * aStrategy)97 // {98 // if (MyOwnEvaporationProbability) delete theEvaporationProbabilityPtr;99 // theEvaporationProbabilityPtr = aStrategy;100 // MyOwnEvaporationProbability = false;101 // }102 94 103 104 inline void SetLevelDensityParameter(G4VLevelDensityParameter * aLevelDensity) 105 { 106 if (MyOwnLevelDensity) delete theLevelDensityPtr; 107 theLevelDensityPtr = aLevelDensity; 108 MyOwnLevelDensity = false; 109 } 110 95 // void SetLevelDensityParameter(G4VLevelDensityParameter * aLevelDensity); 96 111 97 public: 112 98 … … 119 105 { return MaximalKineticEnergy; } 120 106 121 // ----------------------122 123 107 private: 124 108 … … 130 114 131 115 // Samples fragment kinetic energy. 132 G4double CalcKineticEnergy(void);116 G4double GetKineticEnergy(const G4Fragment & aFragment); 133 117 134 118 // This has to be removed and put in Random Generator … … 142 126 // They are intializated at object creation (constructor) time. 143 127 144 // Atomic Number 145 G4int A;128 // Atomic Number of ejectile 129 G4int theA; 146 130 147 // Charge 148 G4int Z;131 // Charge of ejectile 132 G4int theZ; 149 133 150 134 151 // For evaporation probability calcual tion135 // For evaporation probability calcualation 152 136 G4VEmissionProbability * theEvaporationProbabilityPtr; 153 137 154 138 // For Level Density calculation 155 G4bool MyOwnLevelDensity;139 // G4bool MyOwnLevelDensity; 156 140 G4VLevelDensityParameter * theLevelDensityPtr; 157 141 142 158 143 // For Coulomb Barrier calculation 159 144 G4VCoulombBarrier * theCoulombBarrierPtr; 160 145 G4double CoulombBarrier; 161 146 147 162 148 //--------------------------------------------------- 163 149 … … 166 152 // the atomic number, charge and excitation energy of nucleus. 167 153 168 // Residual AtomicNumber169 G4int AResidual;154 // Residual Mass Number 155 G4int ResidualA; 170 156 171 157 // Residual Charge 172 G4int ZResidual; 173 174 // // Binding Energy 175 // G4double BindingEnergy; 176 177 // // Level Density Parameter 178 // G4double LevelDensityParameter; 158 G4int ResidualZ; 179 159 180 160 // Emission Probability … … 184 164 // Maximal Kinetic Energy that can be carried by fragment 185 165 G4double MaximalKineticEnergy; 166 167 186 168 }; 187 169 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationFactory.hh
r819 r962 26 26 // 27 27 // $Id: G4EvaporationFactory.hh,v 1.3 2006/06/29 20:09:55 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4EvaporationProbability.hh,v 1.3 2006/06/29 20:09:57 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara (Oct 1998) 29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 36 31 #ifndef G4EvaporationProbability_h 37 32 #define G4EvaporationProbability_h 1 … … 41 36 #include "G4VLevelDensityParameter.hh" 42 37 #include "G4EvaporationLevelDensityParameter.hh" 38 #include "G4VCoulombBarrier.hh" 39 #include "G4CoulombBarrier.hh" 43 40 44 41 … … 47 44 public: 48 45 // Only available constructor 49 G4EvaporationProbability(const G4int anA, const G4int aZ, const G4double aGamma ) :46 G4EvaporationProbability(const G4int anA, const G4int aZ, const G4double aGamma,G4VCoulombBarrier * aCoulombBarrier) : 50 47 theA(anA), 51 48 theZ(aZ), 52 Gamma(aGamma) 49 Gamma(aGamma) 50 , theCoulombBarrierptr(aCoulombBarrier) 53 51 { 54 52 theEvapLDPptr = new G4EvaporationLevelDensityParameter; 53 54 55 55 } 56 56 … … 58 58 { 59 59 if (theEvapLDPptr != 0) delete theEvapLDPptr; 60 60 61 } 61 62 … … 67 68 68 69 protected: 69 70 void SetExcitationEnergiesPtr(std::vector<G4double> * anExcitationEnergiesPtr)71 {ExcitationEnergies = anExcitationEnergiesPtr;}72 73 void SetExcitationSpinsPtr(std::vector<G4int> * anExcitationSpinsPtr)74 {ExcitationSpins = anExcitationSpinsPtr;}75 76 70 77 71 // Default constructor 78 72 G4EvaporationProbability() {} 73 79 74 private: 80 75 // Copy constructor … … 86 81 87 82 public: 88 G4double EmissionProbability(const G4Fragment & fragment, const G4double anEnergy); 83 84 G4double ProbabilityDistributionFunction( const G4Fragment & aFragment, const G4double K); 85 86 G4double EmissionProbability(const G4Fragment & fragment, const G4double anEnergy); 89 87 90 88 private: 91 89 92 G4double CalcProbability(const G4Fragment & fragment, const G4double MaximalKineticEnergy); 93 virtual G4double CCoeficient(const G4double ) const {return 0.0;}; 90 G4double CalculateProbability(const G4Fragment & fragment, const G4double MaximalKineticEnergy ); 94 91 95 virtual G4double CalcAlphaParam(const G4Fragment & ) const {return 1.0;} 96 virtual G4double CalcBetaParam(const G4Fragment & ) const {return 1.0;} 92 G4double IntegrateEmissionProbability(const G4Fragment & aFragment, const G4double & Low, const G4double & Up ); 93 94 protected: 95 96 virtual G4double CrossSection( const G4Fragment & fragment, const G4double K )= 0; 97 98 virtual G4double CalcAlphaParam(const G4Fragment & fragment)=0 ; 99 100 virtual G4double CalcBetaParam(const G4Fragment & fragment)=0 ; 101 102 private: 97 103 98 104 // Data Members … … 107 113 G4double Gamma; 108 114 109 // Discrete Excitation Energies 110 std::vector<G4double> * ExcitationEnergies;115 //The Coulomb Barrier 116 G4VCoulombBarrier * theCoulombBarrierptr; 111 117 112 //113 std::vector<G4int> * ExcitationSpins;114 118 115 119 }; 116 120 117 121 122 123 118 124 #endif -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4He3EvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4He3EvaporationChannel.hh,v 1. 3 2006/06/29 20:09:59 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4He3EvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4He3EvaporationChannel_h … … 61 60 private: 62 61 63 G4He3CoulombBarrier theCoulombBarrier;62 G4He3CoulombBarrier theCoulombBarrier; 64 63 65 64 G4He3EvaporationProbability theEvaporationProbability; -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4He3EvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4He3EvaporationProbability.hh,v 1.3 2006/06/29 20:10:01 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 36 31 #ifndef G4He3EvaporationProbability_h 37 32 #define G4He3EvaporationProbability_h 1 … … 39 34 40 35 #include "G4EvaporationProbability.hh" 41 36 #include "G4He3CoulombBarrier.hh" 42 37 43 38 class G4He3EvaporationProbability : public G4EvaporationProbability … … 55 50 G4bool operator==(const G4He3EvaporationProbability &right) const; 56 51 G4bool operator!=(const G4He3EvaporationProbability &right) const; 57 52 58 53 59 54 private: 60 55 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 1.0 + CCoeficient(static_cast<G4double>(fragment.GetZ()-GetZ()));} 63 64 virtual G4double CalcBetaParam(const G4Fragment & ) const 65 { return 0.0; } 56 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 66 57 67 68 G4double CCoeficient(const G4double aZ) const; 58 G4double GetOpt0(const G4double K); 59 G4double GetOpt12(const G4double K); 60 G4double GetOpt34(const G4double K); 69 61 70 // Excitation energy levels 71 std::vector<G4double> ExcitEnergies; 72 // Spin of excitation energy levels 73 std::vector<G4int> ExcitSpins; 62 63 virtual G4double CalcAlphaParam(const G4Fragment & fragment) ; 64 65 virtual G4double CalcBetaParam(const G4Fragment & fragment) ; 66 67 G4double CCoeficient(const G4double aZ) ; 68 69 //data members 70 71 G4He3CoulombBarrier theCoulombBarrier; 72 73 G4double ResidualA; 74 G4double ResidualZ; 75 G4double theA; 76 G4double theZ; 77 G4double ResidualAthrd; 78 G4double FragmentA; 79 G4double FragmentAthrd; 80 81 74 82 }; 75 83 76 84 77 85 #endif 86 87 88 89 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4NeutronEvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4NeutronEvaporationChannel.hh,v 1. 3 2006/06/29 20:10:03 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4NeutronEvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4NeutronEvaporationChannel_h … … 61 60 private: 62 61 63 62 G4NeutronCoulombBarrier theCoulombBarrier; 64 63 65 64 G4NeutronEvaporationProbability theEvaporationProbability; -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4NeutronEvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4NeutronEvaporationProbability.hh,v 1.4 2006/06/29 20:10:05 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 31 36 32 #ifndef G4NeutronEvaporationProbability_h … … 39 35 40 36 #include "G4EvaporationProbability.hh" 41 37 #include "G4NeutronCoulombBarrier.hh" 42 38 43 39 class G4NeutronEvaporationProbability : public G4EvaporationProbability 44 40 { 45 41 public: 46 // Only available constructor42 47 43 G4NeutronEvaporationProbability(); 48 44 49 45 ~G4NeutronEvaporationProbability() {} 50 46 private: 51 // Copy constructor47 52 48 G4NeutronEvaporationProbability(const G4NeutronEvaporationProbability &right); 53 49 … … 55 51 G4bool operator==(const G4NeutronEvaporationProbability &right) const; 56 52 G4bool operator!=(const G4NeutronEvaporationProbability &right) const; 57 58 53 59 54 private: 60 55 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 0.76+2.2/std::pow(static_cast<G4double>(fragment.GetA()-GetA()),1.0/3.0);} 63 64 virtual G4double CalcBetaParam(const G4Fragment & fragment) const 65 { return (2.12/std::pow(static_cast<G4double>(fragment.GetA()-GetA()),2.0/3.0) - 0.05)*MeV/ 66 CalcAlphaParam(fragment); } 56 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 67 57 68 // Excitation energy levels 69 std::vector<G4double> ExcitEnergies; 70 // Spin of excitation energy levels 71 std::vector<G4int> ExcitSpins; 58 G4double GetOpt12(const G4double K); 59 G4double GetOpt34(const G4double K); 60 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment); 62 63 virtual G4double CalcBetaParam(const G4Fragment & fragment); 64 65 66 //data members 67 68 G4NeutronCoulombBarrier theCoulombBarrier; 69 70 G4double ResidualA; 71 G4double ResidualZ; 72 G4double theA; 73 G4double theZ; 74 G4double ResidualAthrd; 75 G4double FragmentA; 76 G4double FragmentAthrd; 77 78 79 72 80 73 81 }; -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4ProtonEvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4ProtonEvaporationChannel.hh,v 1. 3 2006/06/29 20:10:07 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4ProtonEvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4ProtonEvaporationChannel_h … … 62 61 private: 63 62 63 G4ProtonCoulombBarrier theCoulombBarrier; 64 64 65 G4ProtonEvaporationProbability theEvaporationProbability; 65 66 66 G4ProtonCoulombBarrier theCoulombBarrier; 67 67 68 }; 68 69 #endif -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4ProtonEvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4ProtonEvaporationProbability.hh,v 1.3 2006/06/29 20:10:09 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 31 36 32 #ifndef G4ProtonEvaporationProbability_h … … 39 35 40 36 #include "G4EvaporationProbability.hh" 41 37 #include "G4ProtonCoulombBarrier.hh" 42 38 43 39 class G4ProtonEvaporationProbability : public G4EvaporationProbability … … 55 51 G4bool operator==(const G4ProtonEvaporationProbability &right) const; 56 52 G4bool operator!=(const G4ProtonEvaporationProbability &right) const; 57 53 58 54 59 55 private: 60 56 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 1.0 + CCoeficient(static_cast<G4double>(fragment.GetZ()-GetZ()));} 63 64 virtual G4double CalcBetaParam(const G4Fragment & ) const 65 { return 0.0; } 57 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 66 58 67 68 G4double CCoeficient(const G4double aZ) const; 59 G4double GetOpt0(const G4double K); 60 G4double GetOpt1(const G4double K); 61 G4double GetOpt2(const G4double K); 62 G4double GetOpt3(const G4double K); 69 63 70 // Excitation energy levels 71 std::vector<G4double> ExcitEnergies; 72 // Spin of excitation energy levels 73 std::vector<G4int> ExcitSpins; 64 65 virtual G4double CalcAlphaParam(const G4Fragment & fragment) ; 66 67 virtual G4double CalcBetaParam(const G4Fragment & fragment) ; 68 69 G4double CCoeficient(const G4double aZ) ; 70 71 //data members 72 73 G4ProtonCoulombBarrier theCoulombBarrier; 74 75 G4double ResidualA; 76 G4double ResidualZ; 77 G4double theA; 78 G4double theZ; 79 G4double ResidualAthrd; 80 G4double FragmentA; 81 G4double FragmentAthrd; 82 G4double U; 83 84 85 74 86 75 87 }; 88 89 76 90 #endif -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4TritonEvaporationChannel.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4TritonEvaporationChannel.hh,v 1. 3 2006/06/29 20:10:11 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4TritonEvaporationChannel.hh,v 1.8 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Nov. 1999) 32 32 // 33 34 33 35 34 #ifndef G4TritonEvaporationChannel_h -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4TritonEvaporationProbability.hh
r819 r962 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4TritonEvaporationProbability.hh,v 1.3 2006/06/29 20:10:13 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-01-patch-02 $ 26 //J.M. Quesada (August2008). Based on: 29 27 // 30 28 // Hadronic Process: Nuclear De-excitations 31 // by V. Lara ( Nov 1999)29 // by V. Lara (Oct 1998) 32 30 // 33 34 35 36 31 #ifndef G4TritonEvaporationProbability_h 37 32 #define G4TritonEvaporationProbability_h 1 … … 39 34 40 35 #include "G4EvaporationProbability.hh" 41 36 #include "G4TritonCoulombBarrier.hh" 42 37 43 38 class G4TritonEvaporationProbability : public G4EvaporationProbability … … 55 50 G4bool operator==(const G4TritonEvaporationProbability &right) const; 56 51 G4bool operator!=(const G4TritonEvaporationProbability &right) const; 57 52 58 53 59 54 private: 60 55 61 virtual G4double CalcAlphaParam(const G4Fragment & fragment) const 62 { return 1.0 + CCoeficient(static_cast<G4double>(fragment.GetZ()-GetZ()));} 63 64 virtual G4double CalcBetaParam(const G4Fragment & ) const 65 { return 0.0; } 56 virtual G4double CrossSection(const G4Fragment & fragment, const G4double K); 66 57 67 G4double CCoeficient(const G4double aZ) const; 58 G4double GetOpt0(const G4double K); 59 G4double GetOpt12(const G4double K); 60 G4double GetOpt34(const G4double K); 68 61 69 // Excitation energy levels 70 std::vector<G4double> ExcitEnergies; 71 // Spin of excitation energy levels 72 std::vector<G4int> ExcitSpins; 62 63 virtual G4double CalcAlphaParam(const G4Fragment & fragment) ; 64 65 virtual G4double CalcBetaParam(const G4Fragment & fragment) ; 66 67 G4double CCoeficient(const G4double aZ) ; 68 69 //data members 70 71 72 G4TritonCoulombBarrier theCoulombBarrier; 73 74 G4double ResidualA; 75 G4double ResidualZ; 76 G4double theA; 77 G4double theZ; 78 G4double ResidualAthrd; 79 G4double FragmentA; 80 G4double FragmentAthrd; 81 73 82 74 83 }; … … 76 85 77 86 #endif 87 88 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/include/G4VEvaporation.hh
r819 r962 25 25 // 26 26 // 27 // $Id: G4VEvaporation.hh,v 1. 3 2006/06/29 20:10:15 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4VEvaporation.hh,v 1.4 2008/09/19 13:32:54 ahoward Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Hadronic Process: Nuclear De-excitations 31 31 // by V. Lara (Oct 1998) written from G4Evaporation.hh (May 1998) 32 32 // 33 33 // Modif (03 September 2008) by J. M. Quesada for external choice of inverse 34 // cross section option 35 // JMQ (06 September 2008) Also external choices have been added for 36 // superimposed Coulomb barrier (if useSICBis set true, by default is false) 34 37 35 38 … … 56 59 virtual G4FragmentVector * BreakItUp(const G4Fragment &theNucleus) = 0; 57 60 61 // for inverse cross section choice 62 inline void SetOPTxs(G4int opt) { OPTxs = opt;} 63 // for superimposed Coulomb Barrier for inverse cross sections 64 inline void UseSICB(G4bool use) { useSICB = use; } 65 protected: 66 G4int OPTxs; 67 G4bool useSICB; 58 68 59 69 };
Note: See TracChangeset
for help on using the changeset viewer.