A monte carlo pin cell spectral code for nuclear engineering applications.
|
The region class represents a region in 2D space. More...
#include "src/pinspec/Region.h"
Public Member Functions | |
Region (const char *region_name=(char *)"") | |
Region constructor. More... | |
virtual | ~Region () |
Empty destructor allows SWIG to cleanup memory for surfaces. More... | |
char * | getName () |
Return the name of the region. More... | |
int | getUid () const |
Returns the unique ID auto-generated for the region. More... | |
Material * | getMaterial () |
Returns a pointer to the material filling this region. More... | |
bool | containsIsotope (Isotope *isotope) |
Determines whether this region contains a particular isotope. More... | |
regionType | getRegionType () |
Return the type of region. More... | |
float | getVolume () |
returns the volume of this Region ![]() | |
float | getBucklingSquared () |
Returns the squared geometric buckling. More... | |
float | getTotalMacroXS (float energy) |
Computes and returns the total macroscopic cross-section in the region at some energy (eV). More... | |
float | getTotalMacroXS (int energy_index) |
Computes and returns the total macroscopic cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getTotalMicroXS (float energy) |
Computes and returns the total microscopic cross-section in the region at some energy (eV). More... | |
float | getTotalMicroXS (int energy_index) |
Computes and returns the total microscopic cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getElasticMacroXS (float energy) |
Computes and returns the macroscopic elastic scattering cross-section in the region at some energy (eV). More... | |
float | getElasticMacroXS (int energy_index) |
Computes and returns the macroscopic elastic scattering cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getElasticMicroXS (float energy) |
Computes and returns the microscopic elastic scattering cross-section in the region at some energy (eV). More... | |
float | getElasticMicroXS (int energy_index) |
Computes and returns the microscopic elastic scattering cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getAbsorptionMacroXS (float energy) |
Computes and returns the macroscopic absorption cross-section in the region at energy (eV). More... | |
float | getAbsorptionMacroXS (int energy_index) |
Computes and returns the macroscopic absorption cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getAbsorptionMicroXS (float energy) |
Computes and returns the microscopic absorption cross-section in the region at some energy (eV). More... | |
float | getAbsorptionMicroXS (int energy_index) |
Computes and returns the microscopic absorption cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getCaptureMacroXS (float energy) |
Computes and returns the macroscopic capture cross-section in the region at some energy (eV). More... | |
float | getCaptureMacroXS (int energy_index) |
Computes and returns the macroscopic capture cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getCaptureMicroXS (float energy) |
Computes and returns the microscopic capture cross-section in the region at some energy (eV). More... | |
float | getCaptureMicroXS (int energy_index) |
Computes and returns the microscopic capture cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getFissionMacroXS (float energy) |
Computes and returns the macroscopic fission cross-section in the region at some energy (eV). More... | |
float | getFissionMacroXS (int energy_index) |
Computes and returns the macroscopic fission cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getFissionMicroXS (float energy) |
Computes and returns the microscopic fission cross-section in the region at some energy (eV) More... | |
float | getFissionMicroXS (int energy_index) |
Computes and returns the microscopic fission cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getTransportMicroXS (float energy) |
Computes and returns the microscopic transport cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getTransportMicroXS (int energy_index) |
Computes and returns the microscopic transport cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getTransportMacroXS (float energy) |
Computes and returns the macroscopic transport cross-section in the region at some index into the uniform lethargy grid. More... | |
float | getTransportMacroXS (int energy_index) |
Computes and returns the macroscopic transport cross-section in the region at some index into the uniform lethargy grid. More... | |
void | setMaterial (Material *material) |
Set the material filling this region. More... | |
void | setVolume (float volume) |
Sets the volume for this region ![]() | |
void | setBucklingSquared (float buckling_squared) |
Sets the squared geometric buckling for the geometry. More... | |
virtual void | collideNeutron (neutron *neutron)=0 |
This method collides a neutron within the region. More... | |
Protected Attributes | |
char * | _region_name |
int | _uid |
Material * | _material |
regionType | _region_type |
float | _buckling_squared |
float | _volume |
Static Protected Attributes | |
static int | _n = 1 |
The region class represents a region in 2D space.
The region class is a superclass allowing for subclasses representing infinited media, heterogeneous/homogeneous equivalance fuel/moderator regions, or even heterogeneous regions bounded by 2D quadratic surfaces, filled by a material.
Region::Region | ( | const char * | region_name = (char*)"" | ) |
Region constructor.
Sets defaults for the geometric parameters to 0.
region_name | the (optional) name of the region |
|
virtual |
Empty destructor allows SWIG to cleanup memory for surfaces.
Destructor lets SWIG delete the materials and isotopes during garbage collection.
|
pure virtual |
This method collides a neutron within the region.
This method encapsulates all of the neutron scattering physics which is further encapsulated by the material and isotope classes. This method must be implemented for each region subclass type.
neutron | the neutron of interest |
Implemented in BoundedRegion, EquivalenceRegion, and InfiniteMediumRegion.
bool Region::containsIsotope | ( | Isotope * | isotope | ) |
Determines whether this region contains a particular isotope.
isotope | the isotope of interest |
float Region::getAbsorptionMacroXS | ( | float | energy | ) |
Computes and returns the macroscopic absorption cross-section in the region at energy (eV).
energy | the energy of interest (eV) |
float Region::getAbsorptionMacroXS | ( | int | energy_index | ) |
Computes and returns the macroscopic absorption cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getAbsorptionMicroXS | ( | float | energy | ) |
Computes and returns the microscopic absorption cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getAbsorptionMicroXS | ( | int | energy_index | ) |
Computes and returns the microscopic absorption cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getBucklingSquared | ( | ) |
Returns the squared geometric buckling.
float Region::getCaptureMacroXS | ( | float | energy | ) |
Computes and returns the macroscopic capture cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getCaptureMacroXS | ( | int | energy_index | ) |
Computes and returns the macroscopic capture cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
float Region::getCaptureMicroXS | ( | float | energy | ) |
Computes and returns the microscopic capture cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getCaptureMicroXS | ( | int | energy_index | ) |
Computes and returns the microscopic capture cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
float Region::getElasticMacroXS | ( | float | energy | ) |
Computes and returns the macroscopic elastic scattering cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getElasticMacroXS | ( | int | energy_index | ) |
Computes and returns the macroscopic elastic scattering cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getElasticMicroXS | ( | float | energy | ) |
Computes and returns the microscopic elastic scattering cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getElasticMicroXS | ( | int | energy_index | ) |
Computes and returns the microscopic elastic scattering cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getFissionMacroXS | ( | float | energy | ) |
Computes and returns the macroscopic fission cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getFissionMacroXS | ( | int | energy_index | ) |
Computes and returns the macroscopic fission cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
float Region::getFissionMicroXS | ( | float | energy | ) |
Computes and returns the microscopic fission cross-section in the region at some energy (eV)
energy | the energy of interest (eV) |
float Region::getFissionMicroXS | ( | int | energy_index | ) |
Computes and returns the microscopic fission cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
Material * Region::getMaterial | ( | ) |
Returns a pointer to the material filling this region.
char * Region::getName | ( | ) |
Return the name of the region.
regionType Region::getRegionType | ( | ) |
Return the type of region.
float Region::getTotalMacroXS | ( | float | energy | ) |
Computes and returns the total macroscopic cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getTotalMacroXS | ( | int | energy_index | ) |
Computes and returns the total macroscopic cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getTotalMicroXS | ( | float | energy | ) |
Computes and returns the total microscopic cross-section in the region at some energy (eV).
energy | the energy of interest (eV) |
float Region::getTotalMicroXS | ( | int | energy_index | ) |
Computes and returns the total microscopic cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid |
float Region::getTransportMacroXS | ( | float | energy | ) |
Computes and returns the macroscopic transport cross-section in the region at some index into the uniform lethargy grid.
energy | the energy of interest (eV) |
float Region::getTransportMacroXS | ( | int | energy_index | ) |
Computes and returns the macroscopic transport cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
float Region::getTransportMicroXS | ( | float | energy | ) |
Computes and returns the microscopic transport cross-section in the region at some index into the uniform lethargy grid.
energy | the energy of interest |
float Region::getTransportMicroXS | ( | int | energy_index | ) |
Computes and returns the microscopic transport cross-section in the region at some index into the uniform lethargy grid.
energy_index | the index into the uniform lethargy grid. |
int Region::getUid | ( | ) | const |
Returns the unique ID auto-generated for the region.
float Region::getVolume | ( | ) |
returns the volume of this Region .
void Region::setBucklingSquared | ( | float | buckling_squared | ) |
Sets the squared geometric buckling for the geometry.
This method also sets the bucklking squared for the material filling it.
buckling_squared | the squared geometric buckling |
void Region::setMaterial | ( | Material * | material | ) |
Set the material filling this region.
This method also increments the volume for the material by the volume occuppied by the region.
material | a pointer to a material |
void Region::setVolume | ( | float | volume | ) |
Sets the volume for this region .
volume | the volume occuppied by this region |
|
protected |
The squared geometric buckling
|
protected |
A pointer to the material filling the region
|
staticprotected |
A static class variable to generate a UID for each new region
|
protected |
The region's name
|
protected |
The type of region (INFINITE, EQUIVALNENCE, or BOUNDED)
|
protected |
The region's unique identifier
|
protected |
The volume occupied by the region in 2D space