Define Lattice Cell type bin. More...
#include <Tally.hxx>
Public Member Functions | |
LatticeBin (const LatticeBin &b) | |
Copy constructor. More... | |
LatticeBin (Cell *C, string pos="") | |
Build a Lattice Bin of type Cell. More... | |
LatticeBin (TallyBin *theTallyBin) | |
Build a Lattice Bin of type Cell only. More... | |
LatticeBin (int universe) | |
Build a Lattice Bin based on the universe shorthand. More... | |
~LatticeBin () | |
Destructor. More... | |
TallyBin * | Clone () |
Clone method. More... | |
bool | IsLatticeBin () |
This is a LatticeBin. More... | |
void | Add (Cell *C, int InclusionLevel=0, string pos="") |
void | Add (TallyBin *theTallyBin, int InclusionLevel=0) |
void | Add (int universe, int InclusionLevel=0) |
Add a universe shortcut as bin to a LatticeBin. More... | |
void | AddContainer (Cell *C, string pos="") |
Add a Cell in a new outer level. More... | |
void | AddContainer (TallyBin *theTallyBin) |
Add a TallyBinin a new outer level. More... | |
void | AddContainer (int universe) |
Add a universe shortcut in a new outer level. More... | |
string | Print (int BeforeRparenthesis=0) |
Print the LatticeBin in MCNP. More... | |
string | PrintVolume () |
Print the LatticeBin list of volume in MCNP. More... | |
bool | IsInBin (int num) |
whether or not the cell/suface "num" is in the bin More... | |
vector< vector< TallyBin * > > | GetLevelVector () |
Returns the fLevel vector, (used in Tally::SetBinVolume();) More... | |
Public Member Functions inherited from TallyBin | |
TallyBin (const TallyBin &b) | |
Copy constructor. More... | |
TallyBin () | |
Normal Construcator. More... | |
virtual | ~TallyBin () |
virtual bool | IsSimpleBin () |
if the TallyBin is a SimpleBin More... | |
virtual bool | IsGroupBin () |
if the TallyBin is a GroupBin More... | |
int | GetCellType () |
returns -1, 0, 1 in function of the bin type. More... | |
virtual bool | NeedVolume () |
vector< double > | GetVolume () |
retruns the bin volume vector. More... | |
double | GetVolume (int i) |
retruns the ith bin volume vector. More... | |
double | GetSurface () |
retruns the bin surface More... | |
int | GetNumberOfVolume () |
void | SetSurface (double S, bool Inc=false) |
Set the bin surface. More... | |
void | SetVolume (double V, int i=0, bool Inc=false) |
set the bin volume of ith partial bin. More... | |
void | SetBinVolume (vector< double > V) |
Set volume(s) to bin(s) More... | |
Private Attributes | |
vector< vector< TallyBin * > > | fLevel |
array of array of TallyBin. More... | |
vector< vector< bool > > | fHasPosition |
flag to know if a given cell has restricted positions in a lattice More... | |
vector< vector< string > > | fPosition |
array of the positions of each cell in each level. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from TallyBin | |
TallyBin (int celltype, vector< double > vol, double surf) | |
used by Copy constructor of daugthers classes More... | |
Protected Attributes inherited from TallyBin | |
int | fCellType |
type of the bin (-1=unknown, 0=surface, 1=cell) More... | |
vector< double > | fVolume |
bin volume vector (1 value except for LatticeBin or Universe) More... | |
double | fSurface |
bin surface More... | |
Define Lattice Cell type bin.
This is only defined for Universe and Fill cells definition For exemple: (2 3 < (4 5) < 6) which means that the bin considers cells 2 or 3 when they are inside cells 4 or 5, only when those latter one are in cell 6
LatticeBin::LatticeBin | ( | const LatticeBin & | b | ) |
Copy constructor.
LatticeBin::LatticeBin | ( | int | universe | ) |
Build a Lattice Bin based on the universe shorthand.
LatticeBin::~LatticeBin | ( | ) |
Destructor.
void LatticeBin::Add | ( | Cell * | C, |
int | InclusionLevel = 0 , |
||
string | pos = "" |
||
) |
Add the Cell C in a given Level. For exemple, in (1 2 < 3), cells 1 and 2 are at level 0, cell 3 is at level 1
C | : the cell to add |
InclusionLevel | : the level at which it is insert |
pos | : overload dummy (?) |
void LatticeBin::Add | ( | TallyBin * | theTallyBin, |
int | InclusionLevel = 0 |
||
) |
void LatticeBin::Add | ( | int | universe, |
int | InclusionLevel = 0 |
||
) |
Add a universe shortcut as bin to a LatticeBin.
void LatticeBin::AddContainer | ( | TallyBin * | theTallyBin | ) |
Add a TallyBinin a new outer level.
void LatticeBin::AddContainer | ( | int | universe | ) |
Add a universe shortcut in a new outer level.
|
inline |
Returns the fLevel vector, (used in Tally::SetBinVolume();)
|
virtual |
whether or not the cell/suface "num" is in the bin
Reimplemented from TallyBin.
|
inlinevirtual |
This is a LatticeBin.
Reimplemented from TallyBin.
|
virtual |
Print the LatticeBin in MCNP.
Reimplemented from TallyBin.
|
virtual |
Print the LatticeBin list of volume in MCNP.
Reimplemented from TallyBin.
|
private |
flag to know if a given cell has restricted positions in a lattice
|
private |
array of the positions of each cell in each level.