MURE
Loading...
Searching...
No Matches
Public Member Functions | List of all members
MCNP::LatticeBin Class Reference

Define Lattice Cell type bin. More...

#include <MCNPTally.hxx>

Inheritance diagram for MCNP::LatticeBin:
MureLatticeBin MureTallyBin

Public Member Functions

 LatticeBin (const LatticeBin &b)=default
 Copy constructor.
 
LatticeBinClone () override
 The "Virtual Copy Constructor".
 
 LatticeBin (Cell *C, string pos="")
 Build a Lattice Bin of type Cell.
 
 LatticeBin (PinCell *C, int layeridx, string pos="")
 Build a Lattice Bin of type Cell from a PinCell layer.
 
 LatticeBin (MureTallyBin *theTallyBin)
 
 LatticeBin (int universe)
 Build a Lattice Bin of type Cell only.
 
string Print (int BeforeRparenthesis=0) override
 Print the MureTallyBin.
 
- Public Member Functions inherited from MureLatticeBin
 MureLatticeBin (const MureLatticeBin &b)
 Copy constructor.
 
 MureLatticeBin (Cell *C, string pos="")
 Build a Lattice Bin and add C in the level 0.
 
 MureLatticeBin (PinCell *C, int layeridx, string pos="")
 Build a Lattice Bin and add the layer idx of PinCell C in the level 0.
 
 MureLatticeBin (MureTallyBin *theTallyBin)
 Build a Lattice Bin and add the contents of theTallyBin in the level 0.
 
 MureLatticeBin (int universe)
 Build a Lattice Bin based on the universe shorthand and add it to level 0.
 
 ~MureLatticeBin () override
 Destructor.
 
MureTallyBinClone () override
 The "Virtual Copy Constructor".
 
bool IsLatticeBin () override
 
void Add (Cell *C, int InclusionLevel=0, string pos="")
 
void Add (PinCell *C, int layeridx, int InclusionLevel, string pos="")
 
void Add (MureTallyBin *theTallyBin, int InclusionLevel=0)
 
void Add (int universe, int InclusionLevel=0)
 Add a universe shortcut as bin to a MureLatticeBin.
 
void AddContainer (Cell *C, string pos="")
 Add a Cell in a new outer level.
 
void AddContainer (MureTallyBin *theTallyBin)
 Add a TallyBinin a new outer level.
 
void AddContainer (int universe)
 Add a universe shortcut in a new outer level.
 
string Print (int BeforeRparenthesis=0) override
 Print the MureLatticeBin in MCNP.
 
string PrintVolume () override
 Print the MureLatticeBin list of volume in MCNP.
 
bool IsInBin (int num) override
 whether or not the universe "num" is in the bin
 
bool IsInBin (Cell *C) override
 whether or not the cell C is in the bin
 
vector< vector< MureTallyBin * > > GetLevelVector ()
 
void UpdateTallyBinVolume () override
 Reread all bins and assign necessary volume.
 
- Public Member Functions inherited from MureTallyBin
 MureTallyBin (const MureTallyBin &b)
 Copy constructor.
 
 MureTallyBin ()
 Normal Construcator.
 
virtual ~MureTallyBin ()=default
 Destructor.
 
virtual MureTallyBinClone ()=0
 The "Virtual Copy Constructor".
 
virtual bool IsSimpleBin ()
 
virtual bool IsGroupBin ()
 
virtual bool IsLatticeBin ()
 
int GetType ()
 returns -1, 0, 1 or 2 in function of the bin type.
 
void SetType (int type)
 
bool IsSurfaceBin ()
 
bool IsCellBin ()
 
bool IsUniverseBin ()
 
virtual string Print (int BeforeRparenthesis=0)=0
 Print the MureTallyBin.
 
virtual string PrintVolume ()
 Print the Volume of the bin.
 
virtual bool NeedVolume ()
 
vector< double > GetVolume ()
 retruns the bin volume vector.
 
double GetVolume (int i)
 retruns the ith bin volume vector.
 
double GetSurface ()
 
int GetNumberOfVolume ()
 
void SetSurface (double S, bool Inc=false)
 Set the bin area.
 
void SetVolume (double V, int i=0, bool Inc=false)
 set the bin volume of ith partial bin.
 
virtual bool IsInBin (int num)
 
virtual bool IsInBin (Cell *C)
 
virtual bool IsInBin (Shape_ptr S)
 
void SetBinVolume (vector< double > V)
 Set volume(s) to bin(s)
 
virtual double RescanVolume ()
 
virtual void UpdateTallyBinVolume ()=0
 Reread all bins and assign necessary volume.
 
bool IsPinCellBin ()
 
void SetPinCellBin (bool flag)
 

Additional Inherited Members

- Protected Member Functions inherited from MureTallyBin
 MureTallyBin (int bintype, vector< double > vol, double surf)
 used by Copy constructor of daugthers classes
 
- Protected Attributes inherited from MureLatticeBin
vector< vector< MureTallyBin * > > fLevel
 array of array of MureTallyBin.
 
vector< vector< bool > > fHasPosition
 flag to know if a given cell has restricted positions in a lattice
 
vector< vector< string > > fPosition
 array of the positions of each cell in each level.
 
- Protected Attributes inherited from MureTallyBin
int fBinType
 type of the bin (-1=unknown, 0=surface, 1=cell, 2=universe)
 
vector< double > fVolume
 bin volume vector (1 value except for LatticeBin or Universe)
 
double fSurface
 bin surface
 
bool fIsPinCellBin
 if the cell type bin is from a PinCell
 

Detailed Description

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 This redefines the Print method.

Author
PTO
Version
1.0

Constructor & Destructor Documentation

◆ LatticeBin() [1/5]

MCNP::LatticeBin::LatticeBin ( const LatticeBin b)
default

Copy constructor.

◆ LatticeBin() [2/5]

MCNP::LatticeBin::LatticeBin ( Cell C,
string  pos = "" 
)
inline

Build a Lattice Bin of type Cell.

◆ LatticeBin() [3/5]

MCNP::LatticeBin::LatticeBin ( PinCell C,
int  layeridx,
string  pos = "" 
)
inline

Build a Lattice Bin of type Cell from a PinCell layer.

◆ LatticeBin() [4/5]

MCNP::LatticeBin::LatticeBin ( MureTallyBin theTallyBin)
inline

◆ LatticeBin() [5/5]

MCNP::LatticeBin::LatticeBin ( int  universe)
inline

Build a Lattice Bin of type Cell only.

Build a Lattice Bin based on the universe shorthand

Member Function Documentation

◆ Clone()

LatticeBin * MCNP::LatticeBin::Clone ( )
inlineoverridevirtual

The "Virtual Copy Constructor".

< Clone method

Implements MureTallyBin.

◆ Print()

string MCNP::LatticeBin::Print ( int  BeforeRparenthesis = 0)
overridevirtual

Print the MureTallyBin.

Implements MureTallyBin.


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

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