MURE
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | Private Attributes | List of all members
ReactorChannel Class Reference

This is a MURE compound or multi-cellular object. More...

#include <ReactorChannel.hxx>

Public Member Functions

 ReactorChannel (int nzones=1, bool Hex=false, bool Maillage=false)
 Constructor standard //, double GazSpace. More...
 
 ~ReactorChannel ()
 Delete standard. More...
 
void CreateShapes ()
 Create the Shapes of the Reactor Channel. More...
 
void CreateCells ()
 Create the Cells. (Maybe need to do this later with all other reactor channels). More...
 
double GetRodRadius ()
 returns the fuel rod radius More...
 
double GetCladdRadius ()
 returns the cladding radius More...
 
double GetHeight ()
 returns the height More...
 
double GetHeightStep ()
 returns the height step More...
 
double GetSide ()
 returns the side value More...
 
double GetSurface ()
 returns the global surface value More...
 
bool IsHexagon ()
 returns whether channel is a hexagon More...
 
void Translate (double dx, double dy, double dz)
 translates the channel by dx, dy and dz More...
 
void Rotate (double phi, double theta=0, double psi=0, double *center=0)
 translates the channel by dx, dy and dz More...
 
void CalculateGlobalSurface ()
 Calculates surface of rod (coolant+clad+fuel) More...
 
void SetSource (int ParticlesNumber, int ActivesCycles, int InactivesCycles)
 Sets the source. More...
 
void SetVolumeSource ()
 Makes it a volume source. More...
 
void SetDimensions (double FuelRadius, double CladRadius, double VoidRadius, double Height, double Side, double ASide=0)
 Set the channels dimensions. More...
 
void SetMaterials (Material *Fuel, Material *Cladding, Material *Coolant)
 Set the Channel Materials. More...
 
void SetCenteredPosition (double dx=0., double dy=0.)
 Horizontal deviation of the center of first meshing rod (allows correct geometry without cutting rods at border) More...
 
void AddGuideTube (int dx, int dy, int dz=-1, int NumOfGuideTube=0)
 Add a guide tube in meshed geometry : relative position with regard to the center - If dz isn't gived it's constructed on all z axis (for z only : 0 is at the bottom) More...
 
void SetNumberOfDifferentGuideTube (int NumberOfDifferentGuideTube)
 
void SetGuideTubeDimensions (double InnerRadius, double OuterRadius, int NumOfGuideTube=0)
 Set the guide tubes dimensions. More...
 
void SetGuideTubeMaterials (Material *IntGuideTubesMat, Material *GuideTubesMat, Material *OutGuideTubesMat, int TubeNumber=0)
 Set the guide tube materials. More...
 
void SetGuideTubeMaterials (Material *IntGuideTubesMat, Material *GuideTubesMat, int TubeNumber=0)
 Set the guide tube materials - Simplified version : coolant guide = coolant ; no variation of temp in axial cells of Guide interior and Guide tube. More...
 
void SetNumberOfFuelRods (int N)
 Set the number of fuel pins in the assembly (used for simplified geometry : the same rod in all the assembly is considered for TH) More...
 
int GetNumberOfFuelRods ()
 returns the number of fuel pins in the assembly (used for simplified geometry !!!) More...
 
void CreateGeometry ()
 Create the geometry. If more than 1 reactor channel, then shapes should be done before cells. More...
 
void SetExternalShape (Shape_ptr TheShape, int Nx=-1, int Ny=-1)
 Method to pass an external shape to be paved by this reactor channel. More...
 
void SetZone (int z)
 
int GetZone ()
 
int GetNZones ()
 returns number of cells in the z direction (determined by user at launch) More...
 
int GetRangesOfAssembly (int N)
 returns range number in a direction in the assembly for the meshing (REP : 17x17 so range go from -9 to 9) More...
 
bool IsCoolantInGuideTube ()
 returns value of fCoolantInGuideTube More...
 
void SetCoolantDensityProfile (vector< double > Densities)
 
