Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
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 43 of file G4StatMFMicroManager.hh.

Constructor & Destructor Documentation

◆ G4StatMFMicroManager()

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

Definition at line 62 of file G4StatMFMicroManager.cc.

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

Referenced by G4StatMFMicroManager().

◆ ~G4StatMFMicroManager()

G4StatMFMicroManager::~G4StatMFMicroManager ( )

Definition at line 72 of file G4StatMFMicroManager.cc.

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

Member Function Documentation

◆ ChooseChannel()

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

Definition at line 170 of file G4StatMFMicroManager.cc.

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

◆ GetMeanEntropy()

G4double G4StatMFMicroManager::GetMeanEntropy ( void  ) const
inline

Definition at line 85 of file G4StatMFMicroManager.hh.

85{return _MeanEntropy; }

◆ GetMeanMultiplicity()

G4double G4StatMFMicroManager::GetMeanMultiplicity ( void  ) const
inline

Definition at line 81 of file G4StatMFMicroManager.hh.

81{return _MeanMultiplicity; }

◆ GetMeanTemperature()

G4double G4StatMFMicroManager::GetMeanTemperature ( void  ) const
inline

Definition at line 83 of file G4StatMFMicroManager.hh.

83{return _MeanTemperature; }

◆ GetProbability()

G4double G4StatMFMicroManager::GetProbability ( void  ) const
inline

Definition at line 77 of file G4StatMFMicroManager.hh.

77{return _WW;}

◆ Normalize()

void G4StatMFMicroManager::Normalize ( G4double  Norm)

Definition at line 158 of file G4StatMFMicroManager.cc.

159{
160 _Normalization = Norm;
161 _WW /= Norm;
162 _MeanMultiplicity /= Norm;
163 _MeanTemperature /= Norm;
164 _MeanEntropy /= Norm;
165
166 return;
167}

◆ operator!=()

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

Definition at line 56 of file G4StatMFMicroManager.cc.

57{
58 return true;
59}

◆ operator==()

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

Definition at line 50 of file G4StatMFMicroManager.cc.

51{
52 return false;
53}

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