Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 63 of file G4StatMFMicroManager.cc.

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

Here is the call graph for this function:

Here is the caller graph for this function:

G4StatMFMicroManager::~G4StatMFMicroManager ( )

Definition at line 73 of file G4StatMFMicroManager.cc.

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

Member Function Documentation

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

Definition at line 171 of file G4StatMFMicroManager.cc.

172 {
173  G4double RandNumber = _Normalization * _WW * G4UniformRand();
174  G4double AccumWeight = 0.0;
175 
176  for (std::vector<G4StatMFMicroPartition*>::iterator i = _Partition.begin();
177  i != _Partition.end(); ++i)
178  {
179  AccumWeight += (*i)->GetProbability();
180  if (RandNumber < AccumWeight)
181  return (*i)->ChooseZ(A0,Z0,MeanT);
182  }
183 
184  throw G4HadronicException(__FILE__, __LINE__,
185  "G4StatMFMicroCanonical::ChooseChannel: Couldn't find a channel.");
186  return 0;
187 }
#define G4UniformRand()
Definition: Randomize.hh:97
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 159 of file G4StatMFMicroManager.cc.

160 {
161  _Normalization = Norm;
162  _WW /= Norm;
163  _MeanMultiplicity /= Norm;
164  _MeanTemperature /= Norm;
165  _MeanEntropy /= Norm;
166 
167  return;
168 }
G4bool G4StatMFMicroManager::operator!= ( const G4StatMFMicroManager right) const

Definition at line 57 of file G4StatMFMicroManager.cc.

58 {
59  return true;
60 }
G4bool G4StatMFMicroManager::operator== ( const G4StatMFMicroManager right) const

Definition at line 51 of file G4StatMFMicroManager.cc.

52 {
53  return false;
54 }

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