void SetCoolantTemperatureProfile (vector< double > Temps)
 
void SetFuelTemperatureProfile (vector< double > Temps)
 
void SetReactorChannelNumber (int Number=0)
 Set the number. More...
 
int GetReactorChannelNumber ()
 Get the number. More...
 
void SetSpatialZ (bool spatz=true)
 set if Z spatial variables are needed or not More...
 
vector< Cell * > GetFuelCells ()
 Return a vector of the fuel rod cells. More...
 
void SetNumberOfRodToRemove (int NumberOfRodRemoved)
 

Private Attributes

int * fNumberOfGuideTubeWithThisNum
 
int fNumberOfDifferentGuideTube
 
int fNumberOfRodRemoved
 
double fFuelRadius
 The radius of the fuel rod. More...
 
double fCladRadius
 The radius of the cladding. More...
 
double fVoidRadius
 The void radius, if there is a void in the middle of each rod (0 if not). More...
 
double * fGuideTubeInnerRadius
 The inner radius of guide tubes. More...
 
double * fGuideTubeOuterRadius
 The outer radius of guide tubes. More...
 
double fHeight
 The height of the channel. More...
 
double fHeightStep
 The height step of channels. More...
 
double fSide
 The side dimension. More...
 
double fASide
 The assembly side dimension for the case that Maillage is required. More...
 
double fAssemblySide
 The assembly side dimension (tube guide case) More...
 
int fXNumberOfPins
 Number of pins in X axis. More...
 
int fYNumberOfPins
 Number of pins in Y axis. More...
 
double fSurface
 Global surface of rod. More...
 
double fXDeviation
 X translation of the center pin (instead of begining the mesh on 0,0,0) More...
 
double fYDeviation
 Y translation of the center pin. More...
 
bool fHexagon
 Whether the channel is hexagonal (default is Cuboid) More...
 
bool fMaillage
 Whether we are going to use the channel to make a pavage of an assembly. More...
 
bool fGuideTube
 default value = false ; if true : guide tube constuctor actived More...
 
bool fCoolantInGuideTube
 default value = false ; if true : it means coolant material is putted in exterior of guide tube cell More...
 
int fNZones
 The number of cells in the z direction (default = 1) More...
 
bool fExternalShape
 If we provde the shape from the outside or build it inside (default=false) More...
 
bool fVoid
 Is there a void in the middle of the fuel rods? (default = no) More...
 
int fZone
 The cell group zone that the reactor channel sits. More...
 
int fNumberOfFuelRodsInAssembly
 number of fuel pins in the assembly (used for simplified geometry !!! : the same rod in all the assembly) More...
 
vector< Material * > fFuels
 the fuel materials More...
 
vector< Material * > fCoolants
 the coolant materials More...
 
vector< Material * > fCladdings
 the cladding materials More...
 
vector< vector< Material * > > fIntGuideTubesMat
 the inside guide tube materials (coolant or control black or grey rod) More...
 
vector< vector< Material * > > fGuideTubesMat
 the guide tube materials (generally Zry4) More...
 
vector< Material * > fOutGuideTubesMat
 the ouside guide tube materials (coolant material quite like fCoolants) More...
 
MaterialfVoidMat
 the material inside the fuel rods with a void More...
 
vector< double > fTranslations
 the distances to translate the segments More...
 
vector< int > fXpos
 relative guide tube X position with regard to the center More...
 
vector< int > fYpos
 relative guide tube Y position with regard to the center More...
 
vector< int > fZpos
 relative guide tube Z position with regard to the center More...
 
Shape_ptrfSegments
 contains the water More...
 
Shape_ptrfPavages
 the paving shapes More...
 
Shape_ptrfRods
 the rods More...
 
Shape_ptrfVoids
 the voids, if fuel rods are hollow More...
 
Shape_ptrfCladdingTubes
 the tubes containing the cladding More...
 
Shape_ptrfExtCladdingTubes
 and their exteriors More...
 
Shape_ptr ** fIntGuideTubes
 interior of guide tube : can be coolant or control black or grey rods More...
 
