MURE
Loading...
Searching...
No Matches
List of all members
NucleusMCRecord Class Reference

A NucleusMCRecord allows to record data for writing &reading reaction rates tallies. More...

#include <NucleusMCRecord.hxx>

Public Member Functions

Constructor &destructor
 NucleusMCRecord ()
 normal contructor
 
 NucleusMCRecord (const NucleusMCRecord &n)
 Copy constructor.
 
 ~NucleusMCRecord ()
 Destructor.
 
Building bins &Co. methods
void SetTallyNumber (int tallynum)
 
int GetTallyNumber ()
 
void AddCellnTallyBin (int CellNum, int BinIdx)
 
vector< int > AddMultiplicatorBinIndex (int &FMBinIdx, Nucleus *nuc)
 Set Multiplicator tally bin index for reaction rates.
 
vector< int > & GetMultiplicatorBinIndex ()
 
void SetTotalXSMultiplicatorBinIndex (int FMbin)
 
int GetTotalXSMultiplicatorBinIndex ()
 

Miscellaneous methods

int fTallyNum
 Tally Number for reaction rates.
 
int fFMTotalBinIdx
 Multiplicator bin index for the total reaction rate.
 
vector< int > fFMBinIdx
 Multiplicator bin index for reaction rate.
 
vector< pair< int, int > > fCellnTallyBin
 pair of (Cell number, Tally cell bin index)
 
int GetNumberOfCellBin ()
 
int GetNumberOfMultiplicatorBin ()
 
int GetCellNumber (int i)
 
int GetTallyBinIndex (int i)
 
vector< pair< int, int > > & GetCellnTallyBin ()
 

Detailed Description

A NucleusMCRecord allows to record data for writing &reading reaction rates tallies.

One Nucleus (of one perturbative material) is.created for each temperature. In MCNP, one use 1 tally/temperature for all cells at this temperature. But for Serpent, because tally (detector) normalization is only possible with a unique volume, one use 1 tally/cell, independantly from the temperature. This lead for MCNP to 1 tally with lot of cell bins and their associated multiplicator bins for reaction rates and for Serpent, to lot of tallies with 1 cell bin (and their associated multiplicator bins for reaction rates).

This class allows to keep the correct way of storing data in order to retreive them when filling cross sections and reaction rates of the nucleus.

Author
PTO
Version
1.0

Constructor & Destructor Documentation

◆ NucleusMCRecord() [1/2]

NucleusMCRecord::NucleusMCRecord ( )
default

normal contructor

◆ NucleusMCRecord() [2/2]

NucleusMCRecord::NucleusMCRecord ( const NucleusMCRecord n)

Copy constructor.

◆ ~NucleusMCRecord()

NucleusMCRecord::~NucleusMCRecord ( )

Destructor.

Member Function Documentation

◆ AddCellnTallyBin()

void NucleusMCRecord::AddCellnTallyBin ( int  CellNum,
int  BinIdx 
)

Create, if necessary, a new pair of (Cell Number, Cell bin index)

◆ AddMultiplicatorBinIndex()

vector< int > NucleusMCRecord::AddMultiplicatorBinIndex ( int &  FMBinIdx,
Nucleus nuc 
)

Set Multiplicator tally bin index for reaction rates.

Fills Multiplicator Tally bin index vector starting at bin "FMBinIdx" to "FMBinIdx+nb of reactions+1" (the last one is for total reaction rates). Output: FMBinIdx is set to FMBinIdx+(nb of reactions)+1 and a vector of XS codes (ENDF type) is given

Parameters
FMBinIdx: input: starting bin for the first reaction, ouput: FMBinIdx+last bin for the last reaction+1
nuc: the "calling" Nucleus

◆ GetCellnTallyBin()

vector< pair< int, int > > & NucleusMCRecord::GetCellnTallyBin ( )
inline

< return the pair vector of (Cell Number, Cell bin index)

◆ GetCellNumber()

int NucleusMCRecord::GetCellNumber ( int  i)
inline

< return the Cell number in the ith tally bin

◆ GetMultiplicatorBinIndex()

vector< int > & NucleusMCRecord::GetMultiplicatorBinIndex ( )
inline

◆ GetNumberOfCellBin()

int NucleusMCRecord::GetNumberOfCellBin ( )
inline

◆ GetNumberOfMultiplicatorBin()

int NucleusMCRecord::GetNumberOfMultiplicatorBin ( )
inline

◆ GetTallyBinIndex()

int NucleusMCRecord::GetTallyBinIndex ( int  i)
inline

< return the position index of the ith Cell number in the tally

◆ GetTallyNumber()

int NucleusMCRecord::GetTallyNumber ( )
inline

< return the tally multiplicator number

◆ GetTotalXSMultiplicatorBinIndex()

int NucleusMCRecord::GetTotalXSMultiplicatorBinIndex ( )
inline

< return reaction rate bin in a tally

◆ SetTallyNumber()

void NucleusMCRecord::SetTallyNumber ( int  tallynum)
inline

< Set the tally multiplicator number

◆ SetTotalXSMultiplicatorBinIndex()

void NucleusMCRecord::SetTotalXSMultiplicatorBinIndex ( int  FMbin)
inline

< set total reaction rate bin in a tally

Member Data Documentation

◆ fCellnTallyBin

vector< pair < int, int > > NucleusMCRecord::fCellnTallyBin
private

pair of (Cell number, Tally cell bin index)

◆ fFMBinIdx

vector< int > NucleusMCRecord::fFMBinIdx
private

Multiplicator bin index for reaction rate.

◆ fFMTotalBinIdx

int NucleusMCRecord::fFMTotalBinIdx
private

Multiplicator bin index for the total reaction rate.

◆ fTallyNum

int NucleusMCRecord::fTallyNum
private

Tally Number for reaction rates.


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

MURE Project, documentation generated by Doxygen 1.9.7 - Fri Jan 19 2024