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

Define MCNP group a cell or surface bin. More...

#include <MCNPTally.hxx>

Inheritance diagram for MCNP::GroupBin:
MureGroupBin MureTallyBin

Public Member Functions

 GroupBin ()
 default constructor.
 
 GroupBin (const GroupBin &b)=default
 Copy constructor.
 
GroupBinClone () override
 The "Virtual Copy Constructor".
 
 GroupBin (Cell *C)
 Build a Group Bin of type Cell.
 
 GroupBin (PinCell *C, int layeridx)
 Build a Group Bin of type Cell from a PinCell layer.
 
 GroupBin (Shape_ptr S)
 Build a Group Bin of type Surface.
 
 GroupBin (MureTallyBin *theTallyBin)
 Build a Group Bin of type of TallyBin.
 
 GroupBin (int universe)
 Build a Group Bin based on the universe shorthand, for cell type only.
 
string Print (int BeforeRparenthesis=0) override
 Print the MureTallyBin.
 
- Public Member Functions inherited from MureGroupBin
 MureGroupBin (const MureGroupBin &b)
 Copy constructor.
 
 MureGroupBin ()
 default constructor.
 
 MureGroupBin (Cell *C)
 Build a Group Bin of type Cell and add C to the GroupBin.
 
 MureGroupBin (PinCell *C, int layeridx)
 Build a GroupBin of type Cell and add the layer idx of the PinCell to the GroupBin.
 
 MureGroupBin (Shape_ptr S)
 Build a Group Bin of type Surface and add S to the GroupBin.
 
 MureGroupBin (MureTallyBin *theTallyBin)
 Build a Group Bin with the TallyBin's type and add TallyBin contents to the GroupBin.
 
 MureGroupBin (int universe)
 Build a Group Bin based on the universe shorthand, for cell type only.
 
MureTallyBinClone () override
 The "Virtual Copy Constructor".
 
 ~MureGroupBin () override
 Destructor.
 
bool IsGroupBin () override
 
void Add (Cell *C)
 Add a Cell to a Cell type GroupBin.
 
void Add (PinCell *C, int layeridx)
 Add the layer idx of the PinCell C to the GroupBin.
 
void Add (Shape_ptr S)
 Add a Shape to a Surface type GroupBin.
 
void Add (MureTallyBin *theTallyBin)
 Add a TallyBin to a GroupBin if type are compatible.
 
void Add (int universe)
 Add a universe shortcut as bin to a GroupBin if type are compatible.
 
string Print (int BeforeRparenthesis=0) override
 Print the GroupBin (dummy)
 
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
 
bool IsInBin (Shape_ptr S) override
 whether or not the Shape S is in the bin
 
double RescanVolume () override
 Reread all bins and assign necessary volume when known.
 
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 MureGroupBin
vector< MureTallyBin * > fBin
 the TallyBin vector
 
- 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 MCNP group a cell or surface bin.

That is to say, only one bin for a list of Cells or Surfaces.

Note that a GroupBin is either a Cell type either a Surface type but not both. This redefines the Print method.

Author
PTO
Version
1.0

Constructor & Destructor Documentation

◆ GroupBin() [1/7]

MCNP::GroupBin::GroupBin ( )
inline

default constructor.

◆ GroupBin() [2/7]

MCNP::GroupBin::GroupBin ( const GroupBin b)
default

Copy constructor.

◆ GroupBin() [3/7]

MCNP::GroupBin::GroupBin ( Cell C)
inline

Build a Group Bin of type Cell.

◆ GroupBin() [4/7]

MCNP::GroupBin::GroupBin ( PinCell C,
int  layeridx 
)
inline

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

◆ GroupBin() [5/7]

MCNP::GroupBin::GroupBin ( Shape_ptr  S)
inline

Build a Group Bin of type Surface.

◆ GroupBin() [6/7]

MCNP::GroupBin::GroupBin ( MureTallyBin theTallyBin)
inline

Build a Group Bin of type of TallyBin.

◆ GroupBin() [7/7]

MCNP::GroupBin::GroupBin ( int  universe)
inline

Build a Group Bin based on the universe shorthand, for cell type only.

Member Function Documentation

◆ Clone()

GroupBin * MCNP::GroupBin::Clone ( )
inlineoverridevirtual

The "Virtual Copy Constructor".

< Clone method

Implements MureTallyBin.

◆ Print()

string MCNP::GroupBin::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