Shape_ptr ** fGuideTubes
 guide tube structure More...
 
Shape_ptr ** fExtGuideTubes
 exterior of the guide tube : "same" coolant as neighbor cells More...
 
Shape_ptr fExterior
 The outside of everything. More...
 
vector< Cell * > fsegments
 contains the water More...
 
vector< Cell * > fpavages
 
vector< Cell * > frods
 contains the fuel More...
 
vector< Cell * > fvoids
 void in the center of rods (if needed) More...
 
vector< Cell * > fcladdingtubes
 cladding More...
 
vector< Cell * > fextcladdingtubes
 
vector< Cell * > fintguidetube
 inside guide tube More...
 
vector< Cell * > fguidetubes
 cladding More...
 
vector< Cell * > fextguidetubes
 outside guide tube More...
 
Cellfexterior
 
bool fSpatialZ
 Is true if we want separate Z spatial variables. More...
 
int fReactorChannelNumber
 The number of this reactor channel. More...
 
bool fVolumeSource
 

Detailed Description

This is a MURE compound or multi-cellular object.

This Object defines the geometry for a basic square or hexagonal reactor channel with cylindrical fuel rod & cladding, split up into N sections in the Z direction.

Author
JNW
Nico*
Version
1.0

Constructor & Destructor Documentation

ReactorChannel::ReactorChannel ( int  nzones = 1,
bool  Hex = false,
bool  Maillage = false 
)

Constructor standard //, double GazSpace.

ReactorChannel::~ReactorChannel ( )

Delete standard.

Member Function Documentation

void ReactorChannel::AddGuideTube ( int  dx,
int  dy,
int  dz = -1,
int  NumOfGuideTube = 0 
)

Add a guide tube in meshed geometry : relative position with regard to the center - If dz isn't gived it's constructed on all z axis (for z only : 0 is at the bottom)

void ReactorChannel::CalculateGlobalSurface ( )

Calculates surface of rod (coolant+clad+fuel)

void ReactorChannel::CreateCells ( )

Create the Cells. (Maybe need to do this later with all other reactor channels).

void ReactorChannel::CreateGeometry ( )
inline

Create the geometry. If more than 1 reactor channel, then shapes should be done before cells.

void ReactorChannel::CreateShapes ( )

Create the Shapes of the Reactor Channel.

double ReactorChannel::GetCladdRadius ( )
inline

returns the cladding radius

vector<Cell*> ReactorChannel::GetFuelCells ( )
inline

Return a vector of the fuel rod cells.

double ReactorChannel::GetHeight ( )
inline

returns the height

double ReactorChannel::GetHeightStep ( )
inline

returns the height step

int ReactorChannel::GetNumberOfFuelRods ( )
inline

returns the number of fuel pins in the assembly (used for simplified geometry !!!)

int ReactorChannel::GetNZones ( )
inline

returns number of cells in the z direction (determined by user at launch)

int ReactorChannel::GetRangesOfAssembly ( int  N)

returns range number in a direction in the assembly for the meshing (REP : 17x17 so range go from -9 to 9)

int ReactorChannel::GetReactorChannelNumber ( )
inline

Get the number.

double ReactorChannel::GetRodRadius ( )
inline

returns the fuel rod radius

double ReactorChannel::GetSide ( )
inline

returns the side value

double ReactorChannel::GetSurface ( )
inline

returns the global surface value

int ReactorChannel::GetZone ( )
inline
bool ReactorChannel::IsCoolantInGuideTube ( )
inline

returns value of fCoolantInGuideTube

bool ReactorChannel::IsHexagon ( )
inline

returns whether channel is a hexagon

void ReactorChannel::Rotate ( double  phi,
double  theta = 0,
double  psi = 0,
double *  center = 0 
)

translates the channel by dx, dy and dz

void ReactorChannel::SetCenteredPosition ( double  dx = 0.,
double  dy = 0. 
)
inline

Horizontal deviation of the center of first meshing rod (allows correct geometry without cutting rods at border)

