MURE
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
FPDistribution Class Reference

A "vector" of FPDistribution. More...

#include <FPDistribution.hxx>

Public Member Functions

 FPDistribution (int Z, int A)
 Normal Constructor. More...
 
 ~FPDistribution ()
 Add a new FP to the FPs list with given yield. More...
 
void Add (int Z, int A, int I, double Yield)
 
void Add (FissionProduct FP)
 Add a new FP to the FPs list. More...
 
double Yield (int i)
 returns the yield for the ith FP More...
 
ZAIGetZAI (int i)
 returns the ith FP's ZAI More...
 
int GetNFP ()
 returns the number of FP More...
 
void ReadYield (double E)
 read the FP Yield for the (closest of) E fission energy More...
 
void FindClosestZA ()
 Find the closest fissile available. More...
 
bool FindZA (int Z, int A, int SF)
 returns true if the fissionable species Z,A is availlable More...
 
void SetSpontaneousFission (int SF)
 Say that the Spontaneous fission is requiered. More...
 
void SetASCIIFileName (string name="FPavailable.dat")
 set ASCII file More...
 
void SetBinaryFileName (string name="FPyield.bin")
 set Binary file More...
 

Private Member Functions

void BuildMap ()
 Fill a map of availlable fissionable species. More...
 

Private Attributes

int fZ
 Proton number of the fissile. More...
 
int fA
 Nucleon number of the fissile. More...
 
vector< ZAI * > fZAI
 vector of FP More...
 
vector< double > fYield
 vector of yield for each FP More...
 
int fSF
 1 for Spontaneous Fission, 0 else More...
 
int fNFP
 Number of FP (fZAI.size()) More...
 
string fASCIIFileName
 ASCII file where access data to binary file are stored. More...
 
string fBinaryFileName
 binary file where data (FP and yields) are stored More...
 
map< int, map< int, map< int,
FPRecord * > > > 
fAvaillableFP
 map of availlable fissionable species More...
 

Detailed Description

A "vector" of FPDistribution.

It contains a vector of ZAI* and the one to one correspondant vector yield for each ZAI. The data are extracted from ENDF B6 file (endfb6-y.asc) and stored in binary in a file (the name of this file is set by SetBinaryFileName() method, default being FPYield.bin). In order to find quickly the wanted yield in this file, an ascii file (the name of this file is set by SetASCIIFileName() method, default being FPavailable.dat) stores for each fissionable species (either normal fission or spontaneous fission) the position of record in the binary file. The MURE/Evo/FP/GenerateFPYield.C create these 2 files (FPavailable.dat and FPYield.bin) providing the endfb6-y.asc

Author
PTO
Version
0.1

Constructor & Destructor Documentation

FPDistribution::FPDistribution ( int  Z,
int  A 
)

Normal Constructor.

Parameters
Z: number of protons of the fissile nucleus
A: number of nucleons of the fissile nucleus
FPDistribution::~FPDistribution ( )

Add a new FP to the FPs list with given yield.

normal destructor

Member Function Documentation

void FPDistribution::Add ( int  Z,
int  A,
int  I,
double  Yield 
)
Parameters
Z: number of protons of FP
A: number of nucleons (A=0 means natural isotopes) of FP
I: Isomeric state (0=ground state, 1 =first excited, ...)
Yield: production of this FP for a given fissil isotope
void FPDistribution::Add ( FissionProduct  FP)

Add a new FP to the FPs list.

void FPDistribution::BuildMap ( )
private

Fill a map of availlable fissionable species.

void FPDistribution::FindClosestZA ( )

Find the closest fissile available.

bool FPDistribution::FindZA ( int  Z,
int  A,
int  SF 
)

returns true if the fissionable species Z,A is availlable

int FPDistribution::GetNFP ( )
inline

returns the number of FP

ZAI* FPDistribution::GetZAI ( int  i)
inline

returns the ith FP's ZAI

void FPDistribution::ReadYield ( double  E)

read the FP Yield for the (closest of) E fission energy

void FPDistribution::SetASCIIFileName ( string  name = "FPavailable.dat")
inline

set ASCII file

void FPDistribution::SetBinaryFileName ( string  name = "FPyield.bin")
inline

set Binary file

void FPDistribution::SetSpontaneousFission ( int  SF)
inline

Say that the Spontaneous fission is requiered.

double FPDistribution::Yield ( int  i)
inline

returns the yield for the ith FP

Member Data Documentation

int FPDistribution::fA
private

Nucleon number of the fissile.

string FPDistribution::fASCIIFileName
private

ASCII file where access data to binary file are stored.

map<int,map<int,map<int,FPRecord*> > > FPDistribution::fAvaillableFP
private

map of availlable fissionable species

string FPDistribution::fBinaryFileName
private

binary file where data (FP and yields) are stored

int FPDistribution::fNFP
private

Number of FP (fZAI.size())

int FPDistribution::fSF
private

1 for Spontaneous Fission, 0 else

vector<double> FPDistribution::fYield
private

vector of yield for each FP

int FPDistribution::fZ
private

Proton number of the fissile.

vector<ZAI*> FPDistribution::fZAI
private

vector of FP


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

MURE Project, documentation generated by Doxygen 1.8.5 - Mon Nov 17 2014