MURE
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
MureSimpleBin Class Reference

Define a general Simple Tally Bin (cell, universe or surface). More...

#include <MureSimpleBin.hxx>

Inheritance diagram for MureSimpleBin:
MureTallyBin MCNP::SimpleBin Serpent::SimpleBin

Public Member Functions

 MureSimpleBin (const MureSimpleBin &b)
 Copy constructor.
 
 MureSimpleBin (Cell *C)
 Build a Simple Bin of type Cell and set C to the bin.
 
 MureSimpleBin (PinCell *C, int layeridx)
 Build a Simple Bin of type Cell and set the layer idx of the PinCell to the bin.
 
 MureSimpleBin (Shape_ptr S)
 Build a Simple Bin of type Surface and put S to the bin.
 
 MureSimpleBin (int universe)
 Build a Simple Bin based on the universe shorthand, for cell type only.
 
 MureSimpleBin ()
 Build a Simple Bin of unknown type (the MureSimpleBin::Add() will decide).
 
MureTallyBinClone () override
 The "Virtual Copy Constructor".
 
 ~MureSimpleBin () override=default
 Destructor.
 
void Add (Shape_ptr S)
 Set a Shape_ptr to a Simple Bin (Surface tally)
 
void Add (Cell *C)
 Set a cell to a SimpleBin.
 
void Add (PinCell *C, int layeridx)
 Set a Pincell layer (or surrounding material) to a Simple Bin.
 
void Add (int universe)
 Set a univers to a Simple Bin (and store cells number where the universe is defined)
 
bool IsSimpleBin () override
 
string Print (int BeforeRparenthesis=0) override
 Print the Simple Bin (dummy)
 
string PrintVolume () override
 Print the Simple Bin Volume(s) for SD cards in MCNP or dv card in Serpent.
 
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
 
int GetBinContent (int i)
 
double RescanVolume () override
 Reread bin and assign necessary volume when known.
 
CellGetCell ()
 
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)
 

Protected Attributes

CellfCell
 the Cell of a Cell type simple bin
 
Shape_ptr fShape
 the Shape of a Surface type simple bin
 
int fBin
 the Cell/Surface/Universe num contains in the tally bin
 
vector< int > fCellNumber
 Only use to store cell number for universe bin.
 
- 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
 

Additional Inherited Members

- Protected Member Functions inherited from MureTallyBin
 MureTallyBin (int bintype, vector< double > vol, double surf)
 used by Copy constructor of daugthers classes
 

Detailed Description

Define a general Simple Tally Bin (cell, universe or surface).

A MureSimpleBin store only 1 Cell, or 1 Shape or 1 universe. It is simple!

WARNING: The surface for surface bin is not fully implemented and yet not tested.

See also
MureTallyBin
MureGroupBin
MureLatticeBin
User Guide
Author
PTO
J. Hajnrych
Version
1.0 Define a Simple Bin.

It could be either a Cell number or a Surface Number (in the latter case it could be a surface list if the Shape is defined by more than one surface.

Author
PTO
Version
1.0

Constructor & Destructor Documentation

◆ MureSimpleBin() [1/6]

MureSimpleBin::MureSimpleBin ( const MureSimpleBin b)

Copy constructor.

◆ MureSimpleBin() [2/6]

MureSimpleBin::MureSimpleBin ( Cell C)

Build a Simple Bin of type Cell and set C to the bin.

◆ MureSimpleBin() [3/6]

MureSimpleBin::MureSimpleBin ( PinCell C,
int  layeridx 
)

Build a Simple Bin of type Cell and set the layer idx of the PinCell to the bin.

◆ MureSimpleBin() [4/6]

MureSimpleBin::MureSimpleBin ( Shape_ptr  S)

Build a Simple Bin of type Surface and put S to the bin.

◆ MureSimpleBin() [5/6]

MureSimpleBin::MureSimpleBin ( int  universe)

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

◆ MureSimpleBin() [6/6]

MureSimpleBin::MureSimpleBin ( )

Build a Simple Bin of unknown type (the MureSimpleBin::Add() will decide).

◆ ~MureSimpleBin()

MureSimpleBin::~MureSimpleBin ( )
overridedefault

Destructor.

Member Function Documentation

◆ Add() [1/4]

void MureSimpleBin::Add ( Cell C)

Set a cell to a SimpleBin.

◆ Add() [2/4]

void MureSimpleBin::Add ( int  universe)

Set a univers to a Simple Bin (and store cells number where the universe is defined)

◆ Add() [3/4]

void MureSimpleBin::Add ( PinCell C,
int  layeridx 
)

Set a Pincell layer (or surrounding material) to a Simple Bin.

◆ Add() [4/4]

void MureSimpleBin::Add ( Shape_ptr  S)

Set a Shape_ptr to a Simple Bin (Surface tally)

◆ Clone()

MureTallyBin * MureSimpleBin::Clone ( )
inlineoverridevirtual

The "Virtual Copy Constructor".

< Clone method

Implements MureTallyBin.

Reimplemented in MCNP::SimpleBin, and Serpent::SimpleBin.

◆ GetBinContent()

int MureSimpleBin::GetBinContent ( int  i)
inline

< return the Cell/Surface/Universe num contains in the tally bin

◆ GetCell()

Cell * MureSimpleBin::GetCell ( )
inline

< return the Cell of a Cell type simple bin

◆ IsInBin() [1/3]

bool MureSimpleBin::IsInBin ( Cell C)
overridevirtual

whether or not the cell C is in the bin

Reimplemented from MureTallyBin.

◆ IsInBin() [2/3]

bool MureSimpleBin::IsInBin ( int  num)
overridevirtual

whether or not the universe "num" is in the bin

Reimplemented from MureTallyBin.

◆ IsInBin() [3/3]

bool MureSimpleBin::IsInBin ( Shape_ptr  S)
overridevirtual

whether or not the shape S is in the bin

Reimplemented from MureTallyBin.

◆ IsSimpleBin()

bool MureSimpleBin::IsSimpleBin ( )
inlineoverridevirtual

< This is a Simple Bin

Reimplemented from MureTallyBin.

◆ Print()

string MureSimpleBin::Print ( int  BeforeRparenthesis = 0)
overridevirtual

Print the Simple Bin (dummy)

Implements MureTallyBin.

Reimplemented in Serpent::SimpleBin, and MCNP::SimpleBin.

◆ PrintVolume()

string MureSimpleBin::PrintVolume ( )
overridevirtual

Print the Simple Bin Volume(s) for SD cards in MCNP or dv card in Serpent.

Reimplemented from MureTallyBin.

◆ RescanVolume()

double MureSimpleBin::RescanVolume ( )
overridevirtual

Reread bin and assign necessary volume when known.

Reimplemented from MureTallyBin.

◆ UpdateTallyBinVolume()

void MureSimpleBin::UpdateTallyBinVolume ( )
overridevirtual

Reread all bins and assign necessary volume.

Implements MureTallyBin.

Member Data Documentation

◆ fBin

int MureSimpleBin::fBin
protected

the Cell/Surface/Universe num contains in the tally bin

◆ fCell

Cell* MureSimpleBin::fCell
protected

the Cell of a Cell type simple bin

◆ fCellNumber

vector< int > MureSimpleBin::fCellNumber
protected

Only use to store cell number for universe bin.

◆ fShape

Shape_ptr MureSimpleBin::fShape
protected

the Shape of a Surface type simple bin


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

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