void ReactorChannel::SetCoolantDensityProfile ( vector< double >  Densities)
void ReactorChannel::SetCoolantTemperatureProfile ( vector< double >  Temps)
void ReactorChannel::SetDimensions ( double  FuelRadius,
double  CladRadius,
double  VoidRadius,
double  Height,
double  Side,
double  ASide = 0 
)

Set the channels dimensions.

void ReactorChannel::SetExternalShape ( Shape_ptr  TheShape,
int  Nx = -1,
int  Ny = -1 
)

Method to pass an external shape to be paved by this reactor channel.

void ReactorChannel::SetFuelTemperatureProfile ( vector< double >  Temps)
void ReactorChannel::SetGuideTubeDimensions ( double  InnerRadius,
double  OuterRadius,
int  NumOfGuideTube = 0 
)

Set the guide tubes dimensions.

void ReactorChannel::SetGuideTubeMaterials ( Material IntGuideTubesMat,
Material GuideTubesMat,
Material OutGuideTubesMat,
int  TubeNumber = 0 
)

Set the guide tube materials.

void ReactorChannel::SetGuideTubeMaterials ( Material IntGuideTubesMat,
Material GuideTubesMat,
int  TubeNumber = 0 
)

Set the guide tube materials - Simplified version : coolant guide = coolant ; no variation of temp in axial cells of Guide interior and Guide tube.

void ReactorChannel::SetMaterials ( Material Fuel,
Material Cladding,
Material Coolant 
)

Set the Channel Materials.

void ReactorChannel::SetNumberOfDifferentGuideTube ( int  NumberOfDifferentGuideTube)
void ReactorChannel::SetNumberOfFuelRods ( int  N)
inline

Set the number of fuel pins in the assembly (used for simplified geometry : the same rod in all the assembly is considered for TH)

void ReactorChannel::SetNumberOfRodToRemove ( int  NumberOfRodRemoved)
inline
void ReactorChannel::SetReactorChannelNumber ( int  Number = 0)
inline

Set the number.

void ReactorChannel::SetSource ( int  ParticlesNumber,
int  ActivesCycles,
int  InactivesCycles 
)

Sets the source.

void ReactorChannel::SetSpatialZ ( bool  spatz = true)
inline

set if Z spatial variables are needed or not

void ReactorChannel::SetVolumeSource ( )
inline

Makes it a volume source.

void ReactorChannel::SetZone ( int  z)
inline
void ReactorChannel::Translate ( double  dx,
double  dy,
double  dz 
)

translates the channel by dx, dy and dz

Member Data Documentation

double ReactorChannel::fASide
private

The assembly side dimension for the case that Maillage is required.

double ReactorChannel::fAssemblySide
private

The assembly side dimension (tube guide case)

vector<Material*> ReactorChannel::fCladdings
private

the cladding materials

Shape_ptr* ReactorChannel::fCladdingTubes
private

the tubes containing the cladding

vector<Cell*> ReactorChannel::fcladdingtubes
private

cladding

double ReactorChannel::fCladRadius
private

The radius of the cladding.

bool ReactorChannel::fCoolantInGuideTube
private

default value = false ; if true : it means coolant material is putted in exterior of guide tube cell

vector<Material*> ReactorChannel::fCoolants
private

the coolant materials

Shape_ptr* ReactorChannel::fExtCladdingTubes
private

and their exteriors

vector<Cell*> ReactorChannel::fextcladdingtubes
private
Shape_ptr ReactorChannel::fExterior
private

The outside of everything.

Cell* ReactorChannel::fexterior
private
bool ReactorChannel::fExternalShape
private

If we provde the shape from the outside or build it inside (default=false)

Shape_ptr** ReactorChannel::fExtGuideTubes
private

exterior of the guide tube : "same" coolant as neighbor cells

vector<Cell*> ReactorChannel::fextguidetubes
private

outside guide tube

double ReactorChannel::fFuelRadius
private

The radius of the fuel rod.

vector<Material*> ReactorChannel::fFuels
private

