G4StatMFMicroManager Class Reference

#include <G4StatMFMicroManager.hh>


Public Member Functions

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

Data Structures

struct  DeleteFragment


Detailed Description

Definition at line 44 of file G4StatMFMicroManager.hh.


Constructor & Destructor Documentation

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

Definition at line 67 of file G4StatMFMicroManager.cc.

References G4StatMFMicroManager().

Referenced by G4StatMFMicroManager().

00068                                                                                              : 
00069     _Normalization(0.0)
00070 {
00071     // Perform class initialization
00072     Initialize(theFragment,multiplicity,FreeIntE,SCompNuc);
00073 }

G4StatMFMicroManager::~G4StatMFMicroManager (  ) 

Definition at line 77 of file G4StatMFMicroManager.cc.

00078 {
00079   if (!_Partition.empty()) 
00080     {
00081       std::for_each(_Partition.begin(),_Partition.end(),
00082                       DeleteFragment());
00083     }
00084 }


Member Function Documentation

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

Definition at line 185 of file G4StatMFMicroManager.cc.

References G4UniformRand.

00187 {
00188     G4double RandNumber = _Normalization * _WW * G4UniformRand();
00189     G4double AccumWeight = 0.0;
00190         
00191     for (std::vector<G4StatMFMicroPartition*>::iterator i = _Partition.begin();
00192          i != _Partition.end(); ++i)
00193     {
00194         AccumWeight += (*i)->GetProbability();
00195         if (RandNumber < AccumWeight)
00196             return (*i)->ChooseZ(A0,Z0,MeanT);
00197     }
00198 
00199     throw G4HadronicException(__FILE__, __LINE__, 
00200         "G4StatMFMicroCanonical::ChooseChannel: Couldn't find a channel.");
00201     return 0;
00202 }

G4double G4StatMFMicroManager::GetMeanEntropy ( void   )  const [inline]

Definition at line 86 of file G4StatMFMicroManager.hh.

00086 {return _MeanEntropy; }

G4double G4StatMFMicroManager::GetMeanMultiplicity ( void   )  const [inline]

Definition at line 82 of file G4StatMFMicroManager.hh.

00082 {return _MeanMultiplicity; }

G4double G4StatMFMicroManager::GetMeanTemperature ( void   )  const [inline]

Definition at line 84 of file G4StatMFMicroManager.hh.

00084 {return _MeanTemperature; }

G4double G4StatMFMicroManager::GetProbability ( void   )  const [inline]

Definition at line 78 of file G4StatMFMicroManager.hh.

00078 {return _WW;}

void G4StatMFMicroManager::Normalize ( const G4double  Norm  ) 

Definition at line 174 of file G4StatMFMicroManager.cc.

00175 {
00176     _Normalization = Norm;
00177     _WW /= Norm;
00178     _MeanMultiplicity /= Norm;
00179     _MeanTemperature /= Norm;
00180     _MeanEntropy /= Norm; 
00181         
00182     return;
00183 }

G4bool G4StatMFMicroManager::operator!= ( const G4StatMFMicroManager right  )  const

Definition at line 59 of file G4StatMFMicroManager.cc.

00060 {
00061     return true;
00062 }

G4bool G4StatMFMicroManager::operator== ( const G4StatMFMicroManager right  )  const

Definition at line 53 of file G4StatMFMicroManager.cc.

00054 {
00055     return false;
00056 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:26 2013 for Geant4 by  doxygen 1.4.7