22 #define _USE_MATH_DEFINES
77 Region(
const char* region_name=(
char*)
"");
212 float* prob_energies,
int num_prob);
294 bool contains(
float x,
float y,
float z);
The EquivalenceFuelRegion is a fuel region treated using the heterogenous-homogeneous equivalence the...
Definition: Region.h:235
The BoundedFuelRegion is a circular fuel pin region bounded by the interior halfspace of a circle sur...
Definition: Region.h:315
void collideNeutron(neutron *neutron)
This method collides a neutron within the region.
Definition: Region.cpp:422
float getTransportMacroXS(float energy)
Computes and returns the macroscopic transport cross-section in the region at some index into the uni...
Definition: Region.cpp:349
Represents a neutron in a PINSPEC simulation.
Definition: Neutron.h:27
float getTotalMicroXS(float energy)
Computes and returns the total microscopic cross-section in the region at some energy (eV)...
Definition: Region.cpp:129
void setVolume(float volume)
Sets the volume for this region .
Definition: Region.cpp:369
float getAbsorptionMacroXS(float energy)
Computes and returns the macroscopic absorption cross-section in the region at energy (eV)...
Definition: Region.cpp:195
float getTotalMacroXS(float energy)
Computes and returns the total macroscopic cross-section in the region at some energy (eV)...
Definition: Region.cpp:107
Material * getMaterial()
Returns a pointer to the material filling this region.
Definition: Region.cpp:59
void setPinCellPitch(float pitch)
Sets the pin cell pitch.
Definition: Region.cpp:607
float getFuelPinRadius()
Returns the fuel pin radius.
Definition: Region.cpp:460
float getPinCellPitch()
Returns the pin cell pitch.
Definition: Region.cpp:469
int _num_prob
Definition: Region.h:191
BoundedModeratorRegion(const char *region_name=(char *)"")
BoundedModeratorRegion constructor.
Definition: Region.cpp:1012
char * _region_name
Definition: Region.h:62
The Surface represents a quadratic surface in the xy-plane.
Definition: Surface.h:73
EquivalenceFuelRegion(const char *region_name=(char *)"")
EquivalenceFuelRegion constructor.
Definition: Region.cpp:738
The Equivalence Region is a fuel or moderator region treated using the heterogenous-homogeneous equiv...
Definition: Region.h:170
float * _prob_ff
Definition: Region.h:185
The Isotope represents a nuclide at some temperature.
Definition: Isotope.h:41
int getEnergyGridIndex(float lethargy)
This method returns the index for a certain lethargy (log10(eV)) into the uniform lethargy grid of th...
Definition: Region.cpp:484
The BoundedModeratorRegion is a the space defined four surfaces bounding a square pin minus a circula...
Definition: Region.h:339
BoundedFuelRegion(const char *region_name=(char *)"")
BoundedFuelRegion constructor.
Definition: Region.cpp:988
BoundedGeneralRegion(const char *region_name=(char *)"")
BoundedGeneralRegion constructor.
Definition: Region.cpp:1036
float getBucklingSquared()
Returns the squared geometric buckling.
Definition: Region.cpp:96
The InfiniteMediumRegion is a homogenized region treated without geometric effects.
Definition: Region.h:145
float _end_lethargy
Definition: Region.h:195
float getFissionMacroXS(float energy)
Computes and returns the macroscopic fission cross-section in the region at some energy (eV)...
Definition: Region.cpp:283
virtual ~Region()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.cpp:32
virtual void collideNeutron(neutron *neutron)=0
This method collides a neutron within the region.
InfiniteMediumRegion(const char *region_name=(char *)"")
InfiniteMediumRegion constructor.
Definition: Region.cpp:410
void addBoundingSurface(int halfspace, Surface *surface)
Adds a new halfspace of a bounding surface to a region.
Definition: Region.cpp:767
float _pitch
Definition: Region.h:176
The region class represents a region in 2D space.
Definition: Region.h:58
The BoundedGeneralRegion is a the space defined by the intersection of some number surface halfspaces...
Definition: Region.h:361
EquivalenceRegion * _other_region
Definition: Region.h:182
void ringify(int num_rings)
Generates a series of equal area circular rings within the fuel.
Definition: Region.cpp:1001
std::vector< std::pair< int, Surface * > > _surfaces
Definition: Region.h:282
float _fuel_radius
Definition: Region.h:174
bool isModerator()
Returns true if this region is the moderator, false otherwise.
Definition: Region.cpp:515
float _start_lethargy
Definition: Region.h:193
bool containsIsotope(Isotope *isotope)
Determines whether this region contains a particular isotope.
Definition: Region.cpp:69
~BoundedFuelRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:322
void setFirstFlightCollProb(float *prob_ff, float *prob_mf, float *prob_energies, int num_prob)
Sets the first flight collision probabilities.
Definition: Region.cpp:536
float getElasticMicroXS(float energy)
Computes and returns the microscopic elastic scattering cross-section in the region at some energy (e...
Definition: Region.cpp:173
regionType getRegionType()
Return the type of region.
Definition: Region.cpp:78
virtual ~BoundedRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:289
float computeModeratorFuelCollisionProb(neutron *neutron)
Finds the first flight moderator-to-fuel collision probability for a neutron.
Definition: Region.cpp:666
void setOtherRegion(EquivalenceRegion *region)
Sets other region for a homogeneous equivalence region.
Definition: Region.cpp:557
float computeParametrizedDistance(neutron *neutron)
This method computes the parametrized distance along a neutron's unit trajectory vector to the neares...
Definition: Region.cpp:878
The EquivalenceModeratorRegion is a fuel region treated using the heterogenous-homogeneous equivalenc...
Definition: Region.h:258
~EquivalenceModeratorRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:265
float getElasticMacroXS(float energy)
Computes and returns the macroscopic elastic scattering cross-section in the region at some energy (e...
Definition: Region.cpp:151
EquivalenceModeratorRegion(const char *region_name=(char *)"")
EquivalenceModeratorRegion constructor.
Definition: Region.cpp:749
enum regionTypes regionType
Region spatial type.
virtual ~EquivalenceRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:204
void setBucklingSquared(float buckling_squared)
Sets the squared geometric buckling for the geometry.
Definition: Region.cpp:394
regionType _region_type
Definition: Region.h:70
float _volume
Definition: Region.h:74
void ringify(int num_rings)
Generates a series of equal area circular rings within the moderator.
Definition: Region.cpp:1025
float getAbsorptionMicroXS(float energy)
Computes and returns the microscopic absorption cross-section in the region at some energy (eV)...
Definition: Region.cpp:217
void collideNeutron(neutron *neutron)
This method collides a neutron within the region.
Definition: Region.cpp:692
float _half_width
Definition: Region.h:178
float computeFuelFuelCollsionProb(neutron *neutron)
Finds the first flight fuel-to-fuel collision probability for a neutron.
Definition: Region.cpp:637
float getFissionMicroXS(float energy)
Computes and returns the microscopic fission cross-section in the region at some energy (eV) ...
Definition: Region.cpp:305
regionTypes
Spatial Types of regions.
Definition: Region.h:33
The Material class represents a collection of isotope objects.
Definition: Material.h:37
EquivalenceRegion(const char *region_name=(char *)"")
EquivalenceRegion constructor.
Definition: Region.cpp:447
~BoundedModeratorRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:346
The BoundedRegion is a region bounded by surfaces using a constructive solid geometry formulation...
Definition: Region.h:278
float getVolume()
returns the volume of this Region .
Definition: Region.cpp:87
char * getName()
Return the name of the region.
Definition: Region.cpp:41
BoundedRegion(const char *region_name=(char *)"")
BoundedRegion constructor.
Definition: Region.cpp:759
~EquivalenceFuelRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:242
static int _n
Definition: Region.h:64
void setMaterial(Material *material)
Set the material filling this region.
Definition: Region.cpp:383
virtual ~InfiniteMediumRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:152
void setFuelPinRadius(float radius)
Sets the fuel radius if the region.
Definition: Region.cpp:583
float _delta_lethargy
Definition: Region.h:197
bool isFuel()
Returns true if this region is the fuel, false otherwise.
Definition: Region.cpp:503
float * _prob_mf
Definition: Region.h:187
bool onBoundary(neutron *neutron)
Checks if a neutron at some 2D location is on the region boundary.
Definition: Region.cpp:859
float getCaptureMicroXS(float energy)
Computes and returns the microscopic capture cross-section in the region at some energy (eV)...
Definition: Region.cpp:261
int _uid
Definition: Region.h:66
Material * _material
Definition: Region.h:68
float getTransportMicroXS(float energy)
Computes and returns the microscopic transport cross-section in the region at some index into the uni...
Definition: Region.cpp:327
Region(const char *region_name=(char *)"")
Region constructor.
Definition: Region.cpp:12
float * _prob_energies
Definition: Region.h:189
void removeBoundingSurface(int halfspace, Surface *surface)
Removes a halfspace of a bounding surface for a region.
Definition: Region.cpp:786
int getUid() const
Returns the unique ID auto-generated for the region.
Definition: Region.cpp:50
float getCaptureMacroXS(float energy)
Computes and returns the macroscopic capture cross-section in the region at some energy (eV)...
Definition: Region.cpp:239
float _buckling_squared
Definition: Region.h:72
void collideNeutron(neutron *neutron)
This method collides a neutron within the region.
Definition: Region.cpp:907
~BoundedGeneralRegion()
Empty destructor allows SWIG to cleanup memory for surfaces.
Definition: Region.h:368
bool contains(neutron *neutron)
Check if this region contains a neutron at some location in space.
Definition: Region.cpp:834