the fuel materials

bool ReactorChannel::fGuideTube
private

default value = false ; if true : guide tube constuctor actived

double* ReactorChannel::fGuideTubeInnerRadius
private

The inner radius of guide tubes.

double* ReactorChannel::fGuideTubeOuterRadius
private

The outer radius of guide tubes.

Shape_ptr** ReactorChannel::fGuideTubes
private

guide tube structure

vector<Cell*> ReactorChannel::fguidetubes
private

cladding

vector< vector <Material*> > ReactorChannel::fGuideTubesMat
private

the guide tube materials (generally Zry4)

double ReactorChannel::fHeight
private

The height of the channel.

double ReactorChannel::fHeightStep
private

The height step of channels.

bool ReactorChannel::fHexagon
private

Whether the channel is hexagonal (default is Cuboid)

vector<Cell*> ReactorChannel::fintguidetube
private

inside guide tube

Shape_ptr** ReactorChannel::fIntGuideTubes
private

interior of guide tube : can be coolant or control black or grey rods

vector< vector <Material*> > ReactorChannel::fIntGuideTubesMat
private

the inside guide tube materials (coolant or control black or grey rod)

bool ReactorChannel::fMaillage
private

Whether we are going to use the channel to make a pavage of an assembly.

int ReactorChannel::fNumberOfDifferentGuideTube
private
int ReactorChannel::fNumberOfFuelRodsInAssembly
private

number of fuel pins in the assembly (used for simplified geometry !!! : the same rod in all the assembly)

int* ReactorChannel::fNumberOfGuideTubeWithThisNum
private
int ReactorChannel::fNumberOfRodRemoved
private
int ReactorChannel::fNZones
private

The number of cells in the z direction (default = 1)

vector<Material*> ReactorChannel::fOutGuideTubesMat
private

the ouside guide tube materials (coolant material quite like fCoolants)

Shape_ptr* ReactorChannel::fPavages
private

the paving shapes

vector<Cell*> ReactorChannel::fpavages
private
int ReactorChannel::fReactorChannelNumber
private

The number of this reactor channel.

Shape_ptr* ReactorChannel::fRods
private

the rods

vector<Cell*> ReactorChannel::frods
private

contains the fuel

Shape_ptr* ReactorChannel::fSegments
private

contains the water

vector<Cell*> ReactorChannel::fsegments
private

contains the water

double ReactorChannel::fSide
private

The side dimension.

bool ReactorChannel::fSpatialZ
private

Is true if we want separate Z spatial variables.

double ReactorChannel::fSurface
private

Global surface of rod.

vector<double> ReactorChannel::fTranslations
private

the distances to translate the segments

bool ReactorChannel::fVoid
private

Is there a void in the middle of the fuel rods? (default = no)

Material* ReactorChannel::fVoidMat
private

the material inside the fuel rods with a void

double ReactorChannel::fVoidRadius
private

The void radius, if there is a void in the middle of each rod (0 if not).

Shape_ptr* ReactorChannel::fVoids
private

the voids, if fuel rods are hollow

vector<Cell*> ReactorChannel::fvoids
private

void in the center of rods (if needed)

bool ReactorChannel::fVolumeSource
private
double ReactorChannel::fXDeviation
private

X translation of the center pin (instead of begining the mesh on 0,0,0)

int ReactorChannel::fXNumberOfPins
private

Number of pins in X axis.

vector<int> ReactorChannel::fXpos
private

relative guide tube X position with regard to the center

double ReactorChannel::fYDeviation
private

Y translation of the center pin.

int ReactorChannel::fYNumberOfPins
private

Number of pins in Y axis.

vector<int> ReactorChannel::fYpos
private

relative guide tube Y position with regard to the center

int ReactorChannel::fZone
private

The cell group zone that the reactor channel sits.

vector<int> ReactorChannel::fZpos
private

relative guide tube Z position with regard to the center


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

MURE Project, documentation generated by Doxygen 1.8.5 - Mon Nov 17 2014