Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data Structures | Public Member Functions
G4StatMFMicroManager Class Reference

#include <G4StatMFMicroManager.hh>

Public Member Functions

 G4StatMFMicroManager (const G4Fragment &theFragment, G4int multiplicity, G4double FreeIntE, G4double SCompNuc)
 
 ~G4StatMFMicroManager ()
 
G4bool operator== (const G4StatMFMicroManager &right) const
 
G4bool operator!= (const G4StatMFMicroManager &right) const
 
G4StatMFChannelChooseChannel (G4int A0, G4int Z0, G4double MeanT)
 
G4double GetProbability (void) const
 
void Normalize (G4double Norm)
 
G4double GetMeanMultiplicity (void) const
 
G4double GetMeanTemperature (void) const
 
G4double GetMeanEntropy (void) const
 

Detailed Description

Definition at line 44 of file G4StatMFMicroManager.hh.

Constructor & Destructor Documentation

G4StatMFMicroManager::G4StatMFMicroManager ( const G4Fragment theFragment,
G4int  multiplicity,
G4double  FreeIntE,
G4double  SCompNuc 
)

Definition at line 65 of file G4StatMFMicroManager.cc.

References G4StatMFMicroManager().

Referenced by G4StatMFMicroManager().

66  :
67  _Normalization(0.0)
68 {
69  // Perform class initialization
70  Initialize(theFragment,multiplicity,FreeIntE,SCompNuc);
71 }
G4StatMFMicroManager::~G4StatMFMicroManager ( )

Definition at line 75 of file G4StatMFMicroManager.cc.

76 {
77  if (!_Partition.empty())
78  {
79  std::for_each(_Partition.begin(),_Partition.end(),
80  DeleteFragment());
81  }
82 }

Member Function Documentation

G4StatMFChannel * G4StatMFMicroManager::ChooseChannel ( G4int  A0,
G4int  Z0,
G4double  MeanT 
)

Definition at line 175 of file G4StatMFMicroManager.cc.

References G4UniformRand.

176 {
177  G4double RandNumber = _Normalization * _WW * G4UniformRand();
178  G4double AccumWeight = 0.0;
179 
180  for (std::vector<G4StatMFMicroPartition*>::iterator i = _Partition.begin();
181  i != _Partition.end(); ++i)
182  {
183  AccumWeight += (*i)->GetProbability();
184  if (RandNumber < AccumWeight)
185  return (*i)->ChooseZ(A0,Z0,MeanT);
186  }
187 
188  throw G4HadronicException(__FILE__, __LINE__,
189  "G4StatMFMicroCanonical::ChooseChannel: Couldn't find a channel.");
190  return 0;
191 }
#define G4UniformRand()
Definition: Randomize.hh:87
double G4double
Definition: G4Types.hh:76
G4double G4StatMFMicroManager::GetMeanEntropy ( void  ) const
inline

Definition at line 86 of file G4StatMFMicroManager.hh.

86 {return _MeanEntropy; }
G4double G4StatMFMicroManager::GetMeanMultiplicity ( void  ) const
inline

Definition at line 82 of file G4StatMFMicroManager.hh.

82 {return _MeanMultiplicity; }
G4double G4StatMFMicroManager::GetMeanTemperature ( void  ) const
inline

Definition at line 84 of file G4StatMFMicroManager.hh.

84 {return _MeanTemperature; }
G4double G4StatMFMicroManager::GetProbability ( void  ) const
inline

Definition at line 78 of file G4StatMFMicroManager.hh.

78 {return _WW;}
void G4StatMFMicroManager::Normalize ( G4double  Norm)

Definition at line 163 of file G4StatMFMicroManager.cc.

164 {
165  _Normalization = Norm;
166  _WW /= Norm;
167  _MeanMultiplicity /= Norm;
168  _MeanTemperature /= Norm;
169  _MeanEntropy /= Norm;
170 
171  return;
172 }
G4bool G4StatMFMicroManager::operator!= ( const G4StatMFMicroManager right) const

Definition at line 59 of file G4StatMFMicroManager.cc.

60 {
61  return true;
62 }
G4bool G4StatMFMicroManager::operator== ( const G4StatMFMicroManager right) const

Definition at line 53 of file G4StatMFMicroManager.cc.

54 {
55  return false;
56 }

The documentation for this class was generated from the following files: